|
You last visited: Today at 15:06
Advertisement
[SERVICE] Die Questkontrolle
Discussion on [SERVICE] Die Questkontrolle within the Metin2 Private Server forum part of the Metin2 category.
02/17/2012, 13:23
|
#4771
|
elite*gold: 0
Join Date: Jul 2011
Posts: 501
Received Thanks: 110
|
Quote:
Originally Posted by Destroyer446
Falls ich eine Quest übersehen habe, sry^^
Mfg, Destroyer446
|
Ja meine >.>
|
|
|
02/17/2012, 14:05
|
#4772
|
elite*gold: 1798
Join Date: Apr 2010
Posts: 654
Received Thanks: 170
|
Hallo liebe Com,
meine Quest funzt nicht so ganz ;(..
Fehler:
PHP Code:
QUEST : lagertruhe
STATE : start
WHEN : 70028.use
local wahl1 = select ( "Lager öffnen" , "Gemischtwaren" , "Abrechen" )
if wahl1 == 1 with pc . get_map_index ( ) == 10 then
game . open_safebox ( )
else
chat ( "Du kannst das Lager in Map1 nur bei dem Lagerverwalter öffnen!" )
end
if wahl1 == 2 with pc . get_map_index ( ) == 10 then
npc . open_shop ( ID )
else
chat ( "Du kannst die Gemischtwaren in Map1 nur bei der Gemi öffnen!" )
end
if wahl1 == 3 then
return
end
syntax error : [string "start"]:2: `then' expected near `with'
lagertruhe.quest:18:Error occured on compile lagertruhe.quest
QUEST:
PHP Code:
quest lagertruhe begin
state start begin
when 70028.use begin
local wahl1 = select("Lager öffnen", "Gemischtwaren", "Abrechen")
if wahl1 == 1 with pc.get_map_index() == 10 then
game.open_safebox()
else
chat("Du kannst das Lager in Map1 nur bei dem Lagerverwalter öffnen!")
end
if wahl1 == 2 with pc.get_map_index() == 10 then
npc.open_shop(ID)
else
chat("Du kannst die Gemischtwaren in Map1 nur bei der Gemi öffnen!")
end
if wahl1 == 3 then
return
end
end
end
end
|
|
|
02/17/2012, 14:24
|
#4773
|
elite*gold: 0
Join Date: Apr 2010
Posts: 2,047
Received Thanks: 744
|
PHP Code:
quest lagertruhe begin state start begin when 70028.use begin local wahl1 = select("Lager öffnen", "Gemischtwaren", "Abrechen") if wahl1 == 1 with pc.get_map_index() == 10 then game.open_safebox() else chat("Du kannst das Lager in Map1 nur bei dem Lagerverwalter öffnen!") end if wahl1 == 2 with pc.get_map_index() == 10 then npc.open_shop(ID) else chat("Du kannst die Gemischtwaren in Map1 nur bei der Gemi öffnen!") end if wahl1 == 3 then return end end end
Kann es sein das du da ein End zu viel hattest? ich bin mir da net sicher aber,
wenn da einer zu viel ist, funkt die Quest nicht mehr :S
Gruß
|
|
|
02/17/2012, 14:30
|
#4774
|
elite*gold: 1798
Join Date: Apr 2010
Posts: 654
Received Thanks: 170
|
Quote:
Originally Posted by Endless.
PHP Code:
quest lagertruhe begin
state start begin
when 70028.use begin
local wahl1 = select("Lager öffnen", "Gemischtwaren", "Abrechen")
if wahl1 == 1 with pc.get_map_index() == 10 then
game.open_safebox()
else
chat("Du kannst das Lager in Map1 nur bei dem Lagerverwalter öffnen!")
end
if wahl1 == 2 with pc.get_map_index() == 10 then
npc.open_shop(ID)
else
chat("Du kannst die Gemischtwaren in Map1 nur bei der Gemi öffnen!")
end
if wahl1 == 3 then
return
end
end
end
Kann es sein das du da ein End zu viel hattest? ich bin mir da net sicher aber,
wenn da einer zu viel ist, funkt die Quest nicht mehr :S
Gruß
|
Ehm, hab ich schon probiert.. geht nicht.
Trz. danke für die Antwort
# hast ein THX
Mfg Hr4juku
|
|
|
02/17/2012, 14:34
|
#4775
|
elite*gold: 0
Join Date: Apr 2010
Posts: 2,047
Received Thanks: 744
|
2x else Bedingung.. hm
könnte sein das die Quest sich net zwischen den beiden else entscheiden wird..
wegen "wenn folgendes nicht erfüllt ist" wird else eingesetzt 
versuchs mal mit else if oder so
|
|
|
02/17/2012, 14:35
|
#4776
|
elite*gold: 1798
Join Date: Apr 2010
Posts: 654
Received Thanks: 170
|
Quote:
Originally Posted by Endless.
2x else Bedingung.. hm
könnte sein das die Quest sich net zwischen den beiden else entscheiden wird..
wegen "wenn folgendes nicht erfüllt ist" wird else eingesetzt 
versuchs mal mit else if oder so 
|
Nein leider auch nicht...
Trz. danke^^
hast wieder ein THX
Mfg Hr4rjuku
|
|
|
02/17/2012, 14:39
|
#4777
|
elite*gold: 0
Join Date: Jan 2011
Posts: 2,903
Received Thanks: 1,262
|
PHP Code:
quest lagertruhe begin state start begin when 70028.use begin local wahl1 = select("Lager öffnen", "Gemischtwaren", "Abrechen") if wahl1 == 3 then return end elseif wahl1 == 1 with pc.get_map_index() == 10 then game.open_safebox() else chat("Du kannst das Lager in Map1 nur bei dem Lagerverwalter öffnen!") end elseif wahl1 == 2 with pc.get_map_index() == 10 then npc.open_shop(ID) else chat("Du kannst die Gemischtwaren in Map1 nur bei der Gemi öffnen!") end end end
Versuch mal so
|
|
|
02/17/2012, 14:41
|
#4778
|
elite*gold: 0
Join Date: Jul 2011
Posts: 501
Received Thanks: 110
|
Für die Alte Frau einen Status zurücksetzen Quest, da ich sie nicht bei den Files drin hatte:
PHP Code:
quest status begin
state start begin
when 9006.chat."Status Zurücksetzen" with pc.get_level()>30 begin
say_titel("Status Zurücksetung:")
say("")
say("Um deinen Status zurückzusetzen musst du")
say("mir 300.000 Yang zahlen. Deine Fertigkeiten")
say("und deine Statuspunkte werden dabei zurückgesetzt.")
say("Möchtest du wirklich deinen Status zurücksetzen?")
locale a=select( "Ja", "Nein")
if a==1 then
say_titel("Status Zurücksetzung:")
say("")
say("Du bist leider schon über Level 30.")
say("Um das Gleichgewicht dieser Welt stabil")
say("zu halten, kann ich deinen Status nicht")
say("zurückskillen.")
say("")
say("Vielen Dank für dein Verständnis!")
end
if a==2 then
return
end
end
when 9006.chat."Status Zurücksetzen" with pc.get_level()<30 begin
say_titel("Status Zurücksetung:")
say("")
say("Um deinen Status zurückzusetzen musst du")
say("mir 300.000 Yang zahlen. Deine Fertigkeiten")
say("und deine Statuspunkte werden dabei zurückgesetzt.")
say("Möchtest du wirklich deinen Status zurücksetzen?")
locale a=select( "Ja", "Nein")
if a==1 then
if pc.money<300000 then
say_titel("Status Zurücksetzung:")
say("")
say("Du hast nicht genug Yang um deinen")
say("Status zurückzusetzen.")
return
end
pc.changemoney("-300000")
pc.reset_point()
pc.clear_skill()
pc.set_skill_group(0)
say_titel("Status Zurücksetzung:")
say("")
say("Dein Status wurde erfolgreich zurückgesetzt!")
end
if a==2 then
return
end
end
end
end
Fehlermeldung in der console ist das mit [...] level<30 begin
|
|
|
02/17/2012, 14:44
|
#4779
|
elite*gold: 1798
Join Date: Apr 2010
Posts: 654
Received Thanks: 170
|
Quote:
PHP Code:
quest lagertruhe begin state start begin when 70028.use begin local wahl1 = select("Lager öffnen", "Gemischtwaren", "Abrechen") if wahl1 == 3 then return end elseif wahl1 == 1 with pc.get_map_index() == 10 then game.open_safebox() else chat("Du kannst das Lager in Map1 nur bei dem Lagerverwalter öffnen!") end elseif wahl1 == 2 with pc.get_map_index() == 10 then npc.open_shop(ID) else chat("Du kannst die Gemischtwaren in Map1 nur bei der Gemi öffnen!") end end end
Versuch mal so
|
PHP Code:
QUEST : lagertruhe STATE : start WHEN : 70028.use local wahl1 = select ( "Lager öffnen" , "Gemischtwaren" , "Abrechen" ) if wahl1 == 3 then return end elseif wahl1 == 1 with pc . get_map_index ( ) == 10 then game . open_safebox ( ) else chat ( "Du kannst das Lager in Map1 nur bei dem Lagerverwalter öffnen!" )
syntax error : [string "start"]:5: <eof> expected near `elseif' lagertruhe.quest:12:Error occured on compile lagertruhe.quest
Trz. danke..
Hast ein Thx
|
|
|
02/17/2012, 15:01
|
#4780
|
elite*gold: 39
Join Date: Jun 2009
Posts: 500
Received Thanks: 212
|
Sollte so gehen RealMadrid94rk:
Code:
quest status begin
state start begin
when 9006.chat."Status Zurücksetzen" begin
say_titel("Status Zurücksetung:")
if pc.get_level() > 30 then
say("Du bist leider schon über Level 30.")
say("Daher kannst du deinen Status nich")
say("mehr zurücksetzen.")
say("")
return
end
say("")
say("Um deinen Status zurückzusetzen musst du")
say("mir 300.000 Yang zahlen. Deine Fertigkeiten")
say("und deine Statuspunkte werden dabei zurückgesetzt.")
say("Möchtest du wirklich deinen Status zurücksetzen?")
locale a=select("Ja", "Nein")
if a==2 then
return
end
if pc.get_money()<300000 then
say_titel("Status Zurücksetzung:")
say("")
say("Du hast nicht genug Yang um deinen")
say("Status zurückzusetzen.")
say("")
return
end
pc.change_money("-300000")
pc.reset_point()
pc.clear_skill()
pc.set_skill_group(0)
say_titel("Status Zurücksetzung:")
say("")
say("Dein Status wurde erfolgreich zurückgesetzt!")
say("")
end
end
end
Mfg, Destroyer446
|
|
|
02/17/2012, 15:42
|
#4781
|
elite*gold: 15
Join Date: Sep 2010
Posts: 844
Received Thanks: 975
|
PHP Code:
quest lagertruhe begin state start begin when 70028.use begin local wahl1 = select("Lager öffnen", "Gemischtwaren", "Abrechen") if wahl1 == 3 then return end if wahl1 == 1 then if pc.get_map_index() == 10 then game.open_safebox() else chat("Du kannst das Lager in Map1 nur bei dem Lagerverwalter öffnen!") end end if wahl1 == 2 then if pc.get_map_index() == 10 then npc.open_shop(ID) else chat("Du kannst die Gemischtwaren in Map1 nur bei der Gemi öffnen!") end end end end end
wer sonst noch probleme hat, kann mich per pn anschreiben oder bei skype; die übersicht in dem thread lässt momentan zu wünschen übrig & deshalb mach ich nur quests auf anfrage, da ich nicht weiß, welche quests mittlerweile schon funktionieren oder welche eben nicht
|
|
|
02/17/2012, 15:43
|
#4782
|
elite*gold: 0
Join Date: Jan 2011
Posts: 1,297
Received Thanks: 1,295
|
Quote:
Originally Posted by Destroyer446
Sollte so gehen RealMadrid94rk:
Code:
quest status begin
state start begin
when 9006.chat."Status Zurücksetzen" begin
say_titel("Status Zurücksetung:")
if pc.get_level() > 30 then
say("Du bist leider schon über Level 30.")
say("Daher kannst du deinen Status nich")
say("mehr zurücksetzen.")
say("")
return
end
say("")
say("Um deinen Status zurückzusetzen musst du")
say("mir 300.000 Yang zahlen. Deine Fertigkeiten")
say("und deine Statuspunkte werden dabei zurückgesetzt.")
say("Möchtest du wirklich deinen Status zurücksetzen?")
locale a=select("Ja", "Nein")
if a==2 then
return
end
if pc.get_money()<300000 then
say_titel("Status Zurücksetzung:")
say("")
say("Du hast nicht genug Yang um deinen")
say("Status zurückzusetzen.")
say("")
return
end
pc.change_money("-300000")
pc.reset_point()
pc.clear_skill()
pc.set_skill_group(0)
say_titel("Status Zurücksetzung:")
say("")
say("Dein Status wurde erfolgreich zurückgesetzt!")
say("")
end
end
end
Mfg, Destroyer446
|
Bitte sehr
PHP Code:
quest status begin
state start begin
when 9006.chat."Status Zurücksetzen" begin
say_titel("Status Zurücksetung:")
if pc.get_level() > 30 then
say("Du bist leider schon über Level 30.")
say("Daher kannst du deinen Status nich")
say("mehr zurücksetzen.")
say("")
return
else
say("")
say("Um deinen Status zurückzusetzen musst du")
say("mir 300.000 Yang zahlen. Deine Fertigkeiten")
say("und deine Statuspunkte werden dabei zurückgesetzt.")
say("Möchtest du wirklich deinen Status zurücksetzen?")
locale a=select("Ja", "Nein")
if a==2 then
return
elseif a == 2 then
if pc.get_money()<300000 then
say_titel("Status Zurücksetzung:")
say("")
say("Du hast nicht genug Yang um deinen")
say("Status zurückzusetzen.")
say("")
return
else
pc.change_money("-300000")
pc.reset_point()
pc.clear_skill()
pc.set_skill_group(0)
say_titel("Status Zurücksetzung:")
say("")
say("Dein Status wurde erfolgreich zurückgesetzt!")
say("")
end
end
end
end
end
end
|
|
|
02/17/2012, 16:37
|
#4783
|
elite*gold: 0
Join Date: Jul 2011
Posts: 501
Received Thanks: 110
|
syntax error: [string "start"]:14: '=' expected near 'a'
status.quest:37:Error occured on compile status.quest
Quote:
Originally Posted by .Sippel
Bitte sehr
PHP Code:
quest status begin
state start begin
when 9006.chat."Status Zurücksetzen" begin
say_titel("Status Zurücksetung:")
if pc.get_level() > 30 then
say("Du bist leider schon über Level 30.")
say("Daher kannst du deinen Status nich")
say("mehr zurücksetzen.")
say("")
return
else
say("")
say("Um deinen Status zurückzusetzen musst du")
say("mir 300.000 Yang zahlen. Deine Fertigkeiten")
say("und deine Statuspunkte werden dabei zurückgesetzt.")
say("Möchtest du wirklich deinen Status zurücksetzen?")
locale a=select("Ja", "Nein")
if a==2 then
return
elseif a == 2 then
if pc.get_money()<300000 then
say_titel("Status Zurücksetzung:")
say("")
say("Du hast nicht genug Yang um deinen")
say("Status zurückzusetzen.")
say("")
return
else
pc.change_money("-300000")
pc.reset_point()
pc.clear_skill()
pc.set_skill_group(0)
say_titel("Status Zurücksetzung:")
say("")
say("Dein Status wurde erfolgreich zurückgesetzt!")
say("")
end
end
end
end
end
end
|
|
|
|
02/17/2012, 17:09
|
#4784
|
elite*gold: 39
Join Date: Jun 2009
Posts: 500
Received Thanks: 212
|
Also zu Sippel:
Ich würde nie nach einem "return" ein "else" schreiben, da es einfach nur sinnlos ist 
Dafür, dass man else nicht schreiben muss gibts ja return^^
außerdem:
Code:
if a==2 then
return
elseif a == 2 then
Da hast du dich wahrscheinlich verschrieben (... ?) denke ich mal^^
Aber auch da würde ich das elseif wegnehmen.
Der Bug liegt daran, dass dort "locale a=" usw. steht..
Quest ohne "else" & "elseif" & bug:
Code:
quest status begin
state start begin
when 9006.chat."Status Zurücksetzen" begin
say_titel("Status Zurücksetung:")
if pc.get_level() > 30 then
say("Du bist leider schon über Level 30.")
say("Daher kannst du deinen Status nich")
say("mehr zurücksetzen.")
say("")
return
end
say("")
say("Um deinen Status zurückzusetzen musst du")
say("mir 300.000 Yang zahlen. Deine Fertigkeiten")
say("und deine Statuspunkte werden dabei zurückgesetzt.")
say("Möchtest du wirklich deinen Status zurücksetzen?")
local a = select("Ja", "Nein")
if a==2 then
return
end
if pc.get_money()<300000 then
say_titel("Status Zurücksetzung:")
say("")
say("Du hast nicht genug Yang um deinen")
say("Status zurückzusetzen.")
say("")
return
end
pc.change_money("-300000")
pc.reset_point()
pc.clear_skill()
pc.set_skill_group(0)
say_titel("Status Zurücksetzung:")
say("")
say("Dein Status wurde erfolgreich zurückgesetzt!")
say("")
end
end
end
|
|
|
02/17/2012, 17:16
|
#4785
|
elite*gold: 0
Join Date: Jul 2011
Posts: 501
Received Thanks: 110
|
Funktioniert, danke!
|
|
|
All times are GMT +1. The time now is 15:07.
|
|