quest energy_system begin
state start begin
when 20001.chat."O nouă descoperire" with game.get_event_flag("energy") == 1 begin
say_title("Alchimist:")
say("")
say("Nu-mi vine să cred! Am reuşit!")
say("În sfârsit am creat noul sistem de energie pură.")
say("Am să îti spun cum, fii atent. Această energie stă ")
say("în jurul fiecăruia. Am încercat să extrag această ")
say("energie din arme şi armuri. A fost foarte dificil")
say("dar am reuşit, în sfârsit!")
say("")
wait()
say_title("Alchimist:")
say("")
say("Dacă cumva eşti interesat de acest sistem, adu-mi")
say("arme şi armuri pentru a le transforma în fragmente")
say("de energie. Dacă vei avea noroc, voi face ca aceste")
say("fragmente ce le-ai adunat să se unească între ele")
say("şi se for transforma într-un cristal de energie.")
say("Sper că acest sistem va ajuta multă lume.")
say("")
set_state("make")
end
end
state make begin
when 20001.chat."Informaţii despre fragmentele de energie" with game.get_event_flag("energy") == 1 begin
say_title("Alchimist:")
say("")
say("Acum ştii cum funcţionează. Aceste obiecte pe")
say("care mi le aduci le voi transforma în Fragmente")
say("de Energie si nu le vei mai putea folosi.")
say("Energia extrasă din ele îţi va oferi un bonus")
say("aleatoriu timp de 2h. Ca să faci Fragmente de")
say("Energie trebuie să ai minim nivelul 35.")
say("")
wait()
if pc.get_level() < 35 then
say_title("Alchimist:")
say("")
say("Oh, îmi pare rău, dar trebuie să ai nivelul 35")
say("pentru a putea crea Energie Pură.")
say("")
else
say_title("Alchimist:")
say("")
say("Perfect! Se pare că ai nivelul necesar pentru a")
say("crea energie pură.")
say("")
end
end
when 20001.chat."Obţine fragmente de energie" with game.get_event_flag("energy") == 1 begin
say_title("Alchimist:")
say("")
say("Pentru a face energie pură ai nevoie de cel puţin")
say("30 fragmente de energie.")
say("")
wait()
if pc.get_level() < 35 then
say_title("Alchimist:")
say("")
say("Oh, ce păcat, nu ai nivelul 35 pentru a putea")
say("crea energie pură.")
say("")
else
if pc.count_item(51001) >= 30 then
say_title("Alchimist:")
say("")
say("Se pare că ai cele 30 de Fragmente de Energie.")
say("Vrei să transform această energie în Energie Pură?")
say("Pot încerca, dar nu garantez că voi reuşi.")
say("")
wait()
say_title("Alchimist:")
say("")
say("Totodată, am nevoie şi de o sumă de bani.")
say("Ştii, aş fi putut să îţi fac şi gratis")
say("dar am nevoie pentru a întreţine proiectul...")
say("Te va costa 500.000 Yang.")
say("Eşti sigur că doreşti să creezi energie?")
say("")
if select("Da","Nu") == 2 then
return
end
pc.change_money(-500000)
pc.remove_item(51001,30)
if number(0,1) == 1 then
say_title("Alchimist:")
say("")
say("Am reuşit să creez Energie Pură.")
say("")
say_item("Ai primit un Cristal de Energie", 51002, "")
pc.give_item2(51002,1)
else
say_title("Alchimist:")
say("")
say("Oh, ce păcat. Fragmentele sunt sparte.")
say("Transformarea a eşuat.")
say("")
return
end
else
say_title("Alchimist:")
say("")
say("Se pare că nu ai la tine cele 30 de Fragmente")
say("de Energie. Mai adu-mi obiecte pentru a face")
say("mai multe Fragmente de Energie.")
say("")
return
end
end
end
when 20001.take with game.get_event_flag("energy") == 1 begin
if pc.get_level() < 35 then
return
end
if item.get_type() == 1 or item.get_type() == 2 then
local maxlvl = mysql_query("SELECT limitvalue0 FROM player.item_proto WHERE vnum='"..item.get_vnum().."' LIMIT 1;")
test_chat(maxlvl[1][1])
if tonumber(maxlvl[1][1]) < 35 then
say_title("Alchimist:")
say("")
say("Din acest obiect nu se poate crea energie.")
say("")
return
end
say_title("Alchimist:")
say("")
say(string.trim(item.get_name()))
say("Chiar doreşti să distrugi acest obiect?")
say("")
if select("Da","Nu") == 2 then
return
else
local numar = number(0,15)
if numar > 0 then
say_title("Alchimist:")
say("")
say("Am reuşit să extrag energia din obiect!")
say_item("Ai primit "..numar.." Fragment(e) de Energie", 51001, "")
pc.give_item2(51001, numar)
else
say_title("Alchimist:")
say("")
say("Am eşuat. Din păcate nu am putut extrage energia")
say("din acest obiect.")
say("")
return
end
item.remove()
end
else
say_title("Alchimist:")
say("")
say("Acest obiect nu are energie!")
say("")
end
end
when login begin
if getenergytime() < 50000 then
test_chat("[ENERGIE] Timp rămas: "..getenergytime())
setenergytime(getenergytime() + get_time())
cmdchat("energysystem "..getenergytyp().."|"..getenergyvalue().."#"..getenergytime())
end
end
when logout begin
if getenergytime() > get_time() then
local energy = getenergytime() - get_time()
if energy > 0 then
setenergytime(energy)
end
end
end
when 51002.use begin
if getenergytime() > get_time() then
chat("Foloseşti deja un Cristal de Energie!")
return
end
local bonus = number(1,10)
lista_bonus = {}
lista_bonus [1] = {apply.ATTBONUS_HUMAN, 15}
lista_bonus [2] = {apply.ATTBONUS_MONSTER, 10}
lista_bonus [3] = {apply.CRITICAL_PCT, 10}
lista_bonus [4] = {apply.PENETRATE_PCT, 10}
lista_bonus [5] = {apply.MAX_HP, 1000}
lista_bonus [6] = {apply.MAX_SP, 2000}
lista_bonus [7] = {apply.HP_REGEN, 30}
lista_bonus [8] = {apply.STEAL_HP, 10}
lista_bonus [9] = {apply.ATT_GRADE_BONUS, 75}
lista_bonus [10] = {apply.ATT_GRADE_BONUS, 50}
test_chat(bonus)
test_chat(lista_bonus[bonus][1])
test_chat(lista_bonus[bonus][2])
affect.add_collect(lista_bonus[bonus][1],lista_bonus[bonus][2],7200)
setenergy(bonus,lista_bonus[bonus][2],get_time() + 7200)
cmdchat ("energysystem "..bonus.."|"..lista_bonus[bonus][2].."#"..(get_time() + 7200))
setenergytime(get_time() + 7200)
item.remove()
chat("Simt energia cristalului cum curge prin venele mele.")
end
end
end
Tutorial instalare quest:
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.