Sziasztok!
Írtam egy küldetéses questet egyedül, működni működik csak az a baj hogy valamiért megtudod többször is csinálni és olyanra szeretném mint a biológus. Tehát megkapod a küldit 5 -ös szinten csinálod de már elérted a 10 szintet ne kapd meg a 2. küldetést csak ha teljesítetted az elsőt. Érthető mire akarok kijukadni?:D
1. küldetés:
quest kuldetes_01 begin
state start begin
when login or levelup with pc.get_level() >= 5 begin
set_state(information)
end
end
state information begin
when letter begin
send_letter("Metinkövek 1. küldetés")
end
when button or info begin
say_title("Metinkövek 1. küldetés")
say("")
say("")
say("Üss le 10db Bánat metint (lv5)")
say("")
say("Jutalmad:")
say("10.000 Yang")
say("1.000 Tapasztalat pont")
say("")
say("Sok sikert!")
say("")
set_state(kuldetes1)
end
end
state kuldetes1 begin
when letter begin
q.set_counter( ""..mob_name("8001").."", 10-pc.getqf("kill_count"))
end
when 8001.kill begin
pc.setqf("kill_count", pc.getqf("kill_count")+1)
q.set_counter( ""..mob_name("8001").."", 10-pc.getqf("kill_count"))
end
when 8001.kill with pc.getqf("kill_count") == 10 and pc.getqf("kill_count") == 10 begin
notice("Metinkövek 1. küldetése befejeződött!")
set_state(successful)
end
end
state successful begin
when letter begin
send_letter("Metinkövek 1. küldetés Teljesítve!")
end
when button or info begin
say_title("Metinkövek 1. küldetés Teljesítve!")
say("")
say("Sikeresen befejezted a küldtést!")
say("A munkád ért a jutalmad:")
say("10.000 Yang")
say("1.000 Tapasztalat pont")
pc.changegold("10000")
pc.give_exp2("1000")
clear_letter()
wait()
set_skin(NOWINDOW)
set_quest_state("kuldetes_02", "run")
set_state(__COMPLETE__)
end
end
state __COMPLETE__ begin
end
end
2. küldetés:
quest kuldetes_02 begin
state start begin
when login or levelup with pc.get_level() >= 10 begin
set_state(information)
end
end
state information begin
when letter begin
send_letter("Metinkövek 2. küldetés")
end
when button or info begin
say_title("Metinkövek 2. küldetés")
say("")
say("")
say("Üss le 10db Harc metint (lv10)")
say("")
say("Jutalmad:")
say("10.000 Yang")
say("7.000 Tapasztalat pont")
say("")
say("Sok sikert!")
say("")
set_state(kuldetes2)
end
end
state kuldetes2 begin
when letter begin
q.set_counter( ""..mob_name("8002").."", 10-pc.getqf("kill_count"))
end
when 8002.kill begin
pc.setqf("kill_count", pc.getqf("kill_count")+1)
q.set_counter( ""..mob_name("8002").."", 10-pc.getqf("kill_count"))
end
when 8002.kill with pc.getqf("kill_count") == 10 and pc.getqf("kill_count") == 10 begin
notice("Metinkövek 2. küldetése befejeződött!")
set_state(successful)
end
end
state successful begin
when letter begin
send_letter("Metinkövek 2. küldetés Teljesítve!")
end
when button or info begin
say_title("Metinkövek 2. küldetés Teljesítve!")
say("")
say("Sikeresen befejezted a küldtést!")
say("A munkád ért a jutalmad:")
say("10.000 Yang")
say("7.000 Tapasztalat pont")
pc.changegold("10000")
pc.give_exp2("7000")
clear_letter()
wait()
set_skin(NOWINDOW)
set_state(__COMPLETE__)
end
end
state __COMPLETE__ begin
end
end
Segítséget előre is köszönöm! :)
Kezdésnél ellenőrzöl 1et:
if pc.getqf("asd") == 1 then
say("Már megcsináltad!")
return
end
majd mikor megcsinálta 1-re állítod a flag-et.
Üzenet összefésülés: 2017-11-18, 18:37:39
Vagy egybe rakod a 2 questet, és mikor az elsőt megcsinálta beadod neki a kövinek a state-jét.
Valahogy így?
quest kuldetes_01 begin
state start begin
when login or levelup with pc.get_level() >= 5 begin
set_state(information)
end
end
state information begin
when letter begin
send_letter("Metinkövek 1. küldetés")
end
when button or info begin
say_title("Metinkövek 1. küldetés")
say("")
say("")
say("Üss le 10db Bánat metint (lv5)")
say("")
say("Jutalmad:")
say("10.000 Yang")
say("1.000 Tapasztalat pont")
say("")
say("Sok sikert!")
say("")
set_state(kuldetes1)
end
end
state kuldetes1 begin
when letter begin
q.set_counter( ""..mob_name("8001").."", 10-pc.getqf("kill_count"))
end
when 8001.kill begin
pc.setqf("kill_count", pc.getqf("kill_count")+1)
q.set_counter( ""..mob_name("8001").."", 10-pc.getqf("kill_count"))
end
when 8001.kill with pc.getqf("kill_count") == 10 and pc.getqf("kill_count") == 10 begin
notice("Metinkövek 1. küldetése befejeződött!")
set_state(successful)
end
end
state successful begin
when letter begin
send_letter("Metinkövek 1. küldetés Teljesítve!")
end
when button or info begin
say_title("Metinkövek 1. küldetés Teljesítve!")
say("")
say("Sikeresen befejezted a küldtést!")
say("A munkád ért a jutalmad:")
say("10.000 Yang")
say("1.000 Tapasztalat pont")
pc.changegold("10000")
pc.give_exp2("1000")
clear_letter()
wait()
set_skin(NOWINDOW)
set_quest_state("start2", "run")
set_state(__COMPLETE__)
end
end
state __COMPLETE__ begin
end
state start2 begin
when login or levelup with pc.get_level() >= 10 begin
set_state(information)
end
end
state information begin
when letter begin
send_letter("Metinkövek 2. küldetés")
end
when button or info begin
say_title("Metinkövek 2. küldetés")
say("")
say("")
say("Üss le 10db Harc metint (lv10)")
say("")
say("Jutalmad:")
say("10.000 Yang")
say("7.000 Tapasztalat pont")
say("")
say("Sok sikert!")
say("")
set_state(kuldetes2)
end
end
state kuldetes2 begin
when letter begin
q.set_counter( ""..mob_name("8002").."", 10-pc.getqf("kill_count"))
end
when 8002.kill begin
pc.setqf("kill_count", pc.getqf("kill_count")+1)
q.set_counter( ""..mob_name("8002").."", 10-pc.getqf("kill_count"))
end
when 8002.kill with pc.getqf("kill_count") == 10 and pc.getqf("kill_count") == 10 begin
notice("Metinkövek 2. küldetése befejeződött!")
set_state(successful)
end
end
state successful begin
when letter begin
send_letter("Metinkövek 2. küldetés Teljesítve!")
end
when button or info begin
say_title("Metinkövek 2. küldetés Teljesítve!")
say("")
say("Sikeresen befejezted a küldtést!")
say("A munkád ért a jutalmad:")
say("10.000 Yang")
say("7.000 Tapasztalat pont")
pc.changegold("10000")
pc.give_exp2("7000")
clear_letter()
wait()
set_skin(NOWINDOW)
set_state(__COMPLETE__)
end
end
state __COMPLETE__ begin
end
end
Nem igazán értem hogy mondod kezdő vagyok etéren :/ :D
Azt szeretném hogy egyben legyen amúgy, csak nem értek hozzá az a baj :/
vagy state váltással tudod lezárni szebben.
.
.
.
set_state(vege)
.
.
.
state vege begin
end
Az a baj már csak hogy az összes megjelenik megcsináltam 6-ig és ez lett belőle ha már nagy szinten vagy hogy mind meg jelenik de én azt szeretném hogy ne jelenjen meg csak ha az elsőt megcsináltad jön a második és így tovább..
Most már működik ha restartolok vagy /reload vagy /reload q -zok nem jön elő még 1x és meglehet csinálni.
quest metinkovek_01 begin
state start begin
when login or levelup with pc.get_level() >= 5 begin
set_state(information)
end
end
state information begin
when letter begin
send_letter("Metinkövek 1. küldetés")
end
when button or info begin
say_title("Metinkövek 1. küldetés")
say("")
say("")
say("Üss le 10db Bánat metint (lv5)")
say("")
say("Jutalmad:")
say("10.000 Yang")
say("1.000 Tapasztalat pont")
say("")
say("Sok sikert!")
say("")
set_state(kuldetes1)
end
end
state kuldetes1 begin
when letter begin
q.set_counter( ""..mob_name("8001").."", 10-pc.getqf("kill_count"))
end
when 8001.kill begin
pc.setqf("kill_count", pc.getqf("kill_count")+1)
q.set_counter( ""..mob_name("8001").."", 10-pc.getqf("kill_count"))
end
when 8001.kill with pc.getqf("kill_count") == 10 and pc.getqf("kill_count") == 10 begin
notice("Metinkövek 1. küldetése befejeződött!")
set_state(successful)
end
end
state successful begin
when letter begin
send_letter("Metinkövek 1. küldetés Teljesítve!")
end
when button or info begin
say_title("Metinkövek 1. küldetés Teljesítve!")
say("")
say("Sikeresen befejezted a küldtést!")
say("A munkád ért a jutalmad:")
say("10.000 Yang")
say("1.000 Tapasztalat pont")
pc.changegold("10000")
pc.give_exp2("1000")
clear_letter()
wait()
set_skin(NOWINDOW)
set_quest_state("metinkovek_02", "run")
set_state(__COMPLETE__)
end
end
state __COMPLETE__ begin
end
end
quest metinkovek_02 begin
state start begin
when login or levelup with pc.get_level() >= 10 begin
set_state(information)
end
end
state information begin
when letter begin
send_letter("Metinkövek 2. küldetés")
end
when button or info begin
say_title("Metinkövek 2. küldetés")
say("")
say("")
say("Üss le 10db Harc metint (lv10)")
say("")
say("Jutalmad:")
say("10.000 Yang")
say("7.000 Tapasztalat pont")
say("")
say("Sok sikert!")
say("")
set_state(kuldetes2)
end
end
state kuldetes2 begin
when letter begin
q.set_counter( ""..mob_name("8002").."", 10-pc.getqf("kill_count"))
end
when 8002.kill begin
pc.setqf("kill_count", pc.getqf("kill_count")+1)
q.set_counter( ""..mob_name("8002").."", 10-pc.getqf("kill_count"))
end
when 8002.kill with pc.getqf("kill_count") == 10 and pc.getqf("kill_count") == 10 begin
notice("Metinkövek 2. küldetése befejeződött!")
set_state(successful)
end
end
state successful begin
when letter begin
send_letter("Metinkövek 2. küldetés Teljesítve!")
end
when button or info begin
say_title("Metinkövek 2. küldetés Teljesítve!")
say("")
say("Sikeresen befejezted a küldtést!")
say("A munkád ért a jutalmad:")
say("10.000 Yang")
say("7.000 Tapasztalat pont")
pc.changegold("10000")
pc.give_exp2("7000")
clear_letter()
wait()
set_skin(NOWINDOW)
set_quest_state("metinkovek_03", "run")
set_state(__COMPLETE__)
end
end
state __COMPLETE__ begin
end
end
Próbáltam a biológus küldiket nézegetni de nem látom mi az ami gátolná hogy ne jöjjön elő annál is a többi.
collect_quest_lv40.quest
(https://board.ddmt2.net/proxy.php?request=http%3A%2F%2Fi.epvpimg.com%2FG9S1bab.png&hash=c7485b6a0ed108a5d1dcca2b11d159e2e7fd6a11)
and then collect_quest_lv50.quest
(https://board.ddmt2.net/proxy.php?request=http%3A%2F%2Fi.epvpimg.com%2FJP2Odab.png&hash=1c3fd34c2e64d6febad08a7fb1e6f518d21f35da)
Ennyi
Hát továbbra sem működik. Ott van az összes küldetés.
quest metinkovek_01 begin
state start begin
when login or levelup with pc.get_level() >= 5 begin
set_state(information)
end
end
state information begin
when letter begin
send_letter("Metinkövek 1. küldetés")
end
when button or info begin
say_title("Metinkövek 1. küldetés")
say("")
say("")
say("Üss le 10db Bánat metint (lv5)")
say("")
say("Jutalmad:")
say("10.000 Yang")
say("1.000 Tapasztalat pont")
say("")
say("Sok sikert!")
say("")
set_state(kuldetes1)
end
end
state kuldetes1 begin
when letter begin
q.set_counter( ""..mob_name("8001").."", 10-pc.getqf("kill_count"))
end
when 8001.kill begin
pc.setqf("kill_count", pc.getqf("kill_count")+1)
q.set_counter( ""..mob_name("8001").."", 10-pc.getqf("kill_count"))
end
when 8001.kill with pc.getqf("kill_count") == 10 and pc.getqf("kill_count") == 10 begin
notice("Metinkövek 1. küldetése befejeződött!")
set_state(successful)
end
end
state successful begin
when letter begin
send_letter("Metinkövek 1. küldetés Teljesítve!")
end
when button or info begin
say_title("Metinkövek 1. küldetés Teljesítve!")
say("")
say("Sikeresen befejezted a küldtést!")
say("A munkád ért a jutalmad:")
say("10.000 Yang")
say("1.000 Tapasztalat pont")
pc.changegold("10000")
pc.give_exp2("1000")
clear_letter()
wait()
set_skin(NOWINDOW)
set_quest_state("metinkovek_02", "run")
set_state(__COMPLETE__)
end
end
state __COMPLETE__ begin
end
end
quest metinkovek_02 begin
state start begin
end
state run begin
when login or levelup with pc.get_level() >= 10 begin
set_state(information)
end
end
state information begin
when letter begin
send_letter("Metinkövek 2. küldetés")
end
when button or info begin
say_title("Metinkövek 2. küldetés")
say("")
say("")
say("Üss le 10db Harc metint (lv10)")
say("")
say("Jutalmad:")
say("10.000 Yang")
say("7.000 Tapasztalat pont")
say("")
say("Sok sikert!")
say("")
set_state(kuldetes2)
end
end
state kuldetes2 begin
when letter begin
q.set_counter( ""..mob_name("8002").."", 10-pc.getqf("kill_count"))
end
when 8002.kill begin
pc.setqf("kill_count", pc.getqf("kill_count")+1)
q.set_counter( ""..mob_name("8002").."", 10-pc.getqf("kill_count"))
end
when 8002.kill with pc.getqf("kill_count") == 10 and pc.getqf("kill_count") == 10 begin
notice("Metinkövek 2. küldetése befejeződött!")
set_state(successful)
end
end
state successful begin
when letter begin
send_letter("Metinkövek 2. küldetés Teljesítve!")
end
when button or info begin
say_title("Metinkövek 2. küldetés Teljesítve!")
say("")
say("Sikeresen befejezted a küldtést!")
say("A munkád ért a jutalmad:")
say("10.000 Yang")
say("7.000 Tapasztalat pont")
pc.changegold("10000")
pc.give_exp2("7000")
clear_letter()
wait()
set_skin(NOWINDOW)
set_quest_state("metinkovek_03", "run")
set_state(__COMPLETE__)
end
end
state __COMPLETE__ begin
end
end
Senkinek nincs ötlete???? Én kifogytam az ötletekből :/
quest metinkovek_01 begin
state start begin
when login or levelup with pc.get_level() >= 5 begin
set_state(information)
end
end
state information begin
when letter begin
send_letter("Metinkövek 1. küldetés")
end
when button or info begin
say_title("Metinkövek 1. küldetés")
say("")
say("")
say("Üss le 10db Bánat metint (lv5)")
say("")
say("Jutalmad:")
say("10.000 Yang")
say("1.000 Tapasztalat pont")
say("")
say("Sok sikert!")
say("")
set_state(kuldetes1)
end
end
state kuldetes1 begin
when letter begin
q.set_counter( ""..mob_name("8001").."", 10-pc.getqf("kill_count"))
end
when 8001.kill begin
pc.setqf("kill_count", pc.getqf("kill_count")+1)
q.set_counter( ""..mob_name("8001").."", 10-pc.getqf("kill_count"))
end
when 8001.kill with pc.getqf("kill_count") == 10 and pc.getqf("kill_count") == 10 begin
notice("Metinkövek 1. küldetése befejeződött!")
set_state(successful)
end
end
state successful begin
when letter begin
send_letter("Metinkövek 1. küldetés Teljesítve!")
end
when button or info begin
say_title("Metinkövek 1. küldetés Teljesítve!")
say("")
say("Sikeresen befejezted a küldtést!")
say("A munkád ért a jutalmad:")
say("10.000 Yang")
say("1.000 Tapasztalat pont")
pc.changegold("10000")
pc.give_exp2("1000")
clear_letter()
wait()
set_skin(NOWINDOW)
set_quest_state("metinkovek_02", "run")
set_state(run2)
end
end
-- 2. quest
state run2 begin
when login or levelup with pc.get_level() >= 10 begin
set_state(information2)
end
end
state information2 begin
when letter begin
send_letter("Metinkövek 2. küldetés")
end
when button or info begin
say_title("Metinkövek 2. küldetés")
say("")
say("")
say("Üss le 10db Harc metint (lv10)")
say("")
say("Jutalmad:")
say("10.000 Yang")
say("7.000 Tapasztalat pont")
say("")
say("Sok sikert!")
say("")
set_state(kuldetes2)
end
end
state kuldetes2 begin
when letter begin
q.set_counter( ""..mob_name("8002").."", 10-pc.getqf("kill_count"))
end
when 8002.kill begin
pc.setqf("kill_count", pc.getqf("kill_count")+1)
q.set_counter( ""..mob_name("8002").."", 10-pc.getqf("kill_count"))
end
when 8002.kill with pc.getqf("kill_count") == 10 and pc.getqf("kill_count") == 10 begin
notice("Metinkövek 2. küldetése befejeződött!")
set_state(successful2)
end
end
state successful2 begin
when letter begin
send_letter("Metinkövek 2. küldetés Teljesítve!")
end
when button or info begin
say_title("Metinkövek 2. küldetés Teljesítve!")
say("")
say("Sikeresen befejezted a küldtést!")
say("A munkád ért a jutalmad:")
say("10.000 Yang")
say("7.000 Tapasztalat pont")
pc.changegold("10000")
pc.give_exp2("7000")
clear_letter()
wait()
set_skin(NOWINDOW)
set_quest_state("metinkovek_03", "run")
set_state(__COMPLETE__)
end
end
state __COMPLETE__ begin
end
end
Nem teszteltem.
Valami nem okés ha lv5 vagy megkapod a küldetést megcsinálod megkapod a jutalmat ha megvan a 10 -es szint megkapod viszont hibásan jön be mert nem tudod megcsinálni a küldetést.
Még valami ötlet?
Próbáld meg h más nevet adsz a 2. küldetésben lévő flagnek, gondolom összeakad a 2.
Mert az elsőt megcsinálod akk 10-ig megy ugye és mikor indul a 2. küldi:
q.set_counter( ""..mob_name("8002").."", 10-pc.getqf("kill_count"))
itt azt mondja h 0 lesz a számláló.
Pontosan hogy érted?
Valahogy így?
state kuldetes2 begin
when letter begin
q.set_counter( ""..mob_name("8002").."", 10-pc.getqf("kill_count2"))
end
when 8002.kill begin
pc.setqf("kill_count2", pc.getqf("kill_count2")+1)
q.set_counter( ""..mob_name("8002").."", 10-pc.getqf("kill_count2"))
end
when 8002.kill with pc.getqf("kill_count2") == 10 and pc.getqf("kill_count2") == 10 begin
notice("Metinkövek 2. küldetése befejeződött!")
set_state(successful2)
end
end
Vagy csak én nem értem ?:D
Azaz :D
Vagy amikor az elsőt teljesíti a set_state előtt töröld azt a flag-et.
ezt??
set_quest_state("metinkovek_02", "run")
clear_letter()
Én ez elé/mögé raknám be a flag törlést, vagy hagyod átnvezve a dolgot.
Talán így gondolod?
when button or info begin
say_title("Metinkövek 1. küldetés Teljesítve!")
say("")
say("Sikeresen befejezted a küldtést!")
say("A munkád ért a jutalmad:")
say("10.000 Yang")
say("1.000 Tapasztalat pont")
pc.changegold("10000")
pc.give_exp2("1000")
wait()
set_skin(NOWINDOW)
set_quest_state("metinkovek_02", "run")
clear_letter()
set_state(run2)
end
end
Vagy hogy érted?:D
Flaget kéne törölni, nem sorrendet cserélni
pc.delqf("kill_count")
utána meg akkor nem kell átnevezni a 2. questben lévő flageket és esetleg annak a végére is rakhatsz 1 törlést.
Akkor így gondolod?
when button or info begin
say_title("Metinkövek 1. küldetés Teljesítve!")
say("")
say("Sikeresen befejezted a küldtést!")
say("A munkád ért a jutalmad:")
say("10.000 Yang")
say("1.000 Tapasztalat pont")
pc.changegold("10000")
pc.give_exp2("1000")
clear_letter()
pc.delqf("kill_count")
wait()
set_skin(NOWINDOW)
set_quest_state("metinkovek_02", "run1")
set_state(__COMPLETE__)
end
end
Bocsi azért nem vagyok egy nagy quest író bár ez látszik is :D
Yah
Valami még mindig nem okés :/
Elértem az 5 -ös szintet megnyitom a küldit edig jó majd ha a küldetéseknél rákattintok nem jön elő újra relognál sem.
Ha elérem a 10 -es szintet akkor meg már a küldetéseknél el is csúszik és nem lehet rá kattintani szintén.
Lehet maradnék a külön questnél annál csak annyi volt a gond hogy ha elérted a 10 -es szintet vagy a 20 -as szintet a 10 -nél megjelenik az 1,2 a 20 -nál meg 1,2,3,4 küldi jelenik meg.
~Témát Zártam!~