Quest nemere fara saman si ninja

Totalitatea subiectelor care nu respectă regulamentul impus in sectiunea "Probleme şi Întrebări" vor fi stocate aici.
Închis
Avatar utilizator
cojoc
Nivel 1

Nivel 1
Mesaje: 51
Membru din: 08 Iul 2014, 18:00
Aprecieri: 2  
Mulţumiri: 4  
Medalii

*Problemă:Quest fara nemere si fara saman
Tipologie server: PVM
*Resursă folosită: Quest nemere
*ServerFiles utilizat: -
*Syserr: -
Poză:-
*Detalii suplimentare: Daca stie cineva cum fac sa nu mai ceara shaman si ninja cand intru la nemere.si sa nu mai poata doar samanu sau doar ninja sa puna acele pietre pe totem.
acesta este questul .
[Sursa=]
quest snow_dungeon begin
state start begin
when 9010.chat."Spawn Statuie" with snow_dungeon.is_nemeres_dungeon() == true begin
d.purge()
d.spawn_mob_dir(20397, 173,262,1)
setskin(NOWINDOW)
end
when 9010.chat."TESTSERVER: SnowD Jump level 9" with snow_dungeon.is_nemeres_dungeon() == true begin
local set = snow_dungeon.get_settings()
d.notice("Der Richtige Schlüssel wurde gefunden, in wenigen Sekunden geht es in den nächsten Stock.")
server_timer("Jp_9",6,d.get_map_index())
d.clear_regen()
d.kill_all()
d.regen_file("data/dungeon/ice_dungeon/zone_9.txt")
setskin(NOWINDOW)
end
when 9010.chat."TESTSERVER: SnowD Jump level 10" with snow_dungeon.is_nemeres_dungeon() == true begin
local set = snow_dungeon.get_settings()
server_timer("Jp_Boss",3,d.get_map_index())
d.clear_regen()
d.kill_all()
d.regen_file("data/dungeon/ice_dungeon/zone_boss.txt")
local v = set.BossVnumGroup
d.spawn_group(v, 928, 335, 5 ,1, 1) -- (Input from SRC: argument: vnum,x,y,radius,aggressive,count)
setskin(NOWINDOW)
end
when 9010.chat."TESTSERVER: SnowD Spawn Boss" with snow_dungeon.is_nemeres_dungeon() == true begin
local set = snow_dungeon.get_settings()
local v = set.BossVnumGroup
d.spawn_group(v, 928, 335, 5 ,1, 1) -- (INFO from SRC: argument: vnum,x,y,radius,aggressive,count)
end
when 9010.chat."TESTSERVER: SnowD Ending" with snow_dungeon.is_nemeres_dungeon() == true begin
server_timer("Jp_OutAll",5,d.get_map_index())
say("done")
end
-- when 30331.use begin --key_level_2
-- LIB_writelog("{"..pc.get_local_x()..","..pc.get_local_y().."}",3,"snowcordis.txt")
-- d.spawn_mob(20399, pc.get_local_x(), pc.get_local_y())
-- chat("write north star coordinates")
-- end
when 9010.chat."TESTSERVER: SnowD Spawn create Cords Test level 5" with snow_dungeon.is_nemeres_dungeon() == true begin
snow_dungeon._Create_Stones_level5()
setskin(NOWINDOW)
end
when 9010.chat."TESTSERVER: SnowD Create Key level 5" with snow_dungeon.is_nemeres_dungeon() == true begin
snow_dungeon._DropKeyOnLevel5()
setskin(NOWINDOW)
end
when 9010.chat."TESTSERVER: SnowD Get cord from Level" with snow_dungeon.is_nemeres_dungeon() == true begin
local set = snow_dungeon.get_settings()
local warp_to_level = set.Position_level_1
local level = 2
say("old: x: "..warp_to_level[1].." y:"..warp_to_level[2].."")
local warp_to_level = set. _G[ "Position_level_"..level ]
say("new: x: "..warp_to_level[1].." y:"..warp_to_level[2].."")
--DONT WORKS!
end
function get_settings()
local snow_dungeon_settings = {}
snow_dungeon_settings.map_index = 352 --Mapindex
snow_dungeon_settings.base_cord = {5120, 1536 } --Base Kordinaten
snow_dungeon_settings.outside_entry_pos = {61,4321,1667} --Mapindex, Exit Position (Eisland)
snow_dungeon_settings.need_level = 90 --Ab wann ist der Dungeon betretbar.
snow_dungeon_settings.need_level_group = 90 --Benötigte Level für Gruppenmitglieder
snow_dungeon_settings.WaitBeforOutAllOnExit = 60 --Wartezeit bevor alle alle herausteleportiert werden bei einem erfolgreichen Run. (Empfohlen 60)
snow_dungeon_settings.NextJumpTime = 5 --Wann man zur nächsten ebene Gejumpt wird (timer) (Empfohlen 5)
snow_dungeon_settings.DurationLoopTimer = 45 --Welchen intervall die Level und Missionen geprüft werden sollen. (Empfohlen 45)
snow_dungeon_settings.wait_duration = 24 --Ab wann der Dungeon wieder betretbar ist (PartyLeader)
snow_dungeon_settings.maxlife_time_on_dungeon = 60*60*1 --Maximale Zeit für den Dungeon.
snow_dungeon_settings.DurationMaxOnReJoinGroup = 60*5 --Maximale Zeit innerhalb wann man wieder in die Gruppe joinen kann.
snow_dungeon_settings.key_level_2 = 30331 --KeyVnum für die 2.Ebene --Frostschlüssel
snow_dungeon_settings.NpcVnum_level_5 = 20398 --MobVnum von 5.Ebene --Würfel des Arktos
snow_dungeon_settings.StoneCount_level_5 = 6 --Wie viele Würfel des Arktos sollen erscheinen?
snow_dungeon_settings.Key_on_level_5 = 30332 --KeyVnum von 5.Ebene --Nordstern
snow_dungeon_settings.StoneCords_level_5 = {
{432,508},{437,493},{448,492},{448,476},{467,475},{466,464},
{462,450},{458,428},{446,439},{431,431},{415,416},{402,427},
{397,438},{375,434},{374,456},{390,468},{385,492},{402,505},
{404,489},{386,482}
} --Positionen von Würfel des Arktos
snow_dungeon_settings.MobVnum_level_6 = 8058 --MobVnum von 6.Ebene --Metin der Kälte
snow_dungeon_settings.MobVnum_level_7 = 6151 --MobVnum von 7.Ebene --Szel
snow_dungeon_settings.SzelCords_level_7 = {
{752,499},{758,479},{772,452},{763,444},{750,451},{728,441},
{726,455},{718,482},{715,491},{731,473},{748,429}
} --Positionen von Szel
snow_dungeon_settings.Key_on_level_8 = 30333 --KeyVnum von 8.Ebene --Eisblumenschlüssel
snow_dungeon_settings.NpcVnum_level_9 = 20399 --MobVnum von 9.Ebene --Säule des Norddrachen
snow_dungeon_settings.BossVnumGroup = 6062 --GroupMobVnum vom Boss --(Group.txt)
snow_dungeon_settings.BossVnum = 6191 --MobVnum von 10.Ebene --Nemere(6191)

