assertion failure : nested==0 gm_panel.quest:36:Error occured on compile gm_panel.quest
PHP Code:
quest gm_panel begin state start begin when letter with pc.is_gm() begin send_letter("GM Panel") end when button or info begin say_title("Willkommen im GM Panel") say_reward("Bitte wähle deine Option") local head = select("Online Meldung", "Abbrechen")
if head == 1 then say_title("Online Meldung") say("Hier kannst du eine Meldung auswählen die du senden kannst") say("wenn du den Spielern sagen möchtest das du da bist oder noch") say("erreichbar bist") say_reward("Bitte wähle deine Option") local on = select("... ist Online", "... ist noch erreichbar", "... verabschieded sich", "Abbrechen")
if on == 1 then notice_all("".. pc.get_name() .." ist online") notice_all("Er/Sie steht für eure Fragen zur verfügung")
elseif on == 2 then notice_all("".. pc.get_name() .." steht euch immer noch zur verfügung.")
elseif on == 3 then notice_all("".. pc.get_name() .." verabschieded sich") notice_all("und wünscht euch noch viel spaß auf Avalon.")
elseif on == 4 then send_letter("Du hast die Auswahl abgebrochen.") return end end end end end
Fehlermeldung:
Bei den meisten Spielern geht es bei ein paar geht es nicht.
Fehlermeldungen werden nicht angezeigt in Putty
Ich bitte um hilfe
Code:
quest multiring begin
state start begin
when 70007.use begin
say_title("Warpring:")
local main=select("Warpring-Funktion", "Lager-Funktion", "Shopping-Funktion", "Tastensperre")
if 1==main then
say_title("Warpring-Funktion:")
local s=select("Map1", "Map2", "Orktal (Mitte)", "Eisland (Mitte)", "Wüste (Oase)", "Weitere", "Beenden")
if 1==s then
say_title("Warpring-Funktion:")
local a=select ("Rotes", "Gelbes", "Blaues", "Beenden")
if 1==a then
pc.warp(469300, 964200)
elseif 2==a then
pc.warp(55700, 157900)
elseif 3==a then
pc.warp(969600, 278400)
elseif 4==a then
return
end
elseif 2==s then
say_title("Warpring-Funktion:")
local a=select ("Rotes", "Gelbes", "Blaues", "Beenden")
if 1==a then
pc.warp(353003, 882460)
elseif 2==a then
pc.warp(145582, 240227)
elseif 3==a then
pc.warp(863589, 246139)
elseif 4==a then
return
end
elseif 3==s then
pc.warp(332885, 745737)
elseif 4==s then
pc.warp(435705, 215084)
elseif 5==s then
pc.warp(296758, 547724)
elseif 6==s then
if pc.get_level() < 75 then
say_title("Weitere Maps:")
local a=select ("Feuerland (Teleporter)", "Spinnendungeon", "Dämonenturm", "Beenden")
if 1==a then
pc.warp(600813, 687144)
elseif 2==a then
say_title("Warping-Funktion:")
local sd = select ("Spinnendungeon 1", "Spinnendungeon 2", "Spinnenwald in Wartung in Wartung", "Beenden")
if 1==sd then
pc.warp(51200, 486400)
elseif 2==sd then
pc.warp(665600, 435200)
elseif 3==sd then
pc.warp(4168320, 4173180)
elseif 4==sd then
return
end
elseif 3==a then
pc.warp(590516, 110606)
elseif 4==a then
return
end
elseif pc.get_level() < 90 then
say_title("Weitere Maps:")
local a=select ("Feuerland (Teleporter)", "Spinnendungeon", "Dämonenturm", "Seelengrotte", "Event Map", "Königsraum", "Beenden")
if 1==a then
pc.warp(600813, 687144)
elseif 2==a then
say_title("Warping-Funktion:")
local sd = select ("Spinnendungeon 1", "Spinnendungeon 2", "Spinnenwald in Wartung in Wartung", "Beenden")
if 1==sd then
pc.warp(51200, 486400)
elseif 2==sd then
pc.warp(665600, 435200)
elseif 3==sd then
pc.warp(4168320, 4173180)
elseif 4==sd then
return
end
elseif 3==a then
pc.warp(590516, 110606)
elseif 4==a then
say_reward("In welche Seelengrotte möchtest du denn?")
local b=select ("Seelengrotte 1", "Seelengrotte 2", "Beenden")
if 1==b then
pc.warp(10086, 1213190)
elseif 2==b then
pc.warp(241682, 1275028)
elseif 3==b then
return
end
elseif 5==a then
pc.warp(44445978, 44445878)
elseif 6==a then
pc.warp(92110, 97047)
elseif 7==a then
return
end
elseif pc.get_level() < 110 then
say_title("Weitere Maps:")
local a=select ("Feuerland (Teleporter)", "Spinnendungeon", "Dämonenturm", "Seelengrotte", "Areal der Steine", "Königsraum", "Weitere", "Beenden")
if 1==a then
pc.warp(600813, 687144)
elseif 2==a then
say_title("Warping-Funktion:")
local sd = select ("Spinnendungeon 1", "Spinnendungeon 2", "Spinnenwald in Wartung", "Beenden")
if 1==sd then
pc.warp(51200, 486400)
elseif 2==sd then
pc.warp(665600, 435200)
elseif 3==sd then
pc.warp(4168320, 4173180)
elseif 4==sd then
return
end
elseif 3==a then
pc.warp(590516, 110606)
elseif 4==a then
say_reward("In welche Seelengrotte möchtest du denn?")
local b=select ("Seelengrotte 1", "Seelengrotte 2", "Beenden")
if 1==b then
pc.warp(10086, 1213190)
elseif 2==b then
pc.warp(241682, 1275028)
elseif 3==b then
return
end
elseif 5==a then
pc.warp(44445978, 44445878)
elseif 6==a then
pc.warp(92110, 97047)
elseif 7==a then
say_title("Warpring-Funktion:")
local c=select ("Verkommenes Land", "Beenden")
if 1==c then
pc.warp(2206207, 2231958)
elseif 2==c then
return
end
elseif 7==a then
return
end
elseif pc.get_level() >= 110 then
say_title("Weitere Maps:")
local a=select ("Feuerland (Teleporter)", "Spinnenmaps", "Dämonenturm", "Seelengrotte", "Areal der Steine", "Königsraum", "Weitere", "Beenden")
if 1==a then
pc.warp(600813, 687144)
elseif 2==a then
say_title("Warping-Funktion:")
local sd = select ("Spinnendungeon 1", "Spinnendungeon 2", "Spinnenwald in Wartung", "Beenden")
if 1==sd then
pc.warp(51200, 486400)
elseif 2==sd then
pc.warp(665600, 435200)
elseif 3==sd then
pc.warp(4168320, 4173180)
elseif 4==sd then
return
end
elseif 3==a then
pc.warp(590516, 110606)
elseif 4==a then
say_reward("In welche Seelengrotte möchtest du denn?")
local b=select ("Seelengrotte 1", "Seelengrotte 2", "Beenden")
if 1==b then
pc.warp(10086, 1213190)
elseif 2==b then
pc.warp(241682, 1275028)
elseif 3==b then
return
end
elseif 5==a then
pc.warp(44445978, 44445878)
elseif 6==a then
pc.warp(92110, 97047)
elseif 7==a then
say_title("Warpring-Funktion:")
local c=select ("Verkommenes Land", "Orkberg", "Pvpring", "Beenden")
if 1==c then
pc.warp(2206207, 2231958)
elseif 2==c then
pc.warp(35039765, 35085766)
elseif 3==c then
pc.warp(292600, 551400)
elseif 4==c then
return
end
elseif 8==a then
return
end
end
elseif 7==s then
return
end
elseif 2==main then
say_title("Lager-Funktion")
say("Hallo und Herzlich Willkomen!")
say("Ich bin deine Mobile Lager-Funktion.")
say("Ich kann dir überall dein Lager öffnen.")
say_reward("Möchtest du dein Lager öffnen?")
local lager=select("Ja", "Nein")
if 1==lager then
say_title("Lager-Funktion:")
say("Welches Lager möchtest du denn öffnen?")
local a=select("Normales Lager", "Itemshop Lager", "Beenden")
if 1==a then
game.open_safebox()
elseif 2==a then
game.open_mall()
elseif 3==a then
return
end
elseif 2==lager then
return
end
elseif 3==main then
say_title("Shopping-Funktion:")
say("Mit dieser Funktion kannst einen")
say("Multishop herbeirufen.")
say("Dieser Shop hat das zu bieten ,was du bestellst")
say("Also probier es einfach mal aus!")
say()
say("Aber denk dran:")
say()
say("Der Shop muss einmal geöffnet werden!")
say_reward("Sonst funktioniert das Handy nichtmehr!")
local s=select("Ok", "Nein")
if 1==s then
say("Shopping-Funktion:")
say_reward("Welchen Shop möchtes du öffnen?")
local shop=select("Tränke", "Itemshop", "HighLvl-Waffen", "High Lvl Rüssis", "Schmuckhandel", "Mehr Anzeigen", "Beenden")
if 1==shop then
mob.spawn(20024, pc.get_local_x(), pc.get_local_y(), 1, 1, 1)
set_state(waffen)
elseif 2==shop then
mob.spawn(20024, pc.get_local_x(), pc.get_local_y(), 1, 1, 1)
set_state(special)
elseif 3==shop then
mob.spawn(20024, pc.get_local_x(), pc.get_local_y(), 1, 1, 1)
set_state(rüstung)
elseif 4==shop then
mob.spawn(20024, pc.get_local_x(), pc.get_local_y(), 1, 1, 1)
set_state(gemi)
elseif 5==shop then
mob.spawn(20024, pc.get_local_x(), pc.get_local_y(), 1, 1, 1)
set_state(schmuck)
elseif 6==shop then
say_title("Shopping-Funktion")
say_reward("Welchen Shop möchtest du öffnen?")
local shop2=select("Pfeile", "Beenden")
if 1==shop2 then
mob.spawn(20024, pc.get_local_x(), pc.get_local_y(), 1, 1, 1)
set_state(pfeil)
elseif 2==shop2 then
return
end
elseif 7==shop then
return
end
elseif 2==s then
return
end
end
end
end
state waffen begin
when 20024.chat."Tränke" begin
npc.open_shop(23)
setskin(NOWINDOW)
npc.purge()
set_state(start)
end
end
state special begin
when 20024.chat."Itemshop" begin
npc.open_shop(3)
setskin(NOWINDOW)
npc.purge()
set_state(start)
end
end
state rüstung begin
when 20024.chat."HighLvl-Waffen" begin
npc.open_shop(15)
setskin(NOWINDOW)
npc.purge()
set_state(start)
end
end
state gemi begin
when 20024.chat."HighLvl-Rüssis" begin
npc.open_shop(16)
setskin(NOWINDOW)
npc.purge()
set_state(start)
end
end
state schmuck begin
when 20024.chat."Schmuck" begin
npc.open_shop(17)
setskin(NOWINDOW)
npc.purge()
set_state(start)
end
end
state pfeil begin
when 20024.chat."Pfeilhandel" begin
npc.open_shop(19)
setskin(NOWINDOW)
npc.purge()
set_state(start)
end
end
end
Das ist eine Multifunktion Quest.
Kann dir meine umgebaute multiring quest geben wenn du sie haben willst
Code:
quest leykaswarp begin
state start begin
when 70007.use begin
say_title("Wähle eine Option im Dein Servername Warpmenü!")
say("")
local selectmap = select("Teleport", "Userpanel", "Abbrechen")
if selectmap == 1 then
local x
local y
local t
local e = pc.get_empire()
say_title("Warpring")
say("Wohin möchtest du teleporiert werden?")
local s = select("Map1", "Map2", "Orktal", "Wüste", "Eisland", "Feuerland", "Weiter", "Abbrechen")
if s==7 then
say_title("Warpring")
say("Wohin möchtest du teleporiert werden?")
local p = select("Dämonenturm", "Spinnendungoen", "Geisterwald", "Roter Wald", "Land der Riesen", "Grotte der Verbannung", "Abbrechen")
if p==1 then
x="590400"
y="110500"
elseif p==2 then
x="91900"
y="525400"
elseif p==3 then
x="289000"
y="5800"
elseif p==4 then
say_title("Warpring")
say("Wohin möchtest du teleporiert werden?")
t = select("Anfang", "Ende", "Abbrechen")
if t==1 then
x="1119900"
y="70800"
elseif t==2 then
x="1119200"
y="7000"
end
elseif p==5 then
x="828100"
y="763400"
elseif p==6 then
x="284200"
y="809600"
end
elseif s==1 then
say_title("Warpring")
say("Wohin möchtest du teleporiert werden?")
t = select("Rotes Reich", "Gelbes Reich", "Blaues Reich", "Abbrechen")
if t==1 then
x="473900"
y="954600"
elseif t==2 then
x="63200"
y="166700"
elseif t==3 then
x="959600"
y="269700"
end
elseif s==2 then
say_title("Warpring")
say("Wohin möchtest du teleporiert werden?")
t = select("Rotes Reich", "Gelbes Reich", "Blaues Reich", "Abbrechen")
if t==1 then
x="352300"
y="882700"
elseif t==2 then
x="145700"
y="239800"
elseif t==3 then
x="863800"
y="246000"
end
elseif s==3 then
say_title("Warpring")
say("Wohin möchtest du teleporiert werden?")
t = select("Anfang", "Mitte", "Rek-Wiese", "Abbrechen")
if t==1 then
if e==1 then
x="402100"
y="673900"
elseif e==2 then
x="270400"
y="739900"
elseif e==3 then
x="321300"
y="808000"
end
elseif t==2 then
x="332700"
y="745600"
elseif t==3 then
x="282800"
y="792800"
end
elseif s==4 then
say_title("Warpring")
say("Wohin möchtest du teleporiert werden?")
t = select("Anfang", "Mitte", "Abbrechen")
if t==1 then
if e==1 then
x="217800"
y="627200"
elseif e==2 then
x="221900"
y="502700"
elseif e==3 then
x="344000"
y="502500"
end
elseif t==2 then
x="296300"
y="547500"
end
elseif s==5 then
say_title("Warpring")
say("Wohin möchtest du teleporiert werden?")
t = select("Anfang", "Mitte", "Abbrechen")
if t==1 then
if e==1 then
x="434200"
y="290600"
elseif e==2 then
x="375200"
y="174900"
elseif e==3 then
x="491800"
y="173600"
end
elseif t==2 then
x="436200"
y="215300"
end
elseif s==6 then
say_title("Warpring")
say("Wohin möchtest du teleporiert werden?")
t = select("Anfang", "Teleporter", "Abbrechen")
if t==1 then
if e==1 then
x="599400"
y="756300"
elseif e==2 then
x="597800"
y="622200"
elseif e==3 then
x="730700"
y="689800"
end
elseif t==2 then
x="600500"
y="687400"
end
end
if s!=8 or p!= 7 then
pc.warp(x, y)
end
elseif selectmap == 2 then
local teamselect = select("Team Liste", "Lager", "Abbrechen")
if teamselect == 4 then
return
elseif teamselect == 1 then
say("Dein Servername Team - Online Liste")
say("")
if game.get_event_flag("GM NAME")== 1 then
say("ist offline.")
else
say("ist online.")
end
say("")
if game.get_event_flag("GM NAME2")== 1 then
say_green("ist online")
else
say_red("ist offline")
end
say("")
if game.get_event_flag("GM NAME3")== 1 then
say_green("ist online")
else
say_red(" ist offline")
end
say("")
if game.get_event_flag("GM NAME4")== 1 then
say_green(" ist online")
else
say_red("ist offline")
end
say("")
if game.get_event_flag("GM NAME5")== 1 then
say_green("e ist online")
else
say_red(" ist offline")
end
elseif teamselect == 2 then
game.open_safebox()
setskin(NOWINDOW)
end
end
end
end
end
quest icerun begin
state start begin
when 9010.chat."Atlantis betreten" with pc.get_map_index() == 16 begin
say_title("Wächter von Atlantis:")
say("Ihr müsst ganz schön mutig sein")
say("hierher zu kommen.")
say("")
say_title("Ihr seid stark genug??")
say("")
say("Wollt ihr das vereiste Atlantis betreten?.")
say("")
local s = select("Aber klar!", "Nein, lieber nicht.")
if s == 1 then
--if party.get_near_count() >=5 then
--game.set_event_flag("besuchinheiligerhalle", game.get_event_flag("besuchinheiligerhalle")-1)
d.new_jump_all(208, 5106 , 4089)
d.regen_file("data/dungeon/icerun_regen.txt")
d.notice("Ungebetener Besuch!!")
d.notice("Verschwindet aus meinem Atlantis!")
d.notice("Wehe ihr berührt meinen Metin!")
--else
-- say_title("Wächter von Atlantis:")
-- say("Ihr müsst mit mindestens 6 Leuten")
-- say("in der Gruppe sein.")
-- say("")
-- say("Ihr seid aber nur "..party.get_near_count()+1.." Leute.")
-- say("Ich kann euch nicht reinlassen.")
-- return
--end
else
return
end
end
when 21552.chat."GM-Zutritt" with pc.get_map_index() == 207 and pc.is_gm() begin
say_title("Du kannst auch ohne Gruppe")
say_title("das vereiste Atlantis betreten.")
say("Wie ich sehe bist du stark genug =)")
say("Wollt ihr das vereiste Atlantis betreten?.")
say("")
local s = select("Aber klar!", "Nein, lieber nicht.")
if s == 1 then
d.new_jump_all(208, 5106 , 4089)
d.regen_file("data/dungeon/icerun_regen.txt")
d.notice("Ungebetener Besuch!!")
d.notice("Verschwindet aus meinem Atlantis!")
else
return
end
end
when 21552.chat."Heilige Halle verlassen" with pc.get_map_index() == 207 begin
say_title("Wächter von Atlantis:")
say("Ihr wollt die Heilige Halle verlassen?")
say("")
local s = select("Ja!", "Nein.")
if s == 1 then
local empire = pc.get_empire()
if empire == 1 then
pc.warp(474300,954800)
elseif empire == 2 then
pc.warp(63800,166400)
elseif empire == 3 then
pc.warp(959900,269200)
end
else
return
end
end
--when logout begin
-- if pc.get_map_index() == 207 then
-- game.set_event_flag("besuchinheiligerhalle", game.get_event_flag("besuchinheiligerhalle")-1)
-- end
--end
when login begin
--if pc.get_map_index() == 207 then
--game.set_event_flag("besuchinheiligerhalle", game.get_event_flag("besuchinheiligerhalle")+1)
--end
if pc.get_map_index() >= 2080000 and pc.get_map_index() < 2090000 then
pc.set_warp_location(204, 37743,37743)
end
end
when 21578.kill with pc.get_map_index()>= 2080000 and pc.get_map_index() < 2090000 begin
timer("erster_metin", 6)
d.notice("NEEEIIIN!!Mein Stein..!")
d.notice("Ich verfluche euch!")
d.notice("Los tapfere Krieger, erledigt die Eindringlinge!!!")
d.notice("Ich hoffe ihr tötet nicht alle meine tapferen Krieger!")
end
when erster_metin.timer begin
d.jump_all(5380 , 4122)
d.regen_file("data/dungeon/icerun1_regen.txt")
d.setf("keule", 0)
d.set_warp_at_eliminate(4, d.get_map_index(), (5000+432), (4000+122), "data/dungeon/icerun2_regen.txt")
--pc.give_item2(30003)
end
when 21581.chat."GM-Abkürzung BOSS" with pc.get_map_index() >= 2080000 and pc.get_map_index() < 2090000 and pc.is_gm() begin
say("Du kommst zum Bossraum")
wait()
npc.purge()
d.setf("statue", 5)
timer("ice_jump", 6)
end
when 21581.chat."Wolang des Weges?" with pc.get_map_index() >= 2080000 and pc.get_map_index() < 2090000 begin
say("...")
wait()
d.notice("Grantelbart:")
d.notice(".....")
d.notice("..Dieser Weg ist kalt..")
d.notice(".....")
d.notice("..Nehmt euch vor Neralex in Acht!....")
d.notice(".....")
d.notice("Neralex:")
d.notice("Was habt ihr hier verloren!")
d.notice("Sucht das Weite und zwar sofort!!")
npc.purge()
d.kill_all()
timer("erster_spruch", 10)
end
when erster_spruch.timer begin
d.jump_all(5000+685, 4000+82)
d.setf("insel1", 0)
d.setf("insel2", 0)
d.setf("insel3", 0)
d.setf("insel4", 0)
d.setf("alleinseln", 0)
d.regen_file("data/dungeon/icerun3_1_regen.txt")
d.notice("Besuche jede der 4 Inseln einmal. Beim wiederholten")
d.notice("erreichen einer Insel erscheinen Kämpfer die")
d.notice("dann getötet werden müssen, bevor man zur nächsten")
d.notice("Insel kommt.")
end
when 20350.chat."GM-Abkürzung Mini-Bossraum" with pc.get_map_index() >= 2080000 and pc.get_map_index() < 2090000 and pc.is_gm() begin
say("Du kommst zum Mini-Bossraum")
wait()
npc.purge()
timer("inseln_fertigg", 10)
end
when 20350.chat."Die 4 Inseln" with pc.get_map_index() >= 2080000 and pc.get_map_index() < 2090000 begin
npc.lock()
say_title("Nerolfrös:")
say("Ich kann euch auf eine andere")
say("Insel befördern. Bitte wähle eine aus:")
local s=select ("1","2","3","4","Abbruch")
if s<=4 then
local positions = {
{685, 82},
{590, 82},
{590, 177},
{685, 177},
}
local fish = number(1,4)
if d.getf("insel"..fish) < 1 then
d.setf("insel"..fish, 1)
d.setf("alleinseln", d.getf("alleinseln")+1)
d.kill_all()
if d.getf("alleinseln")==4 then
d.notice("Nerolfrös:")
d.notice("Dies war die letzte Insel.")
d.notice("Nun kann ich euch nicht mehr helfen.")
d.notice("Ihr müsst den Weg nun alleine finden.")
timer("inseln_fertig", 10)
return
end
d.notice("Nerolfrös:")
d.notice("Ihr wart bisher auf "..d.getf("alleinseln").." Inseln.")
d.notice("Ihr müsst auf allen vier einmal gewesen sein.")
d.regen_file("data/dungeon/icerun3_"..fish.."_regen.txt")
else
d.purge()
d.regen_file("data/dungeon/icerun3_"..fish.."more_regen.txt")
d.set_warp_at_eliminate(4, d.get_map_index(), 5000 + positions[fish][1], 4000 + positions[fish][2], "data/dungeon/icerun3_"..fish.."_regen.txt")
end
npc.unlock()
d.jump_all(5000+positions[fish][1], 4000+positions[fish][2])
else
npc.unlock()
return
end
end
when 101.kill with pc.is_gm() begin
chat("Dein Mapindex: "..pc.get_map_index())
end
when 30003.use with pc.in_dungeon begin
pc.remove_item(30003)
local empire = pc.get_empire()
if empire == 1 then
pc.warp(474300,954800)
elseif empire == 2 then
pc.warp(63800,166400)
elseif empire == 3 then
pc.warp(959900,269200)
end
end
when inseln_fertig.timer begin
timer("inseln_fertigg", 10)
d.notice("Neralex:")
d.notice("So Freunde!! Jetzt ist aber Schluß!")
d.notice("Ich will hier KEINEN mehr sehen!!!")
end
when inseln_fertigg.timer begin
local positionss = {
{473, 441},
{483, 451},
{473, 461},
{464, 451},
}
local fissh = number(1,4)
d.jump_all(5000+positionss[fissh][1], 4000+positionss[fissh][2])
d.regen_file("data/dungeon/icerun_small_boss.txt")
--d.jump_all(5000+122, 4000+89)
--d.exit_all()
end
when 2623.kill begin
d.notice("Neralex:")
d.notice("Komm geht nach Hause!!")
d.notice("Ihr seid ja absolut lächerlich!!!")
d.notice("Ihr schafft es nicht die Volvins zu töten um")
d.notice("ein Eismedallion auf die Säulen zu ziehen...")
d.regen_file("data/dungeon/icerun_statue.txt")
timer("miniboss", 10)
end
when miniboss.timer begin
d.setf("statue", 0)
d.setf("keulenmann", 0)
d.setf("keule", 1)
d.jump_all(5000+705, 4000+519)
end
when 21579.take with item.vnum == 90033 begin
npc.purge()
item.remove()
d.setf("keulenmann", 0)
d.setf("statue", d.getf("statue")+1)
timer("ice_jump", 6)
if d.getf("statue")==5 then
d.notice("Neralex:")
d.notice("Ihr denkt wohl, ich sehe euch nicht!!")
d.notice("Seid jetzt ruhig und geht nach Hause!!!")
d.setf("keule", 0)
end
end
when 2627.kill with d.getf("keule")==1 begin
d.setf("keulenmann", d.getf("keulenmann")+1)
if d.getf("keulenmann")== 9 then
game.drop_item("90033")
end
end
when ice_jump.timer begin
local positionsss = {
{754, 494},
{705, 459},
{754, 424},
{705, 389},
{144, 449},
}
local fisssh = d.getf("statue")
d.jump_all(5000+positionsss[fisssh][1], 4000+positionsss[fisssh][2])
if fisssh==5 then
timer("ice_boss1", 20)
d.spawn_mob(2636, 124, 446)
d.spawn_mob(2635, 124, 450)
d.notice("Neralex:")
d.notice("Ah, da seid ihr ja. Ich freue mich auf die Show!")
else
d.regen_file("data/dungeon/icerun4_"..fisssh.."_regen.txt")
end
--d.jump_all(5000+122, 4000+89)
--d.exit_all()
end
when ice_boss1.timer begin
d.notice("Los Valons!! Ergreift die Eindringlinge!!! ")
for i = 1, 132 do
local firts= number(138, 231)
local secodn= number(413, 483)
d.spawn_mob(2633, firts, secodn)
end
d.setf("schild", 1)
d.setf("schildmann" , 0)
end
when 2633.kill with d.getf("schild")==1 begin
d.setf("schildmann", d.getf("schildmann")+1)
d.notice("Noch "..120-d.getf("schildmann").." Wächter besiegen.")
if d.getf("schildmann")== 120 then
d.notice("Neralex:")
d.notice("Ihr denkt wohl, das war alles!!")
d.notice("Los Kristallfelsen!! Sperrt sie ein!!! ")
timer("ice_boss2", 15)
d.setf("schild", 0)
d.setf("kristallmann", 0)
end
end
when ice_boss2.timer begin
for i = 1, 220 do
local firts= number(138, 231)
local secodn= number(413, 483)
d.spawn_mob(21580, firts, secodn)
end
d.setf("kristall", 1)
end
when 21580.kill with d.getf("kristall")==1 begin
d.setf("kristallmann", d.getf("kristallmann")+1)
d.notice("Noch "..200-d.getf("kristallmann").." Kristalle zerschlagen.")
if d.getf("kristallmann")== 200 then
d.notice("Neralex:")
d.notice("WAS!? Ihr habt noch nicht genug?")
d.notice("Los Frau!! Geh die Kinder verprügeln!!!")
d.notice("Nerala:")
d.notice("-.-'")
timer("ice_boss3", 15)
d.setf("kristall", 0)
end
end
when ice_boss3.timer begin
d.purge()
d.spawn_mob(2624, 144, 449)
d.spawn_mob(2636, 124, 450)
d.setf("Nerala", 1)
end
when 2624.kill with d.getf("Nerala")==1 begin
d.notice("Neralex:")
d.notice("Wozu hat man heutzutage noch eine Frau...")
d.notice("Sie sind zu nichts Nutze!!!")
d.notice("Jetzt komme ich!!")
timer("ice_boss4", 15)
d.setf("Nerala", 0)
end
when ice_boss4.timer begin
d.purge()
d.spawn_mob(2625, 144, 449)
d.setf("Neralex", 1)
end
when 2625.kill with d.getf("Neralex")==1 begin
d.notice("Neralex:")
d.notice("Ich bin noch längst nicht besiegt...")
d.notice("Spürt meine Drachenmacht!!")
timer("ice_boss5", 5)
d.setf("Neralex", 0)
end
when ice_boss5.timer begin
d.purge()
d.spawn_mob(2620, 144, 449)
d.setf("Neralexdragon", 1)
end
when 2620.kill with d.getf("Neralexdragon")==1 begin
for i= 1, 100 do
game.drop_item("1")
end
game.drop_item("90032")
d.notice("Neralex:")
d.notice("OK...Ihr seid würdig.")
notice_all("".. pc.get_name() .." + Team haben den Ice-Run gemeistert!")
--notice_all("Sie haben Neralex besiegt und seine Truhe bekommen.")
d.setf("Neralex", 0)
d.spawn_mob(21601, 154, 449)
server_timer('iceruns_boss', 60, pc.get_map_index())
server_timer('iceruns_boss2', 120, pc.get_map_index())
server_timer('iceruns_boss3', 180, pc.get_map_index())
server_timer('iceruns_boss4', 240, pc.get_map_index())
server_timer('iceruns_boss5', 300, pc.get_map_index())
end
when 21601.chat."Belohnung abholen" with pc.in_dungeon() and pc.get_map_index() >= 2080000 and pc.get_map_index() < 2090000 begin
end
when iceruns_boss.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Noch vier Minuten bis zum Verlassen!")
end
end
when iceruns_boss2.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Noch drei Minuten bis zum Verlassen!")
end
end
when iceruns_boss3.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Noch zwei Minuten bis zum Verlassen!")
end
end
when iceruns_boss4.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Noch eine Minute bis zum Verlassen!")
end
end
when iceruns_boss5.server_timer begin
if d.select(get_server_timer_arg()) then
d.exit_all()
end
end
end
end
quest sdentry begin state start begin when 30130.chat."Zugang zur Bruthöhle" begin if pc.count_item("30324") < 1 then say("Dieses Tor lässt sich nur mit dem") say("Arachnidenschlüssel öffnen. Diesen Schlüssel") say("droppst du von der Königsspinne im Spinnendungeon 1.") elseif pc.count_item("30324") >= 1 and party.is_party() then say("Ihr habt die Königsspinne besiegt und") say("einen Archnidenschlüssel ergattert?") say("Ihr seid wahrlich bereit gegen die Baroness") say("zu kämpfen!") say("Ich teleporte euch jetzt.") pc.remove_item("30324",1) d.new_jump_all(193, 881, 6149) d.regen_file("/home/Avalon/share/data/dungeon/sd3/eier.txt") d.regen_file("/home/Avalon/share/data/dungeon/sd3/boss.txt") elseif pc.count_item("30324") >= 1 and party.is_party() == false then say("Dieses Tor lässt sich nur öffnen,") say("wenn du in einer Gruppe bist und einen") say("Archnidenschlüssel besitzt.") elseif pc.count_item("30324") < 1 and party.is_party() == false then say("Dieses Tor lässt sich nur öffnen,") say("wenn du in einer Gruppe bist und") say("einen Arachnidenschlüssel hast. Diesen Schlüssel") say("droppst du von der Königsspinne im Spinnendungeon 1.") end end when 2092.kill begin timer("bosskill", 10) syschat("Ihr habt es wirklich geschafft die Baroness zu töten!") syschat("Ihr seit wahre Kämpfer!") syschat("Ihr werdet in 10 Sekunden in eür Dorf teleportiert.") end when bosskill.timer begin d.exit_all_to_start_position() end end end
Fehler: Jeder auf der Map wird in die Bosskammer gespawnt, will das aber nur die Gruppenmember in die Kammer gespawnt werden, geht sowas?
Oder du machst das ganze mit d.new_jump.
Der 1. der reinjoined gibt den Mapindex des dungeons an. Den Rest laesst du dann ueber den Mapindex reinjoinen. Geht aber nicht so ohne weiteres, musst du dir mal den Kopf zerbrechen, da werd ich dir nicht bei helfen.
Wie gesagt einfachste loesung waere erst die Leute die in der Party sind auf eine map zu porten und von da aus dann wenn alle drauf sind mit d.new_jump_all
quest refine_items begin
state start begin
when 9010.take begin
pc.remove_item(71009, 1)
local price = 100000000
say_title("Aufwertung")
say("Je nach groese des items brauchst du ")
say("Auch den dazugehoerigen platz")
say("So neben bei mus ich dich auch bitten")
say("keine items zu uppen die nicht uppbar")
say("Oder weiteruppbar sind")
say("Ich wider rum werde dir zur strafe das yang")
say("Trotzdem nehmen und du hast kein")
say("Geupptes item")
say("")
say("Wilst du das uppen "..item_name(item.vnum).." Fuer "..price.." Yang?")
if select("Uppen", "Nein Danke") == 2 then return end
say_title("Uppen")
if pc.count_item(25041) >= 1 then
say("Du hast magisches metall bei dir")
say("Somit kann ich dir das nicht Uppen")
return
end
if pc.get_empty_inventory_count() < 4 then
say("Du hast nicht genuhg Platz im Inventar")
return
elseif pc.get_gold() < price then
say("Du hast nicht genuhg Yang")
return
end
pc.change_gold(-price)
item.over9refine()
say("Dein item wurde erfolgreich geuppt")
end
end
end
quest refine_items begin state start begin when 9010.take with pc.getqf(einmalupp)==0 begin# pc.setqf(einmalupp, 1) pc.remove_item(71009, 1) local price = 100000000 say_title("Aufwertung") say("Je nach groese des items brauchst du ") say("Auch den dazugehoerigen platz") say("So neben bei mus ich dich auch bitten") say("keine items zu uppen die nicht uppbar") say("Oder weiteruppbar sind") say("Ich wider rum werde dir zur strafe das yang") say("Trotzdem nehmen und du hast kein") say("Geupptes item") say("") say("Wilst du das uppen "..item_name(item.vnum).." Fuer "..price.." Yang?") if select("Uppen", "Nein Danke") == 2 then return end say_title("Uppen")
if pc.count_item(25041) >= 1 then say("Du hast magisches metall bei dir") say("Somit kann ich dir das nicht Uppen") return end if pc.get_empty_inventory_count() < 4 then say("Du hast nicht genuhg Platz im Inventar") return elseif pc.get_gold() < price then say("Du hast nicht genuhg Yang") return end pc.change_gold(-price) item.over9refine() say("Dein item wurde erfolgreich geuppt") end end end
Habe es so gemacht das man den nur einmal anklicken kann mit dem Item, auch wenn man nicht uppt hat meine keine Versuche mehr wie der DT Schmied
quest marriage_manage begin state start begin when oldwoman.chat."Ich möchte heiraten" with not pc.is_engaged_or_married() begin if not npc.lock() then say_title("Alte Dame")
say("Die Hochzeitsinseln sind zurzeit voll. Wartet") say("einen Moment oder kommt später wieder!") return end if pc.level < 25 then say_title("Alte Dame")
say("Du bist noch zu jung um zu heiraten.") say("Die jungen Paare werden zu oft geschieden.") say("Ich möchte nicht zulassen, dass du das") say("durchstehen musst.") say("Geh und sammle mehr Erfahrung.") say_reward("Du kannst erst ab Level 25 heiraten.")
npc.unlock() return end local m_ring_num = pc.countitem(70301) local m_has_ring = m_ring_num > 0 if not m_has_ring then say_title("Alte Dame")
say("Du willst ohne einen Verlobungsring heiraten?") say_item("Verlobungsring", 70301, "") say("Besorge mir erst einen Ring, dann können") say("wir über Hochzeit reden...")
npc.unlock() return end local m_sex = pc.get_sex() if not marriage_manage.is_equip_wedding_dress() then say_title("Alte Dame")
say("Möchtest du wirklich so heiraten?") say("Meistens ist eine Ehe für die Ewigkeit,") say("da kannst du doch nicht so gekleidet auftreten.") if m_sex==0 then say_item("Smoking", marriage_manage.get_wedding_dress(pc.get_job()), "") say_reward("Wenn du heiraten möchtest brauchst du") say_reward("einen Smoking.") else say_item("Brautkleid", marriage_manage.get_wedding_dress(pc.get_job()), "") say_reward("Wenn du heiraten möchtest brauchst du") say_reward("ein Brautkleid.") end
npc.unlock() return end local NEED_MONEY = 1000000 if pc.get_money() < NEED_MONEY then say_title("Alte Dame")
say("Hochzeiten kosten eine Menge Yang.") say("Du besitzt leider nicht genug um deine") say("zu finanzieren.") say_reward("Du brauchst eine Millionen Yang")
npc.unlock() return end say_title("Alte Dame")
say("Wie ich sehe bist du entschlossen.") say("Wollen wir jetzt die Vorbereitungen treffen?") say("Dann schreib jetzt bitte den Namen der Person,") say("die du heiraten möchtest.") local sname = input() if sname == "" then say_title("Alte Dame")
say("Bist du so aufgeregt, dass du nichtmehr") say("den Namen schreiben kannst? Probiers nochmal")
npc.unlock() return end local u_vid = find_pc_by_name(sname) local m_vid = pc.get_vid() if u_vid == 0 then say_title("Alte Dame")
say("Du weisst nicht den Namen deines Partners?") say("Bist du sicher, dass du heiraten möchtest?") say_reward(sname.." ist nicht online")
npc.unlock() return end if not npc.is_near_vid(u_vid, 10) then say_title("Alte Dame")
say("Dein Partner muss in der Nähe sein,") say("damit ich euch trauen kann.") say_reward(sname.." ist zu weit weg")
npc.unlock() return end local old = pc.select(u_vid) local u_level = pc.get_level() local u_job = pc.get_job() local u_sex = pc.get_sex() local u_name = pc.name local u_gold = pc.get_money() local u_married = pc.is_married() local u_has_ring = pc.countitem(70301) > 0 local u_wear = marriage_manage.is_equip_wedding_dress() pc.select(old) local m_level = pc.get_level() if u_vid == m_vid then say_title("Alte Dame")
say("Nicht deinen, den deines Partners!") say_reward("Du hast deinen eigenen Namen eingegeben")
npc.unlock() return end if u_married then say_title("Alte Dame")
say("Die Person die du heiraten möchtest ist") say("bereits verheiratet. Ich glaube du musst") say("dir einen neuen, unverheirateten,") say("Lebensgefährten suchen.")
npc.unlock() return end if u_level < 25 then say_title("Alte Dame")
say("Dein Partner ist noch keine 25, du kannst") say("dich mit dieser Ehe strafbar machen!")
npc.unlock() return end if m_level - u_level > 15 or u_level - m_level > 15 then say_title("Alte Dame")
say("Der Erfahrungsunterschied zwischen dir und") say("dein Partner ist zu groß! So eine Ehe kann") say("ich leider nicht zulassen.") say("Ihr dürft nur 15 Level unterschied haben.")
npc.unlock() return end if not u_has_ring then say_title("Alte Dame")
say("Dein Partner braucht auch einen Verlobungsring.") say("Kauf ihn doch in Zeichen deiner Liebe einen!")
npc.unlock() return end if not u_wear then say_title("Alte Dame")
say("Dein Partner trägt keine Hochzeitskleidung") say("Ist es dir nicht peinlich dich so mir ihn") say("blicken zu lassen?")
npc.unlock() return end local ok_sign = confirm(u_vid, "Möchtest du "..pc.name.." heiraten?", 30) if ok_sign == CONFIRM_OK then local m_name = pc.name if pc.get_gold()>=NEED_MONEY then pc.change_gold(-NEED_MONEY) pc.removeitem(70301, 1) pc.give_item2(70302, 1) local old = pc.select(u_vid) pc.removeitem(70301, 1) pc.give_item2(70302, 1) pc.select(old) say_title("Alte Dame")
say("So, ich denke jetzt haben wirs.") say("Ich werde euch jetzt auf die Hochzeits-") say("insel schicken. Ich wünsch euch eine lange") say("und glückliche Ehe. Gratulation!")
wait() setskin(NOWINDOW) marriage.engage_to(u_vid) end else say_title("Alte Dame")
say("Dein Partner möchte dich nicht heiraten.") say("Klärt es lieber untereinander ab.")
end
npc.unlock() end when oldwoman.chat."Zu meiner Hochzeit" with pc.is_engaged() begin say_title("Alte Dame")
say("Warum bist du noch hier?") say("Dein Partner vermisst dich!") say("Ich begleite dich zu ihm.")
wait() setskin(NOWINDOW) marriage.warp_to_my_marriage_map() end when 9011.chat."Eheschließung" with pc.is_engaged() and marriage.in_my_wedding() begin if not npc.lock() then say_title("Hochzeitshelferin")
say("Ich rede gerade mit deinen Partner,") say("einen Moment bitte.")
return end say_title("Hochzeitshelferin")
say("Ich werde eure Ehe offiziel eintragen.") say("Gib erstmal den Namen deines Partners") say("ein.") local sname = input() local u_vid = find_pc_by_name(sname) local m_vid = pc.get_vid() if u_vid == 0 then say_title("Hochzeitshelferin")
say("Dieser Name ist nicht registriet.") say("Möchtest du deine Eingabe nochmal") say("überprüfen?") say_reward(sname.." ist nicht online")
npc.unlock() return end if not npc.is_near_vid(u_vid, 10) then say_title("Hochzeitshelferin")
say("Du musst deinen Partner herbringen.") say("Ich brauch ihn um den Ehebund zu") say("schließen.")
npc.unlock() return end if u_vid == m_vid then say_title("Hochzeitshelferin")
say("Du sollst nicht deinen, sondern den deines") say("Partners schreiben.")
npc.unlock() return end if u_vid != marriage.find_married_vid() then say_title("Hochzeitshelferin") say("Das ist nicht die Person, die du") say("ursprünglich heiraten wolltest.")
npc.unlock() return end local ok_sign = confirm(u_vid, "Möchtest du "..pc.name.." heiraten?", 30) if ok_sign != CONFIRM_OK then say_title("Hochzeitshelferin")
say("Dein Partner ist noch nicht für die") say("Eheschließung bereit.")
npc.unlock() return end say_title("Hochzeitshelferin")
say("Ok, alles in Ordnung. Wir können anfangen.") marriage.set_to_marriage() npc.unlock() end function give_wedding_gift() local male_item = {71072, 71073, 71074} local female_item = {71069, 71070, 71071} if pc.get_sex() == MALE then pc.give_item2(male_item[number(1, 3)], 1) else pc.give_item2(female_item[number(1, 3)], 1) end end
when 9011.chat."Hochzeitsmusik abspielen" with (pc.is_engaged() or pc.is_married()) and marriage.in_my_wedding() and not marriage.wedding_is_playing_music() begin marriage.wedding_music(true, "wedding.mp3") setskin(NOWINDOW) end when 9011.chat."Hochzeitsmusik beenden" with (pc.is_engaged() or pc.is_married()) and marriage.in_my_wedding() and marriage.wedding_is_playing_music() begin marriage.wedding_music(false, "default") setskin(NOWINDOW) end when 9011.chat."Nacht" with pc.is_married() and marriage.in_my_wedding() begin marriage.wedding_dark(true) setskin(NOWINDOW) end
when 9011.chat."Schnee" with pc.is_married() and marriage.in_my_wedding() begin marriage.wedding_snow(true) setskin(NOWINDOW) end
when 9011.chat."Hochzeit beenden" with pc.is_married() and marriage.in_my_wedding() begin if not npc.lock() then say_title("Hochzeitshelferin")
say("Warte einen Moment, ich rede gerade mit") say("deinen Partner.")
return end say_title("Hochzeitshelferin")
say("Möchtest du die Party abbrechen?")
local s = select("Ja","Nein") if s == 1 then local u_vid = marriage.find_married_vid() say_title("Hochzeitshelferin")
say("Wir müssen auf deinen Partner warten.") say("Es liegt jetzt an ihn..")
local ok_sign = confirm(u_vid, "Möchtest du die Hochzeit beenden? ", 30) if ok_sign == CONFIRM_OK then marriage.end_wedding() else say_title("Hochzeitshelferin")
say("Dein Partner möchte noch weiterfeiern!")
end
npc.unlock() end end
when 11000.chat."Scheidung einreichen" or 11002.chat."Scheidung einreichen" or 11004.chat."Scheidung einreichen " with pc.is_married() begin
if not marriage_manage.check_divorce_time() then return end
local u_vid = marriage.find_married_vid() if u_vid == 0 or not npc.is_near_vid(u_vid, 10) then say_title("Wächter des Dorfplatzes")
say("Ohne deinen Partner kannst du auf rechtlichen") say("Wege nicht geschieden werden.")
return end
say_title("Wächter des Dorfplatzes")
say("Für eine rechtlich Scheidung brauch ich") say("500.000 Yang und eine Einverständniss") say("von deinen Partner.") say("Möchtest du dich wirklich Scheiden lassen?")
local MONEY_NEED_FOR_ONE = 500000 local s = select("Ja", "Nein") if s == 1 then local m_enough_money = pc.gold > MONEY_NEED_FOR_ONE local m_have_ring = pc.countitem(70302) > 0 local old = pc.select(u_vid) local u_enough_money = pc.gold > MONEY_NEED_FOR_ONE local u_have_ring = pc.countitem(70302) > 0 pc.select(old) if not m_have_ring then say("Ich brauche den Ehering.") return end if not u_have_ring then say("Ich brauche den Ehering deines Partners.") return end if not m_enough_money then say_title("Wächter des Dorfplatzes")
say("Du hast nicht genug Yang für die Scheidung.")
return end if not u_enough_money then say_title("Wächter des Dorfplatzes")
say("Du hast nicht genug Yang für die Scheidung.")
return end say_title("Wächter des Dorfplatzes")
say("Möchtet ihr euch wirklich scheiden lassen?") say("Vielleicht ist es einfach nur ein Missverständniss.") say("Wollt ihr es wirklich?")
local c=select("Ja", "Ich hab meine Meinung geändert") if 2 == c then say_pc_name()
say("Ich hab meine Meinung geändert") say("Ich will doch nicht geschieden werden")
wait() say_title("Wächter des Dorfplatzes")
say("Es ist das beste für euch..") say("Ich wünsch euch noch eine lange und") say("glückliche Ehe.") say_reward("Die Scheidung wurde anuliert.")
return end local ok_sign = confirm(u_vid, "Möchtest du dich von "..pc.name.." scheiden lassen?", 30) if ok_sign == CONFIRM_OK then local m_enough_money = pc.gold > MONEY_NEED_FOR_ONE local m_have_ring = pc.countitem(70302) > 0 local old = pc.select(u_vid) local u_enough_money = pc.gold > MONEY_NEED_FOR_ONE local u_have_ring = pc.countitem(70302) > 0 pc.select(old) if m_have_ring and m_enough_money and u_have_ring and u_enough_money then pc.removeitem(70302, 1) pc.change_money(-MONEY_NEED_FOR_ONE) local old = pc.select(u_vid) pc.removeitem(70302, 1) pc.change_money(-MONEY_NEED_FOR_ONE) pc.select(old) say_title("Wächter des Dorfplatzes")
say("Die Scheidung ist vollbracht.") say("Du bist nun wieder ein freier Mensch.") say("Die Scheidung kann nichtmehr rückgängig") say("gemacht werden.")
marriage.remove() else say_title("Wächter des Dorfplatzes")
say("Eure Unterlagen sind nicht komplett.") say("Kommt später wieder.")
end else say_title("Wächter des Dorfplatzes")
say("Dein Partner möchte sich nicht Scheiden") say("lassen. Finde zuerst einen Grund.")
end end end when 11000.chat."Einseitige Scheidung einreichen" or 11002.chat."Einseitige Scheidung einreichen" or 11004.chat."Einseitige Scheidung einreichen" with pc.is_married() begin
if not marriage_manage.check_divorce_time() then return end
say_title("Wächter des Dorfplatzes")
say("Du brauchst eine Millionen Yang um dich") say("sofort scheiden zu lassen. Willst du es") say("trotzdem machen?")
local s = select("Ja", "Nein")
local NEED_MONEY = 1000000 if s == 2 then return end
if pc.money < NEED_MONEY then say_title("Wächter des Dorfplatzes")
say("Du hast nicht genug Yang für die") say("einseitige Scheidung.")
return end
say_title("Wächter des Dorfplatzes")
say("Möchtest du es wirklich machen?") say("Denk nochmal drüber nach..")
local c = select("Ja, ich will","Nein, doch nicht")
if c == 2 then say_title("Wächter des Dorfplatzes")
say("Na dann,") say("Es ist besser so. Falls doch komm") say("wieder zurück. Sei dir dann aber wirklich") say("sicher dabei!")
return end pc.removeitem(70302, 1) pc.change_gold(-NEED_MONEY) marriage.remove() say_title("Wächter des Dorfplatzes")
say("Wenn du dir ganz sicher bist..") say("dann mal los! Ab jetzt bist du wieder") say("ein freier Mensch.")
end when oldwoman.chat."Liste der Hochzeiten" with not pc.is_engaged() begin local t = marriage.get_wedding_list() if table.getn(t) == 0 then say_title("Alte Dame")
say("Momentan finden keine Hochzeiten statt...")
else -- chat(table.getn(t)) local wedding_names = {} table.foreachi(t, function(n, p) wedding_names[n] = p[3].." Hochzeit "..p[4].." von " end) wedding_names[table.getn(t)+1] = locale.confirm local s = select_table(wedding_names)
if s != table.getn(wedding_names) then marriage.join_wedding(t[s][1], t[s][2]) end end end function check_divorce_time()
local DIVORCE_LIMIT_TIME = 86400
if is_test_server() then DIVORCE_LIMIT_TIME = 60 end
if marriage.get_married_time() < DIVORCE_LIMIT_TIME then say_title("Guardian of the village:")
say("The ink is not even dry yet!") say("Give yourself more time.")
return false end
return true end
function is_equip_wedding_dress() local a = pc.get_armor() return a >= 11901 and a <= 11904 end function get_wedding_dress(pc_job) if 0==pc_job then return 11901 elseif 1==pc_job then return 11903 elseif 2==pc_job then return 11902 elseif 3==pc_job then return 11904 else return 0; end end end end
Man kommt auf die Map aber kein NPC ist dort --> Heirat nicht möglich.
Derzeit arbeite ich an einer Daily-Quest. Das ist eine Quest die man alle 24 erledigen kann.
Mein Problem ist jetzt, dass wenn ich den Hauptmann anklicke und die Mission annehme, bei der Auswahlmöglichkeit "Auf gehts!", dass es einfach nicht weiter geht... Ich bekomme keine Schriftrolle, wo die ganzen Quests angezeigt werden und wenn ich den bestimmten Mob kille (1105) passiert rein gar nichts. Ich weiß nicht wo das Problem liegt..
quest dayjob2 begin
state start begin
when 20354.chat."Im Auftrag der Nation I" begin
local delay = 86400
if get_global_time() - pc.getqf("time1") < delay and pc.getqf("time1") != 0 then
local zeit = delay - (get_global_time() - pc.getqf("time1"))
say_title("Hauptmann:")
say("")
say("Heute hast du mir bereits geholfen.")
say("Komme morgen wieder. Ich werde für dich")
say("sicherlich eine Aufgabe finden.")
return
end
if pc.get_level() < 100 then
say_title("Hauptmann:")
say("")
say("Du bist nicht stark genug um diesen Auftrag")
say("zu meistern. Komm wieder, wenn du das Level 100")
say("erreicht hast.")
return
end
say_title("Hauptmann:")
say("")
say("Hallo Neuling,")
say("du hast die Möglichkeit mir jeden Tag etwas")
say("unter die Arme zu greifen. Für dich springt dabei")
say("natürlich auch was raus. In letzter Zeit verwüsten")
say("die Eismänner das Eisland und ich schaffe es nicht")
say("mehr allein sie aufzuhalten.")
say("Du musst dort für Ordnung sorgen und uns von dieser")
say("Plage befreien!")
say("")
say("Willst du mir dabei helfen?")
say("")
local s= select("Auf gehts!","Nein danke")
if s==1 then
say_title("Hauptmann:")
say("")
say("Nungut, reise ins Eisland und töte die Eismänner!")
say("")
say_reward("Töte 300 Eismänner.")
local mobs = number(150, 300)
pc.setqf("flamqmobs1",mobs)
setstate(killiceman)
else
say_title("Hauptmann:")
say("")
say("Schade, jedoch ist es deine Entscheidung.")
say("Auf Wiedersehen.")
end
end
end
state killiceman begin
when letter begin
send_letter("Befreie uns von dieser Plage!")
end
when info or button begin
local tokill = pc.getqf("flamqmobs1") - pc.getqf("flamq1")
say_title("Hauptmann:")
say("")
say("Töte "..tokill.." Eismänner und kehre")
say("dann zu mir zurück.")
end
when 1105.kill begin
pc.setqf("flamq1",pc.getqf("flamq1")+1)
if pc.getqf("flamq1")==pc.getqf("flamqmobs1") then
say_title("Hauptmann:")
say("")
say("Gut gemacht!")
say("Du hast die Plage etwas gemindert.")
say("Kehre zurück und überbringe diese Nachtricht.")
setstate(retoguid)
end
end
end
state retoguid begin
when letter begin
local v=find_npc_by_vnum(20354)
if v!=0 then
target.npc("__TARGET__", v, "Überbringe die gute Nachricht")
end
end
when info or button begin
say("Kehre zurück")
end
when __TARGET__.target.click or 20354.click begin
target.delete("__TARGET__")
say("Du hast alle Eismänner getötet?")
say("Hoffen wir mal, dass diese nicht so")
say("schnell wieder kommen.")
say("Vielen Dank!")
say("Als Belohnung erhälst du auch eine blaue")
say("Perle")
pc.setqf("flamqmobs1",0)
pc.setqf("flamq1",0)
pc.give_item2(27993)
pc.setqf("time1",get_global_time())
setstate(start)
end
end
end
dass in klammern gesetzte hab ich neu eingefügt und seit dem funktioniert es nicht..
ich wollte dass man das item nur unter level 110 benutzen kann..
wenn man 110 ist sollte die weiteren funktionen des items nicht gehen ..was ist falsch?
Guten Morgen,
vllt ist es einfach nur zu frueh, aber ich kommt nichtmehr weiter grade.
Folgendes,
ich hab mir eine Timer gebaut der in Minuten und Sekunden ablaeuft und im Client angezeigt wird.
Nun passiert ab einer Zahl unter 10 aber etwas unschoenes!
Zeit: 3:10 <-- so siehts bei ueber 10 aus
Zeit: 3:4 <-- bei unter 10
Zeit 3:04 <--- So will es es haben
Code:
PHP Code:
when time_left_1.timer begin if pc.getqf("time_s") ~= 0 then local min = (math.floor((pc.getqf("time_s")-get_time())/60)) local sec = (pc.getqf("time_s")-get_time())-(min* 60) local m_s = min..":"..sec cmdchat("Time "..m_s) end end
Probiert habe ich schon folgendes:
PHP Code:
when time_left_1.timer begin if pc.getqf("time_s") ~= 0 then local min = (math.floor((pc.getqf("time_s")-get_time())/60)) local sec = (pc.getqf("time_s")-get_time())-(min* 60) if sec < 10 then local m_s = min..":0"..sec else local m_s = min..":"..sec end cmdchat("Time "..m_s) end end
PHP Code:
when time_left_1.timer begin if pc.getqf("time_s") ~= 0 then local min = (math.floor((pc.getqf("time_s")-get_time())/60)) local sec = (pc.getqf("time_s")-get_time())-(min* 60) if string.len(tostring(sec)) == 1 then local m_s = min..":0"..sec else local m_s = min..":"..sec end cmdchat("Time "..m_s) end end
Hallo epvp Community
Ich brauche etwas Hilfe...
Ich möchte gern Restzeit von Sekunden auf Minuten. ohne oder mit nur 1-2stellen hinter dem komma
Ich habe bereits etwas gemacht, aber kann es nicht testen ob es funktioniert.
Nun ist die Frage, funktioniert das?
PHP Code:
when button or info begin local rest_time = pc.getqf("time", get_time()/60) local ceil_time = math.ceil("rest_time") say("Du musst noch") say("".." "..pc.getqf("kill_count").."/10 Metin der Eifersucht zerstören.") say("Dir bleiben noch ".." "..ceil_time.." Minuten.") end
quest banker begin
state start begin
when 20007.chat."Bank" begin
banker.bankdialog()
end
function bankdialog()
say_title("Banker:")
say("Ich biete dir die Möglichkeit, dein Yang")
say("Zinsenfrei aufzubewahren.")
say("Du kannst jedoch nur begrenzt einzahlen.")
say("Das Limit liegt jedoch bei weit über einer Billiarde :)")
say("")
local action = select("Yang einzahlen", "Yang auszahlen", "Abbrechen")
if action == 1 then
say_title("Banker:")
if pc.gold < 1 then
say("Du hast kein Yang.")
say("")
return
end
say("Du hast "..pc.gold.." Yang.")
say("Wieviel möchtest du davon einzahlen?")
local yang = tonumber(input())
if yang < 0 then
return
end
if yang > pc.gold then
yang = pc.gold
end
pc.changegold(-yang)
local saved_rest = tonumber(pc.getqf("saved_rest"))
local saved_signed_longs = tonumber(pc.getqf("saved_signed_longs"))
if saved_rest + yang > 2147483647 then
pc.setqf("saved_signed_longs", saved_signed_longs + 1)
pc.setqf("saved_rest", saved_rest + yang - 2147483647)
else
pc.setqf("saved_rest", saved_rest + yang)
end
say_title("Banker:")
say("Es wurden "..yang.." Yang eingezahlt.")
say("")
return
elseif action == 2 then
local saved_rest = tonumber(pc.getqf("saved_rest"))
local saved_signed_longs = tonumber(pc.getqf("saved_signed_longs"))
local saved_yang = saved_signed_longs*2147483647+saved_rest
say_title("Banker:")
if saved_yang < 1 then
say("Ich habe kein Geld mehr von dir.")
say("")
return
end
say("Ich kann dir das Geld, das du eingezahlt hast,")
say("nun wieder auszahlen.")
say("")
say_reward("Kontostand: "..saved_yang.." Yang")
say("")
say("Wieviel Yang möchtest du ausgezahlt bekommen?")
local yang = tonumber(input())
if yang < 0 then
return
end
if yang > saved_yang then
yang = saved_yang
end
if pc.gold + yang > 1899999999 then
yang = 1899999999 - pc.gold
end
if yang > saved_yang then
yang = saved_yang
end
if saved_rest - yang < 0 then
pc.setqf("saved_signed_longs", saved_signed_longs - 1)
pc.setqf("saved_rest", 2147483647 - yang + saved_rest)
else
pc.setqf("saved_rest", saved_rest - yang)
end
pc.changegold(yang)
say_title("Banker:")
say("Es wurden "..yang.." Yang ausgezahlt.")
say("")
end
end
end
end
Es funktioniert garnichts..
Das Problem liegt wahrscheinlich laut putty an banker.bankdialog .. ?
Huhu bei mir funktioniert es leider nicht,wenn ich auf npc klicken kommt die quest.dann fragt er mich ob ich auf einem ein kopfgeld ausetzen möchte,sobald ich OK klicken schließt sich die quest =(
(keine fehler meldung)
quest kopfgeld begin
state start begin
when 33003.chat."Kopfgeld auf jemand aussetzen" begin
say_title("Kopfgeld aussetzen")
say("")
say("Hallo "..pc.get_name().."")
say("Hier kannst du Kopfgeld auf eine Person aussetzen.")
say_gold("WICHTIG: Du kannst kein Kopfgeld an Leute aussetzen die unter Level 45 sind.")
say("Willst du ein Kopfgeld aussetzen?")
local c = select ("Ja", "Nein")
if c == 2 then
return
elseif c == 1 then
say("Auf wen willst du das Kopfgeld aussetzen?")
say_reward("Gebe den Namen der Person an!")
local opfer = input()
local kls = mysql_query("SELECT level from player.player WHERE name = '"..opfer.."' LIMIT 1")
local jsan = tonumber(kls.level[1])
if jsan < 45 then
say(""..opfer.." ist unter Level 45.")
return
end
if opfer == "" then
say("Du musst einen Namen eingeben.")
return
end
say("Wieviel Kopfgeld willst du auf "..opfer.." setzen?")
say_reward("Gebe deine Geldsumme an!")
local geld = tonumber(input())
say("Du willst also "..geld.." Yang auf "..opfer.." setzen?")
local frage = select ("Ja", "Nein")
if frage == 2 then
return
end
if tonumber(geld) > pc.get_gold() then
say("Soviel Geld hast du nicht!")
return
end
if frage == 1 then
local eins = 1
local pp = mysql_query("SELECT kg_geld from player.player WHERE name = '"..opfer.."' LIMIT 1")
local pps = mysql_query("UPDATE player.player SET kg_geld = '"..pp.kg_geld[1]+geld.."' WHERE name = '"..opfer.."' LIMIT 1")
local aa = mysql_query("SELECT kg_name from player.player WHERE name = '"..opfer.."' LIMIT 1")
local aas = mysql_query("UPDATE player.player SET kg_name = '"..eins.."' WHERE name = '"..opfer.."' LIMIT 1")
pc.change_money(-geld)
game.set_event_flag(""..opfer.."kg", 1)
say("Du hast auf "..opfer.." "..geld.." Yang gesetzt!")
end
end
end
when 33003.chat."Die 15 größten Kopfgelder" begin
uiname = pc.get_name()
local eins = 1
local us = mysql_query("SELECT name, kg_geld from player.player WHERE kg_name = '"..eins.."' order by kg_geld desc, kg_name desc, name asc LIMIT 15")
say("Rang - Name - Kopfgeld")
table.foreachi(us,function(i,l)
say(i.." - "..l[1].." - "..l[2])
end)
end
when kill with npc.is_pc() begin
local vid = npc.get_vid()
local old_pc = pc.select(vid)
if old_pc != 0 then
local name = pc.get_name()
pc.select(old_pc)
if game.get_event_flag(""..name.."kg") == 1 then
local pi = mysql_query("SELECT ip from player.player WHERE name = '"..name.."' LIMIT 1")
local pis = mysql_query("SELECT ip from player.player WHERE name = '"..pc.get_name().."' LIMIT 1")
if pi.ip[1] == pis.ip[1] then
chat("Bugusing erkannt!")
return
end
local u = mysql_query("SELECT kg_geld from player.player WHERE name = '"..name.."' LIMIT 1")
chat("Du hast "..name.." getötet, auf ihn ist ein Kopfgeld von "..u.kg_geld[1].." ausgesetzt!")
chat("Du erhäst nun "..u.kg_geld[1].." Yang.")
local gelds = u.kg_geld[1]
pc.change_gold(gelds)
game.set_event_flag(""..name.."kg", 0)
local null = 0
local eins = 1
local pu = mysql_query("UPDATE player.player SET kg_geld = '"..null.."' WHERE name = '"..name.."' LIMIT 1")
local us = mysql_query("UPDATE player.player SET kg_name = '"..null.."' WHERE name = '"..name.."' LIMIT 1")
end
end
end
end
end