Quest lezárása (k)

Indította Extend, 2014-04-16, 10:36:07

Sziasztok!
Nem nagyon értek a questekhez, ezért kérnék tőletek segítséget.
Abban kellene segíteni, hogy van egy questem és, hogyan tudnám azt megcsinálni, hogy miután ezt a questet egy játékos használta, azután eltűnjön, és ne lehessen többször használni.. egyszóval, egyszerhasználatos questet kellene belőle csinálni, mert most miután újra bejelentkezek, előjön a quest és tudom használni mégegyszer.


Erről lenne szó:
quest mskill begin
state start begin
when levelup with pc.get_level() >= 20 begin
set_state(information)
end
end
state information begin
when letter with pc.getqf("elfogad") == 0 begin
send_letter("M-SKILL!")
end
when button or info begin
say_title("Gratulálok "..pc.get_name().." megkaptad az m-es skilleket!")
if pc.get_job() == 0 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)
pc.set_skill_level (21,20)
pc.set_skill_level (122,2)
pc.set_skill_level (126,20)
pc.set_skill_level (127,20)
pc.set_skill_level (128,20)
pc.set_skill_level (129,20)
pc.set_skill_level (131,10)
pc.set_skill_level (137,20)
pc.set_skill_level (138,20)
pc.set_skill_level (139,20)
end
if pc.get_job() == 1 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)
pc.set_skill_level (51,20)
pc.set_skill_level (122,2)
pc.set_skill_level (126,20)
pc.set_skill_level (127,20)
pc.set_skill_level (128,20)
pc.set_skill_level (129,20)
pc.set_skill_level (131,10)
pc.set_skill_level (137,20)
pc.set_skill_level (138,20)
pc.set_skill_level (139,20)
pc.set_skill_level (140,20)
end
if pc.get_job() == 2 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)
pc.set_skill_level (122,2)
pc.set_skill_level (126,20)
pc.set_skill_level (127,20)
pc.set_skill_level (128,20)
pc.set_skill_level (129,20)
pc.set_skill_level (131,10)
pc.set_skill_level (137,20)
pc.set_skill_level (138,20)
pc.set_skill_level (139,20)
end
if pc.get_job() == 3 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)
pc.set_skill_level (122,2)
pc.set_skill_level (126,20)
pc.set_skill_level (127,20)
pc.set_skill_level (128,20)
pc.set_skill_level (129,20)
pc.set_skill_level (131,10)
pc.set_skill_level (137,20)
pc.set_skill_level (138,20)
pc.set_skill_level (139,20)
end
end
end
state vege begin
end
end



Előre is köszönöm a válaszokat,
Üdv,
Extend


quest flag
az elején lekérdezed:
if pc.getqf("szamlalo") == 0 then
és jöhet a quest része
majd a végén át állítod a quest flagot:
pc.setqf("szamlalo", 1)
így csak akkor fog lefutni ha szamlalo 0 de ha egyszer megcsinálta akkor beállítja 1-re tehát nem érvényes a feltétel így nem fog lefutni :D Elvileg

Ez sajnos így nem működik.
Ugyan az a hiba.

Szia! A végére kell egy ilyen:

state COMPLETE begin
end


Persze az előző state végén át kell léptetni erre a statera, így:

set_state(COMPLETE)

COMPLETE helyére bármit írhatsz, a lényeg, hogy a state ne tartalmazzon semmit.
HTML5,CSS3,PHP,C#,C++,JS,Java,Python,LUA

Köszönöm szépen!
Mindkettőtöknek ment a +.