Sziasztok!
Elkezdtem írni egy questet és nem tudom miért nem fut le már nem 1 küldit írtam meg így és működnek de ennél nem látom mi a probléma.
quest:
quest metinkokuldetes begin
state start begin
when 9010.chat."Metinkő Küldetés" begin
local a=select("Bánat metin 10db ~ 50Forint", "Kilépés")
if a == 1 then
say_title("Bánat metin 10db ~ 50Forint")
say("")
say("Semmisíts meg 10db Bánat metint!")
pc.setqf("banatmetin", 10)
q.set_counter("banatmetin", 10)
set_state(kuldi1)
notice("Semmisíts meg 10db Bánat metint! Jutalom : 50 Forint.")
end
if a == 2 then
return
end
end
state kuldi1 begin
when letter begin
send_letter("Bánat Metin megsemisítése")
end
when info or button begin
say_title("Bánat Metin megsemisítése")
say("")
say("Semmisíts meg 10db Bánat Metint!")
cnt = 10 - pc.getqf("banatmetin")
say_reward("Eddig megsemisítettél: "..cnt.." Bánat Metint.")
end
when 8001.kill begin
local count1 = pc.getqf("banatmetin") - 1
pc.setqf("banatmetin", count1)
q.set_counter("banatmetin", count1)
if count1 == 0 then
set_state(Jutalom1)
notice("Küldetés Teljesítve menj vissza (mob_name(9010)) -hez!")
end
end
end
state Jutalom1 begin
when 9010.chat."Bánat metin megsemisítve" begin
say_title("Bánat metin megsemisítve!")
say("")
say("Jutalmad:")
say_reward("50 Forint")
if pc.getqf("Jut1") == 0 then
pc.setqf("Jut1"), 1)
if pc.countitem(item) == 0 and pc.weapon != item then
pc.change_money(50)
clear_letter()
end
end
end
end
end
+1 kérdés:
Démon toronyban hogy tudom csökkenteni a mobok létszámát? Mert nem találom sehol :/ de lehet rossz helyen keresem :D
A segítséget előre is köszönöm!
quest metinkokuldetes begin
state start begin
when 9010.chat."Metinkő Küldetés" begin
local a=select("Bánat metin 10db ~ 50Forint", "Kilépés")
if a == 1 then
say_title("Bánat metin 10db ~ 50Forint")
say("")
say("Semmisíts meg 10db Bánat metint!")
pc.setqf("banatmetin", 10)
q.set_counter("banatmetin", 10)
set_state(kuldi1)
notice("Semmisíts meg 10db Bánat metint! Jutalom : 50 Forint.")
elseif a == 2 then
return
end
end
Írd felul az elso stateig. Ha nem lenne jo, holnap ranezek, jelenleg telon vagyok.
Nem jó. :/
A questnek az első része az működik próbáltam. a második résznél van gond itt:
state kuldi1 begin
when letter begin
send_letter("Bánat Metin megsemisítése")
end
when info or button begin
say_title("Bánat Metin megsemisítése")
say("")
say("Semmisíts meg 10db Bánat Metint!")
cnt = 10 - pc.getqf("banatmetin")
say_reward("Eddig megsemisítettél: "..cnt.." Bánat Metint.")
end
when 8001.kill begin
local count1 = pc.getqf("banatmetin") - 1
pc.setqf("banatmetin", count1)
q.set_counter("banatmetin", count1)
if count1 == 0 then
set_state(Jutalom1)
notice("Küldetés Teljesítve menj vissza (mob_name(9010)) -hez!")
end
end
end
Szia.
Volt azért 1-2 kisebb hiba a Questben, de javítottam őket és teszteltem is, most már működik.
quest metinkokuldetes begin
state start begin
when 9010.chat."Metinkő küldetés" begin
local a=select("Bánat metin 10db ~ 50Forint", "Kilépés")
if a == 1 then
say_title("Bánat metin 10db ~ 50Forint:")
say("")
say("Semmisíts meg 10 db Bánat metint!")
pc.setqf("banatmetin", 10)
q.set_counter("banatmetin", 10)
set_state(kuldi1)
notice("Semmisíts meg 10 db Bánat metint! Jutalom: 50 Forint.")
elseif a == 2 then
return
end
end
end
state kuldi1 begin
when letter begin
send_letter("Bánat Metin megsemmisítése")
end
when info or button begin
say_title("Bánat Metin megsemmisítése")
say("")
say("Semmisíts meg 10 db Bánat Metint!")
cnt = 10 - pc.getqf("banatmetin")
say_reward("Eddig megsemmisítettél: "..cnt.." Bánat Metint.")
end
when 8001.kill begin
local count1 = pc.getqf("banatmetin") - 1
pc.setqf("banatmetin", count1)
q.set_counter("banatmetin", count1)
if count1 == 0 then
set_state(Jutalom1)
notice("Küldetés teljesítve menj vissza a "..(mob_name(9010)).."-hez!")
end
end
end
state Jutalom1 begin
when 9010.chat."Bánat metin megsemmisítve" begin
say_title("Bánat metin megsemmisítve!")
say("")
say("Jutalmad:")
say_reward("50 Forint")
if pc.getqf("Jut1") == 0 then
pc.setqf("Jut1", 1)
if pc.countitem(item) == 0 and pc.weapon != item then
pc.change_money(50)
clear_letter()
set_state(complete)
end
end
end
end
state complete begin
end
end
Illetve, ha jól tudom Démon Tornyos mobok "regenjét" itt találod: game/share/data/dungeon/
Köszi működik csak 1 a gond vele hogy én ezt végtelenre szeretném csinálni tehát az npctől bármikor felveheted.
Szóval ugyan ezt a küldetést akárhányszor megtudd csinálni?
igen az lenne a cél azért nem úgy kezdtem megírni hogy villogjon a térképen meg jelezze az npcnél.
Oda mész kiválasztod majd melyiket szeretnéd és azt megcsinálod mert ezt még folytatom egészem a 90 -es metinig majd csak először működjön :)
Próbáld meg így:
quest metinkokuldetes begin
state start begin
when 9010.chat."Metinkő küldetés" begin
local a=select("Bánat metin 10db ~ 50Forint", "Kilépés")
if a == 1 then
say_title("Bánat metin 10db ~ 50Forint:")
say("")
say("Semmisíts meg 10 db Bánat metint!")
pc.setqf("banatmetin", 10)
q.set_counter("banatmetin", 10)
set_state(kuldi1)
notice("Semmisíts meg 10 db Bánat metint! Jutalom: 50 Forint.")
elseif a == 2 then
return
end
end
end
state kuldi1 begin
when letter begin
send_letter("Bánat Metin megsemmisítése")
end
when info or button begin
say_title("Bánat Metin megsemmisítése")
say("")
say("Semmisíts meg 10 db Bánat Metint!")
cnt = 10 - pc.getqf("banatmetin")
say_reward("Eddig megsemmisítettél: "..cnt.." Bánat Metint.")
end
when 8001.kill begin
local count1 = pc.getqf("banatmetin") - 1
pc.setqf("banatmetin", count1)
q.set_counter("banatmetin", count1)
if count1 == 0 then
set_state(Jutalom1)
notice("Küldetés teljesítve menj vissza a "..(mob_name(9010)).."-hez!")
end
end
end
state Jutalom1 begin
when 9010.chat."Bánat metin megsemmisítve" begin
say_title("Bánat metin megsemmisítve!")
say("")
say("Jutalmad:")
say_reward("50 Forint")
if pc.getqf("Jut1") == 0 then
pc.setqf("Jut1", 1)
if pc.countitem(item) == 0 and pc.weapon != item then
pc.change_money(50)
clear_letter()
set_state(start)
end
end
end
end
end
nem jó :/ az jön be hogy teljesítve van.
Elvileg úgy néz ki így már működik (egyenlőre)
quest metinkokuldetes begin
state start begin
when 9010.chat."Metinkő küldetés" begin
local a=select("Bánat metin 10db ~ 50Forint", "Kilépés")
if a == 1 then
say_title("Bánat metin 10db ~ 50Forint:")
say("")
say("Semmisíts meg 10 db Bánat metint!")
pc.setqf("banatmetin", 10)
q.set_counter("banatmetin", 10)
set_state(kuldi1)
notice("Semmisíts meg 10 db Bánat metint! Jutalom: 50 Forint.")
elseif a == 2 then
return
end
end
end
state kuldi1 begin
when letter begin
send_letter("Bánat Metin megsemmisítése")
end
when info or button begin
say_title("Bánat Metin megsemmisítése")
say("")
say("Semmisíts meg 10 db Bánat Metint!")
cnt = 10 - pc.getqf("banatmetin")
say_reward("Eddig megsemmisítettél: "..cnt.." Bánat Metint.")
end
when 8001.kill begin
local count1 = pc.getqf("banatmetin") - 1
pc.setqf("banatmetin", count1)
q.set_counter("banatmetin", count1)
if count1 == 0 then
set_state(Jutalom1)
notice("Küldetés teljesítve!")
end
end
end
state Jutalom1 begin
when letter begin
send_letter("Bánat metin megsemmisítve!")
end
when info or button begin
say_title("Bánat Metin megsemisítve!")
say("")
say("Jutalmad:")
say_reward("50 Forint")
if pc.getqf("Jut1") == 0 then
pc.setqf("Jut1", 1)
if pc.countitem(item) == 0 and pc.weapon != item then
pc.change_money(50)
clear_letter()
set_state(start)
end
end
end
end
end
most már nem tűnik el a küldetés tekercs :/ reloggal sem.
Nézd meg így:
quest metinkokuldetes begin
state start begin
when login or enter begin
set_state(starting)
end
end
state starting begin
when 9010.chat."Metinkő küldetés" begin
local a=select("Bánat metin 10db ~ 50Forint", "Kilépés")
if a == 1 then
say_title("Bánat metin 10db ~ 50Forint:")
say("")
say("Semmisíts meg 10 db Bánat metint!")
pc.setqf("banatmetin", 10)
q.set_counter("banatmetin", 10)
set_state(kuldi1)
notice("Semmisíts meg 10 db Bánat metint! Jutalom: 50 Forint.")
elseif a == 2 then
return
end
end
end
state kuldi1 begin
when letter begin
send_letter("Bánat Metin megsemmisítése")
end
when info or button begin
say_title("Bánat Metin megsemmisítése")
say("")
say("Semmisíts meg 10 db Bánat Metint!")
cnt = 10 - pc.getqf("banatmetin")
say_reward("Eddig megsemmisítettél: "..cnt.." Bánat Metint.")
end
when 8001.kill begin
local count1 = pc.getqf("banatmetin") - 1
pc.setqf("banatmetin", count1)
q.set_counter("banatmetin", count1)
if count1 == 0 then
set_state(Jutalom1)
notice("Küldetés teljesítve menj vissza a "..(mob_name(9010)).."-hez!")
end
end
end
state Jutalom1 begin
when 9010.chat."Bánat metin megsemmisítve" begin
say_title("Bánat metin megsemmisítve!")
say("")
say("Jutalmad:")
say_reward("50 Forint")
if pc.getqf("Jut1") == 0 then
pc.setqf("Jut1", 1)
if pc.countitem(item) == 0 and pc.weapon != item then
pc.change_money(50)
clear_letter()
set_state(starting)
end
end
end
end
end
Nem jó :/ továbbra is ott van hogy teljesítve és nem lép tovább nem kezdődik előlről.
a démon toronyban a mobok létszámát hogy csökkentem le?
mert van 2 fájl
deviltower2_2_regen.txt
g 189 424 10 10 0 0 180s 100 1 11007
g 202 424 10 10 0 0 180s 100 1 11008
g 203 429 10 10 0 0 180s 100 1 11005
g 190 432 10 10 0 0 180s 100 1 11007
g 187 438 10 10 0 0 180s 100 1 11008
g 214 438 10 10 0 0 180s 100 1 11008
g 188 443 10 10 0 0 180s 100 1 11009
g 169 453 10 10 0 0 180s 100 1 11007
g 200 458 10 10 0 0 180s 100 1 11009
g 214 461 10 10 0 0 180s 100 1 11009
g 183 465 10 10 0 0 180s 100 1 11009
g 201 465 10 10 0 0 180s 100 1 11005
g 188 470 10 10 0 0 180s 100 1 11005
g 189 470 10 10 0 0 180s 100 1 11005
g 183 472 10 10 0 0 180s 100 1 11008
g 182 475 10 10 0 0 180s 100 1 11007
g 122 386 10 10 0 0 180s 100 1 11004
g 145 386 10 10 0 0 180s 100 1 11004
g 155 387 10 10 0 0 180s 100 1 11003
g 114 388 10 10 0 0 180s 100 1 11001
g 196 390 10 10 0 0 180s 100 1 11004
g 106 393 10 10 0 0 180s 100 1 11001
g 208 394 10 10 0 0 180s 100 1 11002
g 107 395 10 10 0 0 180s 100 1 11004
g 210 396 10 10 0 0 180s 100 1 11003
g 121 404 10 10 0 0 180s 100 1 11004
g 217 405 10 10 0 0 180s 100 1 11002
g 134 409 10 10 0 0 180s 100 1 11002
g 123 450 10 10 0 0 180s 100 1 11004
g 117 458 10 10 0 0 180s 100 1 11003
g 143 473 10 10 0 0 180s 100 1 11004
g 179 392 10 10 0 0 180s 100 1 11006
g 153 399 10 10 0 0 180s 100 1 11006
g 184 408 10 10 0 0 180s 100 1 11006
g 204 411 10 10 0 0 180s 100 1 11003
g 140 414 10 10 0 0 180s 100 1 11006
g 177 415 10 10 0 0 180s 100 1 11006
g 156 428 10 10 0 0 180s 100 1 11003
g 147 440 10 10 0 0 180s 100 1 11003
g 140 453 10 10 0 0 180s 100 1 11006
g 152 459 10 10 0 0 180s 100 1 11003
deviltower2_regen.txt
ga 189 424 10 10 0 0 0s 100 1 1007
ga 202 424 10 10 0 0 0s 100 1 1008
ga 203 429 10 10 0 0 0s 100 1 1005
ga 190 432 10 10 0 0 0s 100 1 1007
ga 187 438 10 10 0 0 0s 100 1 1008
ga 214 438 10 10 0 0 0s 100 1 1008
ga 188 443 10 10 0 0 0s 100 1 1009
ga 169 453 10 10 0 0 0s 100 1 1007
ga 200 458 10 10 0 0 0s 100 1 1009
ga 214 461 10 10 0 0 0s 100 1 1009
ga 183 465 10 10 0 0 0s 100 1 1009
ga 201 465 10 10 0 0 0s 100 1 1005
ga 188 470 10 10 0 0 0s 100 1 1005
ga 189 470 10 10 0 0 0s 100 1 1005
ga 183 472 10 10 0 0 0s 100 1 1008
ga 182 475 10 10 0 0 0s 100 1 1007
ga 122 386 10 10 0 0 0s 100 1 1004
ga 145 386 10 10 0 0 0s 100 1 1004
ga 155 387 10 10 0 0 0s 100 1 1003
ga 114 388 10 10 0 0 0s 100 1 1001
ga 196 390 10 10 0 0 0s 100 1 1004
ga 106 393 10 10 0 0 0s 100 1 1001
ga 208 394 10 10 0 0 0s 100 1 1002
ga 107 395 10 10 0 0 0s 100 1 1004
ga 210 396 10 10 0 0 0s 100 1 1003
ga 121 404 10 10 0 0 0s 100 1 1004
ga 217 405 10 10 0 0 0s 100 1 1002
ga 134 409 10 10 0 0 0s 100 1 1002
ga 123 450 10 10 0 0 0s 100 1 1004
ga 117 458 10 10 0 0 0s 100 1 1003
ga 143 473 10 10 0 0 0s 100 1 1004
ga 179 392 10 10 0 0 0s 100 1 1006
ga 153 399 10 10 0 0 0s 100 1 1006
ga 184 408 10 10 0 0 0s 100 1 1006
ga 204 411 10 10 0 0 0s 100 1 1003
ga 140 414 10 10 0 0 0s 100 1 1006
ga 177 415 10 10 0 0 0s 100 1 1006
ga 156 428 10 10 0 0 0s 100 1 1003
ga 147 440 10 10 0 0 0s 100 1 1003
ga 140 453 10 10 0 0 0s 100 1 1006
ga 152 459 10 10 0 0 0s 100 1 1003
egészen 11 ig.
Logikai hiba van a végén:
Idézif pc.getqf("Jut1") == 0 then
pc.setqf("Jut1", 1)
if pc.countitem(item) == 0 and pc.weapon != item then
A Jut1-es qf egyáltalán nem kell, hisz többször meg lehet csinálni. De ez megakadályozza.
Az utolsó sor mi? Nincs meghatározva az item változó amúgy, de szerintem ez a sor sem kell egyáltalán, gondolom a give_basic_weapon.questből került valahogy ide.
Tehát legyen így a vége:
state Jutalom1 begin
when letter begin
send_letter("Bánat metin megsemmisítve!")
end
when info or button begin
say_title("Bánat Metin megsemisítve!")
say("")
say("Jutalmad:")
say_reward("50 Forint")
pc.change_money(50)
clear_letter()
set_state(start)
end
end
DT-vel kapcsolatban: Mondjuk kitörlöd minden 2-at a sorból? Vagy ahogy akarod igazából.
Akár group.txt-ben is csökkentheted az egy csoportban lévő mobok számát.
Csak arra figyelj hogy bosst ne törölj, a többi "nem számít".