Öhm habe das bei ein Paar Quests zb. welche mir gerade einfällt ist die Kopfgeld Quest bei der habe ich das Problem ebenfalls deswegen habe ich noch keine andere Probiert ;)
Bank.quest
Code:
------------------------------------------------------
-- (C) by Benhero from Elitepvpers --
-- Diese Quest wurde von Benhero aus Elitepvpers --
-- Erdacht und geschrieben. Das Cobyright liegt --
-- aleine bei ihm! Wenn ihr diese Quest verwendet --
-- Möchte ich auf eurer Hompage oder sonst wo --
-- als Quest geber eingetragen werden!!! --
-- Nicht einhaltung dieser Pflicht wird rechliche --
-- folgen nach sich ziehn! --
------------------------------------------------------
quest eventnpc begin
state start begin
when 20087.chat."Bank" begin
local pin = pc.getqf("konto_pin")
local konto_yang = pc.getqf("konto_yang")
if pin == 0 then
--------------------------- PIN FESTLEGEN! ---------------------------
say_title("Roland spricht zu ".. pc.get_name() ..".")
say("")
say("Hallo. Ich bin Roland und Verwalte das")
say("Da du das erste mal mit mir sprichst möchte")
say("Ich dich bitten deine Pin fest zu legen.")
say("Nur eine Sichere 5 stellige Pin stellt")
say("sicher das dein Konto vor Dieben sicher")
say("ist.")
say("")
say_reward("Bitte 5 stellige Pin eingeben (Nur Zahlen)")
local pin_eing = tonumber(input("12345"))
if pin_eing > 9999 and pin_eing < 100000 then
say_title("Roland spricht zu ".. pc.get_name() ..".")
say("")
say("Diese Pin ist ok!")
say("")
say_reward("Pin " ..pin_eing.. " Speichern?")
local sel=select("Ja", "Nein")
if sel==1 then
pc.setqf("konto_pin", pin_eing)
say_title("Roland spricht zu ".. pc.get_name() ..".")
say("")
say("Pin wurde gespeichert.")
say("Bis bald mal.")
elseif sel==2 then
say_title("Roland spricht zu ".. pc.get_name() ..".")
say("")
say("Bis bald mal.")
else
-- Fehler abfangen!
say("Unbekannter Fehler!")
say("Bitte umgehend mit ihren")
say("Fehler Code beim Serverleiter")
say("melden!")
say("Fehler Code: 1")
end
elseif pin_eing > 99999 or pin_eing == 0 or pin_eing < 10000 then
say_title("Roland spricht zu ".. pc.get_name() ..".")
say("")
say("Tut mir leid doch irgendwas stimmt nicht mit")
say("deiner Pin.")
say("")
say_reward("Info: Pin darf nur Zahlen enthalten!")
say_reward("Info: Pin darf nicht größer als 99999")
say_reward("oder kleiner als 10000 sein!")
else
-- Fehler abfangen!
say("Unbekannter Fehler!")
say("Bitte umgehend mit ihren")
say("Fehler Code beim Serverleiter")
say("melden!")
say("Fehler Code: 2")
end
else
--------------------------- PIN VORHANDEN! ---------------------------
say_title("Roland spricht zu ".. pc.get_name() ..".")
say("")
say("Hallo. Ich bin Roland und Verwalte das")
say("Geld was die Leute mir anvertraun.")
say("")
say_reward("Was möchtest du tun?")
say("")
local sel=select("Geld geben", "Geld nehmen", "Konto Abfragen", "Pin ändern", "Nichts")
if sel==1 then
---------------------------GELD GEBEN---------------------------
say_title("Roland spricht zu ".. pc.get_name() ..".")
say("")
say("Bitte Pin eingeben.")
local pin_abf = tonumber(input(""))
if pin_abf == pc.getqf("konto_pin") then
say_title("Roland spricht zu ".. pc.get_name() ..".")
say("")
say("Pin ist Korrekt.")
say("Wie viel Geld auf Konto einzahlen?")
say("Maximal 1.999.999.999!")
say("")
say_reward("Dabei: " ..pc.get_money())
say("")
local geld_auf_konto = tonumber(input(""))
local auf_konto_new = tonumber(geld_auf_konto) + pc.getqf("konto_yang")
if geld_auf_konto < 0 then
say_title("Roland spricht zu ".. pc.get_name() ..".")
say("")
say("Das geht leider nicht.")
else
if pc.get_money() < geld_auf_konto then
say_title("Roland spricht zu ".. pc.get_name() ..".")
say("")
say("Soviel hast du garnicht dabei.")
else
if auf_konto_new < 2000000000 then
pc.change_money(-geld_auf_konto)
pc.setqf("konto_yang", auf_konto_new)
say_title("Roland spricht zu ".. pc.get_name() ..".")
say("")
say("Ich habe " ..geld_auf_konto.. " Yang auf dein Konto getan.")
else
say_title("Roland spricht zu ".. pc.get_name() ..".")
say("")
say("Soviel kannst du nicht aufs Konto.")
say("machen. Das würde die Maximal menge")
say("von 1.999.999.999 überschreiten.")
end
end
end
else
say_title("Roland spricht zu ".. pc.get_name() ..".")
say("")
say("Falsche Pin.")
end
elseif sel==2 then
---------------------------GELD ABHEBEN---------------------------
say_title("Roland spricht zu ".. pc.get_name() ..".")
say("")
say("Bitte Pin eingeben.")
local pin_abf = tonumber(input(""))
if pin_abf == pc.getqf("konto_pin") then
say_title("Roland spricht zu ".. pc.get_name() ..".")
say("")
say("Pin ist Korrekt.")
say("Wie viel Geld vom Konto abheben?")
say("")
say_reward("Auf Konto: " ..pc.getqf("konto_yang"))
say("")
local geld_von_konto = tonumber(input(""))
if geld_von_konto < 0 then
say_title("Roland spricht zu ".. pc.get_name() ..".")
say("")
say("Das geht leider nicht.")
else
if geld_von_konto > pc.getqf("konto_yang") then
say_title("Roland spricht zu ".. pc.get_name() ..".")
say("")
say("Soviel hast du nicht auf deinem Konto.")
elseif geld_von_konto <= pc.getqf("konto_yang") then
local yang_bug_check = pc.get_money() + geld_von_konto
if yang_bug_check < 2000000000 then
local auf_konto_new = tonumber(pc.getqf("konto_yang") - geld_von_konto)
pc.setqf("konto_yang", auf_konto_new)
pc.change_money(geld_von_konto)
say_title("Roland spricht zu ".. pc.get_name() ..".")
say("")
say("Ich habe dir " ..geld_von_konto.. " Yang gegeben.")
else
say_title("Roland spricht zu ".. pc.get_name() ..".")
say("")
say("Soviel kann ich dir nicht geben. Das würde")
say("Dein Yang auf 0 Setzen! (0 YANG BUG)")
end
end
end
else
say_title("Roland spricht zu ".. pc.get_name() ..".")
say("")
say("Falsche Pin.")
end
elseif sel==3 then
---------------------------GELD ABFRAGEN---------------------------
say_title("Roland spricht zu ".. pc.get_name() ..".")
say("")
say("Du möchtest wissen wie viel Yang du auf deinem")
say("Konto hast? Nun gut du hast:")
say("")
say_reward("Yang auf Konto: " ..pc.getqf("konto_yang"))
elseif sel==4 then
---------------------------PIN ÄNDERN---------------------------
say_title("Roland spricht zu ".. pc.get_name() ..".")
say("")
say("Bitte aktuelle Pin eingeben.")
local pin_abf = tonumber(input(""))
if pin_abf == pc.getqf("konto_pin") then
say_title("Roland spricht zu ".. pc.get_name() ..".")
say("")
say("Pin ist Korrekt.")
say("Bitte Neue Pin eingeben. (Nur Zahlen)")
local pin_eing = tonumber(input("12345"))
if pin_eing > 9999 and pin_eing < 100000 then
say_title("Roland spricht zu ".. pc.get_name() ..".")
say("")
say("Diese Pin ist ok!")
say("")
say_reward("Pin " ..pin_eing.. " Speichern?")
local sel=select("Ja", "Nein")
if sel==1 then
pc.setqf("konto_pin", pin_eing)
say_title("Roland spricht zu ".. pc.get_name() ..".")
say("")
say("Pin wurde erfolgreich geändert.")
say("Bis bald mal.")
elseif sel==2 then
say_title("Roland spricht zu ".. pc.get_name() ..".")
say("")
say("Bis bald mal.")
else
-- Fehler abfangen!
say("Unbekannter Fehler!")
say("Bitte umgehend mit ihren")
say("Fehler Code beim Serverleiter")
say("melden!")
say("Fehler Code: 3")
end
elseif pin_eing > 99999 or pin_eing == 0 or pin_eing < 10000 then
say_title("Roland spricht zu ".. pc.get_name() ..".")
say("")
say("Tut mir leid doch irgendwas stimmt nicht mit")
say("deiner Pin. Deshalb habe ich sie nicht geändert.")
say("")
say("")
say_reward("Info: Pin darf nur Zahlen enthalten!")
say_reward("Info: Pin darf nicht größer als 99999")
say_reward("oder kleiner als 10000 sein!")
else
-- Fehler abfangen!
say("Unbekannter Fehler!")
say("Bitte umgehend mit ihren")
say("Fehler Code beim Serverleiter")
say("melden!")
say("Fehler Code: 4")
end
else
say_title("Roland spricht zu ".. pc.get_name() ..".")
say("")
say("Falsche Pin.")
end
elseif sel==5 then
---------------------------Abbrechen---------------------------
say_title("Roland spricht zu ".. pc.get_name() ..".")
say("")
say("Bis bald mal.")
else
-- Fehler abfangen!
say("Unbekannter Fehler!")
say("Bitte umgehend mit ihren")
say("Fehler Code beim Serverleiter")
say("melden!")
say("Fehler Code: 5")
end
end
end
end
end
Kopfgeld.quest
PHP Code:
quest kopfgeld begin
state start begin
when 20087.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("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 20087.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_money(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 = '"..eins.."' WHERE name = '"..name.."' LIMIT 1")
end
end
end
end
end
Also das Passiert immer nur wenn ein Eingabe Feld erscheint und du dann eben das das jeweils gefragte ein tippst es bestätigst dann kommt der sipp ;)