snow_dungeon_settings.Position_level_1 = { 171,271 } --Position ebene 1 --Startposition --Töte alle Monster auf dieser Ebene.
snow_dungeon_settings.Position_level_2 = { 761,270 } --Position ebene 2 --Finde den richtigen Frostschlüssel, nur ein Schamane kann ihn benutzen.
snow_dungeon_settings.Position_level_3 = { 187,491 } --Position ebene 3 --Töte alle Monster auf dieser Ebene.
snow_dungeon_settings.Position_level_4 = { 421,259 } --Position ebene 4 --Töte alle Monster auf dieser Ebene.
snow_dungeon_settings.Position_level_5 = { 419,530 } --Position ebene 5 --Öffnet die Siegel an den Würfel des Arktos in der richtigen Reihenfolge. (Zieht Nordstern auf die Würfel)
snow_dungeon_settings.Position_level_6 = { 571,706 } --Position ebene 6 --Töte alle Monster auf dieser Ebene. Danach Zersöre den Metin der Kälte (Nur ein Schamane kann ihn Schaden)
snow_dungeon_settings.Position_level_7 = { 746,534 } --Position ebene 7 --Töte alle Monster auf dieser Ebene und Szel
snow_dungeon_settings.Position_level_8 = { 303,710 } --Position ebene 8 --Der Eisblumenschlüssel muss gedroppt werden, jedoch kann dieser nur von Schamanen und Ninja benutzt werden.
snow_dungeon_settings.Position_level_9 = { 848,693 } --Position ebene 9 --Zerstört die Säule des Norddrachen. Nur Ninjas und Schamanen können ihm Schaden zufügen.
snow_dungeon_settings.Position_level_10 = { 927,391 } --Position ebene 10 (BossZone) --Besiege Nemere, den König über Frost und Eis.
snow_dungeon_settings.Enable_TestServerMode = false --Ob TestServer mode aktiviert ist. Wenn ja werden die Aufgaben schneller beendet.
snow_dungeon_settings.IsNewGameRevision = true --Need GameRevision 40301
return snow_dungeon_settings
end
function is_TestServerMode()
local set = snow_dungeon.get_settings()
return set.Enable_TestServerMode
end
function is_nemeres_dungeon()
local set = snow_dungeon.get_settings()
local map = pc.get_map_index()
if map >= (set.map_index * 10000) and map < (set.map_index * 10000 + 9000) then
return true
else
return false
end
end
when 20395.chat."Alãturã-te din nou grupei" with (party.is_party() and d.find(party.getf("ice_dungeon_map_index"))) begin
local set = snow_dungeon.get_settings()
local n = party.getf("ice_dungeon_map_index")
local cord = set.base_cord
local level = d.getf_from_map_index("level", n)
--say("News Dungeon Level your group: "..level.."")
if level == 0 then
say_npc_name()
say("Grupul tãu a terminat deja dungeonul.")
return
end
if pc.getqf("out_party_time") < get_global_time() then
say_npc()
say("")
say("Ai mai mult de "..math.ceil(set.DurationMaxOnReJoinGroup /60) .." Minute")
say("Nu mai poþi intra acum!")
say(" ")
return
end
if n == 0 then
setskin(NOWINDOW)
return
else
say_npc()
say("")
say("Vrei sã te alãturi din nou grupei?")
if select("Da","Nu") == 1 then
local warp_to_level = set.Position_level_1
local level = d.getf_from_map_index("level", n)
if level >= 1 and level <= 10 then
if level == 1 then warp_to_level = set.Position_level_1
elseif level == 2 then warp_to_level = set.Position_level_2
elseif level == 3 then warp_to_level = set.Position_level_3
elseif level == 4 then warp_to_level = set.Position_level_4
elseif level == 5 then warp_to_level = set.Position_level_5
elseif level == 6 then warp_to_level = set.Position_level_6
elseif level == 7 then warp_to_level = set.Position_level_7
elseif level == 8 then warp_to_level = set.Position_level_8
elseif level == 9 then warp_to_level = set.Position_level_9
elseif level == 10 then warp_to_level = set.Position_level_10
end
pc.warp((cord[1] + warp_to_level[1])*100,(cord[2] + warp_to_level[2])*100,n)
else
return
end
end
end
end

