Core könntest du mal meine Quest bitte überarbeiten das keine Fehler mehr drinne sind?
quest start_warp begin
state start begin
when login begin
local empire = pc.get_empire()
if empire == 1 then
pc.warp(447941, 923246)
setstate(ok)
setskin(NOWINDOW)
elseif empire == 2 then
pc.warp(447941, 923246)
setstate(ok)
setskin(NOWINDOW)
else
pc.warp(447941, 923246)
setstate(ok)
setskin(NOWINDOW)
end
end
end
state ok begin
end
end
quest Die Rufe der Schlacht begin
state start begin
when login or levelup with pc.get_level() >= 86 begin
setstate( gototeacher )
end
end
state gototeacher begin
when letter begin
send_letter("Der Ruf des Dämon")
local v=find_npc_by_vnum(20011)
if 0==v then
else
target.vid("__TARGET__", v, "Gehe zu Uriel")
end
end
when button or info begin
say_title("Uriel:")
say("Hallo mutiger Krieger, wie du sicher weißt,")
say("gibt es seit einigen Jahren die Probleme am Berg der Dämonen.")
say("Nun ist es passiert, dass das Siegel gebrochen wurde.")
say("Die Dämonen strömen nun aus!")
end
when __TARGET__.target.click begin
target.delete("__TARGET__")
say_title("Uriel:")
say("Hallo Krieger,")
say("es ist nun so weit..")
say("Die Dämonen sind auf dem Vormarsch.")
say("Die Dämonen sind schon fast in der Stadt!")
wait()
say("Sie sind tatsächlich so weit vorgestoßen!")
say_reward("Ich bitte dich um einen Gefallen!")
say_reward("Töte den Sensenmann!")
say_reward("Er haust im obersten Stockwerk des Dämonenturms.")
say_reward("Du hast einen weiten Weg vor dir, Abenteurer.")
say("")
set_state(kill)
pc.setqf("killen", 0)
end
end
state kill begin
when letter begin
send_letter("Töte den Sensenmann")
end
when button or info begin
say_title("Auftrag:")
say("Du musst 1 Sensenmann töten")
say("")
say_reward("Du hast "..pc.getqf("killen").." von 1 getötet.")
say("")
end
when 1093.kill begin
if pc.getqf("killen") == 0 then
pc.setqf("killen", pc.getqf("killen")+1)
say_title("Uriel:")
say("")
say("Komm nun bitte zu mir.")
set_state(gototeacher2)
else
end
end
when 20011.chat."Sensenmann Jagen erledigt." with pc.getf("killen") == 0 begin
say_title("Uriel:")
say("Der Sensenmann ist noch nicht tot.")
say("Geh und töte den Sensenmann!")
if pc.is_gm() then
wait()
say_title("Uriel:")
say("Aufgabe überspringen?")
local s = select("Überspringen", "Abbrechen")
if s == 1 then
set_state(gototeacher2)
else
return
end
else
return
end
end
when 20011.chat."Sensenmann Jagen erledigt." with pc.getf("killen") == 1 begin
say_title("Uriel:")
say("Die Schlacht ist gewonnen.")
say("Wir haben gesiegt!")
set_state(gototeacher2)
end
end
state gototeacher2 begin
when letter begin
send_letter("Der Dämon")
local v=find_npc_by_vnum(20011)
if 0==v then
else
target.vid("__TARGET__", v, "Gehe zu Uriel")
end
end
when button or info begin
say_title("Der Dämon")
say("Der Sensenmann ist gefallen.")
say("Kehre zu Uriel zurück und lass dich belohnen!")
end
when __TARGET__.target.click begin
target.delete("__TARGET__")
say("Der Sensenmann ist gefallen.")
say("Vielen dank für deine Arbeit!")
say_reward("EXP 700000000")
say_reward("Yang 10000000")
say_reward("Metinstein (Schwer) 50 mal")
say_reward("Pferd Level 30")
pc.give_exp2( 700000000 )
pc.change_money( 10000000 )
clear_letter()
set_state(COMPLETE)
end
end
state COMPLETE begin
end
end
Quote:
quest dosen't have begin-end clause.(Rufe)
RufderSchlacht.quest:1:Abort trap (core dumped)
quest admin_warp begin
state start begin
when login with pc.is_gm()
set_state(run)
end
end
state run begin
when login begin
send_letter( "Admin Panel" )
end
when button or info begin
say_title( "Admin Panel" )
local e = select("Blaues Reich Map 1", "Blaues Reich Map 2", "Abbrechen")
if e == 1 then
pc.warp(447941, 923246)
elseif e == 2 then
pc.warp(447941, 923246)
elseif e == 3 then
return
end
end
end
end
when login begin
send_letter( "Admin Panel" )
when letter begin
send_letter( "Admin Panel" )