Sursă cod: .Luci j4m
Code: Select all
quest Zi_Noapte begin
state start begin
when 20095.chat."Activare la ora 19:00" with pc.is_gm() begin
say("Odata activat va functiona automat.")
timer("Noapte", 1)
end
when notte.timer begin
notice_all("La orele 19:00 soarele va apune.")
game.set_event_flag("x", 1)
timer("Ziua", 60*60*13)
end
when giorno.timer begin
notice_all("La orele 8:00 Soarele isi va varsa iar razele calde peste aceste tinuturi.")
game.set_event_flag("x", 0)
timer("Noapte", 60*60*15)
end
end
end
1. Faci un fişier text cu numele nume_quest.quest.
2. Vă conectaţi la filezilla / winscp şi întrati în /usr/home/game/share/locale/germany/quest (depinde ce server aveţi).
3. Îl puneţi acolo (să fie .quest) şi da-ţi permisiuni 777.
4. Te loghezi în FreeBSD / putty şi scrii în felul următor: cd /usr/home/game/share/locale/germany/quest apoi ./qc nume_quest.quest
5. Intraţi pe server şi scrieţi /reload q .
6. Testaţi quest-ul .
II. Transformare la ox, cam toţi membrii staff când fac un ox, urlă arme/armuri/buffuri jos/fără skilluri, un quest pt. transformare într`un pet care nu generează lag, aşa ar fi mult mai uşor, iar vipii (care se cred plin de băsini că ajută la un ox
![Evil or Very Mad :evil:](./images/smilies/icon_evil.gif)
![Evil or Very Mad :evil:](./images/smilies/icon_evil.gif)
Sursă: Gabriel J4m
Code: Select all
quest oxevent_manager begin
state start begin
when login with pc.get_map_index()==113 begin
pc.polymorph(34014, 1800)
command("unmount")
end
when letter with pc.get_map_index()==113 begin
send_letter("Paraseste OX")
end
when button or info begin
say_title("Evenimentul OX")
say("Dai startul la evenimentul OX?")
local s=select("Da", "Nu")
if s==2 then
send_letter("Paraseste OX")
return
end
local empire = pc.get_empire()
if empire== 1 then
pc.warp(433300, 219600)
elseif empire == 2 then
pc.warp(431500, 209200)
elseif empire == 3 then
pc.warp(439800, 211000)
end
end
when 20011.chat."Evenimentul OX - 2Metin" begin
say_title("Uriel")
say("Hei,salut!Acesta este evenimentul OX")
say("pe Serverul Metin22Metin!")
say("Intrebarile vor fi de cultura generala ,si Metin")
say("Atentie!Toate intrebarile sunt doar")
say("cu o varianta de raspuns!!")
wait()
if pc.get_level() < 31 then
say_title("Uriel :")
say("")
say("Îmi pare rau, dar nu ai nivelul necesar pentru")
say("a participa.")
say("")
say_reward("Nivelul minim pentru participare: 30")
say("")
return
elseif game.get_event_flag("oxevent_status") == 0 then
say_title("Uriel")
say("GM-ii inca nu au dat startul,dar probabil")
say("daca vorbesti cu mine acum este gata sa")
say("inceapa!Fii pe faza.")
elseif game.get_event_flag("oxevent_status") == 1 then
say_title("Uriel")
say("Concursul OX a inceput")
say("Eu te pot duce acolo..sau nu?")
local s = select("Particip la OX", "Spectator", "Inapoi")
if s == 1 then
say_title("Uriel")
say("Atunci eu te voi duce in harta unde se")
say("tine concursul.Fii pe faza.")
wait()
pc.polymorph(34027, 1800)
pc.warp(896500, 24600)
elseif s == 2 then
say_title("Uriel")
say("Spectator?Pai si premiile?Nu ii inteleg")
say("pe tinerii din ziua de azi..Fie cum doresti")
say("Am plecat!")
wait()
pc.polymorph(34027, 1800)
pc.warp(896300, 28900)
end
elseif game.get_event_flag("oxevent_status") == 2 then
say_title("Uriel")
say("Concursul a inceput deja,numai poti.")
say("participa.Data viitoare fi mai rapid.")
say("Injurile la adresa staff-ului. duc la ban permanent")
say("Nu iti risca contul pentru ca ai pierdut.")
say("o amarata de runda OX!")
local s = select("Macar spectator...", "Inapoi")
if s == 1 then
say_title("Uriel")
say("Bine,spectator te pot baga.")
say("Dar daca injuri GMul ai ban")
say("Sunt cu ochii pe tine!")
say_reward("Cu ochii pe tine am zis!")
wait()
pc.warp(896300, 28900)
end
end
end
when 20358.chat."GM: OX-Panel" with pc.is_gm() begin
local stat = oxevent.get_status()
if stat == 0 then
say_title("Concursul OX")
say_reward("Porneste OX?")
local s = select("Da", "Nu")
if s==2 then return end
local v = oxevent.open()
if v == 0 then
say_title("Concursul OX")
say("Eroare!Nu a putut fii incarcat oxquiz.lua.")
say_reward("Verifica daca nu ai gresit vreo intrebare")
say_reward("Mai exact,lipsa unui apostrof sau unei paranteze")
return
elseif v == 1 then
say_title("Concursul OX")
say("Concursul OX a inceput cu succes")
server_timer("automatic1", 10*60, 113)
notice_all("Metin2 2Metin a pornit Evenimentul OX!")
notice_all("Vorbeste cu Uriel pentru a participa!")
notice_all("Premiile Va asteaptam !")
else
say("A aparut o eroare : Error1")
return
end
elseif stat == 1 then
say_title("Concursul OX")
say("Portile sunt inca deschise.")
say("In mapa sunt "..oxevent.get_attender().." jucatori activi.")
say("")
local s = select("Inchide portile", "Inapoi")
if s == 1 then
notice_all("Portile OX-ului au fost inchise!")
notice_all("Data viitoare fiti mai rapizi!")
oxevent.close()
end
elseif stat == 2 then
say_title("Concursul OX")
say("Alege ce doresti sa faci:")
local s = select("Intrebare OX", "Premiu OX", "Sfarseste aceasta runda", "Inchide OX de urgenta", "Inapoi")
if s == 1 then
local v = oxevent.quiz(1, 30)
if v == 0 then
say_title("Concursul OX")
say("A aparut o eroare : Error2 !")
return
else
say_title("Concursul OX")
say("Intrebare adresata cu succes!")
return
end
elseif s == 2 then
say_title("Concursul OX")
say("Introdu codul itemului care doresti sa il.")
say("oferi jucatorilor.")
say_reward("De exemplu : 50011 este Cufar Lumina Lunii")
local item_vnum = input()
say_title("Concursul OX")
say("Introdu cantitatea de iteme primite de jucatori.")
say("asupra itemului tastat mai sus.")
say_reward("De exemplu ,daca mai sus ai scris 50011")
say_reward("si aici scrii 200,jucatorii vor primii 200 cufere")
local item_count = input()
oxevent.give_item(item_vnum, item_count)
say_title("Concursul OX")
say("Au fost recompensati "..oxevent.get_attender().." jucatori,si au primit "..item_count.."x")
say(item_name(item_vnum).." oferite.")
notice_all("Au venit premiile!Ati primit "..item_count.." de "..item_name(item_vnum))
elseif s == 3 then
oxevent.end_event()
notice_all("Concursul OX a luat sfarsit.")
notice_all("Concurentii vor fii teleportati in map1 ")
notice_all("Sper ca v-ati distrat!")
setskin(0)
elseif s == 4 then
say_title("Concursul OX")
say("Inchiderea de urgenta a concursului OX")
say("poate duce la probleme la questul oxului")
say("Folositi aceasta optiune doar cand e neaparata")
say("nevoie!")
say_reward("Vrei sa inchizi de urgenta Concursul OX?!")
local s = select("Da,este o urgenta", "Nu.")
if s == 1 then
oxevent.end_event_force()
end
elseif s == 5 then
return
end
elseif stat == 3 then
say_title("Concursul OX")
say("In acest moment este deja pusa o intrebare")
say("Deobicei dupa ce zice ca jucatorii trebuie sa")
say("astepte 5 secunde,poti acorda premiul.")
say_reward("Ai rabdare.Cu graba nu rezolvi nimic.")
else
say_title("Concursul OX")
say("A aparut o eroare : Error4")
return
end
end
end
end
Sursă: D.Cătălin j4m
Code: Select all
quest change_guild_master_item begin
state start begin
function change_master( name , level_limit , time_resign_limit , time_be_other_leader , time_be_other_member , iscacheitem )
local ret = guild.change_master_with_limit( name , level_limit , time_resign_limit , time_be_other_leader , time_be_other_member, iscacheitem)
local result = false
if ret == 0 then
say("Ai introdus un nume fals")
elseif ret == 1 then
say("Doar liderii de breaslã pot folosi acest inel.")
elseif ret == 2 then
say("Membrul breslei nu a fost gãsit.")
elseif ret == 3 then
say("Ai adãugat cu succes un Mesaj de lider.")
result = true
elseif ret == 4 then
say("Tu nu eºti in nicio breaslã.")
elseif ret == 5 then
say("Caracterul care este trecut ca lider")
say("nu este online.")
elseif ret == 6 then
say("Caracterul care este trecut ca lider")
say("are nivelul prea mic.")
elseif ret == 7 then
say("Caracterul care este trecut ca lider")
say("trebuie sã aibe deja o breaslã.")
end
return result
end
when 71099.use begin
say_title("Inel de continuitate")
if pc.is_guild_master() == false then
say("Doar liderii breslelor pot folosi acest inel.")
return
end
say("Te rog sã introduci numele noului lider.")
say("")
local s = input()
say_title("Inel de continuitate")
if s == pc.name then
say("Nu poti sã iti introduci numele tãu.")
return
elseif s == "" then
say("Vã rugãm sã introduceti un alt nume!")
return
end
if not pc.is_near_vid( find_pc_by_name( s ) , 10 ) then
say("Caracterul cãruia vrei sã îi înmânezi breaslã")
say("trebuie sã fie alaturi de tine.")
return
end
if change_guild_master_item.change_master( s , 40 , 0 , 0 , 0 ,true) == true then
pc.remove_item(71099)
elseif ret == 5 then
say("error: 1")
say("Vã rugam sã contactati un administrator.")
elseif ret == 6 then
say("Caracterul care trebuie sã fie lider")
say("are nivelul prea scazut.")
else
say("error: 2")
say("Vã rugam sã introduceti un nume:")
say(ret)
say("Raportati unui administrator.")
end
end
end
end
1. Salvaţi conţinutul quest-ului într-un fişier text numit de exemplu nume_quest.quest .
2. Vă conectaţi la filezilla / winscp şi întrati în /usr/home/game/share/locale/germany/quest (depinde ce server aveţi).
3. Îl puneţi acolo (să fie .quest) şi da-ţi permisiuni 777.
4. Te loghezi în FreeBSD / putty şi scrii în felul următor: cd /usr/home/game/share/locale/germany/quest apoi ./qc nume_quest.quest
5. Intraţi pe server şi scrieţi /reload q .
6. Testaţi quest-ul .[/size][/i][/b]