when 20395.chat."Turnul lui Nemere" begin
local set = snow_dungeon.get_settings()
local need_level = set.need_level
say_npc()
say("")
say("Esti sigur ca vrei sa intri ")
say("in Turnul lui Nemere?")
if select("Da! Vrem sa intram. "," Nu, e prea frig acolo ...") == 2 then
return
end
if (pc.is_gm() and pc.getf("snow_dungeon","duration") >= get_global_time()) then
say("Your are GameMaster, remove the duration?")
if select("Yes","No") == 1 then
pc.setf("snow_dungeon","duration",0)
return
end
end
if (is_test_server() and snow_dungeon.is_TestServerMode() == true ) then
say("TestServer Mode is enable.")
say("Join now")
timer("make_dungeon",3)
return
end
if not party.is_leader() then
say_npc()
say("Iti apreciez curajul insa singur ")
say("nu poti intra in Turnul lui Nemere.")
say("Strange un grup puternic in care sa ai ")
say("un Ninja si un Saman si intoarcete la mine")
return
end
if pc.get_level() < need_level then
say("Trebuie sa ai cel putin nivelul "..need_level.."")
say("pentru a intra in Turnul lui Nemere.")
return
end
if pc.getf("snow_dungeon","duration") >= get_global_time() then
say_npc()
say("Timpul de asteptare pentru a intra dinou in ")
say("Turnul lui Nemere nu a expirat. ")
say("Timp de asteptare: "..LIB_duration(pc.getf("snow_dungeon","duration") - get_global_time()).."")
return
end
if snow_dungeon._CheckMembersLevel() == false then
return
else
timer("make_dungeon",2)
end
end
when 20397.chat."Batalia Incepe" begin --Eisiger Löwe
say_npc()
say("")
say("Esti sigur ca vrei sa incepi?")
if select("Da","Nu, Poate mai tarziu") == 1 then
local set = snow_dungeon.get_settings()
local loop_durr = set.DurationLoopTimer
local wait_durations = set.wait_duration
local t = get_global_time()
d.setf("LastTimeGetOutPut",0)
server_loop_timer("CheckLevelAndCountKillOnMobs",loop_durr,d.get_map_index())
d.regen_file("data/dungeon/ice_dungeon/zone_1.txt")
d.setf("Start_Time",t + set.maxlife_time_on_dungeon)
server_timer("Jp_OutAllFailNotice",(t + set.maxlife_time_on_dungeon) - t,d.get_map_index())
--pc.setqf("duration",t + wait_durations)
d.setqf2("snow_dungeon","duration",t + wait_durations)
d.setf("level",1)
d.notice("Primii monstri au aparut. Omoarai pe toti pentru a trece la nivelul urmator.")
npc.purge()
snow_dungeon._GetLastTime()
end
setskin(NOWINDOW)
end
when make_dungeon.timer begin
local set = snow_dungeon.get_settings()
local cord = set.base_cord
local start_pos = set.Position_level_1
local t = get_global_time()
d.new_jump_party(set.map_index,(cord[1] + start_pos[1]), (cord[2] + start_pos[2]))
--d.new_jump_all(set.map_index,(cord[1] + start_pos[1]), (cord[2] + start_pos[2]))
snow_dungeon._ClearAlls()
d.setf("party_leader_pid",party.get_leader_pid())
party.setf("ice_dungeon_map_index",d.get_map_index())
d.spawn_mob_dir(20397, 173,262,1) --Eisiger Löwe
end
function _ClearAlls()
local d_index = d.get_map_index()
clear_server_timer("CheckLevelAndCountKillOnMobs",d_index)
clear_server_timer("Jp_1",d_index)
clear_server_timer("Jp_2",d_index)
clear_server_timer("Jp_3",d_index)
clear_server_timer("Jp_4",d_index)
clear_server_timer("Jp_5",d_index)
clear_server_timer("Jp_6",d_index)
clear_server_timer("Jp_7",d_index)
clear_server_timer("Jp_8",d_index)
clear_server_timer("Jp_9",d_index)
clear_server_timer("Jp_10",d_index)
clear_server_timer("Jp_OutAll",d_index)
clear_server_timer("Jp_OutAllFail",d_index)
clear_server_timer("Jp_OutAllFailNotice",d_index)
d.setf("level",0)
d.setf("party_leader_pid",0)
d.setf("Start_Time",0)
d.setf("LastTimeGetOutPut",0)
d.setf("Stone_5_count",0)
d.setf("Stone_5_item_fail",0)
d.clear_regen()
d.kill_all()
end

