Salut, nu stiu exact cum se numeste quesutl, eu stiu de "quest dragon"
In ce consta acest quest?
In momentul cand vrei sa mergi sa faci dragonul albastru iti cere 3chei si te baga la dragon si dupa ce il bati te scoate automat si trebuie sa astepti un anumit interval de timp pentru a putea intra din nou.. questul este folosit pe anumite servere pvp..
Si din ce stiu, ajuta sa poata face dragonul mai multe persoane dar in camere diferite sa nu se intalneasca unul cu altul.
Nu le am cu questurile deci mai bine am cerut ajutorul vostru, tin sa specific ca am incercat cateva questuri de pe aici dar nimic ce sa ma ajute.
Cerere Qust.
- Sickofitqwert1
-

- Mesaje: 19
- Membru din: 27 Mai 2020, 15:16
- Server: Sony
- Regat: Jinno
- Aprecieri: 407
- Mulţumiri: 2
- Discord: Copiază ID
- Contact:
Poftim.
Cod: Selectaţi tot
if get_time ( ) > game . get_event_flag ( "Grotte_time" ) then
game . set_event_flag ( "Grotte_zugang" , 0 )
end
if pc . is_gm ( ) or pc . count_item ( 80041 ) >= 1 then
say_title ( "" .. mob_name ( 30123 ) .. "" )
say ( "Bun venit " .. pc . get_name ( ) .. "" )
say ( "Nu ai nevoie nici de chei nici de parola" )
say ( "esti GM poti intra cand vrei." )
wait ( )
pc . warp ( 843200 , 1.0669e+06 )
return
end
if game . get_event_flag ( "Grotte_zugang" ) == 0 and pc . count_item ( 30179 ) < 3 then
say_title ( "" .. mob_name ( 30123 ) .. "" )
say_reward ( "Pentru a intra in templul lui Beran," )
say_reward ( "ai nevoie de " .. item_name ( 30179 ) .. "" )
say_item_vnum ( 30179 )
say_reward ( "Aceasta cheie rasucita pica la Capitanul Setaou." )
say_reward ( "Ai nevoie de trei Chei Rasucite pentru a intra." )
return
end
if game . get_event_flag ( "Grotte_zugang" ) == 1 then
say_title ( "" .. mob_name ( 30123 ) .. "" )
pc . setqf ( "grotte_passworto" , 7.89547e+10 )
if pc . getqf ( "abgabe" ) == 1 then
pc . setqf ( "abgabe" , 0 )
say ( "Ai cele trei Chei Rasucite." )
say ( "Te voi teleporta imediat in camera de cristal." )
pc . setqf ( "erlaubt" , 1 )
wait ( )
pc . warp ( 843200 , 1.0669e+06 )
return
end
say ( "Introdu codul ales de liderul grupului." )
local passwort = tonumber ( input ( "" ) )
if game . get_event_flag ( "Grotte_passwort" ) == passwort then
say_title ( "" .. mob_name ( 30123 ) .. "" )
say ( "Ai introdus codul corect." )
if pc . count_item ( 30179 ) < 3 then
say ( "Nu te pot teleporta deoarece nu ai" )
say ( "" .. item_name ( 30179 ) .. "" )
say_item_vnum ( 30179 )
say ( "Ai nevoie de cele trei Chei Rasucite." )
return
end
say ( "Te voi teleporta imediat." )
pc . setqf ( "erlaubt" , 1 )
wait ( )
if pc . can_warp ( ) then
pc . remove_item ( "30179" , 3 ) end
pc . warp ( 843200 , 1.0669e+06 )
elseif passi ~= pc . getqf ( "grotte_passworto" ) then
say_title ( "" .. mob_name ( 30123 ) .. "" )
say ( "" )
return
end
end
if game . get_event_flag ( "Grotte_zugang" ) == 0 and pc . count_item ( 30179 ) >= 3 then
say_title ( "" .. mob_name ( 30123 ) .. "" )
say ( "Detin in mine, ultima suflare a zeului dragon." )
say ( "Aceasta suflare magica te pot ajuta sa mergi in" )
say_reward ( "Camera de cristal." )
say ( "" )
say ( "Ai nevoie de cele trei chei rasucite." )
local i = select ( "Da, Vreau" , "Nu, Multumesc" )
if 1 == i then
say_title ( "" .. mob_name ( 30123 ) .. "" )
say ( "Ai nevoie de un cod pentru tine oi grupul tau." )
say ( "Codul pe care il vei introduce, va trebui sa " )
say ( "contina maxim 2 cifre." )
local passwort = tonumber ( input ( "" ) )
if passwort and passwort <= 1e+09 and pc . count_item ( 30179 ) >= 1 then
game . set_event_flag ( "Grotte_zugang" , 1 )
game . set_event_flag ( "Grotte_passwort" , passwort )
local times = get_time ( ) + 300
game . set_event_flag ( "Grotte_time" , times )
say_title ( "" .. mob_name ( 30123 ) .. "" )
pc . setqf ( "abgabe" , 1 )
say ( "Parola aleasa este: " .. passwort .. "" )
notice ( "Parola camerei alese este " .. passwort .. " " )
pc . remove_item ( "30179" , 3 )
else
say_title ( "" .. mob_name ( 30123 ) .. "" )
say ( "Nu ai scris codul corect." )
end
end
end
- Pentru acest mesaj, Sickofitqwert1 for the post:
- Hardwell
- SuntDevBA
-

