Du musst glaub ich für beide eine eigene Quest schreiben...Quote:
Kleines Problem bei der Phönix Quest.
Ich kann den Eisphönix & Feuerphönix gleichzeitig rufen , ich finde den Fehler aber nicht :> ...
Code:quest phoenix begin state start begin when 53001.use with pc.getqf("icephoenix","azrael") == 0 begin if pc.getqf("phoenix_fly") == 0 then local old_horse_name = horse.get_name() ; if string.len(old_horse_name) == 0 then say_title("Feuerphönix-Siegel") say("Es ist ein Problem beim rufen des Feuerphönix") say("aufgetreten. Deine Haustiere haben noch nicht") say("einen Namen erhalten. Du solltest ihnen einen") say("Namen geben, bevor du solche mächtige Tiere") say("wie den Feuerphönix rufst. Dafür gibt es einen") say("ganz besonderen Gegenstand bei der Gemicht-") say("warenhändlerin zu einem günstigen Preis.") return end chat("Dein mächtiger Feuerphönix wurde gerufen!") local your_horse_level = horse.get_level() pc.setqf("horse_level_save", your_horse_level) pc.setqf("phoenix_fly", 1) pc.setqf("firephoenix", 1) affect.add_collect(apply.MAX_HP, 5000, 60*60*8) affect.add_collect(apply.ATT_BONUS_TO_MONSTER, 18, 60*60*8) affect.add_collect(apply.CRITICAL_PCT, 30, 60*60*8) horse.set_level("22") horse.unsummon() horse.summon() horse.unride() else chat("Dein Feuerphönix verabschiedet sich nun von dir!") affect.remove_collect(apply.MAX_HP, 5000, 60*60*8) affect.remove_collect(apply.ATT_BONUS_TO_MONSTER, 18, 60*60*8) affect.remove_collect(apply.CRITICAL_PCT, 30, 60*60*8) horse.unsummon() pc.setqf("phoenix_fly", 0) pc.setqf("firephoenix", 0) local horse_settings = pc.getqf("horse_level_save") horse.set_level(horse_settings) end end when logout or login with pc.getqf("phoenix_fly") == 1 begin pc.setqf("phoenix_fly", 0) pc.setqf("firephoenix", 0) local horse_settings = pc.getqf("horse_level_save") horse.set_level(horse_settings) chat("Dein Feuerphönix ging alleine fort!") affect.remove_collect(apply.MAX_HP, 5000, 60*60*8) affect.remove_collect(apply.ATT_BONUS_TO_MONSTER, 18, 60*60*8) affect.remove_collect(apply.CRITICAL_PCT, 30, 60*60*8) end when 53003.use with pc.getqf("firephoenix","azrael") == 0 begin if pc.getqf("phoenix_2_fly") == 0 then local old_horse_name = horse.get_name() ; if string.len(old_horse_name) == 0 then say_title("Eisphönix-Siegel") say("Es ist ein Problem beim rufen des Eisphönix") say("aufgetreten. Deine Haustiere haben noch nicht") say("einen Namen erhalten. Du solltest ihnen einen") say("Namen geben, bevor du solche mächtige Tiere") say("wie den Eisphönix rufst. Dafür gibt es einen") say("besonderen Gegenstand bei der Gemicht-") say("warenhändlerin zu einem günstigen Preis.") return end chat("Dein Freund der Eisphönix wurde gerufen!") local your_horse_level = horse.get_level() pc.setqf("horse_level_save", your_horse_level) pc.setqf("phoenix_2_fly", 1) pc.setqf("icephoenix", 1) affect.add_collect(apply.MAX_HP, 3000, 60*60*8) affect.add_collect(apply.DEF_GRADE_BONUS, 80, 60*60*8) affect.add_collect(apply.ATT_BONUS_TO_MONSTER, 12, 60*60*8) horse.set_level("23") horse.unsummon() horse.summon() horse.unride() else chat("Dein Eisphönix verabschiedet sich nun von dir!") affect.remove_collect(apply.MAX_HP, 3000, 60*60*8) affect.remove_collect(apply.DEF_GRADE_BONUS, 80, 60*60*8) affect.remove_collect(apply.ATT_BONUS_TO_MONSTER, 12, 60*60*8) horse.unsummon() pc.setqf("phoenix_2_fly", 0) pc.setqf("icephoenix", 0) local horse_settings = pc.getqf("horse_level_save") horse.set_level(horse_settings) end end when logout or login with pc.getqf("phoenix_2_fly") == 1 begin pc.setqf("phoenix_2_fly", 0) pc.setqf("icephoenix", 0) local horse_settings = pc.getqf("horse_level_save") horse.set_level(horse_settings) chat("Dein Eisphönix verlässt dich nun!") affect.remove_collect(apply.MAX_HP, 3000, 60*60*8) affect.remove_collect(apply.DEF_GRADE_BONUS, 80, 60*60*8) affect.remove_collect(apply.ATT_BONUS_TO_MONSTER, 12, 60*60*8) end when 53002.use with pc.getqf("firephoenix","icephoenix") == 0 begin if pc.getqf("azrael_fly") == 0 then local old_horse_name = horse.get_name() ; if string.len(old_horse_name) == 0 then say_title("Baby Azrael-Siegel") say("Es ist ein Problem beim rufen des Baby Azraels") say("aufgetreten. Deine Haustiere haben noch nicht") say("einen Namen erhalten. Du solltest ihnen einen") say("Namen geben, bevor du solche mächtige Tiere") say("wie den Baby Azrael rufst. Dafür gibt es einen") say("besonderen Gegenstand bei der Gemicht-") say("warenhändlerin zu einem günstigen Preis.") return end chat("Dein Freund der Baby Azrael wurde gerufen!") local your_horse_level = horse.get_level() pc.setqf("horse_level_save", your_horse_level) pc.setqf("azrael_fly", 1) pc.setqf("azrael", 1) affect.add_collect(apply.MAX_HP, 10000, 60*60*8) affect.add_collect(apply.ATTBONUS_HUMAN, 20, 60*60*8) affect.add_collect(apply.PENERATE_PCT, 25, 60*60*8) horse.set_level("24") horse.unsummon() horse.summon() horse.unride() else chat("Dein Baby-Azrael verabschiedet sich nun von dir!") affect.remove_collect(apply.MAX_HP, 10000, 60*60*8) affect.remove_collect(apply.ATTBONUS_HUMAN, 20, 60*60*8) affect.remove_collect(apply.PENERATE_PCT, 25, 60*60*8) horse.unsummon() pc.setqf("azrael_fly", 0) pc.setqf("azrael", 0) local horse_settings = pc.getqf("horse_level_save") horse.set_level(horse_settings) end end when logout or login with pc.getqf("azrael_fly") == 1 begin pc.setqf("azrael_fly", 0) pc.setqf("azrael", 0) local horse_settings = pc.getqf("horse_level_save") horse.set_level(horse_settings) chat("Dein Baby-Azrael verlässt dich nun!") affect.remove_collect(apply.MAX_HP, 10000, 60*60*8) affect.remove_collect(apply.ATTBONUS_HUMAN, 20, 60*60*8) affect.remove_collect(apply.PENERATE_PCT, 25, 60*60*8) end end end
Also 1. Mal für den Roten und dann die Gleich mit einem anderen Item für den Blauen... (als Beispiel)
Ich hab da ein kleines problem mit 3 Quests es würde mich freuen wenn jemand etwas darüber weis wie ich es behebe :D
In V-Box kommt das:
assertion failure : nested==0
gelditem.quest:20:Abrot trap (core dumped)
error occured on compile gelditem.quest
PHP Code:
quest gelditem begin
state start begin
when 71144.use begin
say_title("Geldtruhe")
say("")
say("Diese Truhe enthält 50kk Yang!")
say("Willst du das Geld abheben?")
say("")
local main_set = select("Ja Bitte","Nein Danke")
if main_set == 2 then
say("Okay dann bewahre ich dein Geld weiter!")
return
end
if main_set == 1 then
say_title("Geldtruhe:")
say("Du willst dein Geld?")
say("Hier hast du dein Geld.")
pc.change_money(50000000)
end
end
PHP Code:
quest gelditem begin
state start begin
when 30160.use begin
say_title("Notitzen der Erfahrung")
say("")
say("Diese Truhe enthält 10kk Erfahrung!")
say("Willst du die Notitzen lesen?")
say("")
local main_set = select("Ja Bitte","Nein Danke")
if main_set == 2 then
say("Okay dann bleib doch unerfahren!")
return
end
if main_set == 1 then
say_title("Notitz:")
say("Glückwunsch! Es dürfen nicht alle lesen.")
pc.give_exp2(10000000)
end
end
PHP Code:
quest gm_panel begin
state start begin
when 70001.use begin
say_title("BloodStorm2 GM-panel")
say("")
say_reward("Willkommen im GM-panel von BS2")
say_reward("Wie kann ich dir "..pc.get_name().." weiterhelfen")
say("")
local main_set = select("Support anmelden", "Support abmelden", "Support AFK", "Abbrechen")
if main_set == 5 then
say("Nagut, vielleicht beim nächsten mal")
return
end
if main_set == 1 then
command("n ".. pc.get_name() .." ist nun Online.")
command("n ".. pc.get_name() .." meldet sicht am Support an")
command("n Ihr könnt ihn/Sie nun bei Fragen oder Problemen kontaktieren.")
end
if main_set == 2 then
command("n ".. pc.get_name() .." meldet sich vom Support ab")
command("n ".. pc.get_name() .." geht nun Offline")
command("n Er/Sie wünscht euch noch Viel Spaß auf BloodStorm2.")
end
if main_set == 3 then
command("n ".. pc.get_name() .." geht nun AFK.")
command("n ".. pc.get_name() .." meldet sicht am Support vorerst ab")
command("n Er/Sie Meldet sich wenn er/Sie wieder da ist.")
end
end
end
end
end
end