Sziasztok. Itt mi lehet a hiba? :( Nem tudok rájönni sehogy. Remélem, tudtok segíteni.
Idézquest csatametin_kill begin
state start begin
when login with pc.level >= 15 begin
set_state (informaciok)
end
end
state informaciok begin
when letter begin
send_letter ( "Vadász küldetés I." )
end
when button or info begin
say_title ( "Küldetés tekercs: " )
say( "A városban híredet hallottam," )
say( "hogy te vagy a legjobb. " )
say( "Ezért kapsz egy speciális feladatot." )
say( "Ez amit adok kezdésnek nem nehéz" )
say( "így nem muszáj csoportokba fejlődnöd" )
say( "Ölj meg 15 Csata metint 30 perc alatt," )
say_reward( ""..mob_name("8003").." kell nekem!" )
end
end
when letter begin
send_letter( "Vadász küldetés I." )
end
when button or info begin
say_title( "Vadász küldetés I.: " )
say( "Mindössze 30 perced van ahhoz," )
say( "hogy leölj 15 darab Csata metint!" )
say( "Ha nem végzel időben , a küldetés elbukik " )
say( "és újra kezdheted a küldetést." )
set_state ( test )
end
state test begin
when letter begin
q.set_counter( "Csata metinek", 15-pc.getqf("kill_count"))
end
when 8003.party_kill begin
pc.setqf("kill_count", pc.getqf("kill_count")+1)
q.set_counter( "Csata metinek" , 15-pc.getqf("kill_count"))
if get_time() >= pc.getqf("limit_time") then
set_state(failure)
end
end
when letter begin
q.set_clock(" Hátralévő idő: ", pc.getqf("limit_time")-get_time())
end
end
state failure begin
when letter begin
send_letter( "Nem sikerült" )
end
when button or info begin
say_title( "Sajnálom. Nem sikerült" )
say( "leölnöd 15 Csata metint, így a küldetés nem sikerült." )
say( "Újra kell kezdened a küldetést, hogy" )
say( "megvédd a hírnevedet." )
say( "Sok sikert!" )
end
end
when 8003.party_kill with pc.getqf("kill_count") >= 15 and pc.getqf("kill_count") >= 15 and pc.getqf("limit_time")>=get_time() begin
chat("A küldetést befejezted!")
set_state(successful)
end
state successful begin
when letter begin
send_letter( "Sikerült!" )
end
when button or info begin
say_title( "Vadász küldetés I.:" )
say("Sikeresen befejezted a küldetést." )
say("A munkádért nem marad el a jutalmad:" )
say_reward( "Élet gyümölcse" )
say_reward( "500.000 Yang" )
pc.give_item2(71107, 1)
pc.changegold(500000)
clear_letter()
set_state(__COMPLETE__)
end
end
state __COMPLETE__ begin
end
end
Ugyanazon a staten belül 2db when button or info begin van, ez könnyen bezavarhat, de okosabbak lehetnénk, ha elmondanád, mi a konkrét probléma. Nem futtatja le a qc (ha igen, akkor a hibaüzenetet is mellékelhetnéd), vagy nem teljesíti ingame a követelményeket a quest?
qc-nál visszadobja, ezzel a kóddal:
expecting 'state'
csatametin_kill.quest:24:Abort (Core dumped)
Akkor tök jól beletrafáltam. A második lettert egy új stateben kell kezdeni, főleg, hogy az előzőt addigra le is zártad. Arra figyelni kell, hogy legyen a questnek olyan pontja is, ahol átdob abba a statebe. Nem igazán értem, hogy akarod, hogy ez működjön, szóval kicsit át kell majd gondolni előtte.
Talán így jó lesz a quest-ed:
[spoiler]
quest csatametin_kill begin
state start begin
when login with pc.level >= 15 begin
set_state (informaciok)
end
end
state informaciok begin
when letter begin
send_letter ( "Vadász küldetés I." )
end
when button or info begin
say_title ( "Küldetés tekercs: " )
say( "A városban híredet hallottam," )
say( "hogy te vagy a legjobb. " )
say( "Ezért kapsz egy speciális feladatot." )
say( "Ez amit adok kezdésnek nem nehéz" )
say( "így nem muszáj csoportokba fejlődnöd" )
say( " Ölj meg 15 Csata metint 30 perc alatt," )
say_reward( ""..mob_name("8003").." kell nekem!" )
end
when letter begin
send_letter( "Vadász küldetés I." )
end
when button or info begin
say_title( "Vadász küldetés I.: " )
say( "Mindössze 30 perced van ahhoz," )
say( "hogy leölj 15 darab Csata metint!" )
say( "Ha nem végzel időben , a küldetés elbukik " )
say( "és újra kezdheted a küldetést." )
set_state (test)
end
state test begin
when letter begin
q.set_counter( "Csata metinek", 15-pc.getqf("kill_count"))
q.set_clock(" Hátralévő idő: ", pc.getqf("limit_time")-get_time())
end
when 8003.party_kill begin
pc.setqf("kill_count", pc.getqf("kill_count")+1)
q.set_counter( "Csata metinek" , 15-pc.getqf("kill_count"))
if get_time() >= pc.getqf("limit_time") then
set_state(failure)
end
end
when 8003.party_kill with pc.getqf("kill_count") >= 15 and pc.getqf("kill_count") >= 15 and pc.getqf("limit_time")>=get_time() begin
chat("A küldetést befejezted!")
set_state(successful)
end
end
state failure begin
when letter begin
send_letter( "Nem sikerült" )
end
when button or info begin
say( "Sajnálom. Nem sikerült" )
say( "leölnöd 15 Csata metint, így a küldetés nem sikerült." )
say( "Újra kell kezdened a küldetést, hogy" )
say( "megvédd a hírnevedet." )
say( "Sok sikert!" )
set_state(informaciok)
return
end
end
state successful begin
when letter begin
send_letter( "Sikerült!" )
end
when button or info begin
say_title( "Vadász küldetés I.:" )
say("Sikeresen befejezted a küldetést." )
say("A munkádért nem marad el a jutalmad:" )
say_reward( "Élet gyümölcse" )
say_reward( "500.000 Yang" )
pc.give_item2(71107, 1)
pc.changegold(500000)
clear_letter()
set_state(__COMPLETE__)
end
end
state __COMPLETE__ begin
end
end
[/spoiler]