|
You last visited: Today at 00:13
Advertisement
[SERVICE] Die Questkontrolle
Discussion on [SERVICE] Die Questkontrolle within the Metin2 Private Server forum part of the Metin2 category.
04/06/2014, 20:57
|
#9991
|
elite*gold: 0
Join Date: Dec 2010
Posts: 200
Received Thanks: 24
|
Teleportieren
Hallo zusammen,
ich lass die Spieler über eine Quest auf eine Map teleportieren (funktioniert)
PHP Code:
Befehl:
pc.warp(100,100)
nur das Problem hierbei ist das der Spieler auf die Position 0,0 geportet wird, wie kann ich einstellen das er beim Porten die position 10,10 ankommt?
Hinweis ich benutze die 40k Files (fals von bedeutung)
Vielen Dank
Gruß Blacky
|
|
|
04/06/2014, 21:13
|
#9992
|
elite*gold: 71
Join Date: Dec 2011
Posts: 598
Received Thanks: 149
|
@.Pff:
Zeile 28 "..pc.getgf.." zu "..pc.getqf.." ändern
@.BlackBynes:
pc.warp(1000,1000)
|
|
|
04/06/2014, 21:21
|
#9993
|
elite*gold: 0
Join Date: Oct 2013
Posts: 404
Received Thanks: 314
|
Quote:
Originally Posted by RawClassic
Keiner eine Idee warum der den Spieler dann nicht portet? ;(
PHP Code:
quest Biomap begin
state start begin
when 20377.chat."Biomap" begin
say_title("Biomap")
say("Du willst also auf die Biomap")
say("Dort kannst du alle Bio Items droppen")
say("Aber es wird nicht leicht werden")
say("Ich benoetige dafuer Bioschluessel")
say("")
if pc.count_item(30190) >= 1 then
local s = select("Ja", "Nein")
if s==1 then
pc.remove_item(30190, 1)
say_title("Biomap")
say("Du hast ein Bioschluessel")
say("Ich bringe dich nun auf die Biomap")
say("Dort droppst du die Bio Items bis zur 70ger Bio")
say("aus Metinsteinen jeder Boss droppt einen zufaelligen Bio Seeli")
say("")
pc.warp(383, 640)
else
return
end
else
say_title("Du hast keinen Bioschluessel")
say("")
say("besorg dir einen und komm wieder!")
say("")
say_item_vnum(30190)
end
end
end
end
|
Hab die Kordinaten genommen mit den man sich mit /warp auf die map portet also /warp 383 640 per warp geht es über den porter nicht.... muss ich da irgendwas in der db eintragen für den porter das der die erlaubnis hat zu porten oder so? anklicken kann man ihn ja und die quest läuft auch durch
|
|
|
04/06/2014, 21:24
|
#9994
|
elite*gold: 71
Join Date: Dec 2011
Posts: 598
Received Thanks: 149
|
Per Quest musst du nach den Koordinaten zwei Nulle eintragen:
pc.warp(38300, 64000)
|
|
|
04/06/2014, 21:53
|
#9995
|
elite*gold: 0
Join Date: Oct 2013
Posts: 404
Received Thanks: 314
|
Quote:
Originally Posted by MrPlayboy
Per Quest musst du nach den Koordinaten zwei Nulle eintragen:
pc.warp(38300, 64000)
|
Bester Mann danke dir mehr als ein thanks geht leider nicht
|
|
|
04/07/2014, 22:26
|
#9996
|
elite*gold: 0
Join Date: Dec 2010
Posts: 200
Received Thanks: 24
|
Quote:
Originally Posted by MrPlayboy
@.Pff:
Zeile 28 "..pc.getgf.." zu "..pc.getqf.." ändern
@.BlackBynes:
pc.warp(1000,1000)
|
also fürs verständnis ich nehme die Kordinaten*die Position ?
währe dann bei Kord 1234,9876 mit der pos 50 70 dann
1234*50=61700
9876*70=691320
also würde der Befehl dann wie folgt laute
pc.warp(6170000, 69132000)
kann ich mir nicht vorstellen / muss falsch sein ....
sry aber danke für die Hilfe
|
|
|
04/07/2014, 22:29
|
#9997
|
elite*gold: 0
Join Date: Apr 2014
Posts: 42
Received Thanks: 0
|
Hallo zusammen,
Ich hab eine Quest geschrieben. In der man monster in einer bestimmten zeit killen muss.
Mein Problem ist nun. wenn ich N drücke und runter scrolle wird keine zeit angezeigt.
genauso wenn ich auslogge und wieder einlogge ist die quest weg. woran liegt das?
|
|
|
04/07/2014, 22:35
|
#9998
|
elite*gold: 71
Join Date: Dec 2011
Posts: 598
Received Thanks: 149
|
Quote:
Originally Posted by BlackBynes
also fürs verständnis ich nehme die Kordinaten*die Position ?
währe dann bei Kord 1234,9876 mit der pos 50 70 dann
1234*50=61700
9876*70=691320
also würde der Befehl dann wie folgt laute
pc.warp(6170000, 69132000)
kann ich mir nicht vorstellen / muss falsch sein ....
sry aber danke für die Hilfe
|
Soweit ich weiß musst du die Position nicht mal, sondern plus die Koordinaten nehmen. Bsp:
Koord. 1252, 46
Pos. 40, 25
Ergebnis: 1292, 71
Dann noch in der Quest 00 hinter X und Y
129200, 7100
Sry wenn ich falsch liege & mfG
@Marathon
Poste mal deine Quest
|
|
|
04/07/2014, 22:37
|
#9999
|
elite*gold: 26
Join Date: Mar 2010
Posts: 3,765
Received Thanks: 2,661
|
kennt ihr den Chatbefehl "/state" ?
Geht einfach ingame an die Postition, an die ihr euch porten wollt, gebt /state ein,
die Koordinaten die angezeigt werden schreibt ihr in eure quest rein
|
|
|
04/08/2014, 19:58
|
#10000
|
elite*gold: 0
Join Date: Dec 2010
Posts: 200
Received Thanks: 24
|
Perfekt!
ist genau das was ich gebraucht habe. Funktioniert einwandfrei!
|
|
|
04/09/2014, 00:41
|
#10001
|
elite*gold: 127
Join Date: Jan 2011
Posts: 199
Received Thanks: 55
|
Goldener Schmied Quest
Ich bin hier seid mehreren Stunden am ausprobieren finde aber den Fehler nicht hier der Fehler:
in der syserr ist nichts drin
Hier noch die Quest
PHP Code:
quest refine_items begin state start begin when 9010.take begin local out = mysql_query("SELECT * FROM player.refine_proto WHERE id = (SELECT refine_set FROM player.item_proto WHERE vnum = "..item.get_vnum()..");") if type(out) ~= "table" then return end out.cost[1] = out.cost[1]*100 say_title("Verbesserungen") if out.vnum0[1] ~= 0 then say_item(item_name(out.vnum0[1]), out.vnum0[1], out.count0[1].."x") end if out.vnum1[1] ~= 0 then say_item(item_name(out.vnum1[1]), out.vnum1[1], out.count1[1].."x") end say("Verbesserungskosten: "..out.cost[1].." Yang") say("") if select("Ok", "Abbruch") == 2 then return end if pc.get_gold() < tonumber(out.cost[1]) then chat("Nicht genügend Yang für eine Verbesserung.") return elseif pc.count_item(out.vnum0[1]) < out.count0[1] or pc.count_item(out.vnum1[1]) < out.count1[1] then chat("Du hast nicht das richtige Material, um das herzustellen.") return end if out.vnum0[1] ~= 0 then pc.remove_item(out.vnum0[1], out.count0[1]) end if out.vnum1[1] ~= 0 then pc.remove_item(out.vnum1[1], out.count1[1]) end pc.change_gold(-out.cost[1]) item.over9refine() say_title("Verbesserung") say("Die Gegenstandsverbesserung war erfolgreich.") end end end
Würde mich um Hilfe freuen
MfG
SnackWell
|
|
|
04/09/2014, 10:10
|
#10002
|
elite*gold: 0
Join Date: May 2013
Posts: 605
Received Thanks: 580
|
Quote:
Originally Posted by SnackWell
Ich bin hier seid mehreren Stunden am ausprobieren finde aber den Fehler nicht hier der Fehler:
in der syserr ist nichts drin
Hier noch die Quest
PHP Code:
quest refine_items begin
state start begin
when 9010.take begin
local out = mysql_query("SELECT * FROM player.refine_proto WHERE id = (SELECT refine_set FROM player.item_proto WHERE vnum = "..item.get_vnum()..");")
if type(out) ~= "table" then return end
out.cost[1] = out.cost[1]*100
say_title("Verbesserungen")
if out.vnum0[1] ~= 0 then
say_item(item_name(out.vnum0[1]), out.vnum0[1], out.count0[1].."x")
end
if out.vnum1[1] ~= 0 then
say_item(item_name(out.vnum1[1]), out.vnum1[1], out.count1[1].."x")
end
say("Verbesserungskosten: "..out.cost[1].." Yang")
say("")
if select("Ok", "Abbruch") == 2 then return end
if pc.get_gold() < tonumber(out.cost[1]) then
chat("Nicht genügend Yang für eine Verbesserung.")
return
elseif pc.count_item(out.vnum0[1]) < out.count0[1] or pc.count_item(out.vnum1[1]) < out.count1[1] then
chat("Du hast nicht das richtige Material, um das herzustellen.")
return
end
if out.vnum0[1] ~= 0 then
pc.remove_item(out.vnum0[1], out.count0[1])
end
if out.vnum1[1] ~= 0 then
pc.remove_item(out.vnum1[1], out.count1[1])
end
pc.change_gold(-out.cost[1])
item.over9refine()
say_title("Verbesserung")
say("Die Gegenstandsverbesserung war erfolgreich.")
end
end
end
Würde mich um Hilfe freuen
MfG
SnackWell
|
die spalte cost existiert nicht(bzw. ist kein wert eingetragen), du musst sie neu eintragen.
|
|
|
04/09/2014, 13:41
|
#10003
|
elite*gold: 127
Join Date: Jan 2011
Posts: 199
Received Thanks: 55
|
spalte cost ist vorhanden und auch komplett vollständig
|
|
|
04/09/2014, 15:06
|
#10004
|
elite*gold: 0
Join Date: Feb 2014
Posts: 151
Received Thanks: 38
|
PHP Code:
quest pvm begin
state start begin
when login or levelup with pc.level >= 72 begin
set_state(information)
end
end
state information begin
when letter begin
send_letter("Mach jagt auf die Metinsteine 30")
end
when info or button begin
say("PvM Quest")
say("Hallo Spieler von Eralicya2!")
say("Überall spawnen die Metinsteine. Unsere")
say("Krieger sind alle beim versuch sie zu")
say("töten gefallen. Wir hoffen auf")
say("deine Hilfe. Bitte befreie uns von von diesem")
say("Unheil, damit wir wieder in Frieden leben können")
say("Bitte hilf uns:")
say_reward("Töte 25 x Metin Ma An.")
say_reward("")
say_reward("Wenn du es geschafft hast bekommst du eine Belohnung!")
say_reward("")
say_reward("")
say("")
pc.setqf("state", 25)
q.set_counter("Metin Ma An", 25)
set_state(MAIN)
end
end
state MAIN begin
when login begin
local count = pc.getqf("state")
q.set_counter("Metin Ma An", count)
end
when 8025.kill begin
local count = pc.getqf("state") - 1
if count <= 25 then
pc.setqf("state", count)
q.set_counter("Metin Ma An", count)
end
if count == 0 then
say_title("PvM Quest")
say("")
say("")
say("Gut du hast es geschafft.")
say("Hier deine Belohnung")
say_reward("6 Gewundene Schlüssel und 2 Schrumpfköpfe")
pc.give_item2(30179, 6)
pc.give_item2(30319, 2)
clear_letter()
set_state(__COMPLETE__)
end
end
end
state __COMPLETE__ begin
end
end
Das ist die Quest und irgendwie kommt kein Questletter.
Was kann ich da tun ?
|
|
|
04/09/2014, 19:52
|
#10005
|
elite*gold: 71
Join Date: Dec 2011
Posts: 598
Received Thanks: 149
|
Schon mit makequestbutton("TEXT") versucht?
|
|
|
All times are GMT +1. The time now is 00:14.
|
|