- Mesaje: 51
- Membru din: 07 Dec 2020, 19:35
- Server: Nuzicba2
- Aprecieri: 38
- Mulţumiri: 13
- Discord: Copiază ID
Ti-am scris un mic quest , sper ca intelegi ce e pe acolo . Nu am apucat sa-l testez , vnum-urile , coordonatele , indecsii mapelor... le pui tu corect acolo. Lasi mesaj unde nu intelegi .
Cod: Selectaţi tot
--for Hardwell--
--02-01-2K21--
--12:38--
quest dragon_room begin
state start begin
function sett()
return
{
["boss_room_index"] = 50, --camera de cristal
["dragon_room_tp"] = {1234, 1234}, --~~123400 , 123400
["out_map_index"] = 100, --v3
["out_coord"] = {1234, 1234}, --~~123400, 123400
["ticket"] = 30500 , --key vnum
["dragon_vnum"] = 2493, --cred
["dragon_position"] = {100,200,3} --3 reprezinta pozitia , adica cracanat , lepadat, etc
};
end --function
function is_dragon_room()
local inf = dragon_room.sett();
local map_index = inf["boss_room_index"];
local pcMapIndex = pc.get_map_index();
return pc.in_dungeon() and pcMapIndex >= map_index*10000 and pcMapIndex < (map_index+1)*10000;
end --function is_dragon_room
function party_get_member_pids()
local pids = {party.get_member_pids()}
return pids
end --function
function clear_boss_room()
d.clear_regen();
d.kill_all();
end --function
function check_enter()
say("")
say("Sal")
local settings = dragon_room.sett()
if((get_global_time() - pc.getf("dragon_room","exit_dragon_room_time"))< 60*60) then
local wait_time = (pc.getf("dragon_room","exit_dragon_room_time") - get_global_time() + 60*60)
say("You have to wait until you can enter the dungeon again.")
say_reward("You can enter dragon_room again in: " ..get_time_remaining(wait_time)..'[ENTER]')
return
end --if
if party.is_party() then
if not party.is_leader() then
say_reward("Let me talk with your leader firstly.")
return
end --if
if party.get_near_count() < 2 then
say_reward("Your group must have atleast 2 players and")
say_reward("they have to be around.")
say_reward("Otherwise i can not let you there. ")
return false;
end --if
local ticketCheck = true
local MemberHaveNoTicket = {}
local pids = {party.get_member_pids()}
if not party.is_map_member_flag_lt("exit_dragon_room_time", get_global_time() - 60 * 60 ) then
say_reward("Some people of the group still")
say_reward("have to wait.")
return false;
end --if
-----------------------------------ticket check---------------------------------------------------------------------
for i, pid in next, pids, nil do
q.begin_other_pc_block(pid)
if pc.count_item(settings.ticket) < 3 then
table.insert(MemberHaveNoTicket, pc.get_name())
ticketCheck = false
end --if
q.end_other_pc_block()
end --if
if not ticketCheck then
say_reward("If you want to enter dragon room,")
say_reward("every each member must have 3x ")
say_item("Cheie rasucita", settings["ticket"], "")
say("")
say_reward("These members don't have the")
say_reward("Earth ticket:")
for i, n in next, MemberHaveNoTicket, nil do
say_title("- "..n)
end --for
return
end --if
-----------------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------
else --solo mode
if ((get_global_time() - pc.getf("dragon_room","exit_dragon_room_time")) < 60*60) then
local wait_time = (pc.getf("dragon_room","exit_dragon_room_time") - get_global_time() + 60*60)
say("You have to wait until you can enter the dungeon again.")
say_reward("You can go there again in: "..get_time_remaining(wait_time)..'[ENTER]')
return
end --if
if pc.count_item(settings["ticket"]) < 3 then
say_reward("If you want to enter the dragon room")
say_reward("you must have 3x")
say_item("Cheie rasucita", settings["ticket"], "")
return false;
end --if
end --if
return true;
end --function check_enter
---------------------------------------------------------------------------------------------------------------------------
when login with dragon_room.is_dragon_room() begin
local settings = dragon_room.sett()
d.set_warp_location(settings["out_map_index"], settings["out_coord"][1],settings["out_coord"][2]);
if not pc.is_gm() then
if not pc.in_dungeon() then
pc.warp(settings["out_map_index"],settings["out_coord"][1]*100,settings["out_coord"][2]*100)
end --if
end --if
end --when
---------------------------------------------------------------------------------------------------------------------------
--CREATE DUNGEON ---------------
--------------------------------
function create_dungeon()
local setting = dragon_room.sett()
local pids = {party.get_member_pids()}
if party.is_party() then
for i, pid in next, pids, nil do
q.begin_other_pc_block(pid)
pc.remove_item(setting["ticket"], 3)
q.end_other_pc_block()
end --for
d.new_jump_party(setting["dragon_room_index"],setting["dragon_room_tp"][1], setting["dragon_room_tp"][2])
d.setf("dragon_room_level",1)
d.spawn_mob_dir(setting["dragon_vnum"],setting["dragon_position"][1],setting["dragon_position"][2],setting["dragon_position"][3])
server_timer("kill_dragon_timer10",5,d.get_map_index())
else -- solo mode
pc.remove_item(setting["ticket"],3)
d.new_jump(setting["dragon_room_index"],setting["dragon_room_tp"][1]*100, setting["dragon_room_tp"][2]*100)
d.setf("dragon_room_level",1)
d.spawn_mob_dir(setting["dragon_vnum"],setting["dragon_position"][1],setting["dragon_position"][2],setting["dragon_position"][3])
server_timer("kill_dragon_timer10",5,d.get_map_index())
end --if
end --function create_dungeon
---------------------------------------------------------------------------------------------------------------------------
when 2000.chat."Dragon Room" with dragon_room.is_dragon_room() and pc.get_map_index() == 100 begin --100 index v3
local setting = dragon_room.sett()
say("")
say("")
say("")
say("There is no more gold, no crystals, nothing.")
say(string.format("The biggest problem is %s ",mob_name(2493)))
say("Help us to kill him")
say("")
say("Can you help us?")
if (select("Yes","No") == 1) then
if dragon_room.check_enter() then
say("Be careful, you have only 10 minutes")
say("to finish whole dungeon.")
say("The you will be teleported back here.")
wait()
dragon_room.create_dungeon()
end --if
end --if
end --when
when 2493.kill with dragon_room.is_dragon_room() and d.getf("dragon_room_level") == 1 begin
local settings = dragon_room.sett()
d.notice("GG , cya")
d.notice(string.format("You killed %s , nice!", mob_name(2493)))
d.notice("Take your drop")
d.notice("In 2 minutes you will be teleported back to v3")
dragon_room.clear_all_dungeon_timers()
server_timer("kill_dragon_timer0",2*60,d.get_map_index())
d.setf("dragon_room_level",d.getf("dragon_room_level")+1) --2
end --when
when kill_dragon_timer10.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("You have 10 minutes to kill the Dragon")
server_timer("kill_dragon_timer5",5*60,d.get_map_index())
end --if
end --when
when kill_dragon_timer5.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("You have 10 minutes to kill the Dragon")
server_timer("kill_dragon_timer1",4*60,d.get_map_index())
end --if
end --when
when kill_dragon_timer1.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("You have 10 minutes to kill the Dragon")
server_timer("kill_dragon_timer0",60,d.get_map_index())
end --if
end --when
when kill_dragon_timer0.server_timer begin
if d.select(get_server_timer_arg()) then
d.exit_all()
end --if
end --when
when logout with dragon_room.is_dragon_room() begin
pc.setf("dragon_room","exit_dragon_room_time",get_global_time())
pc.setqf("dragon_room",get_time()+ 3600)
end --when
function clear_all_dungeon_timers()
clear_server_timer("kill_dragon_timer10",get_server_timer_arg())
clear_server_timer("kill_dragon_timer5",get_server_timer_arg())
clear_server_timer("kill_dragon_timer1",get_server_timer_arg())
clear_server_timer("kill_dragon_timer0",get_server_timer_arg())
end --funct
end--state
end --quest
-
- Informaţie
-
Cine este conectat
Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 7 vizitatori


