quest map_warp begin state start begin when 9012.chat.gameforge.map_warp._10_npcChat begin say_title(gameforge.map_warp._20_sayTitle) say(gameforge.map_warp._30_say) local main_set = select(gameforge.locale.guild.yes, gameforge.locale.guild.no) if main_set == 2 then return end if pc.get_level() <= 10 then say_title(gameforge.map_warp._20_sayTitle) say(gameforge.map_warp._40_say) return end local map = pc.get_map_index() local empire = pc.get_empire() local level = pc.get_level() local cost = math.floor(level / 5) * 1000 if cost < 1000 then cost = 1000 end say_title(gameforge.map_warp._20_sayTitle) say(gameforge.map_warp._50_say) say_reward(string.format(gameforge.map_warp._60_sayReward, cost)) if map == 1 or map == 3 or map == 21 or map == 23 or map == 41 or map == 43 then local guild_map_names = { gameforge.map_warp._11_array, gameforge.map_warp._12_array, gameforge.map_warp._13_array, } guild_map_name = guild_map_names[empire] local added_guild_map = { gameforge.map_warp._17_array, gameforge.map_warp._18_array, gameforge.map_warp._19_array, } added_guild_map = added_guild_map[empire] local empire_castle={ gameforge.map_warp._14_array, gameforge.map_warp._15_array, gameforge.map_warp._16_array, } empire_castle =empire_castle[empire] local sub_set = 0 if level < 60 then -- weniger als 60 : die Privatkarte von Gild, das Drache, die Wuste Youngbi, Der Eisberg im Westen if pc.count_item(30180) == 0 then sub_set = select(guild_map_name, gameforge.locale.map_name_4, gameforge.locale.map_name_3, gameforge.locale.map_name_1,added_guild_map, gameforge.arena_manager._200_tableInsert) if sub_set == 6 then -- Schliessen return end else sub_set = select(guild_map_name, gameforge.locale.map_name_4, gameforge.locale.map_name_3, gameforge.locale.map_name_1, added_guild_map, gameforge.map_warp._97_select, gameforge.arena_manager._200_tableInsert) if sub_set == 7 then -- Schliessen return end end else -- mehr als 61 :die Wuste Youngbi, der Eisberg im Westen, das Schlangengeistturm, die Pfirsischblumendorf if pc.count_item(30180) == 0 then sub_set = select(guild_map_name, gameforge.locale.map_name_4, gameforge.locale.map_name_3, gameforge.locale.map_name_1,added_guild_map, gameforge.locale.levelup.prev_quest_go) else sub_set = select(guild_map_name, gameforge.locale.map_name_4, gameforge.locale.map_name_3, gameforge.locale.map_name_1,added_guild_map, gameforge.map_warp._97_select,gameforge.locale.levelup.prev_quest_go) end if sub_set == 6 and pc.count_item(30180) == 0 then sub_set = sub_set +1 end if sub_set == 7 then -- weiter say_title(gameforge.map_warp._20_sayTitle) say(gameforge.map_warp._70_say) say_reward(string.format(gameforge.map_warp._80_sayReward, cost)) sub_set = select(gameforge.locale.map_name_2, gameforge.map_warp._90_select, gameforge.map_warp._94_select,gameforge.map_warp._95_select, gameforge.map_warp._96_select, gameforge.arena_manager._200_tableInsert) + 6 if sub_set == 12 then return end if sub_set == 11 then -- vorher say_title(gameforge.map_warp._20_sayTitle) say(gameforge.map_warp._100_say) --- l say_reward(string.format(gameforge.map_warp._110_sayReward, cost)) say(gameforge.map_warp._120_sayReward) if pc.count_item(30180) == 0 then sub_set = select(guild_map_name, gameforge.locale.map_name_4, gameforge.locale.map_name_3, gameforge.locale.map_name_1,added_guild_map, gameforge.locale.levelup.prev_quest_go) else sub_set = select(guild_map_name, gameforge.locale.map_name_4, gameforge.locale.map_name_3, gameforge.locale.map_name_1, added_guild_map, gameforge.map_warp._97_select,gameforge.locale.levelup.prev_quest_go) end if sub_set == 6 and pc.count_item(30180) == 0 then sub_set = sub_set +1 end if sub_set == 7 then -- weiter say_title(gameforge.map_warp._20_sayTitle) say(gameforge.map_warp._130_say) say_reward(string.format(gameforge.map_warp._140_sayReward, cost)) sub_set = select(gameforge.locale.map_name_2, gameforge.map_warp._90_select, gameforge.map_warp._94_select, gameforge.map_warp._95_select, gameforge.arena_manager._200_tableInsert) + 6 if sub_set == 11 then return end end end end end if pc.gold < cost then say_title(gameforge.map_warp._20_sayTitle) say(gameforge.map_warp._150_say) say_reward(string.format(gameforge.map_warp._160_sayReward, cost)) return end pc.changegold(-cost) local warp = { -- <<1>> guild_map { { 135600, 4300 }, { 179500, 1000 }, { 271800, 13000 }, }, -- <<2>> 64 Seungryong { { 402100, 673900 }, { 270400, 739900 }, { 321300, 808000 }, }, -- <<3>> 63 Yonbi-Desert { { 217800, 627200 }, { 221900, 502700 }, { 344000, 502500 }, }, -- <<4>> 61 Sohan Mountain { { 434200, 290600 }, { 375200, 174900 }, { 491800, 173600 }, }, {--added_guild_map {204800, 204800}, {614400, 384000}, {256000, 819200}, } , -- <<5>> 64 Seungryong - Heavens Cave entrance { { 287800, 799700 }, { 275500, 800000 }, { 277000, 788000 }, }, -- {--empire_castle -- {975200, 133000}, -- {977200, 185000}, -- {923900, 183600}, -- } , -- <<6>> 62 metin2_map_n_flame_01 { { 599400, 756300 }, { 597800, 622200 }, { 730700, 689800 }, }, -- <<7>> devil_tower { { 590500, 110500 }, { 590500, 110500 }, { 590500, 110500 }, }, -- <<8>> wood { { 290000, 5600 }, { 290000, 5600 }, { 290000, 5600 }, }, -- <<9>> red wood { { 1119500, 70200 }, { 1119500, 70200 }, { 1119500, 70200 }, }, } test_chat(warp[sub_set][empire][1]..warp[sub_set][empire][2]) say_title(gameforge.map_warp._20_sayTitle) say(gameforge.map_warp._170_say) wait() if pc.is_dead() == false then pc.warp(warp[sub_set][empire][1], warp[sub_set][empire][2]) else return end else -- Falls jedes Dorf nicht 1,2 Dorf ist,ist es moglich zum 1,2 Dorf im Reich zuruckzukehren local sub_set2 = 4 if pc.count_item(30180) == 0 then if empire==1 then sub_set2 = select(gameforge.map_warp._180_select, gameforge.map_warp._190_select, gameforge.arena_manager._200_tableInsert) elseif empire ==2 then sub_set2 = select(gameforge.map_warp._200_select, gameforge.map_warp._210_select, gameforge.arena_manager._200_tableInsert) elseif empire ==3 then sub_set2 = select(gameforge.map_warp._220_select, gameforge.map_warp._230_select, gameforge.arena_manager._200_tableInsert) end if sub_set2 == 3 then return end else if empire==1 then sub_set2 = select(gameforge.map_warp._180_select, gameforge.map_warp._190_select, gameforge.map_warp._97_select, gameforge.arena_manager._200_tableInsert) elseif empire ==2 then sub_set2 = select(gameforge.map_warp._200_select, gameforge.map_warp._210_select, gameforge.map_warp._97_select, gameforge.arena_manager._200_tableInsert) elseif empire ==3 then sub_set2 = select(gameforge.map_warp._220_select, gameforge.map_warp._230_select, gameforge.map_warp._97_select, gameforge.arena_manager._200_tableInsert) end if sub_set2 == 4 then return end end if sub_set2 != 4 then if pc.gold < cost then say_title(gameforge.map_warp._20_sayTitle) say(gameforge.map_warp._150_say) say_reward(string.format(gameforge.map_warp._160_sayReward, cost)) else if sub_set2 == 1 then say_title(gameforge.map_warp._20_sayTitle) say(gameforge.map_warp._240_say) wait() if pc.is_dead() == false then if empire == 1 then pc.warp(474300,954800) elseif empire == 2 then pc.warp(63800,166400) elseif empire == 3 then pc.warp(959900,269200) end else return end elseif sub_set2 == 2 then say_title(gameforge.map_warp._20_sayTitle) say(gameforge.map_warp._250_say) wait() if pc.is_dead() == false then if empire == 1 then pc.warp(353100,882900) elseif empire == 2 then pc.warp(145500,240000) elseif empire == 3 then pc.warp(863900,246000) end else return end elseif sub_set2 == 3 then say_title(gameforge.map_warp._20_sayTitle) say(gameforge.map_warp._250_say) wait() if pc.is_dead() == false then if empire == 1 then pc.warp(287800, 799700) elseif empire == 2 then pc.warp(275500, 800000) elseif empire == 3 then pc.warp(277000, 788000) end else return end end pc.changegold(-cost) end end end end -- end_of_chat when 9012.chat.gameforge.map_warp._260_npcChat with pc.level >= 90 and pc.get_map_index()!= 301 begin say(mob_name(9012)) say(gameforge.map_warp._270_say) local select1 = select(gameforge.locale.guild.yes, gameforge.locale.guild.no) if select1 == 1 then say(mob_name(9012)) say(gameforge.map_warp._280_say) local cost = 50000 if pc.level >= 90 then cost = cost + ((pc.level - 90) * 10000) end say_reward(string.format(gameforge.map_warp._280_sayReward, cost)) local select2 = select(gameforge.locale.guild.yes, gameforge.locale.guild.no) if select2 == 1 and pc.level >= 90 and pc.gold >= cost then pc.changegold(-cost) pc.warp(1104300,1788500) else if pc.gold < cost then say_title(gameforge.map_warp._20_sayTitle) say(gameforge.map_warp._150_say) say_reward(string.format(gameforge.map_warp._160_sayReward, cost)) return end end else return end end end -- end_of_state end -- end_of_quest