function _CheckMembersLevel()
local set = snow_dungeon.get_settings()
local user_fail_level = {}
local pids = {party.get_member_pids()}
local need_level = set.need_level_group
local have_ninja = false
local have_shaman = false
for i = 1, table.getn(pids), 1 do
q.begin_other_pc_block(pids)
if pc.get_level() < need_level then
table.insert(user_fail_level, table.getn(user_fail_level) +1, pc.get_name())
end
local job = pc.get_job()
if job == 1 -- Ninja weiblich
or job == 5 --Ninja männlich
then
have_ninja = true
end
if job == 3 -- Schamane weiblich
or job == 7 --Schamane männlich
then
have_shaman = true
end
q.end_other_pc_block()
end
if (is_test_server() and snow_dungeon.is_TestServerMode() == true ) then
--dchat("TestServer Mode is enable.")
return true
end
if have_ninja == false then
say("Nu poti intra in acest dungeon fara un Ninja.")
say("")
return false
end
if have_shaman == false then
say("Nu poti intra in acest dungeon fara un Saman.")
say("")
return false
end
if table.getn(user_fail_level) >= 1 then
say_npc()
say("")
say("Cativa membri din grup ")
say("nu au nivelul "..need_level..":")
for x = 1, table.getn(user_fail_level), 1 do
say(color(1,1,0), " "..user_fail_level[x])
end
return false
end
if table.getn(user_fail_level) == 0 then
return true
end
end
when logout begin
if snow_dungeon.is_nemeres_dungeon() == true then
local set = snow_dungeon.get_settings()
pc.setqf("out_party_time",get_global_time() + set.DurationMaxOnReJoinGroup)
--snow_dungeon.unregister_name()
end
end

when login begin
if snow_dungeon.is_nemeres_dungeon() == true then
local set = snow_dungeon.get_settings()
local backk = set.outside_entry_pos
pc.set_warp_location(backk[1], backk[2],backk[3])
if d.getf("party_leader_pid") != party.get_leader_pid() then
chat("nemeres_wait_dungeon #RAUS:# Grupul tau nu se afla in acest dungeon.")
chat("nemeres_wait_dungeon #RAUS:#debug -> "..d.getf("party_leader_pid").." != "..party.get_leader_pid().."")
d.exit()
return
end
if pc.get_level() < set.need_level_group then
chat("nemeres_wait_dungeon #RAUS:# My level is low")
d.exit()
return
end
--chat("Welcome to Nemeres waiting, you have "..math.ceil((d.getf("Start_Time") - get_global_time()) /60) .." Minutes Time.")
--notice("Kill all the monsters on this level to get to the next floor.")
--snow_dungeon._GetLastTime()
end
end

function _GetLastTime()
local c = get_global_time()
local t = d.getf("Start_Time") - c
local o = d.getf("LastTimeGetOutPut")
--d.notice("CurrentTime: "..c.." Last: "..o.."")
if c >= o then
if t >= 60 then
d.notice("Mai aveti "..math.ceil(t / 60).." Minute.")
else
d.notice("Mai aveti "..t .." Secunde.")
end
if t >= (60*10) then
d.setf("LastTimeGetOutPut",c + 60*5)
elseif t >= (60*5) then
d.setf("LastTimeGetOutPut",c + 60*2)
else
d.setf("LastTimeGetOutPut",c + 10)
end
--d.setf("LastTimeGetOutPut",c + 60*number(3,5)) -- Random
end
end

when Jp_OutAllFailNotice.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Timpul a expirat.")
server_timer("Jp_OutAll",1,d.get_map_index())
end
end

when CheckLevelAndCountKillOnMobs.server_timer begin
if d.select(get_server_timer_arg()) then
local set = snow_dungeon.get_settings()
local level = d.getf("level")
local mob_count = d.count_monster()
local next_jump_time = set.NextJumpTime
--d.notice("level: "..level.." mob_count: "..mob_count.."")
if level == 1 and mob_count <= 0 then
d.notice("Ati infrant toti monstrii de la nivelul 1, in cateva secunde ve-ti fi teleportati la nivelul 2.")
d.notice("")
server_timer("Jp_2",next_jump_time,d.get_map_index())
d.clear_regen()
d.kill_all()
d.set_regen_file("data/dungeon/ice_dungeon/zone_2.txt")
elseif level == 3 and mob_count <= 0 then
d.notice("Ati infrant toti monstrii, in cateva secunde ve-ti fi teleportati la nivelul urmator.")
d.notice("")
server_timer("Jp_4",next_jump_time,d.get_map_index())
d.clear_regen()
d.kill_all()
d.regen_file("data/dungeon/ice_dungeon/zone_4.txt")
elseif level == 4 and mob_count <= 0 then
d.notice("Ati infrant toti monstrii, in cateva secunde ve-ti fi teleportati la nivelul urmator.")
d.notice("")
server_timer("Jp_5",next_jump_time,d.get_map_index())
d.clear_regen()
d.kill_all()
d.set_regen_file("data/dungeon/ice_dungeon/zone_5.txt")
elseif level == 6 and mob_count <= 0 then
local MobStonelvl6 = set.MobVnum_level_6
d.notice("Ati infrant toti monstrii, "..mob_name(MobStonelvl6).." v-a aparea..")
d.notice("")
d.clear_regen()
d.kill_all()
d.regen_file("data/dungeon/ice_dungeon/zone_6.txt")
d.spawn_mob(MobStonelvl6,570,649)
elseif level == 7 and mob_count <= 0 then
d.notice("Ati infrant toti monstrii, in cateva secunde ve-ti fi teleportati la nivelul urmator.")
d.notice("")
server_timer("Jp_8",next_jump_time,d.get_map_index())
d.clear_regen()
d.kill_all()
d.set_regen_file("data/dungeon/ice_dungeon/zone_8.txt")
end
snow_dungeon._GetLastTime()
end
end

