Spreaks Admin
Mesaje : 108 Reputatie : 0 Data de inscriere : 13/09/2014 Varsta : 25
| Subiect: Quest-uri Metin2 Dum Noi 16, 2014 12:29 pm | |
| Quest anti afk Quest pentru clasament pvp in joc Quest top 10 jucatori Quest care face automat zi si noapte Quest – cutia premium Quest – Mesaj de intampinare la login Quest – GM logout Quest – Inel Anti-Experienta pentru farmat Quest GM-Online (Timer) Teleportare jucator la alt jucator Quest – Mesaj la level up Quest top 10 jucatori
Cod:
quest rank_list begin state start begin when 20092.chat."Top 10" begin local jucator = mysql_query("SELECT * FROM player.player WHERE player.name NOT LIKE '[%]%' ORDER BY player.level DESC, player.exp DESC","root","rootpw","player","rootip") say_title("Top 10 al jucatorilor:") say("Locul 1: Name: "..jucator.name[1].." Level: "..jucator.level[1].." ") say("Locul 2: Name: "..jucator.name[2].." Level: "..jucator.level[2].." ") say("Locul 3: Name: "..jucator.name[3].." Level: "..jucator.level[3].." ") say("Locul 4: Name: "..jucator.name[4].." Level: "..jucator.level[4].." ") say("Locul 5: Name: "..jucator.name[5].." Level: "..jucator.level[5].." ") say("Locul 6: Name: "..jucator.name[6].." Level: "..jucator.level[6].." ") say("Locul 7: Name: "..jucator.name[7].." Level: "..jucator.level[7].." ") say("Locul 8: Name: "..jucator.name[8].." Level: "..jucator.level[8].." ") say("Locul 9: Name: "..jucator.name[9].." Level: "..jucator.level[9].." ") say("Locul 10: Name: "..jucator.name[10].." Level: "..jucator.level[10].." ") end end end
Quest pentru clasament pvp in joc
Intrati in Manangerul de DB pe care-l folositi (ex: Navicat). Mergeti la tabelul player si apasati ctrl+q apoi executati urmatorul cod:
ALTER TABLE `player` ADD COLUMN `kills` varchar(5000) NULL DEFAULT ’0' ;
Iesiti si compilti questul acesta:
quest pvp_ranking begin state start begin when kill with npc.is_pc() begin local kill_now = mysql_query(“SELECT kills from player.player WHERE name=’”..pc.get_name()..”‘ LIMIT 1?) local kill_up = mysql_query(“UPDATE player.player SET kills =’”..(kill_now.kills[1]+1)..”‘ WHERE name =’”..pc.get_name()..”‘ LIMIT 1?) end
when 20004.chat.”Clasament PvP” begin say(“Salut, poate o sa ti se para ciudat,”) say(“insa eu stiu totul despre lupte, si numarul acestora!”) say_reward(“Vrei sa arunci o privire ?”) local sel = select(“Clasament General”,”Shinshoo”,”Chunjo”,”Jinno”,”Nu,nu vreau!”) local pp if sel == 5 then return elseif sel == 1 then pp = mysql_query(“select name,kills from player.player ORDER BY kills desc,level desc,name asc LIMIT 15?) else pp = mysql_query(“select name,kills from player.player where (SELECT empire from player.player_index where player.account_id =id) = “..(sel-1)..” ORDER BY kills desc,level desc,name asc LIMIT 15?) end if pp == nil or (pp[1] or {})[1] == nil then say(“Es gab einen Fehler.”) return end say(“Rang – Nume – Puncte PvP”) table.foreachi(pp,function(i,l) say(i..” – “..l[1]..” – “..l[2]) end) end end end
In quest_functions adaugati urmatoarea linie la sfarsit:
mysql_query
Quest anti afk
Cand un jucator este absent de mai bine de 30 de minute, el este deconectat automat de pe server.
Cod:
quest anti_afk begin state start begin function scrivi(var) chat(locale.ROSSO_COLOR.. var) end when 50200.use begin pc.setqf(“lock”, 0) end when login begin if pc.getqf(“sonouscito”) == 1 then anti_afk.scrivi(“Ai fost deconectat pentru ca ai fost absent mai mult de 30 minute!”) pc.setqf(“sonouscito”, 0) end pc.setqf(“adessox”, pc.get_local_x()) pc.setqf(“adessoy”, pc.get_local_y()) timer(“timee”, 60*30) end when timee.timer with pc.get_map_index() ~= 1 and pc.get_map_index() ~= 3 and pc.get_map_index() ~= 21 and pc.get_map_index() ~= 41 and pc.get_map_index() ~= 43 and pc.get_map_index() ~= 78 and pc.get_map_index() ~= 78 and pc.get_map_index() ~= 113 and pc.get_map_index() ~= 193 begin if pc.getqf(“adessox”) == pc.get_local_x() and pc.getqf(“adessoy”) == pc.get_local_y() and pc.getqf(“lock”) == 1 then command(“logout”) say(“Utilizator absent de 30 de minute, deconectare automata.”) pc.setqf(“sonouscito”, 1) say(delay(10000) .. ” .”) return else pc.setqf(“adessox”, pc.get_local_x()) pc.setqf(“adessoy”, pc.get_local_y()) timer(“timee”, 60*30) end end end” SAU
Quest care face automat zi si noapte
Cod:
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
Obs: Poate face lag. Obs: Daca serverul nu este online non-stop, se poate decala timpul.
Quest – cutia premium
Info: functioneaza aseamantor cu cea de pe serverele oficiale.
Poza:
Quest:
quest cutie_premium begin
state start begin
when 50126.use begin say_title(“Cutie Premium :”) say(“Iti multumim pentru donatie.”) say(“Datorita celor ca tine”) say(“serverul continua sa functioneze.”) say(“Ai primit:”) say(“”) say(“”) say_reward(“Inelul Experientei, 30 zile”) say_reward(“Manusile Talharului, 30 zile”) say_reward(“Medalia Norocului, 30 zile”) say_reward(“Masca Emotiei, 30 zile”) pc.give_item2(71015, 1) pc.give_item2(71016, 1) pc.give_item2(71017, 1) pc.give_item2(71011, 1) pc.remove_item(50126, 1) end end end
Pentru a modifica recompensa, modificati codurile de mai jos cu codul itemului dorit:
pc.give_item2(71015, 1) pc.give_item2(71016, 1) pc.give_item2(71017, 1) pc.give_item2(71011, 1)
Quest – Mesaj de intampinare la login
Quest:
quest login begin state start begin when login begin chat(“Bun venit pe Metin2Lost”) chat(“Ajutati-ne sa populam acest server minunat.”) chat(“Bafta la crescut”) end end end
Se pune in: /usr/rain/channel/share_data/locale/hongkong/quest
Quest – GM logout
Informatii: Acest quest trimite un mesaj global atunci cand un gm s-a delogat de pe server.
Quest:
quest gmlogout begin state start begin when logout with pc.is_gm() begin command(“n “.. pc.get_name() ..” a iesit!”) command(“n “El va ureaza bafta in continuare la joc”) end end end
Se introduce in: cd /usr/rain/channel/share_data/locale/hongkong/quest
Quest – Inel Anti-Experienta pentru farmat
Item: 72501 Descriere: Cand dai click pe el iti blocheaza/deblocheaza exp Cod:
quest antiexpring begin state start begin when 72501.use with pc.getqf(“antiexp”) == 0 begin local anti = pc.get_exp() pc.setqf(“exp”, anti) pc.setqf(“antiexp”, 1) timer(“antiexptimer”, 1) chat(“Inelul anti-experienta este activat! Nu vei mai primi experienta!”) end when 72501.use with pc.getqf(“antiexp”) == 1 begin pc.setqf(“antiexp”, 0) chat(“Inelul anti-experienta este dezactivat! De acum vei primi experienta!”) end when kill with pc.getqf(“antiexp”) == 1 begin local exp = pc.get_exp() pc.give_exp2(-exp+pc.getqf(“exp”)) end when antiexptimer.timer with pc.getqf(“antiexp”) == 1 begin local exp = pc.get_exp() pc.give_exp2(-exp+pc.getqf(“exp”)) end end end
Quest GM-Online (Timer)
Dupa logarea unui administrator se initializeaza un temporizator care afiseaza un mesaj la un anumit interval (setat de tine).
quest arm begin state start begin when login with pc.is_gm() begin loop_timer(‘gm’, 180) end when gm.timer begin notice_all(“”.. pc.get_name() ..” este online !”) notice_all(“Acesta este acum disponibil pentru intrebarile dumneavoastra.”) notice_all(“Nu cereti iteme sau alte obiecte!”) end end end
Daca doriti sa schimbati intervalul la care se repeta aceste mesaje modificati valoarea de aici:
loop_timer(‘gm’, 180)
P.S.: Valoarea este exprimata in secunde (1 minut = 60)
Teleportare jucator la alt jucator
Quest:
quest teleportarea_jucatorului begin state start begin when 40004.use begin say_title(“Teleportarea jucatorului:”) say(Acest obiect iti permite sa te teleportezi la un jucator.) say_reward(“Vrei sa te teleportezi?”) local a = select(“Da”,”Nu am timp!”) if a == 1 then say_title(“Teleportarea jucatorului:”) say_reward(“Scrie numele jucatorului la care vrei sa te teleportezi:”) local name = input() if pc.get_level() < 35 then say_title(“Teleportarea jucatorului:”) say(“Poti folosi acest item decat dupa nivelul 35!”) else pc.teleport(name) pc.remove_item(40004, 1) end end end end end
Codul itemului folosit: 40004
Quest – Mesaj la level up
Acest quest va felicita ca cand ati facut un anumit level ( 75, 100, 110, 127 ).
quest levelup begin state start begin when levelup begin if pc.get_level() == 75 then notice_all(“”.. pc.get_name() ..” a facut level 75!”) notice_all(“Quest nume.”) elseif pc.get_level() == 100 then notice_all(“”.. pc.get_name() ..” a facut level 100!”) notice_all(“Quest nume.”) elseif pc.get_level() == 110 then notice_all(“”.. pc.get_name() ..” a facut level 110!”) notice_all(“Quest nume.”) elseif pc.get_level() == 127 then notice_all(“”.. pc.get_name() ..”a facut level 127!”) notice_all(“Quest nume.”) notice_all(“Quest nume.”) end end end end
Se salveaza levelup.quest .
|
| |
|