![](https://metin2.dev/uploads/theme-resources/set_resources_31/84c1e40ea0e759e3f1505eb1788ddf3c_pattern.png)
![](https://metin2.dev/uploads/theme-resources/set_resources_31/84c1e40ea0e759e3f1505eb1788ddf3c_default_photo.png)
dexolus
-
Posts
51 -
Joined
-
Last visited
-
Feedback
0%
Content Type
Forums
Store
Third Party - Providers Directory
Feature Plan
Release Notes
Docs
Events
Posts posted by dexolus
-
-
Hello, i will not create new topic. I have the same problem. Anybody know fix please?
-
Repaired there was problem in another file.
-
Hi i found here new login interface which i really like - interface its working when i put it in my client. But channel switcher is not working. At the old interface it works. It only need to change intrologin.py, so i guess there is the problem.
This is my old intrologin.py -- https://pastebin.com/jgti94rY
This is new intrologin.py https://pastebin.com/PFqNtwT9
How can i make it work? When i paste to the new intrologin the
Spoilerdef __LoadChannelInfo(self):
try:
file=old_open("channel.inf")
lines=file.readlines()
if len(lines)>0:
tokens=lines[0].split()
selServerID=int(tokens[0])
if app.ENABLE_CHANNEL_SWITCHER:
if(int(tokens[1]) <= constInfo.CHANNELS):
selChannelID=int(tokens[1])
else:
selChannelID=1
else:
selChannelID=int(tokens[1])
if len(tokens) == 3:
regionID = int(tokens[2])
return regionID, selServerID, selChannelID
except:
print "LoginWindow.__LoadChannelInfo - OpenError"
return -1, -1, -1
to class LoginWindow(ui.ScriptWindow): its not working. When i add new class like the old one class ConnectingDialog(ui.ScriptWindow): its not working too. Can anybody help me please?
-
Thanks for help i will look at it
Have a nice day
-
No problem thanks for trying to help anyways. But i wonder if anyone know. Why some mounts work normaly with type 18 and some not..
-
Hi, im sorry i found it like 10 minutes before u write me here. THanks for response. My problem was bad type and subtype in database. When i set it corectly it works now
Thank you and have a nice day
-
Hi. I added some new mounts. Some of them working normally but some of them i cant ride with ctrl g but only click on them to ride.. I set them the same.. Can anybody help me please?
-
Problem fixed
The problem was in PythonNetworkStreamPhaseGame where my friend put } at bad line and close whole function. Thanks for trying to help
-
Hello, i added bigger yang limit from this it works but when im in game and make shop, shop shows me random numbers. at photo i set the price at 10T i can buy it for 10T but in shop is another price. Anybody know how to fix that please?
-
Hello i have the same problem, did u find solution? When im on channel 1 and switch to channel 2 it still shows me channel 1, but when i teleport somewhere it shows correctly after teleport. Can anybody help me please?
Thanks
-
Anyone able to help me please? I can pay for help. Thanks
-
Hi, im writing quest for my dungeon. I want to start regen where will be like 400 monsters. And i want that one from that 400 monsters will be right and when i kill it it ports me.
I writed this
Spoilerwhen 6101.kill or 6102.kill or 6103.kill or 6104.kill with pc.in_dungeon() and d.getf("ledov_dungeon_level") == 1 begin
local n = number(1,8)
if n == 1 or game.get_event_flag("trumetin") == 7 then
d.notice("Správná příšera byla zabita.")
ledov_dungeon.clear_ledovdungeon()
d.setf("ledov_dungeon_level", 2)
server_timer("ledov_dungeon_spawner", 15, d.get_map_index())
else
game.set_event_flag("trumetin", game.get_event_flag("trumetin")+1)
end
endWhich works fine. But when i set the number to local n = number(1,8) sometimes i have to kill more than 8 monsters sometimes it work good. I dont know what is wrong. Can anybody help please? Thank you
-
Probably fixed. It worked today all the time. Thank you so much for your help
-
1
-
-
Alright thanks for advice. When i will have time i will try to fix it as you say. I will write here the result. Thank you so much
-
Hi. Can you check the quest for me please?
Spoilerquest ledov_dungeon begin
state start begin
function settings()
return
{
["ledov_dungeon_index"] = 33, ---- Dungeon index
["ledov_dungeon_index_out"] = 41, ---- Map index, where players will be teleported from dungeon [Jinno M1]
["out_pos"] = {9694, 2786}, ---- Coordinations, where players will be teleported from dungeon [Jinno M1]
["ledov_dungeon_pos"] = { ----- Dungeon coords
[1] = {244915, 245066},
[2] = {245124, 245095}
},
["level_check"] = {
["minimum"] = 200,
["maximum"] = 300},
};
end
function party_get_member_pids()
local pids = {party.get_member_pids()}
return pids
end
function boss1()
local setting = ledov_dungeon.settings()
local r = number (1,5)
if r == 1 then
d.spawn_mob(101, 442, 284)
d.spawn_mob(6108, 345, 279)
d.spawn_mob(6108, 348, 197)
d.spawn_mob(6108, 442, 197)
d.spawn_mob(6108, 402, 78)
elseif r == 2 then
d.spawn_mob(6108, 442, 284)
d.spawn_mob(101, 345, 279)
d.spawn_mob(6108, 348, 197)
d.spawn_mob(6108, 442, 197)
d.spawn_mob(6108, 402, 78)
elseif r == 3 then
d.spawn_mob(6108, 442, 284)
d.spawn_mob(6108, 345, 279)
d.spawn_mob(101, 348, 197)
d.spawn_mob(6108, 442, 197)
d.spawn_mob(6108, 402, 78)
elseif r == 4 then
d.spawn_mob(6108, 442, 284)
d.spawn_mob(101, 345, 279)
d.spawn_mob(6108, 348, 197)
d.spawn_mob(6108, 442, 197)
d.spawn_mob(6108, 402, 78)
elseif r == 5 then
d.spawn_mob(6108, 442, 284)
d.spawn_mob(6108, 345, 279)
d.spawn_mob(101, 348, 197)
d.spawn_mob(6108, 442, 197)
d.spawn_mob(6108, 402, 78)
end
end
function metin1()
local setting = ledov_dungeon.settings()
local r = number (1,10)
if r == 1 then
d.spawn_mob(8001, 914, 189)
d.spawn_mob(8630, 951, 189)
d.spawn_mob(8630, 951, 231)
d.spawn_mob(8630, 913, 231)
d.spawn_mob(8630, 873, 228)
d.spawn_mob(8630, 872, 187)
d.spawn_mob(8630, 872, 206)
d.spawn_mob(8630, 979, 190)
d.spawn_mob(8630, 979, 210)
d.spawn_mob(8630, 979, 231)
elseif r == 2 then
d.spawn_mob(8630, 914, 189)
d.spawn_mob(8001, 951, 189)
d.spawn_mob(8630, 951, 231)
d.spawn_mob(8630, 913, 231)
d.spawn_mob(8630, 873, 228)
d.spawn_mob(8630, 872, 187)
d.spawn_mob(8630, 872, 206)
d.spawn_mob(8630, 979, 190)
d.spawn_mob(8630, 979, 210)
d.spawn_mob(8630, 979, 231)
elseif r == 3 then
d.spawn_mob(8630, 914, 189)
d.spawn_mob(8630, 951, 189)
d.spawn_mob(8001, 951, 231)
d.spawn_mob(8630, 913, 231)
d.spawn_mob(8630, 873, 228)
d.spawn_mob(8630, 872, 187)
d.spawn_mob(8630, 872, 206)
d.spawn_mob(8630, 979, 190)
d.spawn_mob(8630, 979, 210)
d.spawn_mob(8630, 979, 231)
elseif r == 4 then
d.spawn_mob(8630, 914, 189)
d.spawn_mob(8630, 951, 189)
d.spawn_mob(8630, 951, 231)
d.spawn_mob(8001, 913, 231)
d.spawn_mob(8630, 873, 228)
d.spawn_mob(8630, 872, 187)
d.spawn_mob(8630, 872, 206)
d.spawn_mob(8630, 979, 190)
d.spawn_mob(8630, 979, 210)
d.spawn_mob(8630, 979, 231)
elseif r == 5 then
d.spawn_mob(8630, 914, 189)
d.spawn_mob(8630, 951, 189)
d.spawn_mob(8630, 951, 231)
d.spawn_mob(8630, 913, 231)
d.spawn_mob(8001, 873, 228)
d.spawn_mob(8630, 872, 187)
d.spawn_mob(8630, 872, 206)
d.spawn_mob(8630, 979, 190)
d.spawn_mob(8630, 979, 210)
d.spawn_mob(8630, 979, 231)
elseif r == 6 then
d.spawn_mob(8630, 914, 189)
d.spawn_mob(8630, 951, 189)
d.spawn_mob(8630, 951, 231)
d.spawn_mob(8630, 913, 231)
d.spawn_mob(8630, 873, 228)
d.spawn_mob(8001, 872, 187)
d.spawn_mob(8630, 872, 206)
d.spawn_mob(8630, 979, 190)
d.spawn_mob(8630, 979, 210)
d.spawn_mob(8630, 979, 231)
elseif r == 7 then
d.spawn_mob(8630, 914, 189)
d.spawn_mob(8630, 951, 189)
d.spawn_mob(8630, 951, 231)
d.spawn_mob(8630, 913, 231)
d.spawn_mob(8630, 873, 228)
d.spawn_mob(8630, 872, 187)
d.spawn_mob(8001, 872, 206)
d.spawn_mob(8630, 979, 190)
d.spawn_mob(8630, 979, 210)
d.spawn_mob(8630, 979, 231)
elseif r == 8 then
d.spawn_mob(8630, 914, 189)
d.spawn_mob(8630, 951, 189)
d.spawn_mob(8630, 951, 231)
d.spawn_mob(8630, 913, 231)
d.spawn_mob(8630, 873, 228)
d.spawn_mob(8630, 872, 187)
d.spawn_mob(8630, 872, 206)
d.spawn_mob(8001, 979, 190)
d.spawn_mob(8630, 979, 210)
d.spawn_mob(8630, 979, 231)
elseif r == 9 then
d.spawn_mob(8630, 914, 189)
d.spawn_mob(8630, 951, 189)
d.spawn_mob(8630, 951, 231)
d.spawn_mob(8630, 913, 231)
d.spawn_mob(8630, 873, 228)
d.spawn_mob(8630, 872, 187)
d.spawn_mob(8630, 872, 206)
d.spawn_mob(8630, 979, 190)
d.spawn_mob(8001, 979, 210)
d.spawn_mob(8630, 979, 231)
elseif r == 10 then
d.spawn_mob(8630, 914, 189)
d.spawn_mob(8630, 951, 189)
d.spawn_mob(8630, 951, 231)
d.spawn_mob(8630, 913, 231)
d.spawn_mob(8630, 873, 228)
d.spawn_mob(8630, 872, 187)
d.spawn_mob(8630, 872, 206)
d.spawn_mob(8630, 979, 190)
d.spawn_mob(8630, 979, 210)
d.spawn_mob(8001, 979, 231)
end
endfunction blud()
local setting = ledov_dungeon.settings()
local r = number (1,4)
if r == 1 then
d.spawn_mob(8001, 1081, 55)
d.spawn_mob(8630, 1252, 277)
d.spawn_mob(8630, 1184, 318)
d.spawn_mob(8630, 983, 365)
elseif r == 2 then
d.spawn_mob(8630, 1081, 55)
d.spawn_mob(8001, 1252, 277)
d.spawn_mob(8630, 1184, 318)
d.spawn_mob(8630, 983, 365)
elseif r == 3 then
d.spawn_mob(8630, 1081, 55)
d.spawn_mob(8630, 1252, 277)
d.spawn_mob(8001, 1184, 318)
d.spawn_mob(8630, 983, 365)
elseif r == 4 then
d.spawn_mob(8630, 1081, 55)
d.spawn_mob(8630, 1252, 277)
d.spawn_mob(8630, 1184, 318)
d.spawn_mob(8001, 983, 365)
end
end
function bo()
local setting = ledov_dungeon.settings()
local r = number (1,4)
if r == 1 then
d.spawn_mob(102, 379, 739)
d.spawn_mob(6109, 380, 538)
d.spawn_mob(6109, 488, 550)
d.spawn_mob(6109, 544, 551)
elseif r == 2 then
d.spawn_mob(6109, 379, 739)
d.spawn_mob(102, 380, 538)
d.spawn_mob(6109, 488, 550)
d.spawn_mob(6109, 544, 551)
elseif r == 3 then
d.spawn_mob(6109, 379, 739)
d.spawn_mob(6109, 380, 538)
d.spawn_mob(102, 488, 550)
d.spawn_mob(6109, 544, 551)
elseif r == 4 then
d.spawn_mob(6109, 379, 739)
d.spawn_mob(6109, 380, 538)
d.spawn_mob(6109, 488, 550)
d.spawn_mob(102, 544, 551)
end
endfunction is_ledoved()
local pMapIndex = pc.get_map_index();
local data = ledov_dungeon.settings();
local map_index = data["ledov_dungeon_index"];return pc.in_dungeon() and pMapIndex >= map_index*10000 and pMapIndex < (map_index+1)*10000;
end
function clear_ledovdungeon()
d.clear_regen();
d.kill_all();
end
function clear_ledovtimers()
clear_server_timer("ledov_dungeon_wave_kill", get_server_timer_arg())
clear_server_timer("ledov_dungeon_30min_left", get_server_timer_arg())
clear_server_timer("ledov_dungeon_15min_left", get_server_timer_arg())
clear_server_timer("ledov_dungeon_10min_left", get_server_timer_arg())
clear_server_timer("ledov_dungeon_5min_left", get_server_timer_arg())
clear_server_timer("ledov_dungeon_1min_left", get_server_timer_arg())
clear_server_timer("ledov_dungeon_0min_left", get_server_timer_arg())
clear_server_timer("ledov_dungeon_final_exit", get_server_timer_arg())
endfunction check_enter()
say_title(mob_name(8587))
local settings = ledov_dungeon.settings()
if ((get_global_time() - pc.getf("ledov_dungeon","exit_ledov_dungeon_time")) < 60*60) then
local remaining_wait_time = (pc.getf("ledov_dungeon","exit_ledov_dungeon_time") - get_global_time() + 60*60)
say(" Musíš počkat před vstupem do dungeonu. ")
say_reward(" Po uplynutí této doby : "..get_time_remaining(remaining_wait_time)..'[ENTER]')
say_reward("Můžete znovu vstoupit do dungeonu.")
return
end
if party.is_party() then
if not party.is_leader() then
say_reward(" Nech mě nejprve mluvit s vůdcem skupiny. ")
return
endif party.get_near_count() < 2 then
say_reward(" Pro vstup musí mít tvoje skupina alespoň dva členy. ")
say_reward(" Všichni členové musí být kolem. ")
say_reward(" [ENTER]Jinak tě nemohu pustit. ")
return false;
end
local levelCheck = true
local MemberHaveLowLevel = {}
local MemberHaveHighLevel = {}
local pids = {party.get_member_pids()}
if not party.is_map_member_flag_lt("exit_ledov_dungeon_time", get_global_time() - 60 * 60 ) then
say_reward(" Někteří členi skupiny ")
say_reward(" musí ještě počkat. ")
return false;
end
for i, pid in next, pids, nil do
q.begin_other_pc_block(pid)
if pc.get_level() < settings["level_check"]["minimum"] then
table.insert(MemberHaveLowLevel, pc.get_name())
levelCheck = false
endq.end_other_pc_block()
endif not levelCheck then
say_reward(" Pokud chceš vstoupit do Ledové rokle ")
say_reward(" musíš mít alespoň level 201 ")
say_reward("")
say_reward(" Následující hráči nemají dostatečný level : ")
for i, n in next, MemberHaveLowLevel, nil do
say_title("- "..n)
end
return
end
for i, pid in next, pids, nil do
q.begin_other_pc_block(pid)
if pc.get_level() > settings["level_check"]["maximum"] then
table.insert(MemberHaveHighLevel, pc.get_name())
levelCheck = false
endq.end_other_pc_block()
endif not levelCheck then
say_reward(" Pokud chceš vstoupit do Ledové rokle ")
say_reward(" Musíš mít maximálně level 300. ")
say_reward("")
say_reward(" Tito hráči mají příliš vysoký level : ")
for i, n in next, MemberHaveHighLevel, nil do
say_title("- "..n)
end
return
end
else
if ((get_global_time() - pc.getf("ledov_dungeon","exit_ledov_dungeon_time")) < 60*60) then
local remaining_wait_time = (pc.getf("ledov_dungeon","exit_ledov_dungeon_time") - get_global_time() + 60*60)
say(" Před vstupem do Cesty zkázy musíš počkat. ")
say_reward(" Můžeš znovu vstoupit za: "..get_time_remaining(remaining_wait_time)..'[ENTER]')
return
end
if (pc.get_level() < settings["level_check"]["minimum"]) then
say(string.format(" Minimální level pro vstup do Ledové rokle je %d. ", settings["level_check"]["minimum"]))
return false;
end
if (pc.get_level() > settings["level_check"]["maximum"]) then
say(string.format(" Maximální level pro vstup do Ledové rokle je %d. ", settings["level_check"]["maximum"]))
return false;
end
end
return true;
end
function create_dungeon()
local setting = ledov_dungeon.settings()
local pids = {party.get_member_pids()}
if party.is_party() then
game.set_event_flag("trumetin", 0)
d.new_jump_party(setting["ledov_dungeon_index"], setting["ledov_dungeon_pos"][1][1], setting["ledov_dungeon_pos"][1][2])
d.setf("ledov_dungeon_level", 1)
d.regen_file("data/dungeon/ledov_dungeon/regen1.txt")
server_timer("ledov_dungeon_30min_left", 7200, d.get_map_index())
server_loop_timer("ledov_dungeon_wave_kill", 15, d.get_map_index())
else
game.set_event_flag("trumetin", 0)
d.new_jump(setting["ledov_dungeon_index"], setting["ledov_dungeon_pos"][1][1]*100, setting["ledov_dungeon_pos"][1][2]*100)
d.setf("ledov_dungeon_level", 1)
d.regen_file("data/dungeon/ledov_dungeon/regen1.txt")
server_timer("ledov_dungeon_30min_left", 7200, d.get_map_index())
server_loop_timer("ledov_dungeon_wave_kill", 15, d.get_map_index())
end
end
when login with ledov_dungeon.is_ledoved() begin
local settings = ledov_dungeon.settings()
d.set_warp_location(settings["ledov_dungeon_index_out"], settings["out_pos"][1], settings["out_pos"][2]);
if not pc.is_gm() then
if not pc.in_dungeon() then
pc.warp(settings["ledov_dungeon_index_out"], settings["out_pos"][1]*100, settings["out_pos"][2]*100)
end
end
endwhen 20089.chat." Ledová rokle " begin
local settings = ledov_dungeon.settings()
say_title(mob_name(20089))
say("")
say(" Opravdu chceš vstoupit do Ledové rokle? ")
if (select ("Ano", "Ne") == 1) then
if ledov_dungeon.check_enter() then
say_reward(" Na dokončení Ledové rokle máš pouze 2 hodiny.")
say_reward(" Po uplynutí této doby budete teleportování zpět sem. ")
say_reward(" Pro postup do dalšího patra zabij správnou příšeru" )
wait()
ledov_dungeon.create_dungeon()
end
end
end---TIME RESET - ONLY FOR GM
when 20089.chat."Resetování času pyčo" with pc.is_gm() begin
say("")
say("")
say("")
if select('Resetovat čas kurva','Ne dopiči') == 2 then return end
addimage(25, 10, "ledov_bg_01.tga")
say("")
say("")
say("")
say_title(mob_name(20095))
say("")
say("Bylo resetovane kundo")
pc.setf('ledov_dungeon','exit_ledov_dungeon_time', 0)
-- Dungeon Info
pc.setqf("rejoin_time", get_time() - 3600)
end
when 6101.kill or 6102.kill or 6103.kill or 6104.kill with pc.in_dungeon() and d.getf("ledov_dungeon_level") == 1 begin
local n = number(1,8)
if n == 1 or game.get_event_flag("trumetin") == 7 then
d.notice("Správná příšera byla zabita.")
ledov_dungeon.clear_ledovdungeon()
d.setf("ledov_dungeon_level", 2)
server_timer("ledov_dungeon_spawner", 15, d.get_map_index())
else
game.set_event_flag("trumetin", game.get_event_flag("trumetin")+1)
end
end
when ledov_dungeon_spawner.server_timer begin
local settings = ledov_dungeon.settings()
if d.select(get_server_timer_arg()) then
if d.getf("ledov_dungeon_level") == 2 then
game.set_event_flag("tru", 0)
d.setf("ledov_dungeon_level", 3)
ledov_dungeon.boss1()
d.notice("Zabij správného bosse pro postup do dalšího patra")
d.notice("Pokud zabiješ špatného bosse může ti dát trest")
d.jump_all(settings["ledov_dungeon_pos"][2][1], settings["ledov_dungeon_pos"][2][2])
elseif d.getf("ledov_dungeon_level") == 4 then
game.set_event_flag("truu", 0)
d.setf("ledov_dungeon_level", 5)
d.regen_file("data/dungeon/ledov_dungeon/regen2.txt")
d.jump_all(245389, 244810)
elseif d.getf("ledov_dungeon_level") == 6 then
d.setf("ledov_dungeon_level", 7)
d.regen_file("data/dungeon/ledov_dungeon/regenhradby.txt")
d.jump_all (245655, 244818)
elseif d.getf("ledov_dungeon_level") == 8 then
d.setf("ledov_dungeon_level", 9)
ledov_dungeon.metin1()
d.notice("Rozbij správný balvan pro postup do dalšího patra.")
d.notice("Jeden balvan je špatný za jeho rozbití budeš potrestán")
game.set_event_flag("truuhrad", 0)
elseif d.getf("ledov_dungeon_level") == 10 then
d.setf("ledov_dungeon_level", 11)
d.notice("Najdi a rozbij balvany.")
d.notice("Jeden balvan je špatný, za jeho rozbití dostaneš trest")
ledov_dungeon.blud()
game.set_event_flag("blud", 0)
d.jump_all (245903, 244789)
elseif d.getf("ledov_dungeon_level") == 12 then
d.setf("ledov_dungeon_level", 13)
d.notice("Zabij všechny příšery balvany a bosse.")
d.regen_file("data/dungeon/ledov_dungeon/regenkomb.txt")
d.jump_all (244803, 245324)
elseif d.getf("ledov_dungeon_level") == 14 then
d.notice("Zabij správného bosse pro postup")
d.notice("Jeden boss je špatný za jeho zabití budeš potrestán")
d.setf("ledov_dungeon_level", 15)
ledov_dungeon.bo()
game.set_event_flag("lord", 0)
elseif d.getf("ledov_dungeon_level") == 16 then
d.notice("Zabij Nemereho pro dokončení dungeonu")
d.setf("ledov_dungeon_level", 17)
d.regen_file("data/dungeon/ledov_dungeon/regenlast.txt")
end
end
end
when 6108.kill with pc.in_dungeon() and d.getf("ledov_dungeon_level") == 3 begin
local n = number(1,4)
if n == 1 or game.get_event_flag("tru") == 3 then
d.notice("Správný boss byl zabit.")
ledov_dungeon.clear_ledovdungeon()
d.setf("ledov_dungeon_level", 4)
server_timer("ledov_dungeon_spawner", 15, d.get_map_index())
else
d.notice("Toto nebyl správný boss.")
game.set_event_flag("tru", game.get_event_flag("tru")+1)
end
end
when 101.kill with pc.in_dungeon() and d.getf("ledov_dungeon_level") == 3 begin
d.notice("Zabil jsi špatného bosse. Budeš potrestán.")
d.notice("Aby jsi se vrátil zpět zabij správnou příšeru.")
game.set_event_flag("trumet", 0)
d.regen_file("data/dungeon/ledov_dungeon/regentrest.txt")
server_timer("ledov_dungeon_trest", 3, d.get_map_index())
end
when ledov_dungeon_trest.server_timer begin
local settings = ledov_dungeon.settings()
if d.select(get_server_timer_arg()) then
if d.getf("ledov_dungeon_level") == 3 then
d.jump_all(244848, 244820)
end
end
end
when 6101.kill or 6102.kill or 6103.kill or 6104.kill or 6105.kill or 6106.kill or 6107.kill with pc.in_dungeon() and d.getf("ledov_dungeon_level") == 3 begin
local n = number(1,8)
if n == 1 or game.get_event_flag("trumet") == 7 then
d.notice("Správná příšera byla zabita.")
server_timer("ledov_dungeon_trestt", 10, d.get_map_index())
else
game.set_event_flag("trumet", game.get_event_flag("trumet")+1)
end
end
when ledov_dungeon_trestt.server_timer begin
local settings = ledov_dungeon.settings()
if d.select(get_server_timer_arg()) then
if d.getf("ledov_dungeon_level") == 3 then
d.jump_all(245124, 245095)
end
end
end
when 6101.kill or 6102.kill or 6103.kill or 6104.kill or 6105.kill or 6106.kill or 6107.kill with pc.in_dungeon() and d.getf("ledov_dungeon_level") == 5 begin
local n = number(1,8)
if n == 1 or game.get_event_flag("truu") == 7 then
d.notice("Správná příšera byla zabita.")
ledov_dungeon.clear_ledovdungeon()
d.setf("ledov_dungeon_level", 6)
server_timer("ledov_dungeon_spawner", 15, d.get_map_index())
else
game.set_event_flag("truu", game.get_event_flag("truu")+1)
end
endwhen ledov_dungeon_wave_kill.server_timer begin
local settings = ledov_dungeon.settings()
if d.select(get_server_timer_arg()) then
if d.getf("ledov_dungeon_level") == 7 then
d.notice("Zabij všechny příšery")
if d.count_monster() == 0 then
clear_server_timer("ledov_dungeon_wave_kill", get_server_timer_arg())
d.setf("ledov_dungeon_level",
d.notice("Zabil jsi všechny příšery.")
server_timer("ledov_dungeon_spawner", 1, d.get_map_index())
else
d.notice(string.format("Zbývá zabít %d příšer", d.count_monster()));
end
elseif d.getf("ledov_dungeon_level") == 13 then
d.notice("Zabij všechny příšery")
if d.count_monster() == 0 then
clear_server_timer("ledov_dungeon_wave_kill", get_server_timer_arg())
d.setf("ledov_dungeon_level", 14)
d.notice("Zabil jsi všechny příšery.")
server_timer("ledov_dungeon_spawner", 20, d.get_map_index())
else
d.notice(string.format("Zbývá zabít %d příšer", d.count_monster()));
end
end
end
end
when 8630.kill with pc.in_dungeon() and d.getf("ledov_dungeon_level") == 9 begin
local n = number(1,9)
if n == 1 or game.get_event_flag("truuhrad") == 8 then
d.notice("Správný balvan byl rozbit.")
ledov_dungeon.clear_ledovdungeon()
d.setf("ledov_dungeon_level", 10)
server_timer("ledov_dungeon_spawner", 15, d.get_map_index())
else
d.notice("Toto nebyl správný balvan.")
game.set_event_flag("truuhrad", game.get_event_flag("truuhrad")+1)
end
end
when 8001.kill with pc.in_dungeon() and d.getf("ledov_dungeon_level") == 9 begin
game.set_event_flag("trs", 0)
d.notice("Rozbil jsi špatný balvan. Budeš potrestán.")
d.notice("Aby jsi se vrátil zpět zabij správnou příšeru.")
d.regen_file("data/dungeon/ledov_dungeon/regentrest.txt")
server_timer("ledov_dungeon_tres", 15, d.get_map_index())
end
when ledov_dungeon_tres.server_timer begin
local settings = ledov_dungeon.settings()
if d.select(get_server_timer_arg()) then
if d.getf("ledov_dungeon_level") == 9 then
d.jump_all(244848, 244820)
end
end
end
when 6101.kill or 6102.kill or 6103.kill or 6104.kill or 6105.kill or 6106.kill or 6107.kill with pc.in_dungeon() and d.getf("ledov_dungeon_level") == 9 begin
local n = number(1,8)
if n == 1 or game.get_event_flag("trs") == 7 then
d.notice("Správná příšera byla zabita.")
d.clear_regen("data/dungeon/ledov_dungeon/regentrest.txt")
server_timer("ledov_dungeon_pico", 15, d.get_map_index())
else
game.set_event_flag("trs", game.get_event_flag("trs")+1)
end
end
when ledov_dungeon_pico.server_timer begin
local settings = ledov_dungeon.settings()
if d.select(get_server_timer_arg()) then
if d.getf("ledov_dungeon_level") == 9 then
d.jump_all(245655, 244818)
end
end
endwhen 8630.kill with pc.in_dungeon() and d.getf("ledov_dungeon_level") == 11 begin
local n = number(1,3)
if n == 1 or game.get_event_flag("blud") == 2 then
d.notice("Správný balvan byl rozbit.")
ledov_dungeon.clear_ledovdungeon()
d.setf("ledov_dungeon_level", 12)
server_timer("ledov_dungeon_spawner", 15, d.get_map_index())
else
d.notice("Toto nebyl správný balvan.")
game.set_event_flag("blud", game.get_event_flag("blud")+1)
end
end
when 8001.kill with pc.in_dungeon() and d.getf("ledov_dungeon_level") == 11 begin
d.spawn_mob(8632, 122, 72)
d.notice("Rozbil jsi špatný balvan. Budeš potrestán.")
d.notice("Aby jsi se vrátil zpět rozbij správný balvan.")
server_timer("ledov_dungeon_tres", 15, d.get_map_index())
end
when ledov_dungeon_tres.server_timer begin
local settings = ledov_dungeon.settings()
if d.select(get_server_timer_arg()) then
if d.getf("ledov_dungeon_level") == 11 then
d.jump_all(244848, 244820)
end
end
endwhen 8632.kill with pc.in_dungeon() and d.getf("ledov_dungeon_level") == 11 begin
server_timer("ledov_dungeon_trestboss", 15, d.get_map_index())
d.notice("Zabil jsi bosse, budeš teleportován zpět")
endwhen ledov_dungeon_trestboss.server_timer begin
local settings = ledov_dungeon.settings()
if d.select(get_server_timer_arg()) then
if d.getf("ledov_dungeon_level") == 11 then
d.jump_all(245655, 244818)
end
end
end
when 6109.kill with pc.in_dungeon() and d.getf("ledov_dungeon_level") == 15 begin
local n = number(1,4)
if n == 1 or game.get_event_flag("lord") == 3 then
d.notice("Správný boss byl zabit.")
ledov_dungeon.clear_ledovdungeon()
d.setf("ledov_dungeon_level", 16)
server_timer("ledov_dungeon_spawner", 15, d.get_map_index())
else
d.notice("Toto nebyl správný boss.")
game.set_event_flag("lord", game.get_event_flag("lord")+1)
end
end
when 102.kill with pc.in_dungeon() and d.getf("ledov_dungeon_level") == 15 begin
d.notice("Zabil jsi špatného bosse. Budeš potrestán.")
d.notice("Aby jsi se vrátil zpět zabij Mrazivého lorda")
d.spawn_mob(102, 65, 93)
server_timer("ledov_dungeon_trestik", 3, d.get_map_index())
end
when ledov_dungeon_trestik.server_timer begin
local settings = ledov_dungeon.settings()
if d.select(get_server_timer_arg()) then
if d.getf("ledov_dungeon_level") == 15 then
d.jump_all(244848, 244820)
end
end
end
when 102.kill with pc.in_dungeon() and d.getf("ledov_dungeon_level") == 15 begin
server_timer("ledov_dungeon_lord", 10, d.get_map_index())
end
when ledov_dungeon_lord.server_timer begin
local settings = ledov_dungeon.settings()
if d.select(get_server_timer_arg()) then
if d.getf("ledov_dungeon_level") == 15 then
d.jump_all(245124, 245095)
end
end
endwhen kill with ledov_dungeon.is_ledoved() and not npc.is_pc() and npc.get_race() == 6191 begin
local settings = ledov_dungeon.settings()
if d.getf("ledov_dungeon_level") == 17 then
d.setf("ledov_dungeon_level", 18)
d.notice("Úspěšně jsi dokončil dungeon")
d.notice("Za dvě minuty budeš teleportován.")
notice_all("Hráč ".. pc.get_name() .." dokázal projít Ledovou rokli!")
server_timer("ledov_dungeon_final", 115, d.get_map_index())
end
end
when ledov_dungeon_30min_left.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Zbývá 30 minut!")
server_timer("ledov_dungeon_15min_left", 15*60, d.get_map_index())
end
endwhen ledov_dungeon_15min_left.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Zbývá 15 minut!!")
server_timer("ledov_dungeon_10min_left", 5*60, d.get_map_index())
end
endwhen ledov_dungeon_10min_left.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Zbývá 10 minut!")
server_timer("ledov_dungeon_5min_left", 5*60, d.get_map_index())
end
endwhen ledov_dungeon_5min_left.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Zbývá 5 minut!")
server_timer("ledov_dungeon_1min_left", 4*60, d.get_map_index())
end
endwhen ledov_dungeon_1min_left.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Zbývá 1 minuta!")
server_timer("ledov_dungeon_0min_left", 60, d.get_map_index())
end
endwhen ledov_dungeon_0min_left.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Čas vypršel. Budeš teleportován.")
server_timer("ledov_dungeon_final", 5, d.get_map_index())
end
endwhen ledov_dungeon_final.server_timer begin
if d.select(get_server_timer_arg()) then
d.exit_all()
end
end
when logout with ledov_dungeon.is_ledoved() begin
pc.setf("ledov_dungeon","exit_ledov_dungeon_time", get_global_time())
pc.setqf("ledov_dungeon", get_time() + 3600)
end
end
endI think the problem is here with that index?
Spoilerfunction is_ledoved()
local pMapIndex = pc.get_map_index();
local data = ledov_dungeon.settings();
local map_index = data["ledov_dungeon_index"];return pc.in_dungeon() and pMapIndex >= map_index*10000 and pMapIndex < (map_index+1)*10000;
Thank you
-
Hi i have problem with my dungeons. Sometimes i enter dungeon by npc and there is no monsters. So i spawn npc or go to the town to the npc and enter again and its working.
But does anybody know where is problem? It does not work on more dungeons. I seen it in plechitos dungeons. In my dungeons which i made... Can anybody help me? I can upload the quest later. But i think its correct. When plechitos dungeons make it too.
Thank you
-
-
I made it working, it gives me exp but i cant level up. It left with 1 bzk needed and i can click how many times i want it takes the item but not level up..
Spoilerquest exp begin
state start begin
when 100300.use begin
pc.give_exp(pc.get_name(), 100000)
pc.remove_item(100300, 1)
end
when 100400.use begin
pc.give_exp(pc.get_name(), 100000)
pc.remove_item(100400, 1)
end
end
end -
Hello, i writed quest. When i click on item(vnum) i want to get some exp around 1000..
Quest is like this
Spoilerquest magic ring by Hany begin
state start begin
when 30527.use begin
pc.give_exp2(10000)
pc.remove_item(ItemValue, 1)
end
end
endBut it does not work. It remove item but i dont get exp.
Can you help me please? What is wrong? -
Hi. I made it working. bcs i rewrite
Spoilerfunction make_dungeon()
local setting = crystal_dungeon.settings()
d.new_jump_party(setting["map_index"], setting["spawm_pos"][1][1], setting["spawm_pos"][1][2])
d.setf("lair_check", 1)
d.setf("level_four_login", 0)
crystal_dungeon.get_regens(1)
endTo
function make_dungeon()
local setting = crystal_dungeon.settings()
d.join(setting["map_index"], setting["spawm_pos"][1][1], setting["spawm_pos"][1][2])
d.setf("lair_check", 1)
d.setf("level_four_login", 0)
crystal_dungeon.get_regens(1)
endBut now it ports anyone and does not level check it. So i can enter with level one even i have set it from level 105. Anyone know fix please?
-
Hello. I seen on youtube these 3 dungeons. I would like to buy them on my server. Does anyone know from who are they? Or when i can buy them? Server doesnt exist anymore. Thank you so much. Have a good day.
https://www.youtube.com/watch?v=CSRE3sN3rWE
-
If i delete what u send and paste new_jump_party to new_jump its not working. Am i supposed to remove that and then paste new_jump_party to new_jump ? Thank you for helping
Im sorry , i understand after a while how u meant it.. Its not working too
-
When i do that, the npc who is porting me in game. Says you will be teleported but it does not teleport me.
-
Hello, i downloaded dungeon. Transalated and do everything i mostly wanted. But i dont know how can i set only one person can go the dungeon. Now u need group more then 2 peoples to enter dungeon. Here the quest file. Hope somebody will help me or explain how to do it.
Spoilerquest crystal_dungeon begin
state start begin
--Functions
function settings()
return
{
["map_index"] = 9,
["spawm_pos"] = {
[1] = {21272, 29576},
[2] = {21650, 29689},
[3] = {21232, 30067},
[4] = {21396, 30104},
[5] = {21765, 30187},
},
["level_check"] = {
["minimum"] = 105,
["maximum"] = 120
},
["keys"] = {30701, 30702, 30703},
["metin_stones"] = {8411, 8412, 8413, 8414},
};
end
function spawn_boss(level)
local boss_settings = {
[3] = {948, 741, 191},
[5] = {949, 431, 544},
[7] = {950, 773, 681}
};
return d.spawn_mob(boss_settings[level][1], boss_settings[level][2], boss_settings[level][3])
end
function spawn_metins_4thfloor()
local setting = crystal_dungeon.settings()
local r = number (1,8)
if r == 1 then
d.spawn_mob(setting["metin_stones"][3], 250, 659)
d.spawn_mob(setting["metin_stones"][2], 239, 714)
d.spawn_mob(setting["metin_stones"][2], 257, 745)
d.spawn_mob(setting["metin_stones"][2], 282, 777)
d.spawn_mob(setting["metin_stones"][2], 321, 767)
d.spawn_mob(setting["metin_stones"][2], 371, 770)
d.spawn_mob(setting["metin_stones"][2], 397, 737)
d.spawn_mob(setting["metin_stones"][2], 410, 714)
elseif r == 2 then
d.spawn_mob(setting["metin_stones"][2], 250, 659)
d.spawn_mob(setting["metin_stones"][3], 239, 714)
d.spawn_mob(setting["metin_stones"][2], 257, 745)
d.spawn_mob(setting["metin_stones"][2], 282, 777)
d.spawn_mob(setting["metin_stones"][2], 321, 767)
d.spawn_mob(setting["metin_stones"][2], 371, 770)
d.spawn_mob(setting["metin_stones"][2], 397, 737)
d.spawn_mob(setting["metin_stones"][2], 410, 714)
elseif r == 3 then
d.spawn_mob(setting["metin_stones"][2], 250, 659)
d.spawn_mob(setting["metin_stones"][2], 239, 714)
d.spawn_mob(setting["metin_stones"][3], 257, 745)
d.spawn_mob(setting["metin_stones"][2], 282, 777)
d.spawn_mob(setting["metin_stones"][2], 321, 767)
d.spawn_mob(setting["metin_stones"][2], 371, 770)
d.spawn_mob(setting["metin_stones"][2], 397, 737)
d.spawn_mob(setting["metin_stones"][2], 410, 714)
elseif r == 4 then
d.spawn_mob(setting["metin_stones"][2], 250, 659)
d.spawn_mob(setting["metin_stones"][2], 239, 714)
d.spawn_mob(setting["metin_stones"][2], 257, 745)
d.spawn_mob(setting["metin_stones"][3], 282, 777)
d.spawn_mob(setting["metin_stones"][2], 321, 767)
d.spawn_mob(setting["metin_stones"][2], 371, 770)
d.spawn_mob(setting["metin_stones"][2], 397, 737)
d.spawn_mob(setting["metin_stones"][2], 410, 714)
elseif r == 5 then
d.spawn_mob(setting["metin_stones"][2], 250, 659)
d.spawn_mob(setting["metin_stones"][2], 239, 714)
d.spawn_mob(setting["metin_stones"][2], 257, 745)
d.spawn_mob(setting["metin_stones"][2], 282, 777)
d.spawn_mob(setting["metin_stones"][3], 321, 767)
d.spawn_mob(setting["metin_stones"][2], 371, 770)
d.spawn_mob(setting["metin_stones"][2], 397, 737)
d.spawn_mob(setting["metin_stones"][2], 410, 714)
elseif r == 6 then
d.spawn_mob(setting["metin_stones"][2], 250, 659)
d.spawn_mob(setting["metin_stones"][2], 239, 714)
d.spawn_mob(setting["metin_stones"][2], 257, 745)
d.spawn_mob(setting["metin_stones"][2], 282, 777)
d.spawn_mob(setting["metin_stones"][2], 321, 767)
d.spawn_mob(setting["metin_stones"][3], 371, 770)
d.spawn_mob(setting["metin_stones"][2], 397, 737)
d.spawn_mob(setting["metin_stones"][2], 410, 714)
elseif r == 7 then
d.spawn_mob(setting["metin_stones"][2], 250, 659)
d.spawn_mob(setting["metin_stones"][2], 239, 714)
d.spawn_mob(setting["metin_stones"][2], 257, 745)
d.spawn_mob(setting["metin_stones"][2], 282, 777)
d.spawn_mob(setting["metin_stones"][2], 321, 767)
d.spawn_mob(setting["metin_stones"][2], 371, 770)
d.spawn_mob(setting["metin_stones"][3], 397, 737)
d.spawn_mob(setting["metin_stones"][2], 410, 714)
elseif r == 8 then
d.spawn_mob(setting["metin_stones"][2], 250, 659)
d.spawn_mob(setting["metin_stones"][2], 239, 714)
d.spawn_mob(setting["metin_stones"][2], 257, 745)
d.spawn_mob(setting["metin_stones"][2], 282, 777)
d.spawn_mob(setting["metin_stones"][2], 321, 767)
d.spawn_mob(setting["metin_stones"][2], 371, 770)
d.spawn_mob(setting["metin_stones"][2], 397, 737)
d.spawn_mob(setting["metin_stones"][3], 410, 714)
end
end
function make_dungeon()
local setting = crystal_dungeon.settings()
d.new_jump_party(setting["map_index"], setting["spawm_pos"][1][1], setting["spawm_pos"][1][2])
d.setf("lair_check", 1)
d.setf("level_four_login", 0)
crystal_dungeon.get_regens(1)
endfunction get_regens(level)
local regens = {
[1] = "data/dungeon/crystal_dungeon/regen_1.txt",
[2] = "data/dungeon/crystal_dungeon/regen_2.txt",
[3] = "data/dungeon/crystal_dungeon/regen_3.txt",
[4] = "data/dungeon/crystal_dungeon/regen_4a.txt",
[5] = "data/dungeon/crystal_dungeon/regen_4b.txt",
[6] = "data/dungeon/crystal_dungeon/regen_5.txt",
[7] = "data/dungeon/crystal_dungeon/regen_5_metins.txt"};
return d.set_regen_file(regens[level])
end
function party_get_member_pids()
local pids = {party.get_member_pids()}
return pids
end
------
------[Dungeon enter]
------
when 20092.chat." Krystalová jeskyně " begin
local settings = crystal_dungeon.settings()
say_title(mob_name(9214))
say("")
if not party.is_party() then
say(" Pro vstup do Krystalové jeskyně musíš být ve skupině. ")
say("")
return
end
if not party.is_leader() then
say("Pouze vůdce skupiny může spustit Jeskyni Krystalů.")
say("")
say("")
say("")
return
end
if party.get_near_count() < 2 then
say(" Pokud chceš vstoupit, ")
say(" Tvoje skupina musí mít aspoň 2 členy . ")
return
end
local levelCheck, maximlevelCheck = true, true
local notEnoughLevelMembers, notEnoughmaximLevelMembers = {}, {}
local pids = {party.get_member_pids()}
for i, pid in next, crystal_dungeon.party_get_member_pids(), nil do
q.begin_other_pc_block(pid)
if pc.get_level() < settings["level_check"]["minimum"] then
table.insert(notEnoughLevelMembers, pc.get_name())
levelCheck = false
end
if pc.get_level() > settings["level_check"]["maximum"] then
table.insert(notEnoughmaximLevelMembers, pc.get_name())
maximlevelCheck = false
end
q.end_other_pc_block()
end
if not levelCheck then
say(" Pokud chcete vstoupit do Jeskyně ")
say(" Krystalů, musí každý člen skupiny ")
say(string.format(" mít minimálně level %s.", settings["level_check"]["minimum"]))
say("")
say(" Následující členi nemají požadovaný level :")
for i, name in next, notEnoughLevelMembers, nil do
say("- "..name)
end
return
end
if not maximlevelCheck then
say(" Pokud chcete vstoupit do Jeskyně ")
say(" Krystalů, musí každý člen skupiny ")
say(string.format(" mít minimálně level %s.", settings["level_check"]["maximum"]))
say("")
say(" Následující členi nemají požadovaný level : ")
for i, name in next, notEnoughmaximLevelMembers, nil do
say("- "..name.."")
end
return
end
say("Budeš teleportován.")
say("")
wait()
crystal_dungeon.make_dungeon()
end
----
----Dungeon start
----
when login begin
local get_flag = d.getf("lair_check")
local four_login = d.getf("level_four_login")
local six_login = d.getf("level_six_login")
if get_flag == 2 then
say_title(" Druhé patro : ")
say("")
say(" Zabij všechny příšery, aby ti padla pečeť. ")
say(" Přetáhnutím pečetě se portneš do dalšího patra. ")
say(" Může ti padnout i falešná pečeť. ")
d.setf("crystal_seal", 0)
elseif get_flag == 3 then
say_title(" Třetí patro : ")
say("")
say(" Zabijte všechny příšery na tomto patře. ")
say(" Jsou to strážci Krystalického dráčka.")
say(" Po zabití všech příšer se objeví Krystalický dráček. ")
say("")
say("")
say_title(" Rychle! Máš 10 minut. ")
if four_login == 0 then
d.setf("level_four_login", 1)
d.setf("lair_check", 3)
clear_server_timer("level_four_timer", get_server_timer_arg())
clear_server_timer("exit_before", get_server_timer_arg())
server_timer("level_four_timer", 10 * 60, d.get_map_index())
end
elseif get_flag == 4 then
say_title(" Čtvrté patro : ")
say("")
say(" Dobrá práce, mnoho hráčů se tak vysoko nedostalo. ")
say(" Rychle! Musíš rozbít balvany aby ti padla pečeť. ")
say(" Pouze jedna pečeť je ta správná. ")
say("")
say("")
say("")
say_title(" Pilíř je na konci tohoto patra. ")
say_title("")
elseif get_flag == 5 then
say_title(" Paté patro : ")
say("")
say(" Zabij všechny příšery na tomto patře. ")
say(" Po zabítí příšer se objeví Krystalický dinosaur ")
say(" Zabij Krystalického dinosaura pro postup do dalšího patra. ")
say("")
say("")
say("")
say_title(" Hodně štěstí. ")
elseif get_flag == 6 then
say_title(" Šesté patro: ")
say("")
say(" Pro vstup do dalšího patra musíš rozbít všechny balvany. ")
say("")
say("")
say_title(" Máš 15 minut na rozbití všech balvanů. ")
say_title(" Poté budeš teleportován pryč. ")
if six_login == 0 then
d.setf("level_six_login", 1)
d.setf("lair_check", 6)
clear_server_timer("level_six_timer", get_server_timer_arg())
clear_server_timer("exit_before2", get_server_timer_arg())
server_timer("level_six_timer", 15 * 60, d.get_map_index())
end
else
return
end
end
when kill with npc.get_race() == 940 or npc.get_race() == 941 or npc.get_race() == 942 begin
local count, check = d.getf("mobs") + 1, false;
local setting = crystal_dungeon.settings()
if d.getf("lair_check") == 1 then
--83
if count < 83 and check == false then
d.setf("mobs", count)
else
if d.getf("metin_stone") == 0 then
d.clear_regen()
d.kill_all()
d.spawn_mob(setting["metin_stones"][1], 261, 276)
d.spawn_mob(setting["metin_stones"][1], 242, 303)
d.spawn_mob(setting["metin_stones"][1], 293, 305)
d.notice(string.format(" %s spawnut ! ", mob_name(8411)))
d.setf("metin_stone", 1)
end
check = true
end
end
end
when kill with npc.get_race() == 8411 and pc.in_dungeon() begin
local count, check_metin1 = d.getf("metins") + 1, false;
local setting = crystal_dungeon.settings()
if d.getf("lair_check") == 1 then
if count < 3 and check_metin1 == false then
d.setf("metins", count)
else
if d.getf("metin_stone1") == 0 then
d.notice(" Zvládl jsi to. Budeš teleportován!")
d.kill_all()
d.setf("lair_check", 2)
d.setf("metin_stone1", 1)
cleartimer("level_timer")
timer("level_timer", 7)
end
check_metin1 = true
end
end
end
when 942.kill or 943.kill or 944.kill begin
local count, check_2 = d.getf("mobs_2") + 1, false;
local setting = crystal_dungeon.settings()
if d.getf("lair_check") == 2 then
--73
if count < 73 and check_2 == false then
d.setf("mobs_2", count)
else
if d.getf("crystal_seal") == 0 then
game.drop_item(setting["keys"][1], 1)
d.setf("crystal_seal", 1)
end
check_2 = true
end
end
end
when 9210.take with item.vnum == 30701 and pc.in_dungeon() begin
local setting = crystal_dungeon.settings()
local n = number (1,2)
if n == 1 then
d.clear_regen()
pc.remove_item(setting["keys"][1], 1)
d.notice(" Toto nebyla správna pečeť .")
d.notice(" Dropni správnou !")
d.spawn_mob(9211, 753, 172)
timer("effect_purge", 10)
d.setf("mobs_2", 1)
crystal_dungeon.get_regens(2)
d.setf("crystal_seal", 0)
else
d.notice(" Toto je správná pečeť. ")
d.kill_unique(9210)
d.clear_regen()
d.kill_all()
d.setf("lair_check", 3)
pc.remove_item(setting["keys"][1], 1)
cleartimer("level_timer")
timer("level_timer", 12)
end
end
when 940.kill or 943.kill or 944.kill or 945.kill begin
local count, check3 = d.getf("mobs_3") + 1, false;
if d.getf("lair_check") == 3 then
--105
if count < 105 and check3 == false then
d.setf("mobs_3", count)
else
if d.getf("crystal_boss1") == 0 then
d.kill_all()
d.clear_regen()
d.notice(" Všechny příšery byli poraženy! ")
d.notice(" Krystalický dráček se zjeví zachvíly ! ")
timer("third_boss", 10)
d.setf("third_boss", 1)
d.setf("crystal_boss1", 1)
end
check3 = true
end
end
end
when 948.kill begin
local setting = crystal_dungeon.settings()
if d.getf("lair_check") == 3 then
d.clear_regen()
d.kill_all()
d.setf("lair_check", 4)
d.notice(" Krystalický dráček byl zabit! ")
d.notice(" Budeš teleportován.")
cleartimer("level_four_timer")
cleartimer("level_timer")
timer("level_timer", 10)
else
return
end
end
when 8412.kill begin
local setting = crystal_dungeon.settings()
if d.getf("lair_check") == 4 then
game.drop_item(setting["keys"][2],1)
end
end
when 8413.kill begin
local setting = crystal_dungeon.settings()
if d.getf("lair_check") == 4 then
game.drop_item(setting["keys"][3],1)
end
end
when 9212.take with item.vnum == 30702 and pc.in_dungeon() begin
local setting = crystal_dungeon.settings()
pc.remove_item(setting["keys"][2], 1)
d.spawn_mob(9213, 405, 687)
timer("wait_eff1", 2)
end
when 9212.take with item.vnum == 30703 and pc.in_dungeon() begin
local setting = crystal_dungeon.settings()
pc.remove_item(setting["keys"][3], 1)
d.spawn_mob(9213, 405, 687)
timer("wait_eff2", 2)
end
when 944.kill or 945.kill or 946.kill begin
local count, check_4 = d.getf("mobs_5") + 1, false;
local setting = crystal_dungeon.settings()
if d.getf("lair_check") == 5 then
--75
if count < 75 and check_4 == false then
d.setf("mobs_5", count)
else
if d.getf("crystal_dino") == 0 then
d.clear_regen()
d.kill_all()
timer("crystal_dino", 10)
d.setf("crystal_dino", 1)
end
check_4 = true
end
end
end
when 949.kill with pc.in_dungeon() begin
local setting = crystal_dungeon.settings()
if d.getf("lair_check") == 5 then
d.clear_regen()
d.kill_all()
d.setf("lair_check", 6)
d.notice(" Krystalický dinosaur byl zabit! ")
d.notice(" Budeš teleportován do dalšího patra. ")
cleartimer("level_timer")
timer("level_timer", 10)
else
return
end
endwhen 8414.kill with pc.in_dungeon() begin
local count, check_5 = d.getf("metins_6") + 1, false;
local setting = crystal_dungeon.settings()
if d.getf("lair_check") == 6 then
if count < 7 and check_5 == false then
d.setf("metins_6", count)
else
if d.getf("crystal_dragon") == 0 then
d.notice(" Všechny balvany byly rozbity! ")
d.notice(" Krystalický drak se brzy objeví! ")
cleartimer("level_six_timer")
cleartimer("level_timer")
d.kill_all()
d.setf("lair_check", 7)
d.setf("crystal_dragon", 1)
cleartimer("level_timer")
timer("level_timer", 7)
end
check_5 = true
end
end
endwhen 950.kill with pc.in_dungeon() begin
local setting = crystal_dungeon.settings()
if d.getf("lair_check") == 7 then
d.clear_regen()
d.kill_all()
d.notice(" Krystalický drak byl zabit! ")
d.notice(" Dobrá práce, úspěšně jste prošli Krystalovou jeskyni! ")
d.notice(" Za 3minuty budeš teleportován. ")
cleartimer("level_timer")
server_timer("final", 3 * 60, d.get_map_index())
else
return
end
end---
--- Dungeon end
---
---
--- TIMERS
---
when effect_purge.timer begin
d.kill_unique(9211)
end
when third_boss.timer begin
local setting = crystal_dungeon.settings()
if d.getf("third_boss") == 1 then
crystal_dungeon.spawn_boss(3)
d.setf("third_boss", 0)
else
return
end
end
when crystal_dino.timer begin
local setting = crystal_dungeon.settings()
if d.getf("crystal_dino") == 1 then
crystal_dungeon.spawn_boss(5)
d.notice(string.format(" %s je tu! Zabij ho! ", mob_name(949)))
d.setf("crystal_dino", 0)
else
return
end
end
when wait_eff1.timer begin
d.notice(" Toto nebyla správná pečeť! ")
d.notice(" Najdi správnou pečeť. ")
end
when wait_eff2.timer begin
d.notice(" Toto byla správná pečeť! ")
d.notice(" Budeš teleportován do dalšího patra. ")
d.kill_unique(9212)
d.clear_regen()
d.kill_all()
d.setf("lair_check", 5)
cleartimer("level_timer")
timer("level_timer", 12)
end
when level_four_timer.server_timer begin
if d.select(get_server_timer_arg()) then
d.set_warp_location(41, 9694, 2786)
d.notice(" Došel ti čas. ")
d.notice(" Budeš teleportován! ")
server_timer("exit_before", 10, get_server_timer_arg())
end
end
when level_six_timer.server_timer begin
if d.select(get_server_timer_arg()) then
d.set_warp_location(41, 9694, 2786)
d.notice(" Došel ti čas! ")
d.notice(" Budeš teleportován! ")
server_timer("exit_before2", 10, get_server_timer_arg())
end
endwhen final.server_timer begin
if d.select(get_server_timer_arg()) then
d.set_warp_location(41, 9694, 2786)
d.notice(" Uplynuli 3 minuty. Budeš teleportován. ")
server_timer("final_warp", 10, get_server_timer_arg())
end
endwhen exit_before.server_timer begin
if d.select(get_server_timer_arg()) then
clear_server_timer("exit_before", get_server_timer_arg())
clear_server_timer("final", get_server_timer_arg())
clear_server_timer("level_four_timer", get_server_timer_arg())
d.exit_all()
end
end
when exit_before2.server_timer begin
if d.select(get_server_timer_arg()) then
clear_server_timer("exit_before2", get_server_timer_arg())
clear_server_timer("final", get_server_timer_arg())
clear_server_timer("level_six_timer", get_server_timer_arg())
d.exit_all()
end
end
when final_warp.server_timer begin
if d.select(get_server_timer_arg()) then
clear_server_timer("final_warp", get_server_timer_arg())
clear_server_timer("final", get_server_timer_arg())
clear_server_timer("final", get_server_timer_arg())
d.exit_all()
end
end
when level_timer.timer begin
local get_flag = d.getf("lair_check")
local setting = crystal_dungeon.settings()
d.clear_regen()
d.kill_all()
if get_flag == 2 then
d.new_jump_party(setting["map_index"], setting["spawm_pos"][2][1], setting["spawm_pos"][2][2])
crystal_dungeon.get_regens(2)
d.spawn_mob(9210, 753, 172)
d.setf("lair_check", 2)
end
if get_flag == 3 then
d.new_jump_party(setting["map_index"], setting["spawm_pos"][2][1], setting["spawm_pos"][2][2])
crystal_dungeon.get_regens(3)
d.setf("lair_check", 3)
end
if get_flag == 4 then
d.new_jump_party(setting["map_index"], setting["spawm_pos"][3][1], setting["spawm_pos"][3][2])
crystal_dungeon.get_regens(4)
d.setf("lair_check", 4)
crystal_dungeon.spawn_metins_4thfloor()
end
if get_flag == 5 then
d.new_jump_party(setting["map_index"], setting["spawm_pos"][4][1], setting["spawm_pos"][4][2])
crystal_dungeon.get_regens(5)
d.setf("lair_check", 5)
end
if get_flag == 6 then
d.new_jump_party(setting["map_index"], setting["spawm_pos"][5][1], setting["spawm_pos"][5][2])
crystal_dungeon.get_regens(6)
crystal_dungeon.get_regens(7)
d.setf("lair_check", 6)
end
if get_flag == 7 then
crystal_dungeon.spawn_boss(7)
d.setf("lair_check", 7)
end
end
end
end
Thanks for help.
-
1
-
Fast sit on mount
in Community Support - Questions & Answers
Posted
Hi, im making server. I want to sit on mount then unmount it and again sit on it fast. It working but when im attacking monster it writes - If you want to do this, you have to stop. What can i do to remove it to make to work, so i can jump on mount multiple times really fast when im attacking monster? Thank you