when Jp_2.server_timer begin --Jump Level 2
if d.select(get_server_timer_arg()) then
local set = snow_dungeon.get_settings()
local v = set.key_level_2
d.setf("level",2)
local cord = set.base_cord
local pos = set.Position_level_2
d.jump_all((cord[1] + pos[1]), (cord[2] + pos[2]))
d.notice("Gaseste cheia corecta "..item_name(v).." pentru a urca.")
d.notice("")
end
end
when 30331.use with snow_dungeon.is_nemeres_dungeon() == true begin --key_level_2
local set = snow_dungeon.get_settings()
local next_jump_time = set.NextJumpTime
local job = pc.get_job()
local level = d.getf("level")
if level == 2 then
if (is_test_server() and snow_dungeon.is_TestServerMode() == true ) then
--dchat("SET VARIABLE JOB 3")
job = 3
end
if job == 3 -- Schamane weiblich
or job == 7 --Schamane männlich
then
if number(1,3) == 1 then --or d.count_monster() < 10 then
d.notice("Ati gasit cheia corecta, in cateva secunde veti fi teleportati la nivelul urmator.")
server_timer("Jp_3",next_jump_time,d.get_map_index())
d.clear_regen()
d.kill_all()
d.regen_file("data/dungeon/ice_dungeon/zone_3.txt")
item.remove()
else
d.notice("Aceasta este cheia gresita.")
item.remove()
end
else
d.notice("Numai Samanii pot folosi aceasta cheie.")
return
end
end
end

when Jp_3.server_timer begin --Jump Level 3
if d.select(get_server_timer_arg()) then
local set = snow_dungeon.get_settings()
d.setf("level",3)
local cord_MQ = set.base_cord
local pos = set.Position_level_3
d.jump_all((cord_MQ[1] + pos[1]), (cord_MQ[2] + pos[2]))
d.notice("Omorati toti monstrii si veti trece la nivelul urmator.")
end
end

when Jp_4.server_timer begin --Jump Level 4
if d.select(get_server_timer_arg()) then
local set = snow_dungeon.get_settings()
d.setf("level",4)
local cord = set.base_cord
local pos = set.Position_level_4
d.jump_all((cord[1] + pos[1]), (cord[2] + pos[2]))
d.notice("Omorati toti monstrii si veti trece la nivelul urmator..")
end
end

when Jp_5.server_timer begin --Jump Level 5
if d.select(get_server_timer_arg()) then
local set = snow_dungeon.get_settings()
local v = set.NpcVnum_level_5
d.setf("level",5)
local cord = set.base_cord
local pos = set.Position_level_5
d.jump_all((cord[1] + pos[1]), (cord[2] + pos[2]))
d.notice("Deschide sigiilile "..mob_name(v).." in ordinea corecta.")
if set.IsNewGameRevision == true then
d.notice("Cheia va dropa la monstrii ...")
else
d.notice("Cheia se va pune automat la tine in inventar...")
end
snow_dungeon._Create_Stones_level5()
end
end

function _DropKeyOnLevel5()
if number(1,1000) >= 666 then --Abbruch der weiteren funtion -> Damit es spannend bleibt bei den würfeln... :P
return
end
local set = snow_dungeon.get_settings()
local count = set.StoneCount_level_5
local vnum = set.Key_on_level_5
local get_random_unique = d.get_unique_vid("stone5_"..number(1,count).."")
local fail_count = d.getf("Stone_5_item_fail") +1
local search = d.getf("Stone_5_count")
local search2 = d.get_unique_vid("stone5_"..search.."")
if search2 != get_random_unique then
d.setf("Stone_5_item_fail",fail_count)
end
--
if set.IsNewGameRevision == true then
--New function
game.drop_item_and_select(vnum,1)
else
pc.give_item2_select(vnum,1)
end
--dchat("Creaty Key fail_count: "..fail_count.."")
if (is_test_server() and snow_dungeon.is_TestServerMode() == true ) then --Wenn TestServer Modus
item.set_socket(1,search2)
d.setf("Stone_5_item_fail",0)
elseif fail_count > 6 then --Wenn mehr wie x mal nicht richtig erstellt wird, dann kommt der richtige Key
item.set_socket(1,search2)
d.setf("Stone_5_item_fail",0)
else
item.set_socket(1,get_random_unique)
end
end

