M-skill quest ! (K)

Indította Trevor, 2012-10-27, 21:37:17

2012-10-27, 21:37:17 Utolsó szerkesztés: 2013-02-05, 10:07:49 Szerző: [MOD]Aegist
Sziasztok !

Valaki tudna adni 1 questet amiben m-skill megkapható pl 15-szintöl xy összegért ?
"Nem tudtam, ezért megcsináltam"

2012-10-27, 23:27:58 #1 Utolsó szerkesztés: 2012-10-27, 23:29:41 Szerző: ATAG
Próbáld ezt, picit módosítottam rajta :)

quest mskill begin
state start begin
when 20092.chat."M skill vásárlás" begin
say_title("Hwa-Hee:")
say("Üdv!")
say("Nálam Kaphatsz M Skilleket")
say("")
say_reward("50 Szint Szükséges és 5 millió yang")
say("")
say("Szeretnéd?")
local val = select("Igen" , "Nem")
say_title("Hwa-Hee:")
if val == 1 then
local ret = false
if pc.level < 50 then
ret = true
say_reward("Nem vagy 50-es!")
end
if pc.gold < 5000000 then
ret = true
say_reward("Nincs elég pénzed!")
end

if ret then
say("Gyere vissza hozzám, ha már minden megvan!")
say("")
return
else
local job_table = {
{{1,6},{31,36},{61,66},{91,96}}, --testi,tőr,wp,buff
{{16,21},{46,51},{76,81},{106,111}} --menta,íj,BM,gyógy
}
local sub_job = pc.get_skill_group()
local pc_job = pc.get_job()
local tbl = job_table[sub_job][pc_job+1]
for i=tbl[1],tbl[2] do
pc.set_skill_level(i,20)
end
say("További Jó Játékot")
say("")
end
elseif val == 2 then
say("Nem szeretnél mester skilleket?")
say("Te tudod..")
say("Ha jó kedvem lesz még visszajöhetsz..")
say("")
end
end
end
end


köszönöm hát nem tudom hasznát fogom-e venni mert épp valaki egyfeszt ch1-et le kapcsolja :/
"Nem tudtam, ezért megcsináltam"

Szia.

Én elég kezdő vagyok quest írásban, de össze remekeltem valamit.

Szerintem van benne hiba, nem is biztos hogy jó.. :D

Idézquest mskill begin
state start begin

         
                       say_title("M Skilles:")
                       say("Hello!!")
                       say("Itt megkaphatod az M-es Skilljeid.")
                       say_reward("15 szint szükséges és 1 millió yang")
                       local ex=select("Tovább")
                       if ex==1 then
                       if pc.get_level() >= 15 then
                       else
                       pc.changegold("-1000000")
                       say_title("Mien Kaszt vagy?")
                       local ka=select("Harcos","Nindzsa","Sura","Sámán","Mégse")   
                       if ka==1 then
                       pc.set_skill_level (1,20)
                       pc.set_skill_level (2,20)
                       pc.set_skill_level (3,20)
            pc.set_skill_level (4,20)
            pc.set_skill_level (5,20)
            pc.set_skill_level (16,20)
            pc.set_skill_level (17,20)
            pc.set_skill_level (18,20)
            pc.set_skill_level (19,20)
            pc.set_skill_level (20,20)
            else
                       if ka==2 then
                       pc.set_skill_level (31,20)
                       pc.set_skill_level (32,20)
            pc.set_skill_level (33,20)
            pc.set_skill_level (34,20)
            pc.set_skill_level (35,20)
            pc.set_skill_level (46,20)
            pc.set_skill_level (47,20)
            pc.set_skill_level (48,20)
            pc.set_skill_level (49,20)
            pc.set_skill_level (50,20)
            else
                       if ka==3 then
                       pc.set_skill_level (61,20)
            pc.set_skill_level (62,20)
            pc.set_skill_level (63,20)
            pc.set_skill_level (64,20)
            pc.set_skill_level (65,20)
            pc.set_skill_level (66,20)
            pc.set_skill_level (76,20)
            pc.set_skill_level (77,20)
            pc.set_skill_level (78,20)
            pc.set_skill_level (79,20)
            pc.set_skill_level (80,20)
            pc.set_skill_level (81,20)
                       else
                       if ka==4 then
                       pc.set_skill_level (91,20)
            pc.set_skill_level (92,20)
            pc.set_skill_level (93,20)
            pc.set_skill_level (94,20)
            pc.set_skill_level (95,20)
            pc.set_skill_level (96,20)
            pc.set_skill_level (106,20)
            pc.set_skill_level (107,20)
            pc.set_skill_level (108,20)
            pc.set_skill_level (109,20)
            pc.set_skill_level (110,20)
            pc.set_skill_level (111,20)
                       else
                       if ka == 5 then
            return
                       end
                       say("Megkaptad az M-skilleket!!")
         end
      end
   end
end         

Sry ha fölösleges volt, csak próbáltam segíteni :D
Nem az a fő, hogy örökké élsz-e. A trükk az, hogy önmagad maradj, örökké.

@bakura1998: Több szintaktikai és logikai probléma van a questedben.

Először is, ha lv15 vagy nagyobb vagy, nem történik semmi, de ha nem, egyből levesz tőled 1M yangot, majd megkérdi, akarsz-e egyáltalán M skillt.
Ezután átláthatatlan if és else kavalkád van, amik le sincsenek zárva. Minden if után kell lennie valahol egy end-nek!
Nyugodtan használd az elseif lehetőséget, amikor arra van szükség...

Idézif feltétel then
   --ez fut, ha feltétel igaz
else
   --ez fut, ha feltétel hamis
end
Idézif feltétel_egy then
   --ez fut, ha (csak) feltétel_egy igaz
elseif feltétel_kettő then
   --ez fut, ha (csak) feltétel_kettő igaz
else
   --ez fut, ha egyik feltétel sem igaz
end

Egymásba ágyazott if ágakat csak akkor használj, ha feltétlenül muszáj!


Bocsánat az OFFért :)