der shop id in der shop.sql einen npc zuweisen
hier sollte alles stimmen =)Quote:
#edit:
nehmen wir mal meine quest alls beispiel:
du musst natürlich auch noch die shops einfach gesagt mit navicat definieren, bei mir ist z.b. der shop waffen der npc 6185PHP Code:quest npc_shop begin
state start begin
when 9001.chat."Waffen ab Lvl 0" begin
npc.open_shop(6181)
say("Hier findest du alle Waffen ab Lvl 0.")
end
when 9001.chat."Waffen ab Lvl 20" begin
npc.open_shop(6182)
say("Hier findest du alle Waffen ab Lvl 20.")
end
when 9001.chat."Waffen ab Lvl 36" begin
npc.open_shop(6183)
say("Hier findest du alle Waffen ab Lvl 36.")
end
when 9001.chat."Waffen ab Lvl 55" begin
npc.open_shop(6184)
say("Hier findest du alle Waffen ab Lvl 55.")
end
when 9001.chat."Waffen ab Lvl 65" begin
npc.open_shop(6185)
say("Hier findest du alle Waffen ab Lvl 65.")
end
when 9001.chat."Pfeile" begin
npc.open_shop(6)
say("Hier findest du alle Pfeile.")
end
end
end
quest test begin
state start begin
when login with pc.get_level == 1 begin
set_state("starteq")
end
end
state starteq begin
say_title("Willkommensnachricht")
say("Willkommen auf BeispielMt2 "..pc.get_name().."!")
say("Bitte vote 1 mal täglich.")
say("Bei Fragen und Vorschlägen")
say("bitte an einen Teamler wenden.")
say("TS3-Serveradresse: Beispiel")
notice_all("Wir heißen "..pc.get_name().." auf Beispielmt2 willkommen!")
if pc.get_race == 1 then
pc.give_item2(helm, 1)
pc.give_item2(rüstung, 1)
elseif pc.get_race == 2 then
pc.give_item2(helm, 1)
pc.give_item2(Rüstung, 1)
elseif pc.get_race == 3 then
pc.give_item2(Helm, 1)
pc.give_item2(Rüstung, 1)
elseif pc.get_race == 4 then
pc.give_item2(Helm, 1)
pc.give_item2(Rüstung, 1)
end
end
end
quest changename begin
state start begin
when 71055.use begin
say_title("Namensänderung:")
say("")
say("Mithilfe dieses Items kannst du deinen Namen")
say("einmalig ändern, also überlege es dir gut, ob")
say("du deinen Namen wirklich ändern möchtest!")
say("")
say_reward("Möchtest du deinen wirklich Namen ändern?")
say("")
local change = select("Ja", "Nein")
if change == 1 then
say_title("Namensänderung:")
say("")
say("Also du möchtest wirklich deinen Namen ändern!")
say("Bevor du deinen Namen ändern kannst, müssen wir")
say("erst prüfen ob dieser Name eigentlich noch frei")
say("ist.")
say("")
say_reward("Gib deinen neuen Namen hier ein:")
say("")
local c_name = input()
local c_search = find_pc_by_name(c_name)
if c_search==0 then
say_title("Namensänderung:")
say("")
say("Dieser Name ist noch frei. Bist du dir sicher, dass")
say("du dich "..c_name.." nennen möchtest?")
say("")
local secure = select("Ja", "Nein")
if secure == 1 then
say_title("Namensänderung:")
say("")
say("Herzlichen Glückwunsch!")
say("")
say("Deine Name wurde in "..c_name.." geändert!")
say("")
say_reward("Bitte einmal relog machen, damit die Änderung")
say_reward("gültig wird!")
say("")
pc.change_name(c_name)
pc.remove_item(71055, 1)
set_state(done)
else
say_title("Namensänderung:")
say("")
say("Schade, dass du dich doch anders entschieden hast,")
say("aber vielleicht möchtest du deinen Namen ja ein")
say("andermal ändern!")
say("")
end
else
say_title("Namensänderung:")
say("")
say("Dieser Name ist leider schon vergeben, bitte suche")
say("dir einen anderen Namen, den du verwenden kannst!")
say("")
end
else
return
end
end
end
end
quest changename begin
state done begin
when 71055.use with pc.is_gm() begin
say_title("Namensänderung:")
say("")
say("Hallo,")
say("Als GM kannst du deinen Namen unbegrenzt oft ändern.")
say("Wenn du deinen Namen nochmal ändern möchtest")
say("Klicke nocheinmal auf das Item!")
say("")
set_state(start)
end
end
end
Ich versuchs dir mal zu erklären..Quote:
Hmm..
Klappt immer noch nicht..
Kannst du mir evtl. mal privat über Skype helfen?
Quote:
Ich versuchs dir mal zu erklären..
Such dir nen npc raus den du als shop haben möchtest.
Ich habs bei mir mit dem Npc 9010 gemacht.
Hier ein Bild von dem Npc -> Achte darauf dass der Npc in der mob_proto bei on_click auf 1 ist!
Dann gehst du zu shop:
Danach gehst du zu shop_item:
Dann Rebooten damit die Shops neu definiert werden und in Filezilla connecten.
Ich hab hier mal meine Quest als veranschaulichung, wie man Quest einfügt zeige ich jetzt nicht, das müsste jeder wissen:
make ausführen, ingame reload q
und freuen
Hier noch ein ingame Bild:
Hoffe dass es verständlich erklärt ist und ich dir weiterhelfen konnte.
mfg derkiler
Ich weiß nicht ob überhaupt was falsch ist aufjedenfall gehts bei mir mit der quest hier:Quote:
PHP Code:quest changename begin
state start begin
when 71055.use begin
say_title("Namensänderung:")
say("")
say("Mithilfe dieses Items kannst du deinen Namen")
say("einmalig ändern, also überlege es dir gut, ob")
say("du deinen Namen wirklich ändern möchtest!")
say("")
say_reward("Möchtest du deinen wirklich Namen ändern?")
say("")
local change = select("Ja", "Nein")
if change == 1 then
say_title("Namensänderung:")
say("")
say("Also du möchtest wirklich deinen Namen ändern!")
say("Bevor du deinen Namen ändern kannst, müssen wir")
say("erst prüfen ob dieser Name eigentlich noch frei")
say("ist.")
say("")
say_reward("Gib deinen neuen Namen hier ein:")
say("")
local c_name = input()
local c_search = find_pc_by_name(c_name)
if c_search==0 then
say_title("Namensänderung:")
say("")
say("Dieser Name ist noch frei. Bist du dir sicher, dass")
say("du dich "..c_name.." nennen möchtest?")
say("")
local secure = select("Ja", "Nein")
if secure == 1 then
say_title("Namensänderung:")
say("")
say("Herzlichen Glückwunsch!")
say("")
say("Deine Name wurde in "..c_name.." geändert!")
say("")
say_reward("Bitte einmal relog machen, damit die Änderung")
say_reward("gültig wird!")
say("")
pc.change_name(c_name)
pc.remove_item(71055, 1)
set_state(done)
else
say_title("Namensänderung:")
say("")
say("Schade, dass du dich doch anders entschieden hast,")
say("aber vielleicht möchtest du deinen Namen ja ein")
say("andermal ändern!")
say("")
end
else
say_title("Namensänderung:")
say("")
say("Dieser Name ist leider schon vergeben, bitte suche")
say("dir einen anderen Namen, den du verwenden kannst!")
say("")
end
else
return
end
end
end
end
quest changename begin
state done begin
when 71055.use with pc.is_gm() begin
say_title("Namensänderung:")
say("")
say("Hallo,")
say("Als GM kannst du deinen Namen unbegrenzt oft ändern.")
say("Wenn du deinen Namen nochmal ändern möchtest")
say("Klicke nocheinmal auf das Item!")
say("")
set_state(start)
end
end
end
was ist daran falsch?
nopeQuote:
Ich weiß, Vnums noch nicht eingefügt etc, aber würde diese Quest funktionieren?Code:quest test begin state start begin when login with pc.get_level == 1 begin set_state("starteq") end end state starteq begin say_title("Willkommensnachricht") say("Willkommen auf BeispielMt2 "..pc.get_name().."!") say("Bitte vote 1 mal täglich.") say("Bei Fragen und Vorschlägen") say("bitte an einen Teamler wenden.") say("TS3-Serveradresse: Beispiel") notice_all("Wir heißen "..pc.get_name().." auf Beispielmt2 willkommen!") if pc.get_race == 1 then pc.give_item2(helm, 1) pc.give_item2(rüstung, 1) elseif pc.get_race == 2 then pc.give_item2(helm, 1) pc.give_item2(Rüstung, 1) elseif pc.get_race == 3 then pc.give_item2(Helm, 1) pc.give_item2(Rüstung, 1) elseif pc.get_race == 4 then pc.give_item2(Helm, 1) pc.give_item2(Rüstung, 1) end end end
Gruß,
GlaubIchAuch
Ähhm nein, ich will es so:Quote:
Spieler A tötet Spieler B. Spieler A erhält name level..etc von Spieler B?
Spieler A tötet Spieler B, kill wird nur gezählt wenn Spieler A mind. level x ist.
if pc.get_race == 1 then
pc.give_item2(helm, 1)
pc.give_item2(rüstung, 1)
when kill begin if pc.level >= X then