function _Create_Stones_level5()
local set = snow_dungeon.get_settings()
local stone_level5_count_MQ = set.StoneCount_level_5
local c = set.StoneCords_level_5 --{ {432,508},{437,493},{448,492},{448,476},{467,475},{466,464}}
local v = set.NpcVnum_level_5
for i = 1, stone_level5_count_MQ, 1 do
local n = number(1,table.getnC)
--d.spawn_mob(20398, c[n][1], c[n][2])
d.set_unique("stone5_"..i.."", d.spawn_mob(v, c[n][1], c[n][2]))
--d.set_unique("stone5_"..i.."", mob.spawn(20398, c[n][1], c[n][2],1,1,1)) --GEHT
--d.set_unique("stone5_"..i.."", d.spawn_mob_ac_dir(20398, c[n][1], c[n][2],i)) --GEHT
table.remove(c,n)
if i == 1 then
d.setf("Stone_5_count",1)
d.setf("Stone_5_item_fail",0)
end
end
end

when 20398.take begin --NpcVnum_level_5
if snow_dungeon.is_nemeres_dungeon() == true then
local set = snow_dungeon.get_settings()
local stone_level5_count = set.StoneCount_level_5
local next_jump_time = set.NextJumpTime
local vnum = item.get_vnum()
local key_level_5 = set.Key_on_level_5 --30332
local unique_item = item.get_socket(1)
--dchat("unique_item: "..unique_item.."")
if (is_test_server() and snow_dungeon.is_TestServerMode() == true ) then
d.notice("TESTSERVERMODE, in a few seconds it goes to the next floor.")
npc.purge()
item.remove()
server_timer("Jp_6",next_jump_time,d.get_map_index())
d.clear_regen()
d.kill_all()
d.regen_file("data/dungeon/ice_dungeon/zone_6.txt")
return
end
if vnum == key_level_5 then
local npc_vid = npc.get_vid()
local search = d.getf("Stone_5_count")
local search2 = d.get_unique_vid("stone5_"..search.."")
--dchat("npc_vid: "..npc_vid.." search:"..search.." search2:"..search2.." ")
if npc_vid == search2 then
if unique_item == npc_vid then
local new = search +1
if new > stone_level5_count then
d.notice("Ai deschis ultima piatrã. Te mai þin aici.")
npc.purge()
item.remove()
server_timer("Jp_6",next_jump_time,d.get_map_index())
d.clear_regen()
d.kill_all()
d.regen_file("data/dungeon/ice_dungeon/zone_6.txt")
else
d.notice(""..search..". Ai deschis piatra, miºcã-te mai repede. Ai ".. stone_level5_count - search .." bucãþi.")
npc.purge()
item.remove()
end
d.setf("Stone_5_count",new)
else
chat("Aceasta este piatra corecta insa cheia este gresita.")
item.remove()
end
else
chat("Aceasta nu este piatra corecta.")
end
end
end --if is dungeon end
end --when end

when Jp_6.server_timer begin --Jump Level 6
if d.select(get_server_timer_arg()) then
local set = snow_dungeon.get_settings()
local v = set.MobVnum_level_6
d.setf("level",6)
local cord = set.base_cord
local pos = set.Position_level_6
d.jump_all((cord[1] + pos[1]), (cord[2] + pos[2]))

d.notice("Ai distrus toti monstrii, acum distruge "..mob_name(v).."")
d.notice("Numai Samanii il pot distruge.")
--d.spawn_mob(v,570,649)

end
end

when Jp_7.server_timer begin --Jump Level 7
if d.select(get_server_timer_arg()) then
local set = snow_dungeon.get_settings()
local v = set.MobVnum_level_7
d.setf("level",7)
local cord = set.base_cord
local pos = set.Position_level_7
d.jump_all((cord[1] + pos[1]), (cord[2] + pos[2]))
d.notice("Ai distrus piatra metin cu succes, acum distruge "..mob_name(v)..".")
end
end

when Jp_8.server_timer begin --Jump Level 8
if d.select(get_server_timer_arg()) then
local set = snow_dungeon.get_settings()
local v = set.Key_on_level_8
d.setf("level",8)
local cord = set.base_cord
local pos = set.Position_level_8
d.jump_all((cord[1] + pos[1]), (cord[2] + pos[2]))
d.notice("Omoarã monºtrii cu "..item_name(v).."")
d.notice("Numai Ninja ºi ªaman pot înþelege limba acestui obiect.")
end
end

when 30333.use with snow_dungeon.is_nemeres_dungeon() == true begin --Key_on_level_8
local set = snow_dungeon.get_settings()
local next_jump_time = set.NextJumpTime
local level = d.getf("level")
local job = pc.get_job()
if level == 8 then
if (is_test_server() and snow_dungeon.is_TestServerMode() == true ) then
--dchat("SET VARIABLE JOB 3")
job = 3
end
if job == 1 -- Ninja weiblich
or job == 5 --Ninja männlich
or job == 3 -- Schamane weiblich
or job == 7 --Schamane männlich
then
if number(1,3) == 1 then
d.notice("Ai gãsit cheia bunã. Vei urca mai departe în câteva secunde.")
server_timer("Jp_9",next_jump_time,d.get_map_index())
d.clear_regen()
d.kill_all()
d.regen_file("data/dungeon/ice_dungeon/zone_9.txt")
item.remove()
else
d.notice("Aceastã cheie nu este corectã.")
item.remove()
end
else
d.notice("Poþi folosii numai caracterele ªaman ºi Ninja.")
return
end
end
end

