|
You last visited: Today at 08:51
Advertisement
[SERVICE] Die Questkontrolle
Discussion on [SERVICE] Die Questkontrolle within the Metin2 Private Server forum part of the Metin2 category.
09/14/2015, 20:58
|
#11896
|
elite*gold: 6
Join Date: Dec 2007
Posts: 4,075
Received Thanks: 1,235
|
Yangbomben per Quest
Quote:
Originally Posted by .Colossus.
Code:
when 1901.kill with pc.get_level() <= 82 begin -- max 10 level höher
if pc.getqf("bomben_anzahl") <= 0 then
pc.setqf("bomben_anzahl", 66)
end
pc.setqf("bomben_anzahl", pc.getqf("bomben_anzahl") - 1)
game.drop_item_with_ownership(25040,1) -- 100% Segi
game.drop_item_with_ownership(70102,1) -- 100% Zen-Bohne
game.drop_item_with_ownership(50077,1) -- 100% Truhe
game.drop_item_with_ownership(1,200)
if pc.getqf("bomben_anzahl") > 0 then
game.drop_item_with_ownership(1,200)
end
end
|
Habe es wie folgt gelöst:
PHP Code:
--------------------------------------------------------------------------------------------------------------------
-- Neunschwanz Lv.72 --
--------------------------------------------------------------------------------------------------------------------
when kill with npc.get_race() == 1901 and pc.get_level() <= 82 begin -- max 10 Level höher
game.drop_item_with_ownership(25040,1) -- 100% Segi
game.drop_item_with_ownership(70102,1) -- 100% Zen-Bohne
game.drop_item_with_ownership(50077,1) -- 100% Truhe
for i = 1, 66, 1 do
game.drop_item_with_ownership(1,200)
end
end
Für die Leute, die wissen wollen was genau passiert:
Code:
for i = 1, 66, 1 do
Dies ist eine Schleifenfunktion, sprich der darauf folgende Befehl/e, in meinem Fall:
Code:
game.drop_item_with_ownership(1,200)
wird 66x mal wiederholt. Wer jetzt einen zufälligen Yangdrop haben will (es gibt keine Begrenzung soweit ich weiß), löst das ganze mit folgendem Befehl:
Der niedrigste Yangdrop beträgt in diesem Fall 200 und der höchste 400 Yang.
Zusammen gesetzt sieht das ganze wie folgt aus:
Code:
game.drop_item_with_ownership(1,number(200,400))
Hoffe damit konnte ich anderen weiterhelfen.
|
|
|
09/15/2015, 14:14
|
#11897
|
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
|
Quote:
Originally Posted by Ide.
Habe es wie folgt gelöst:
PHP Code:
-------------------------------------------------------------------------------------------------------------------- -- Neunschwanz Lv.72 -- -------------------------------------------------------------------------------------------------------------------- when kill with npc.get_race() == 1901 and pc.get_level() <= 82 begin -- max 10 Level höher game.drop_item_with_ownership(25040,1) -- 100% Segi game.drop_item_with_ownership(70102,1) -- 100% Zen-Bohne game.drop_item_with_ownership(50077,1) -- 100% Truhe for i = 1, 66, 1 do game.drop_item_with_ownership(1,200) end end
Für die Leute, die wissen wollen was genau passiert:
Code:
for i = 1, 66, 1 do
Dies ist eine Schleifenfunktion, sprich der darauf folgende Befehl/e, in meinem Fall:
Code:
game.drop_item_with_ownership(1,200)
wird 66x mal wiederholt. Wer jetzt einen zufälligen Yangdrop haben will (es gibt keine Begrenzung soweit ich weiß), löst das ganze mit folgendem Befehl:
Der niedrigste Yangdrop beträgt in diesem Fall 200 und der höchste 400 Yang.
Zusammen gesetzt sieht das ganze wie folgt aus:
Code:
game.drop_item_with_ownership(1,number(200,400))
Hoffe damit konnte ich anderen weiterhelfen. 
|
Gut erklärt
Ich würde die Abfrage, ob das Monster 10 Level höher ist generisch machen.
Dafür müsste folgendes in die Questlib:
Code:
local mob_levels = {}
for _,v in ipairs(game.mysql_query("SELECT vnum, level FROM player.mob_proto;")) do
mob_levels[tonumber(v[1])] = tonumber(v[2])
end
function npc.get_level(vnum)
return mob_levels[vnum or npc.get_race()]
end
function npc.get_level_difference(vnum)
return math.abs(pc.get_level() - npc.get_level(vnum))
end
Die Quest könnte dann so aussehen:
Code:
when kill with npc.get_race() == 1901 and npc.get_level_difference() <= 10 begin -- max 10 Level höher
game.drop_item_with_ownership(25040,1) -- 100% Segi
game.drop_item_with_ownership(70102,1) -- 100% Zen-Bohne
game.drop_item_with_ownership(50077,1) -- 100% Truhe
for i = 1, 66 do
game.drop_item_with_ownership(1,math.random(200, 400))
end
end
ausserdem würde ich vielleicht das Level des Spielers / den Levelunterschied zum Monster bei der Größe der Yangklumpen mit einbeziehen.
|
|
|
09/16/2015, 18:24
|
#11898
|
elite*gold: 0
Join Date: Sep 2015
Posts: 1
Received Thanks: 1
|
Quote:
Originally Posted by Seחsi
Gut erklärt
Ich würde die Abfrage, ob das Monster 10 Level höher ist generisch machen.
Dafür müsste folgendes in die Questlib:
Code:
local mob_levels = {}
for _,v in ipairs(game.mysql_query("SELECT vnum, level FROM player.mob_proto;")) do
mob_levels[tonumber(v[1])] = tonumber(v[2])
end
function npc.get_level(vnum)
return mob_levels[vnum or npc.get_race()]
end
function npc.get_level_difference(vnum)
return math.abs(pc.get_level() - npc.get_level(vnum))
end
Die Quest könnte dann so aussehen:
Code:
when kill with npc.get_race() == 1901 and npc.get_level_difference() <= 10 begin -- max 10 Level höher
game.drop_item_with_ownership(25040,1) -- 100% Segi
game.drop_item_with_ownership(70102,1) -- 100% Zen-Bohne
game.drop_item_with_ownership(50077,1) -- 100% Truhe
for i = 1, 66 do
game.drop_item_with_ownership(1,math.random(200, 400))
end
end
ausserdem würde ich vielleicht das Level des Spielers / den Levelunterschied zum Monster bei der Größe der Yangklumpen mit einbeziehen.
|
solltest bei der npc.get_level funktion ein bisschen error handling betreiben
return mob_levels[vnum or npc.get_race()] or 0 würde besser sein falls der index nicht existiert
|
|
|
09/24/2015, 11:13
|
#11899
|
elite*gold: 105
Join Date: Jun 2015
Posts: 453
Received Thanks: 294
|
Hi
Kann mir jemand bitte bei dieser Quest helfen?
Ich kann diese Quest nicht compilen :/
Code:
quest levelup_notice begin
state start begin
when login or levelup begin
local gm_allowed = true -- Ob bei GMs die Meldung auch kommt
if not gm_allowed and pc.is_gm() then return end
local level_list = {
10,20,30,40,50,60,70,80,90,100
}
table.foreach(level_list, function(i)
if pc.get_level() == level_list[i] then
notice_all(string.format("Der Spieler %s hat soeben das Level %d erreicht!", pc.get_name(), level_list[i])) break
end
end)
end
end
end
Fehler:
Levelanzeige_chat.quest:14:syntax error : [string "start"]:9: no loop to break near `end'
Error occured on compile
|
|
|
09/24/2015, 13:07
|
#11900
|
elite*gold: 35
Join Date: Aug 2014
Posts: 336
Received Thanks: 267
|
Quote:
Originally Posted by I´m Raylee
Hi
Kann mir jemand bitte bei dieser Quest helfen?
Ich kann diese Quest nicht compilen :/
Code:
quest levelup_notice begin
state start begin
when login or levelup begin
local gm_allowed = true -- Ob bei GMs die Meldung auch kommt
if not gm_allowed and pc.is_gm() then return end
local level_list = {
10,20,30,40,50,60,70,80,90,100
}
table.foreach(level_list, function(i)
if pc.get_level() == level_list[i] then
notice_all(string.format("Der Spieler %s hat soeben das Level %d erreicht!", pc.get_name(), level_list[i])) break
end
end)
end
end
end
Fehler:
Levelanzeige_chat.quest:14:syntax error : [string "start"]:9: no loop to break near `end'
Error occured on compile
|
Untested, sollte aber gehen:
Code:
quest levelup_notice begin
state start begin
when login or levelup begin
local level_list = ({
[10] = 10, [20] = 20, [30] = 30, [40] = 40, [50] = 50, [60] = 60, [70] = 70, [80] = 80, [90] = 90, [100] = 100
})[pc.get_level()]
if level_list == nil then
return
else
notice_all(string.format("Der Spieler %s hat soeben das Level %d erreicht!", pc.get_name(), level_list))
end
end
end
end
|
|
|
09/24/2015, 21:30
|
#11901
|
elite*gold: 105
Join Date: Jun 2015
Posts: 453
Received Thanks: 294
|
Danke dir funktioniert super!
|
|
|
09/25/2015, 18:12
|
#11902
|
elite*gold: 0
Join Date: Mar 2015
Posts: 119
Received Thanks: 29
|
Hab ein kleines Problem mit meiner give_basic_weapon.quest.
Queste erst seit gestern, und konnte den Fehler nicht finden.
Bin über jede Antwort erfreut
quest give_basic_weapon begin
state start begin
when login begin
say_title("Servername - Willkommen")
say("")
say("WIr bieten euch die möglichkeit zwischen 2")
say("Startequipment's zu wählen.")
say("Bitte wählen:")
local art = select ("Normales EQ", "Servername EQ")
if art == 1 then
eq.normal()
elseif art == 2 then
eq.maltasia()
else
return
end
end
function normal()
if pc.get_job() == 0 then
say_title("Normales EQ")
say("")
say("Du hast dich für das normale EQ entschieden.")
pc.give_item2(11209)
pc.give_item2(19)
pc.give_item2(12209)
if pc.get_job() == 1 then
say_title("Normales EQ")
say("")
say("Du hast dich für das normale EQ entschieden.")
pc.give_item2(11409)
pc.give_item2(12349)
pc.give_item2(1009)
if pc.get_job() == 2 then
say_title("Normales EQ")
say("")
say("Du hast dich für das normale EQ entschieden.")
pc.give_item2(11609)
pc.give_item2(19)
pc.give_item2(12489)
if pc.get_job() == 3 then
say_title("Normales EQ")
say("")
say("Du hast dich für das normale EQ entschieden.")
pc.give_item2(11809)
pc.give_item2(12629)
pc.give_item2(7009)
end
end
function maltasia()
if pc.get_job() == 0 then
say_title("Servername EQ")
say("")
say("Du hast dich für das Servername EQ entschieden.")
pc.give_item2(11209)
pc.give_item2(19)
pc.give_item2(12209)
if pc.get_job() == 1 then
say_title("Servername EQ")
say("")
say("Du hast dich für das Servername EQ entschieden.")
pc.give_item2(11409)
pc.give_item2(12349)
pc.give_item2(1009)
if pc.get_job() == 2 then
say_title("Servername EQ")
say("")
say("Du hast dich für das Servername EQ entschieden.")
pc.give_item2(11609)
pc.give_item2(19)
pc.give_item2(12489)
if pc.get_job() == 3 then
say_title("Servername EQ")
say("")
say("Du hast dich für das Servername EQ entschieden.")
pc.give_item2(11809)
pc.give_item2(12629)
pc.give_item2(7009)
end
end
end
end
|
|
|
09/25/2015, 19:04
|
#11903
|
elite*gold: 76
Join Date: Mar 2015
Posts: 698
Received Thanks: 245
|
Quote:
Originally Posted by MilkingCow
Hab ein kleines Problem mit meiner give_basic_weapon.quest.
Queste erst seit gestern, und konnte den Fehler nicht finden.
Bin über jede Antwort erfreut
quest give_basic_weapon begin
state start begin
when login begin
say_title("Servername - Willkommen")
say("")
say("WIr bieten euch die möglichkeit zwischen 2")
say("Startequipment's zu wählen.")
say("Bitte wählen:")
local art = select ("Normales EQ", "Servername EQ")
if art == 1 then
eq.normal()
elseif art == 2 then
eq.maltasia()
else
return
end
end
function normal()
if pc.get_job() == 0 then
say_title("Normales EQ")
say("")
say("Du hast dich für das normale EQ entschieden.")
pc.give_item2(11209)
pc.give_item2(19)
pc.give_item2(12209)
if pc.get_job() == 1 then
say_title("Normales EQ")
say("")
say("Du hast dich für das normale EQ entschieden.")
pc.give_item2(11409)
pc.give_item2(12349)
pc.give_item2(1009)
if pc.get_job() == 2 then
say_title("Normales EQ")
say("")
say("Du hast dich für das normale EQ entschieden.")
pc.give_item2(11609)
pc.give_item2(19)
pc.give_item2(12489)
if pc.get_job() == 3 then
say_title("Normales EQ")
say("")
say("Du hast dich für das normale EQ entschieden.")
pc.give_item2(11809)
pc.give_item2(12629)
pc.give_item2(7009)
end
end
function maltasia()
if pc.get_job() == 0 then
say_title("Servername EQ")
say("")
say("Du hast dich für das Servername EQ entschieden.")
pc.give_item2(11209)
pc.give_item2(19)
pc.give_item2(12209)
if pc.get_job() == 1 then
say_title("Servername EQ")
say("")
say("Du hast dich für das Servername EQ entschieden.")
pc.give_item2(11409)
pc.give_item2(12349)
pc.give_item2(1009)
if pc.get_job() == 2 then
say_title("Servername EQ")
say("")
say("Du hast dich für das Servername EQ entschieden.")
pc.give_item2(11609)
pc.give_item2(19)
pc.give_item2(12489)
if pc.get_job() == 3 then
say_title("Servername EQ")
say("")
say("Du hast dich für das Servername EQ entschieden.")
pc.give_item2(11809)
pc.give_item2(12629)
pc.give_item2(7009)
end
end
end
end
|
So sollte es denke ich mal gehen:
PHP Code:
quest give_basic_weapon begin
state start begin
when login begin
say_title("Servername - Willkommen")
say("")
say("WIr bieten euch die möglichkeit zwischen 2")
say("Startequipment's zu wählen.")
say("Bitte wählen:")
local art = select ("Normales EQ", "Servername EQ")
if art == 1 then
eq.normal()
elseif art == 2 then
eq.maltasia()
else
return
end
function normal()
if pc.get_job() == 0 then
say_title("Normales EQ")
say("")
say("Du hast dich für das normale EQ entschieden.")
pc.give_item2(11209)
pc.give_item2(19)
pc.give_item2(12209)
end
if pc.get_job() == 1 then
say_title("Normales EQ")
say("")
say("Du hast dich für das normale EQ entschieden.")
pc.give_item2(11409)
pc.give_item2(12349)
pc.give_item2(1009)
end
if pc.get_job() == 2 then
say_title("Normales EQ")
say("")
say("Du hast dich für das normale EQ entschieden.")
pc.give_item2(11609)
pc.give_item2(19)
pc.give_item2(12489)
end
if pc.get_job() == 3 then
say_title("Normales EQ")
say("")
say("Du hast dich für das normale EQ entschieden.")
pc.give_item2(11809)
pc.give_item2(12629)
pc.give_item2(7009)
end
end
function maltasia()
if pc.get_job() == 0 then
say_title("Servername EQ")
say("")
say("Du hast dich für das Servername EQ entschieden.")
pc.give_item2(11209)
pc.give_item2(19)
pc.give_item2(12209)
end
if pc.get_job() == 1 then
say_title("Servername EQ")
say("")
say("Du hast dich für das Servername EQ entschieden.")
pc.give_item2(11409)
pc.give_item2(12349)
pc.give_item2(1009)
end
if pc.get_job() == 2 then
say_title("Servername EQ")
say("")
say("Du hast dich für das Servername EQ entschieden.")
pc.give_item2(11609)
pc.give_item2(19)
pc.give_item2(12489)
end
if pc.get_job() == 3 then
say_title("Servername EQ")
say("")
say("Du hast dich für das Servername EQ entschieden.")
pc.give_item2(11809)
pc.give_item2(12629)
pc.give_item2(7009)
end
end
end
end
end
|
|
|
09/25/2015, 19:32
|
#11904
|
elite*gold: 0
Join Date: Mar 2015
Posts: 119
Received Thanks: 29
|
Vielen Dank, werde ich testen.
|
|
|
09/27/2015, 20:56
|
#11905
|
elite*gold: 0
Join Date: Mar 2015
Posts: 119
Received Thanks: 29
|
Ich nochmal^^
Bei der Quest ist noch ein Fehler drinne.
Hab noch ein paar mal durchgeschaut aber nichts gefunden.
quest give_basic_weapon begin
state start begin
when login begin
say_title("Servername - Willkommen")
say("")
say("WIr bieten euch die möglichkeit zwischen 2")
say("Startequipment's zu wählen.")
say("Bitte wählen:")
local art = select ("Normales EQ", "Servername EQ")
if art == 1 then
eq.normal()
elseif art == 2 then
eq.maltasia()
else
return
end
function normal()
if pc.get_job() == 0 then
say_title("Normales EQ")
say("")
say("Du hast dich für das normale EQ entschieden.")
pc.give_item2(11209)
pc.give_item2(19)
pc.give_item2(12209)
end
if pc.get_job() == 1 then
say_title("Normales EQ")
say("")
say("Du hast dich für das normale EQ entschieden.")
pc.give_item2(11409)
pc.give_item2(12349)
pc.give_item2(1009)
end
if pc.get_job() == 2 then
say_title("Normales EQ")
say("")
say("Du hast dich für das normale EQ entschieden.")
pc.give_item2(11609)
pc.give_item2(19)
pc.give_item2(12489)
end
if pc.get_job() == 3 then
say_title("Normales EQ")
say("")
say("Du hast dich für das normale EQ entschieden.")
pc.give_item2(11809)
pc.give_item2(12629)
pc.give_item2(7009)
end
end
function maltasia()
if pc.get_job() == 0 then
say_title("Servername EQ")
say("")
say("Du hast dich für das Servername EQ entschieden.")
pc.give_item2(11209)
pc.give_item2(19)
pc.give_item2(12209)
end
if pc.get_job() == 1 then
say_title("Servername EQ")
say("")
say("Du hast dich für das Servername EQ entschieden.")
pc.give_item2(11409)
pc.give_item2(12349)
pc.give_item2(1009)
end
if pc.get_job() == 2 then
say_title("Servername EQ")
say("")
say("Du hast dich für das Servername EQ entschieden.")
pc.give_item2(11609)
pc.give_item2(19)
pc.give_item2(12489)
end
if pc.get_job() == 3 then
say_title("Servername EQ")
say("")
say("Du hast dich für das Servername EQ entschieden.")
pc.give_item2(11809)
pc.give_item2(12629)
pc.give_item2(7009)
end
end
end
end
end
Danke im vorraus
|
|
|
09/27/2015, 22:41
|
#11906
|
elite*gold: 6
Join Date: Dec 2007
Posts: 4,075
Received Thanks: 1,235
|
Quote:
Originally Posted by MilkingCow
Ich nochmal^^
Bei der Quest ist noch ein Fehler drinne.
Hab noch ein paar mal durchgeschaut aber nichts gefunden.
PHP Code:
quest give_basic_weapon begin
state start begin
when login begin
say_title("Servername - Willkommen")
say("")
say("WIr bieten euch die möglichkeit zwischen 2")
say("Startequipment's zu wählen.")
say("Bitte wählen:")
local art = select ("Normales EQ", "Servername EQ")
if art == 1 then
eq.normal()
elseif art == 2 then
eq.maltasia()
else
return
end
function normal()
if pc.get_job() == 0 then
say_title("Normales EQ")
say("")
say("Du hast dich für das normale EQ entschieden.")
pc.give_item2(11209)
pc.give_item2(19)
pc.give_item2(12209)
end
if pc.get_job() == 1 then
say_title("Normales EQ")
say("")
say("Du hast dich für das normale EQ entschieden.")
pc.give_item2(11409)
pc.give_item2(12349)
pc.give_item2(1009)
end
if pc.get_job() == 2 then
say_title("Normales EQ")
say("")
say("Du hast dich für das normale EQ entschieden.")
pc.give_item2(11609)
pc.give_item2(19)
pc.give_item2(12489)
end
if pc.get_job() == 3 then
say_title("Normales EQ")
say("")
say("Du hast dich für das normale EQ entschieden.")
pc.give_item2(11809)
pc.give_item2(12629)
pc.give_item2(7009)
end
end
function maltasia()
if pc.get_job() == 0 then
say_title("Servername EQ")
say("")
say("Du hast dich für das Servername EQ entschieden.")
pc.give_item2(11209)
pc.give_item2(19)
pc.give_item2(12209)
end
if pc.get_job() == 1 then
say_title("Servername EQ")
say("")
say("Du hast dich für das Servername EQ entschieden.")
pc.give_item2(11409)
pc.give_item2(12349)
pc.give_item2(1009)
end
if pc.get_job() == 2 then
say_title("Servername EQ")
say("")
say("Du hast dich für das Servername EQ entschieden.")
pc.give_item2(11609)
pc.give_item2(19)
pc.give_item2(12489)
end
if pc.get_job() == 3 then
say_title("Servername EQ")
say("")
say("Du hast dich für das Servername EQ entschieden.")
pc.give_item2(11809)
pc.give_item2(12629)
pc.give_item2(7009)
end
end
end
end
end
Danke im vorraus 
|
Was wird denn als Fehler angegeben?
Update:
Ich habe mal drüber geschaut und war der Meinung das ein end falsch gesetzt war.
Teste mal folgendes:
PHP Code:
quest eq begin
state start begin
----------------------------------------------------------------------
-- Funktion 1 --
----------------------------------------------------------------------
function normal()
if pc.get_job() == 0 then
say_title("Normales EQ")
say("")
say("Du hast dich für das normale EQ entschieden.")
pc.give_item2(11209)
pc.give_item2(19)
pc.give_item2(12209)
end
if pc.get_job() == 1 then
say_title("Normales EQ")
say("")
say("Du hast dich für das normale EQ entschieden.")
pc.give_item2(11409)
pc.give_item2(12349)
pc.give_item2(1009)
end
if pc.get_job() == 2 then
say_title("Normales EQ")
say("")
say("Du hast dich für das normale EQ entschieden.")
pc.give_item2(11609)
pc.give_item2(19)
pc.give_item2(12489)
end
if pc.get_job() == 3 then
say_title("Normales EQ")
say("")
say("Du hast dich für das normale EQ entschieden.")
pc.give_item2(11809)
pc.give_item2(12629)
pc.give_item2(7009)
end
end
----------------------------------------------------------------------
-- Funktion 2 --
----------------------------------------------------------------------
function maltasia()
if pc.get_job() == 0 then
say_title("Servername EQ")
say("")
say("Du hast dich für das Servername EQ entschieden.")
pc.give_item2(11209)
pc.give_item2(19)
pc.give_item2(12209)
end
if pc.get_job() == 1 then
say_title("Servername EQ")
say("")
say("Du hast dich für das Servername EQ entschieden.")
pc.give_item2(11409)
pc.give_item2(12349)
pc.give_item2(1009)
end
if pc.get_job() == 2 then
say_title("Servername EQ")
say("")
say("Du hast dich für das Servername EQ entschieden.")
pc.give_item2(11609)
pc.give_item2(19)
pc.give_item2(12489)
end
if pc.get_job() == 3 then
say_title("Servername EQ")
say("")
say("Du hast dich für das Servername EQ entschieden.")
pc.give_item2(11809)
pc.give_item2(12629)
pc.give_item2(7009)
end
end
----------------------------------------------------------------------
-- Quest --
----------------------------------------------------------------------
when login begin
say_title("Servername - Willkommen")
say("")
say("Wir bieten euch die möglichkeit zwischen 2")
say("Startequipment's zu wählen.")
say("Bitte wählen:")
local art = select ("Normales EQ", "Servername EQ")
if art == 1 then
give_basic_weapon.normal()
end
if art == 2 then
give_basic_weapon.maltasia()
end
end
end
end
Update²: Naverwy's Ausbesserung editiert.
|
|
|
09/27/2015, 23:25
|
#11907
|
wild wild son
elite*gold: 0
Join Date: Feb 2011
Posts: 5,994
Received Thanks: 3,389
|
Quote:
Originally Posted by Ide.
Was wird denn als Fehler angegeben?
Update: Ich habe mal drüber geschaut und war der Meinung das ein end falsch gesetzt war.
Teste mal folgendes:
PHP Code:
quest give_basic_weapon begin
state start begin
----------------------------------------------------------------------
-- Funktion 1 --
----------------------------------------------------------------------
function normal()
if pc.get_job() == 0 then
say_title("Normales EQ")
say("")
say("Du hast dich für das normale EQ entschieden.")
pc.give_item2(11209)
pc.give_item2(19)
pc.give_item2(12209)
end
if pc.get_job() == 1 then
say_title("Normales EQ")
say("")
say("Du hast dich für das normale EQ entschieden.")
pc.give_item2(11409)
pc.give_item2(12349)
pc.give_item2(1009)
end
if pc.get_job() == 2 then
say_title("Normales EQ")
say("")
say("Du hast dich für das normale EQ entschieden.")
pc.give_item2(11609)
pc.give_item2(19)
pc.give_item2(12489)
end
if pc.get_job() == 3 then
say_title("Normales EQ")
say("")
say("Du hast dich für das normale EQ entschieden.")
pc.give_item2(11809)
pc.give_item2(12629)
pc.give_item2(7009)
end
end
----------------------------------------------------------------------
-- Funktion 2 --
----------------------------------------------------------------------
function maltasia()
if pc.get_job() == 0 then
say_title("Servername EQ")
say("")
say("Du hast dich für das Servername EQ entschieden.")
pc.give_item2(11209)
pc.give_item2(19)
pc.give_item2(12209)
end
if pc.get_job() == 1 then
say_title("Servername EQ")
say("")
say("Du hast dich für das Servername EQ entschieden.")
pc.give_item2(11409)
pc.give_item2(12349)
pc.give_item2(1009)
end
if pc.get_job() == 2 then
say_title("Servername EQ")
say("")
say("Du hast dich für das Servername EQ entschieden.")
pc.give_item2(11609)
pc.give_item2(19)
pc.give_item2(12489)
end
if pc.get_job() == 3 then
say_title("Servername EQ")
say("")
say("Du hast dich für das Servername EQ entschieden.")
pc.give_item2(11809)
pc.give_item2(12629)
pc.give_item2(7009)
end
end
----------------------------------------------------------------------
-- Quest --
----------------------------------------------------------------------
when login begin
say_title("Servername - Willkommen")
say("")
say("Wir bieten euch die möglichkeit zwischen 2")
say("Startequipment's zu wählen.")
say("Bitte wählen:")
local art = select ("Normales EQ", "Servername EQ")
if art == 1 then
eq.normal()
end
elseif art == 2 then
eq.maltasia()
end
end
end
end
|
Der Name der Quest muss noch geändert werden, andernfalls können die Funktionen nicht aufgerufen werden.
Code:
quest give_basic_weapon begin
durch
ersetzen. Der Name kann auch beibehalten werden, dafür müsste
durch
Code:
give_basic_weapon.normal()
und
durch
Code:
give_basic_weapon.maltasia()
ersetzt werden.
lg
|
|
|
09/27/2015, 23:29
|
#11908
|
elite*gold: 6
Join Date: Dec 2007
Posts: 4,075
Received Thanks: 1,235
|
Quote:
Originally Posted by Naverwy
Der Name der Quest muss noch geändert werden, andernfalls können die Funktionen nicht aufgerufen werden.
Code:
quest give_basic_weapon begin
durch
ersetzen. Der Name kann auch beibehalten werden, dafür müsste
durch
Code:
give_basic_weapon.normal()
und
durch
Code:
give_basic_weapon.maltasia()
ersetzt werden.
lg
|
Danke für's verbessern, hatte das Problem noch nie.
Bin aber dennoch der Meinung das auch ein end falsch gesetzt war...
Habe deins mal mit reineditiert.
|
|
|
09/28/2015, 14:11
|
#11909
|
elite*gold: 0
Join Date: Mar 2015
Posts: 119
Received Thanks: 29
|
Quote:
Originally Posted by Naverwy
Der Name der Quest muss noch geändert werden, andernfalls können die Funktionen nicht aufgerufen werden.
Code:
quest give_basic_weapon begin
durch
ersetzen. Der Name kann auch beibehalten werden, dafür müsste
durch
Code:
give_basic_weapon.normal()
und
durch
Code:
give_basic_weapon.maltasia()
ersetzt werden.
lg
|
Vielen dank. Dachte ich kann das so verwenden wenn es aufgerufen wird.
Mfg
€: Habe die Quest getestet. Geht auch alles soweit. Aber sobald ich ein EQ wähle bleiben die schwarzen Ränder und es passiert nichts.
|
|
|
09/28/2015, 18:52
|
#11910
|
elite*gold: 0
Join Date: Apr 2009
Posts: 103
Received Thanks: 53
|
game svn revision: 1765
Hello,
I have a give_basic_weapon.start question, but doesn't work ! I'll be mad soon
Code:
if pc . getqf ( "basic_weapon" ) == 0 then
say ( pc.get_name() .. " İllüminati2'ye Hoşgeldin.")
say ( "" )
say ("Karakterine uygun ekipmanlarını aldın" )
say ( "")
say ( "" )
say ("Katokamb, Şeytan Kulesi aktiftir,")
say ("70'den sonra seviye görevleri başlar")
say ("Server ne kolay ne de zordur, edit satışı yoktur.")
say ("[TL]Myth")
say ("[TL]REAL")
say ("ile iletişime geçebilirsiz")
say ( "" )
if pc . get_job ( ) == 0 then --savasci
pc . give_item2 ( "11269" , 1 )
pc . give_item2 ( "109" , 1 )
pc . give_item2 ( "3099" , 1 ) --buzlu uc
pc . give_item2 ( "12249" , 1 ) --kask
notice_all ( pc.get_name( .. " (Savaşçı) Yeni oyuncu ")
elseif pc . get_job ( ) == 1 then --ninja
pc . give_item2 ( "1069" , 1 ) -- hancer
pc . give_item2 ( "2099" , 1 ) --yay
pc . give_item2 ( "8004" , 200 ) --ok
pc . give_item2 ( "8004" , 200 ) --ok
pc . give_item2 ( "8004" , 200 ) --ok
pc . give_item2 ( "8004" , 200 ) --ok
pc . give_item2 ( "11469" , 1 ) -- zırh
notice_all ( pc.get_name( .. " (Ninja) Yeni Oyuncu ")
elseif pc . get_job ( ) == 2 then --sura
pc . give_item2 ( "109" , 1 )
pc . give_item2 ( "11669" , 1 )
pc . give_item2 ( "12529" , 1 ) --kask
notice_all ( pc.get_name( .. " (Sura) Yeni Oyuncu ")
elseif pc . get_job ( ) == 3 then --saman
pc . give_item2 ( "7099" , 1 )
pc . give_item2 ( "5059" , 1 )
pc . give_item2 ( "5069" , 1 ) --50lv can
pc . give_item2 ( "12669" , 1 )
pc . give_item2 ( "11869" , 1 )
notice_all ( pc.get_name( .. " (Şaman) Yeni Oyuncu ")
end
command ("level 48")
-- iç item
pc . give_item2 ( "14149" , 1 )
pc . give_item2 ( "16149" , 1 )
pc . give_item2 ( "17169" , 1 )
pc . give_item2 ( "15169" , 1 )
pc . give_item2 ( "13049" , 1 )
pc . give_item2 ( "40002" , 1 )
-- iç item
--ay özütleri
pc . give_item2 ( "72730" , 1 ) --oto mana
pc . give_item2 ( "72726" , 1 ) --oto hp
--ay özütleri
horse . set_level ( 21 )
horse . ride ()
pc . give_item2 ( "71050" , 200 )
pc . give_item2 ( "72702" , 1 )
pc . give_gold ( "5000000" )
pc . give_item2 ( 50052 )
pc . changealignment ( 2500 )
pc . setqf ( "basic_weapon" , 1 )
end
When If I did in GM account /reload q, is refresh object in all quest?
Thankl you for interest.
|
|
|
All times are GMT +1. The time now is 08:52.
|
|