when Jp_9.server_timer begin --Jump Level 9
if d.select(get_server_timer_arg()) then
local set = snow_dungeon.get_settings()
local v = set.NpcVnum_level_9
d.setf("level",9)
local cord = set.base_cord
local pos = set.Position_level_9
d.jump_all((cord[1] + pos[1]), (cord[2] + pos[2]))
d.notice("Omoarã "..mob_name(v).." ")
d.notice("Se poate confrunta numai cu Saman si Ninja.")
d.notice("")
d.spawn_mob(v,849,655)
end
end

when Jp_Boss.server_timer begin --Jump Level BossZone
if d.select(get_server_timer_arg()) then
local set = snow_dungeon.get_settings()
local v = set.BossVnum
d.setf("level",10)
local cord = set.base_cord
local pos = set.Position_level_10
d.jump_all((cord[1] + pos[1]), (cord[2] + pos[2]))
d.notice("Omoara "..mob_name(v)..", regele ghetii si zapezii.")
end
end

when kill begin
if snow_dungeon.is_nemeres_dungeon() == true then
local set = snow_dungeon.get_settings()
local next_jump_time = set.NextJumpTime
local level = d.getf("level")
local stone_level_6 = set.MobVnum_level_6
local stone_level_9 = set.NpcVnum_level_9
local boss_vnum = set.BossVnum
local wait_time = set.WaitBeforOutAllOnExit
local mobvnum = npc.get_race()
--dchat("nemeres_wait_dungeon MobVnum = "..mobvnum.."")
if level == 2 and mobvnum >= 6101 and mobvnum <= 6108 and 1 == number(1,10) then
local v = set.key_level_2
game.drop_item(v,1)
elseif level == 5 and mobvnum >= 6101 and mobvnum <= 6108 and 1 == number(1,15) then
snow_dungeon._DropKeyOnLevel5()
elseif level == 6 and mobvnum == stone_level_6 then
d.notice(""..mob_name(stone_level_6).." este distrusã ºi vei urca la nivelul urmãtor.")
d.notice("")
server_timer("Jp_7",next_jump_time,d.get_map_index())
d.clear_regen()
d.kill_all()
d.regen_file("data/dungeon/ice_dungeon/zone_7.txt") --Szel
local v_MQv = set.MobVnum_level_7
local c = set.SzelCords_level_7
local n = number(1,table.getnC)
d.spawn_mob(v_MQv, c[n][1], c[n][2])
elseif level == 8 and mobvnum >= 6101 and mobvnum <= 6108 and 1 == number(1,10) then
local v = set.Key_on_level_8
game.drop_item(v,1)
elseif level == 9 and mobvnum == stone_level_9 then
d.notice(""..mob_name(stone_level_9).." este distrusã ºi vei urca la nivelul urmãtor.")
server_timer("Jp_Boss",next_jump_time,d.get_map_index())
d.clear_regen()
d.kill_all()
d.regen_file("data/dungeon/ice_dungeon/zone_boss.txt")
local v = set.BossVnumGroup
d.spawn_group(v, 928, 335, 5 ,1, 1) -- (Input from SRC: argument: vnum,x,y,radius,aggressive,count)
elseif level == 10 and mobvnum == boss_vnum then
d.clear_regen()
d.kill_all()
d.notice("Felicitãri rãzboinicilor curajoºi! L-ai omorât pe "..mob_name(boss_vnum).." . In "..wait_time.." secunde veti fi teleportati afara.")
notice_all("Grupa lui "..pc.get_name().." l-a înfrânt pe Nemere!")
server_timer("Jp_OutAll",wait_time,d.get_map_index())
end
end
end
when Jp_OutAll.server_timer begin --Jump Out Bye bye ;D
if d.select(get_server_timer_arg()) then
snow_dungeon._ExitAll()
end
end
function _ExitAll()
d.exit_all()
end
end
end[/Sursa]
Avatar utilizator
meleme18
Nivel 3

Nivel 3
Mesaje: 335
Membru din: 09 Oct 2014, 14:59
Regat: Shinsoo
Aprecieri: 98  
Mulţumiri: 210  
Medalii

local job = pc.get_job()
if job >= 1
then
have_ninja = true
end
if job >= 1
then
have_shaman = true

Vezi asa
Avatar utilizator
eubogdanel2018
Nivel 1

Nivel 1
Mesaje: 122
Membru din: 27 Dec 2017, 02:57
Server: Metin2Destros
Regat: Shinsoo
Aprecieri: 17  
Mulţumiri: 11  
Medalii

meleme18 scrie:local job = pc.get_job()
if job >= 1
then
have_ninja = true
end
if job >= 1
then
have_shaman = true

Vezi asa
nu are treaba di cu liniile urmatoare? :
when 30333.use with snow_dungeon.is_nemeres_dungeon() == true begin --Key_on_level_8
local set = snow_dungeon.get_settings()
local next_jump_time = set.NextJumpTime
local level = d.getf("level")
local job = pc.get_job()
if level == 8 then
if (is_test_server() and snow_dungeon.is_TestServerMode() == true ) then
--dchat("SET VARIABLE JOB 3")
job = 3
end
if job == 1 -- Ninja weiblich
or job == 5 --Ninja männlich
or job == 3 -- Schamane weiblich
or job == 7 --Schamane männlich
then
if number(1,3) == 1 then
d.notice("Ai gãsit cheia bunã. Vei urca mai departe în câteva secunde.")
server_timer("Jp_9",next_jump_time,d.get_map_index())
d.clear_regen()
d.kill_all()
d.regen_file("data/dungeon/ice_dungeon/zone_9.txt")
item.remove()
else
d.notice("Aceastã cheie nu este corectã.")
item.remove()
end
else
d.notice("Poþi folosii numai caracterele ªaman ºi Ninja.")
return
end
end
end
doar intreb si eu ca sa invat si eu unele lucruri :) sa nu te superi pe mine :)) sau aici e setat ce sa zica doar daca folosesti ninja si saman cand dropezi cheia si o pui ?vad ca sunt trecute ambele sexe " masculin si feminin" la saman si ninja... nu trebuie sa le adaugi si pe celelalte de war si sura?

[ Postat de pe Android ] Imagine
Avatar utilizator
meleme18
Nivel 3

Nivel 3
Mesaje: 335
Membru din: 09 Oct 2014, 14:59
Regat: Shinsoo
Aprecieri: 98  
Mulţumiri: 210  
Medalii

Eu doar ti-am dat un exemplu la ce sa te uiti. schimbi la job cu >= 1 sa mearga pe toate rasele. doar nu vrei sa iti verific tot questul de 100 de linii.
Avatar utilizator
cojoc
Nivel 1

Nivel 1
Mesaje: 51
Membru din: 08 Iul 2014, 18:00
Aprecieri: 2  
Mulţumiri: 4  
Medalii

@meleme18 nu sunt eu acela ce a scris. multumesc de raspuns .deci 1 inseamna toate rasele si ambele sexe?
Avatar utilizator
cojoc
Nivel 1

Nivel 1
Mesaje: 51
Membru din: 08 Iul 2014, 18:00
Aprecieri: 2  
Mulţumiri: 4  
Medalii

am incercat cu 0 si acum pot intra dar nu pot sa folosesc acele chei.chiar daca am modificat tot cu 0 si la chei.
0 Orice caracter
1 Doar baieti
2 Doar fete
4 Ninja – Sura – Shaman/ baieti si fete
5 Ninja – Sura – Shaman/ doar baieti
6 Ninja – Sura – Shaman/ doar fete
8 Warrior- Sura – Shaman / baieti si fete
9 Warrior- Sura – Shaman / doar baieti
10 Warrior- Sura – Shaman / doar fete
12 Sura – Shaman / fete si baieti
13 Sura – Shaman / doar baieti
14 Sura – Shaman / doar fete
16 Warrior- Ninja – Shaman / baieti si fete
17 Warrior- Ninja – Shaman / doar baieti
18 Warrior- Ninja – Shaman / doar fete
20 Ninja – Shaman / baieti si fete
21 Ninja – Shaman / doar baieti
22 Ninja – Shaman / doar fete
24 Warrior- Shaman / baieti si fete
25 Warrior- Shaman / doar baieti
26 Warrior- Shaman / doar fete
28 Shaman / baieti si fete
29 Shaman / doar baieti
30 Shaman / doar fete
32 Warrior- Ninja – Sura / baieti si fete
33 Warrior- Ninja – Sura / doar baieti
34 Warrior- Ninja – Sura / doar fete
36 Ninja – Sura / baieti si fete
37 Ninja – Sura / doar baieti
38 Ninja – Sura / doar fete
40 Warrior- Sura / baieti si fete
41 Warrior- Sura / doar baieti
42 Warrior- Sura / doar fete
44 Sura / baieti si fete
45 Sura / doar baieti
46 Sura / doar fete
48 Warrior- Ninja / baieti si fete
49 Warrior- Ninja / doar baieti
50 Warrior- Ninja / doar fete
52 Ninja / baieti si fete
53 Ninja / doar baieti
54 Ninja / doar fete
56 Warrior/ baieti si fete
57 Warrior/ doar baieti
58 Warrior/ doar fete
Avatar utilizator
meleme18
Nivel 3

Nivel 3
Mesaje: 335
Membru din: 09 Oct 2014, 14:59
Regat: Shinsoo
Aprecieri: 98  
Mulţumiri: 210  
Medalii

Incearca sa pui >= 0 la toate functiile de sex si job. ar trebui sa iti dea voie sa folosesti orice caracter si sex.
Avatar utilizator
cojoc
Nivel 1

Nivel 1
Mesaje: 51
Membru din: 08 Iul 2014, 18:00
Aprecieri: 2  
Mulţumiri: 4  
Medalii

ma lasa sa intru dar orice as face nu poate un war sa foloseasca cheia de la etaju 2 si 5 pe care o pot folosi doar samani si ninja
Avatar utilizator
FastReview
Veteran

Veteran
Mesaje: 2624
Membru din: 25 Oct 2015, 00:01
Aprecieri: 77  
Mulţumiri: 111  
Discord: Copiază ID
Medalii

Autorul are peste 3 zile de inactivitate, arhivat.
Închis
Răspunsuri
0
Vizualizări
659
Răspunsuri
1
Vizualizări
193
Răspunsuri
1
Vizualizări
191
Răspunsuri
3
Vizualizări
213

Înapoi la “Arhivă Probleme şi Întrebări”

  • Informaţie
  • Cine este conectat

    Utilizatori ce ce navighează pe acest forum: Bing [Bot] și 168 vizitatori