forked from metin2/server
752 lines
21 KiB
Plaintext
752 lines
21 KiB
Plaintext
|
--2013.02.12 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
|||
|
--<2D><><EFBFBD><EFBFBD>Ʈ <20><><EFBFBD><EFBFBD> npc
|
|||
|
define YACKHWAN 20377 -- <20><><EFBFBD>ɵ<EFBFBD><C9B5><EFBFBD> <20><>ȯ
|
|||
|
define SCHOLAR 20380 -- <20><><EFBFBD><EFBFBD>
|
|||
|
define ALCHEMIST 20001 -- <20><><EFBFBD>ݼ<EFBFBD><DDBC><EFBFBD>
|
|||
|
define BLACKSMITH 20016 -- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
define YUHWAN 20017 -- <20><>ȯ
|
|||
|
|
|||
|
define MOB1_1 6091 -- <20><><EFBFBD><EFBFBD> <20>߸<EFBFBD>õ
|
|||
|
|
|||
|
define ITEM2_1 31082 -- <20>߰ſ<DFB0> <20><>
|
|||
|
define DUNGEON_MAP_INDEX 351
|
|||
|
|
|||
|
quest main_quest_flame_lv104 begin
|
|||
|
state start begin
|
|||
|
end
|
|||
|
state state0 begin
|
|||
|
when login or levelup or enter with pc.level >= 104 begin
|
|||
|
set_state (state1_1)
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
-- <20>߸<EFBFBD>õ <20><><EFBFBD><EFBFBD> 1-2
|
|||
|
state state1_1 begin
|
|||
|
when letter begin
|
|||
|
send_letter(gameforge.main_quest_flame_lv104._010_sendLetter)
|
|||
|
--npc Ÿ<><C5B8>
|
|||
|
local v = find_npc_by_vnum(YACKHWAN)
|
|||
|
if 0 != v then
|
|||
|
target.vid("__TARGET__", v, mob_name(YACKHWAN))
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
when button or info begin
|
|||
|
say_title(gameforge.main_quest_flame_lv104._010_sendLetter)
|
|||
|
say(gameforge.main_quest_flame_lv104._020_say)
|
|||
|
--npc Ÿ<><C5B8> <20>ȳ<EFBFBD><C8B3><EFBFBD>
|
|||
|
--say_reward(locale.target_npc_info)
|
|||
|
end
|
|||
|
|
|||
|
when YACKHWAN.chat.gameforge.main_quest_flame_lv104._010_sendLetter begin
|
|||
|
target.delete("__TARGET__")
|
|||
|
say_title(mob_name(YACKHWAN))
|
|||
|
say(gameforge.main_quest_flame_lv104._030_say)
|
|||
|
wait()--<2D>߰<EFBFBD> <20><>ȭ
|
|||
|
|
|||
|
say_title(mob_name(YACKHWAN))
|
|||
|
say(gameforge.main_quest_flame_lv104._040_say)
|
|||
|
wait()--<2D>߰<EFBFBD> <20><>ȭ
|
|||
|
|
|||
|
say_title(pc.getname())
|
|||
|
say(gameforge.main_quest_flame_lv104._050_say)
|
|||
|
--<2D><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ<EFBFBD><C6AE>
|
|||
|
set_state (state1_2)
|
|||
|
end
|
|||
|
|
|||
|
when leave begin
|
|||
|
--q.done()
|
|||
|
end
|
|||
|
end
|
|||
|
state state1_2 begin
|
|||
|
when enter begin
|
|||
|
--<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> óġ <20><> <20><><EFBFBD><EFBFBD>
|
|||
|
pc.setqf("kill_count_1", 0)
|
|||
|
-- notice <20><><EFBFBD><EFBFBD>
|
|||
|
notice_multiline(gameforge.main_quest_flame_lv104._060_notice,notice)
|
|||
|
end
|
|||
|
|
|||
|
|
|||
|
when letter begin
|
|||
|
send_letter(gameforge.main_quest_flame_lv104._010_sendLetter)
|
|||
|
--<2D><><EFBFBD><EFBFBD> óġ <20><> <20>ȳ<EFBFBD><C8B3><EFBFBD>
|
|||
|
q.set_counter_name(gameforge.main_quest_lv98._680_counterName)
|
|||
|
|
|||
|
-- <20><>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>߸<EFBFBD>õ<EFBFBD><C3B5> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>, <20><><EFBFBD><EFBFBD>Ʈ<EFBFBD><C6AE> Ŭ<><C5AC><EFBFBD><EFBFBD> <20>ǵ<EFBFBD><C7B5><EFBFBD> <20>ϴ<EFBFBD> <20>ڵ<EFBFBD>.
|
|||
|
if party.is_party() then
|
|||
|
local map_index = pc.get_map_index()
|
|||
|
-- <20><><EFBFBD>漺<EFBFBD><E6BCBA> <20><><EFBFBD><EFBFBD><EFBFBD>ߴٴ<DFB4> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
|||
|
if map_index >= DUNGEON_MAP_INDEX * 10000 and map_index < (DUNGEON_MAP_INDEX + 1) *10000 then
|
|||
|
pc.setqf("in_dungeon", 1)
|
|||
|
else -- <20><><EFBFBD>漺<EFBFBD><E6BCBA><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>Ʈ<EFBFBD><C6AE> Ŭ<><C5AC><EFBFBD><EFBFBD> <20><><EFBFBD>ش<EFBFBD>.
|
|||
|
if pc.getqf("in_dungeon") == 1 then
|
|||
|
if party.getf("flame_dungeon_boss_kill_count") == 1 then
|
|||
|
set_state (state1_3)
|
|||
|
end
|
|||
|
pc.setqf("in_dungeon", 0)
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
main_quest_flame_lv104.kill_count()
|
|||
|
end
|
|||
|
|
|||
|
when logout begin
|
|||
|
if party.is_party() then
|
|||
|
if party.getf("flame_dungeon_boss_kill_count") == 0 then
|
|||
|
pc.setqf("in_dungeon", 0)
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
when button or info begin
|
|||
|
say_title(gameforge.main_quest_flame_lv104._070_sayTitle)
|
|||
|
say(gameforge.main_quest_flame_lv104._080_say)
|
|||
|
--<2D><><EFBFBD><EFBFBD> óġ <20><> <20>ȳ<EFBFBD><C8B3><EFBFBD>
|
|||
|
say(gameforge.main_quest_lv98._680_counterName)
|
|||
|
say(string.format(gameforge.main_quest_lv98._670_sayReward,mob_name(MOB1_1), 1 - pc.getqf("kill_count_1")))
|
|||
|
say_reward(gameforge.main_quest_flame_lv104._090_sayReward)
|
|||
|
end
|
|||
|
|
|||
|
when YACKHWAN.chat.gameforge.main_quest_flame_lv104._010_sendLetter begin
|
|||
|
say_title(mob_name(YACKHWAN))
|
|||
|
say(gameforge.main_quest_flame_lv104._100_say)
|
|||
|
end
|
|||
|
|
|||
|
|
|||
|
when 31078.use begin -- <20><>ȭ<EFBFBD><C8AD>
|
|||
|
affect.add(apply.MAX_HP, 1000, 60 * 60)
|
|||
|
affect.add(apply.DEF_GRADE_BONUS, 25, 60 * 60)
|
|||
|
affect.add(apply.MELEE_MAGIC_ATTBONUS_PER, 10, 60 * 60)
|
|||
|
pc.remove_item(31078,1)
|
|||
|
end
|
|||
|
|
|||
|
when MOB1_1.kill begin
|
|||
|
local kill_count = pc.getqf("kill_count_1")
|
|||
|
pc.setqf("kill_count_1", kill_count+1)
|
|||
|
main_quest_flame_lv104.kill_count()
|
|||
|
end
|
|||
|
|
|||
|
function kill_count()
|
|||
|
local total_remain = 0
|
|||
|
local remain1 = 1 - pc.getqf("kill_count_1")
|
|||
|
if remain1 < 0 then
|
|||
|
remain1 = 0
|
|||
|
end
|
|||
|
total_remain = total_remain + remain1
|
|||
|
q.set_counter_value(total_remain)
|
|||
|
if total_remain == 0 then
|
|||
|
set_state ("state1_3")
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
when leave begin
|
|||
|
pc.setqf("kill_count_1", 0)
|
|||
|
pc.setqf("in_dungeon", 0)
|
|||
|
--q.done()
|
|||
|
end
|
|||
|
end
|
|||
|
state state1_3 begin
|
|||
|
when enter begin
|
|||
|
-- notice <20><><EFBFBD><EFBFBD>
|
|||
|
notice_multiline(gameforge.main_quest_flame_lv104._120_notice,notice)
|
|||
|
|
|||
|
say_title(mob_name(MOB1_1))
|
|||
|
say(gameforge.main_quest_flame_lv104._110_say)
|
|||
|
end
|
|||
|
|
|||
|
when letter begin
|
|||
|
send_letter(gameforge.main_quest_flame_lv104._010_sendLetter)
|
|||
|
--npc Ÿ<><C5B8>
|
|||
|
local v = find_npc_by_vnum(YACKHWAN)
|
|||
|
if 0 != v then
|
|||
|
target.vid("__TARGET__", v, mob_name(YACKHWAN))
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
when button or info begin
|
|||
|
say_title(gameforge.main_quest_flame_lv104._010_sendLetter)
|
|||
|
say(gameforge.main_quest_flame_lv104._130_say)
|
|||
|
--npc Ÿ<><C5B8> <20>ȳ<EFBFBD><C8B3><EFBFBD>
|
|||
|
--say_reward(locale.target_npc_info)
|
|||
|
end
|
|||
|
|
|||
|
when YACKHWAN.chat.gameforge.main_quest_flame_lv104._010_sendLetter begin
|
|||
|
target.delete("__TARGET__")
|
|||
|
say_title(mob_name(YACKHWAN))
|
|||
|
say(gameforge.main_quest_flame_lv104._140_say)
|
|||
|
wait()--<2D>߰<EFBFBD> <20><>ȭ
|
|||
|
|
|||
|
say_title(pc.getname())
|
|||
|
say(gameforge.main_quest_flame_lv104._150_say)
|
|||
|
wait()--<2D>߰<EFBFBD> <20><>ȭ
|
|||
|
|
|||
|
say_title(mob_name(YACKHWAN))
|
|||
|
say(gameforge.main_quest_flame_lv104._160_say)
|
|||
|
--<2D><><EFBFBD><EFBFBD>
|
|||
|
wait()--reward
|
|||
|
|
|||
|
say_reward(string.format(gameforge.main_quest_lv60._190_sayReward, 64491000))
|
|||
|
pc.give_exp2(64491000)
|
|||
|
say_reward(string.format(gameforge.main_quest_lv60._200_sayReward, 168000))
|
|||
|
pc.change_money(168000)
|
|||
|
say_reward(string.format(gameforge.main_quest_lv60._210_sayReward, item_name(71095),1))
|
|||
|
pc.give_item2(71095, 1)
|
|||
|
say_reward(string.format(gameforge.main_quest_lv60._210_sayReward, item_name(71026),1)) -- <20><>ö
|
|||
|
pc.give_item2(71026, 1)
|
|||
|
say_reward(string.format(gameforge.main_quest_lv60._210_sayReward, item_name(71025),2)) -- <20>߰<EFBFBD><DFB0><EFBFBD>
|
|||
|
pc.give_item2(71025, 1)
|
|||
|
pc.give_item2(71025, 1)
|
|||
|
say_reward(string.format(gameforge.main_quest_lv60._210_sayReward, item_name(70102),5)) -- <20><><EFBFBD><EFBFBD>
|
|||
|
pc.give_item2(70102, 1)
|
|||
|
pc.give_item2(70102, 1)
|
|||
|
pc.give_item2(70102, 1)
|
|||
|
pc.give_item2(70102, 1)
|
|||
|
pc.give_item2(70102, 1)
|
|||
|
say_reward(string.format(gameforge.main_quest_lv60._210_sayReward, item_name(50706),20)) -- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
pc.give_item2(50706, 20)
|
|||
|
say()
|
|||
|
--<2D><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ<EFBFBD><C6AE>
|
|||
|
set_state (state2_1)
|
|||
|
end
|
|||
|
|
|||
|
when leave begin
|
|||
|
--q.done()
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
-- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>1-1
|
|||
|
state state2_1 begin
|
|||
|
when letter begin
|
|||
|
send_letter(gameforge.main_quest_flame_lv104._170_sendLetter)
|
|||
|
--npc Ÿ<><C5B8>
|
|||
|
local v = find_npc_by_vnum(YACKHWAN)
|
|||
|
if 0 != v then
|
|||
|
target.vid("__TARGET__", v, mob_name(YACKHWAN))
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
when button or info begin
|
|||
|
say_title(gameforge.main_quest_flame_lv104._170_sendLetter)
|
|||
|
say(gameforge.main_quest_flame_lv104._020_say)
|
|||
|
--npc Ÿ<><C5B8> <20>ȳ<EFBFBD><C8B3><EFBFBD>
|
|||
|
--say_reward(locale.target_npc_info)
|
|||
|
end
|
|||
|
|
|||
|
when YACKHWAN.chat.gameforge.main_quest_flame_lv104._170_sendLetter begin
|
|||
|
target.delete("__TARGET__")
|
|||
|
say_title(mob_name(YACKHWAN))
|
|||
|
say(gameforge.main_quest_flame_lv104._180_say)
|
|||
|
wait()--<2D>߰<EFBFBD> <20><>ȭ
|
|||
|
|
|||
|
say_title(mob_name(YACKHWAN))
|
|||
|
say(gameforge.main_quest_flame_lv104._190_say)
|
|||
|
wait()--<2D>߰<EFBFBD> <20><>ȭ
|
|||
|
|
|||
|
say_title(pc.getname())
|
|||
|
say(gameforge.main_quest_flame_lv104._050_say)
|
|||
|
--<2D><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ<EFBFBD><C6AE>
|
|||
|
set_state (state2_2)
|
|||
|
end
|
|||
|
|
|||
|
when leave begin
|
|||
|
--q.done()
|
|||
|
end
|
|||
|
end
|
|||
|
state state2_2 begin
|
|||
|
when enter begin
|
|||
|
-- notice <20><><EFBFBD><EFBFBD>
|
|||
|
notice_multiline(gameforge.main_quest_flame_lv104._200_notice,notice)
|
|||
|
end
|
|||
|
|
|||
|
when letter begin
|
|||
|
send_letter(gameforge.main_quest_flame_lv104._170_sendLetter)
|
|||
|
--npc Ÿ<><C5B8>
|
|||
|
local v = find_npc_by_vnum(SCHOLAR)
|
|||
|
if 0 != v then
|
|||
|
target.vid("__TARGET__", v, mob_name(SCHOLAR))
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
when button or info begin
|
|||
|
say_title(gameforge.main_quest_flame_lv104._210_sayTitle)
|
|||
|
say(gameforge.main_quest_flame_lv104._220_say)
|
|||
|
--npc Ÿ<><C5B8> <20>ȳ<EFBFBD><C8B3><EFBFBD>
|
|||
|
--say_reward(locale.target_npc_info)
|
|||
|
end
|
|||
|
|
|||
|
when YACKHWAN.chat.gameforge.main_quest_flame_lv104._170_sendLetter begin
|
|||
|
say_title(mob_name(YACKHWAN))
|
|||
|
say(gameforge.main_quest_flame_lv104._230_say)
|
|||
|
end
|
|||
|
|
|||
|
when SCHOLAR.chat.gameforge.main_quest_flame_lv104._170_sendLetter begin
|
|||
|
target.delete("__TARGET__")
|
|||
|
say_title(mob_name(SCHOLAR))
|
|||
|
say(gameforge.main_quest_flame_lv104._240_say)
|
|||
|
wait()--<2D>߰<EFBFBD> <20><>ȭ
|
|||
|
|
|||
|
say_title(mob_name(SCHOLAR))
|
|||
|
say(gameforge.main_quest_flame_lv104._250_say)
|
|||
|
wait()--<2D>߰<EFBFBD> <20><>ȭ
|
|||
|
|
|||
|
say_title(pc.getname())
|
|||
|
say(gameforge.main_quest_flame_lv104._260_say)
|
|||
|
wait()--<2D>߰<EFBFBD> <20><>ȭ
|
|||
|
|
|||
|
say_title(mob_name(SCHOLAR))
|
|||
|
say(gameforge.main_quest_flame_lv104._270_say)
|
|||
|
wait()--<2D>߰<EFBFBD> <20><>ȭ
|
|||
|
|
|||
|
say_title(pc.getname())
|
|||
|
say(gameforge.main_quest_flame_lv104._050_say)
|
|||
|
--<2D><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ<EFBFBD><C6AE>
|
|||
|
set_state (state2_3)
|
|||
|
end
|
|||
|
|
|||
|
when leave begin
|
|||
|
--q.done()
|
|||
|
end
|
|||
|
end
|
|||
|
state state2_3 begin
|
|||
|
when enter begin
|
|||
|
-- notice <20><><EFBFBD><EFBFBD>
|
|||
|
notice_multiline(gameforge.main_quest_flame_lv104._280_notice,notice)
|
|||
|
end
|
|||
|
|
|||
|
when letter begin
|
|||
|
send_letter(gameforge.main_quest_flame_lv104._170_sendLetter)
|
|||
|
--<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
|||
|
q.set_counter_name(gameforge.main_quest_lv97._670_counterName)
|
|||
|
main_quest_flame_lv104.item_count_state2_3()
|
|||
|
end
|
|||
|
|
|||
|
when button or info begin
|
|||
|
say_title(gameforge.main_quest_flame_lv104._280_notice)
|
|||
|
say(gameforge.main_quest_flame_lv104._290_say)
|
|||
|
--<2D><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ȳ<EFBFBD><C8B3><EFBFBD>
|
|||
|
say(gameforge.main_quest_lv97._670_counterName)
|
|||
|
local item_count = pc.getqf("item_count_1")
|
|||
|
local remain = 5 - item_count
|
|||
|
if remain < 0 then
|
|||
|
remain = 0
|
|||
|
end
|
|||
|
say(string.format(gameforge.main_quest_lv90._1190_say,item_name(ITEM2_1), remain))
|
|||
|
say_reward(gameforge.main_quest_flame_lv104._090_sayReward)
|
|||
|
main_quest_flame_lv104.item_count_state2_3()
|
|||
|
end
|
|||
|
|
|||
|
when SCHOLAR.chat.gameforge.main_quest_flame_lv104._170_sendLetter with pc.count_item(ITEM2_1) > 0 begin
|
|||
|
pc.remove_item(ITEM2_1, 1)
|
|||
|
-- <20><>ǰ <20><><EFBFBD><EFBFBD>
|
|||
|
if number(1, 100) <= 90 then
|
|||
|
local item_count = pc.getqf("item_count_1")
|
|||
|
item_count = item_count + 1
|
|||
|
pc.setqf("item_count_1", item_count)
|
|||
|
if item_count < 5 then -- <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
|||
|
say_title(mob_name(SCHOLAR))
|
|||
|
say(string.format(gameforge.main_quest_flame_lv104._300_say, 5 - item_count))
|
|||
|
else -- <20><>ǰ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> ä<><C3A4>.
|
|||
|
pc.remove_item(ITEM2_1, pc.count_item(ITEM2_1))
|
|||
|
say_title(mob_name(SCHOLAR))
|
|||
|
say(gameforge.main_quest_flame_lv104._310_say)
|
|||
|
wait()
|
|||
|
|
|||
|
say_reward(string.format(gameforge.main_quest_lv60._190_sayReward, 57583000))
|
|||
|
pc.give_exp2(57583000)
|
|||
|
say_reward(string.format(gameforge.main_quest_lv60._200_sayReward, 170000))
|
|||
|
pc.change_money( 170000)
|
|||
|
say_reward(string.format(gameforge.main_quest_lv60._210_sayReward, item_name(72723),1)) -- ȭ<><C8AD><EFBFBD><EFBFBD> <20>ູ(<28><>)
|
|||
|
pc.give_item2(72723, 1)
|
|||
|
say_reward(string.format(gameforge.main_quest_lv60._210_sayReward, item_name(70050),1)) -- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ǥ
|
|||
|
pc.give_item2(70050, 1)
|
|||
|
say()
|
|||
|
--<2D><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ<EFBFBD><C6AE>
|
|||
|
set_state (state3_1)
|
|||
|
end
|
|||
|
else -- <20><>ǰ <20><><EFBFBD><EFBFBD>
|
|||
|
say_title(mob_name(SCHOLAR))
|
|||
|
say(gameforge.main_quest_flame_lv104._320_say)
|
|||
|
end
|
|||
|
|
|||
|
main_quest_flame_lv104.item_count_state2_3()
|
|||
|
end
|
|||
|
|
|||
|
when 6005.kill begin
|
|||
|
if number(1,50) == 1 then
|
|||
|
pc.give_item2(ITEM2_1, 1)
|
|||
|
main_quest_flame_lv104.item_count_state2_3()
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
when 6006.kill begin
|
|||
|
if number(1,50) == 1 then
|
|||
|
pc.give_item2(ITEM2_1, 1)
|
|||
|
main_quest_flame_lv104.item_count_state2_3()
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
when 6007.kill begin
|
|||
|
if number(1,50) == 1 then
|
|||
|
pc.give_item2(ITEM2_1, 1)
|
|||
|
main_quest_flame_lv104.item_count_state2_3()
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
when 6008.kill begin
|
|||
|
if number(1,50) == 1 then
|
|||
|
pc.give_item2(ITEM2_1, 1)
|
|||
|
main_quest_flame_lv104.item_count_state2_3()
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
when 6009.kill begin
|
|||
|
if number(1,50) == 1 then
|
|||
|
pc.give_item2(ITEM2_1, 1)
|
|||
|
main_quest_flame_lv104.item_count_state2_3()
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
function item_count_state2_3()
|
|||
|
local item_count = pc.getqf("item_count_1")
|
|||
|
local remain = 5 - item_count
|
|||
|
if remain <= 0 then
|
|||
|
remain = 0
|
|||
|
end
|
|||
|
q.set_counter_value(remain)
|
|||
|
end
|
|||
|
|
|||
|
when leave begin
|
|||
|
pc.setqf("item_count_1", 0)
|
|||
|
--q.done()
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
-- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>1-2
|
|||
|
state state3_1 begin
|
|||
|
when letter begin
|
|||
|
send_letter(gameforge.main_quest_flame_lv104._330_sendLetter)
|
|||
|
--npc Ÿ<><C5B8>
|
|||
|
local v = find_npc_by_vnum(SCHOLAR)
|
|||
|
if 0 != v then
|
|||
|
target.vid("__TARGET__", v, mob_name(SCHOLAR))
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
when button or info begin
|
|||
|
say_title(gameforge.main_quest_flame_lv104._330_sendLetter)
|
|||
|
say(gameforge.main_quest_flame_lv104._340_say)
|
|||
|
--npc Ÿ<><C5B8> <20>ȳ<EFBFBD><C8B3><EFBFBD>
|
|||
|
--say_reward(locale.target_npc_info)
|
|||
|
end
|
|||
|
|
|||
|
when SCHOLAR.chat.gameforge.main_quest_flame_lv104._330_sendLetter begin
|
|||
|
target.delete("__TARGET__")
|
|||
|
say_title(mob_name(SCHOLAR))
|
|||
|
say(gameforge.main_quest_flame_lv104._350_say)
|
|||
|
wait()--<2D>߰<EFBFBD> <20><>ȭ
|
|||
|
|
|||
|
say_title(mob_name(SCHOLAR))
|
|||
|
say(gameforge.main_quest_flame_lv104._360_say)
|
|||
|
wait()--<2D>߰<EFBFBD> <20><>ȭ
|
|||
|
|
|||
|
say_title(pc.getname())
|
|||
|
say(gameforge.main_quest_flame_lv104._050_say)
|
|||
|
--<2D><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ<EFBFBD><C6AE>
|
|||
|
set_state (state3_2)
|
|||
|
end
|
|||
|
|
|||
|
when leave begin
|
|||
|
--q.done()
|
|||
|
end
|
|||
|
end
|
|||
|
state state3_2 begin
|
|||
|
when enter begin
|
|||
|
-- notice <20><><EFBFBD><EFBFBD>
|
|||
|
notice_multiline(gameforge.main_quest_flame_lv104._370_notice,notice)
|
|||
|
end
|
|||
|
|
|||
|
when letter begin
|
|||
|
send_letter(gameforge.main_quest_flame_lv104._330_sendLetter)
|
|||
|
q.set_counter_name(gameforge.main_quest_lv97._670_counterName)
|
|||
|
end
|
|||
|
|
|||
|
when button or info begin
|
|||
|
say_title(gameforge.main_quest_flame_lv104._280_notice)
|
|||
|
say(gameforge.main_quest_flame_lv104._380_say)
|
|||
|
say(gameforge.main_quest_lv97._670_counterName)
|
|||
|
|
|||
|
local remain1 = 100 - pc.count_item(50814)
|
|||
|
if remain1 < 0 then
|
|||
|
remain1 = 0
|
|||
|
end
|
|||
|
|
|||
|
say(string.format(gameforge.main_quest_lv90._1190_say,item_name(50814) ,remain1))
|
|||
|
say()
|
|||
|
q.set_counter_value(remain1)
|
|||
|
|
|||
|
if remain1 == 0 then
|
|||
|
set_state (state3_3)
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
when SCHOLAR.chat.gameforge.main_quest_flame_lv104._330_sendLetter begin
|
|||
|
--<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
|||
|
if pc.count_item(50814) >= 100 then
|
|||
|
pc.remove_item(50814, 100)
|
|||
|
|
|||
|
say_title(mob_name(SCHOLAR))
|
|||
|
say(gameforge.main_quest_flame_lv104._390_say)
|
|||
|
wait()--<2D>߰<EFBFBD> <20><>ȭ
|
|||
|
|
|||
|
say_title(pc.getname())
|
|||
|
say(gameforge.main_quest_flame_lv104._400_say)
|
|||
|
wait()--<2D>߰<EFBFBD> <20><>ȭ
|
|||
|
|
|||
|
say_title(mob_name(SCHOLAR))
|
|||
|
say(gameforge.main_quest_flame_lv104._410_say)
|
|||
|
|
|||
|
say_reward(string.format(gameforge.main_quest_lv60._190_sayReward, 46581000))
|
|||
|
pc.give_exp2(46581000)
|
|||
|
say_reward(string.format(gameforge.main_quest_lv60._200_sayReward, 171000))
|
|||
|
pc.change_money( 171000)
|
|||
|
say_reward(string.format(gameforge.main_quest_lv60._210_sayReward, item_name(30045),2)) -- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ħ
|
|||
|
pc.give_item2(30045, 2)
|
|||
|
say_reward(string.format(gameforge.main_quest_lv60._210_sayReward, item_name(50817),10)) -- <20><>Ȱ<EFBFBD>ɾ<EFBFBD>
|
|||
|
pc.give_item2(50817, 10)
|
|||
|
say()
|
|||
|
--<2D><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ<EFBFBD><C6AE>
|
|||
|
set_state (state4_1)
|
|||
|
else
|
|||
|
say_title(mob_name(SCHOLAR))
|
|||
|
say(gameforge.main_quest_flame_lv104._420_say)
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
when leave begin
|
|||
|
--q.done()
|
|||
|
end
|
|||
|
end
|
|||
|
state state3_3 begin
|
|||
|
when enter begin
|
|||
|
-- notice <20><><EFBFBD><EFBFBD>
|
|||
|
notice_multiline(gameforge.main_quest_flame_lv104._430_notice,notice)
|
|||
|
end
|
|||
|
|
|||
|
when letter begin
|
|||
|
send_letter(gameforge.main_quest_flame_lv104._330_sendLetter)
|
|||
|
--npc Ÿ<><C5B8>
|
|||
|
local v = find_npc_by_vnum(SCHOLAR)
|
|||
|
if 0 != v then
|
|||
|
target.vid("__TARGET__", v, mob_name(SCHOLAR))
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
when button or info begin
|
|||
|
say_title(gameforge.main_quest_flame_lv104._280_notice)
|
|||
|
say(gameforge.main_quest_flame_lv104._440_say)
|
|||
|
--npc Ÿ<><C5B8> <20>ȳ<EFBFBD><C8B3><EFBFBD>
|
|||
|
--say_reward(locale.target_npc_info)
|
|||
|
end
|
|||
|
|
|||
|
when SCHOLAR.chat.gameforge.main_quest_flame_lv104._330_sendLetter begin
|
|||
|
target.delete("__TARGET__")
|
|||
|
--<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
|||
|
if pc.count_item(50814) >= 100 then
|
|||
|
pc.remove_item(50814, 100)
|
|||
|
|
|||
|
say_title(mob_name(SCHOLAR))
|
|||
|
say(gameforge.main_quest_flame_lv104._390_say)
|
|||
|
wait()--<2D>߰<EFBFBD> <20><>ȭ
|
|||
|
|
|||
|
say_title(pc.getname())
|
|||
|
say(gameforge.main_quest_flame_lv104._400_say)
|
|||
|
wait()--<2D>߰<EFBFBD> <20><>ȭ
|
|||
|
|
|||
|
say_title(mob_name(SCHOLAR))
|
|||
|
say(gameforge.main_quest_flame_lv104._410_say)
|
|||
|
|
|||
|
say_reward(string.format(gameforge.main_quest_lv60._190_sayReward, 46581000))
|
|||
|
pc.give_exp2(46581000)
|
|||
|
say_reward(string.format(gameforge.main_quest_lv60._200_sayReward, 171000))
|
|||
|
pc.change_money( 171000)
|
|||
|
say_reward(string.format(gameforge.main_quest_lv60._210_sayReward, item_name(30045),2)) -- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ħ
|
|||
|
pc.give_item2(30045, 2)
|
|||
|
say_reward(string.format(gameforge.main_quest_lv60._210_sayReward, item_name(50817),10)) -- <20><>Ȱ<EFBFBD>ɾ<EFBFBD>
|
|||
|
pc.give_item2(50817, 10)
|
|||
|
say()
|
|||
|
|
|||
|
--<2D><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ<EFBFBD><C6AE>
|
|||
|
set_state (state4_1)
|
|||
|
else
|
|||
|
say_title(mob_name(SCHOLAR))
|
|||
|
say(gameforge.main_quest_flame_lv104._420_say)
|
|||
|
|
|||
|
set_state (state3_2)
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
when leave begin
|
|||
|
--q.done()
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
-- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>1-3
|
|||
|
state state4_1 begin
|
|||
|
when letter begin
|
|||
|
send_letter(gameforge.main_quest_flame_lv104._450_sendLetter)
|
|||
|
--npc Ÿ<><C5B8>
|
|||
|
local v = find_npc_by_vnum(SCHOLAR)
|
|||
|
if 0 != v then
|
|||
|
target.vid("__TARGET__", v, mob_name(SCHOLAR))
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
when button or info begin
|
|||
|
say_title(gameforge.main_quest_flame_lv104._450_sendLetter)
|
|||
|
say(gameforge.main_quest_flame_lv104._340_say)
|
|||
|
--npc Ÿ<><C5B8> <20>ȳ<EFBFBD><C8B3><EFBFBD>
|
|||
|
--say_reward(locale.target_npc_info)
|
|||
|
end
|
|||
|
|
|||
|
when SCHOLAR.chat.gameforge.main_quest_flame_lv104._450_sendLetter begin
|
|||
|
target.delete("__TARGET__")
|
|||
|
say_title(mob_name(SCHOLAR))
|
|||
|
say(gameforge.main_quest_flame_lv104._460_say)
|
|||
|
wait()--<2D>߰<EFBFBD> <20><>ȭ
|
|||
|
|
|||
|
say_title(mob_name(SCHOLAR))
|
|||
|
say(gameforge.main_quest_flame_lv104._470_say)
|
|||
|
wait()--<2D>߰<EFBFBD> <20><>ȭ
|
|||
|
|
|||
|
say_title(pc.getname())
|
|||
|
say(gameforge.main_quest_flame_lv104._050_say)
|
|||
|
--<2D><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ<EFBFBD><C6AE>
|
|||
|
set_state (state4_2)
|
|||
|
end
|
|||
|
|
|||
|
when leave begin
|
|||
|
--q.done()
|
|||
|
end
|
|||
|
end
|
|||
|
state state4_2 begin
|
|||
|
when enter begin
|
|||
|
-- notice <20><><EFBFBD><EFBFBD>
|
|||
|
notice_multiline(gameforge.main_quest_flame_lv104._480_notice,notice)
|
|||
|
end
|
|||
|
|
|||
|
when letter begin
|
|||
|
send_letter(gameforge.main_quest_flame_lv104._450_sendLetter)
|
|||
|
--<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
|||
|
q.set_counter_name(gameforge.main_quest_lv97._670_counterName)
|
|||
|
main_quest_flame_lv104.item_count_state4_2()
|
|||
|
end
|
|||
|
|
|||
|
when button or info begin
|
|||
|
say_title(gameforge.main_quest_flame_lv104._450_sendLetter)
|
|||
|
say(gameforge.main_quest_flame_lv104._490_say)
|
|||
|
--<2D><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ȳ<EFBFBD><C8B3><EFBFBD>
|
|||
|
say(gameforge.main_quest_lv97._670_counterName)
|
|||
|
local remain = 5 - pc.count_item(31024)
|
|||
|
if remain < 0 then
|
|||
|
remain = 0
|
|||
|
end
|
|||
|
say(string.format(gameforge.main_quest_lv90._1190_say,item_name(31024), remain))
|
|||
|
end
|
|||
|
|
|||
|
when SCHOLAR.chat.gameforge.main_quest_flame_lv104._450_sendLetter begin
|
|||
|
say_title(mob_name(SCHOLAR))
|
|||
|
say(gameforge.main_quest_flame_lv104._500_say)
|
|||
|
end
|
|||
|
|
|||
|
when 3291.kill begin
|
|||
|
if number(1,1) == 1 then
|
|||
|
pc.give_item2(31024, 1)
|
|||
|
main_quest_flame_lv104.item_count_state4_2()
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
function item_count_state4_2()
|
|||
|
if pc.count_item(31024) >= 5 then
|
|||
|
set_state ("state4_3")
|
|||
|
end
|
|||
|
q.set_counter_value(5 - pc.count_item(31024))
|
|||
|
end
|
|||
|
|
|||
|
when leave begin
|
|||
|
--q.done()
|
|||
|
end
|
|||
|
end
|
|||
|
state state4_3 begin
|
|||
|
when enter begin
|
|||
|
-- notice <20><><EFBFBD><EFBFBD>
|
|||
|
notice_multiline(gameforge.main_quest_flame_lv104._520_notice,notice)
|
|||
|
end
|
|||
|
|
|||
|
when letter begin
|
|||
|
send_letter(gameforge.main_quest_flame_lv104._450_sendLetter)
|
|||
|
--npc Ÿ<><C5B8>
|
|||
|
local v = find_npc_by_vnum(SCHOLAR)
|
|||
|
if 0 != v then
|
|||
|
target.vid("__TARGET__", v, mob_name(SCHOLAR))
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
when button or info begin
|
|||
|
say_title(gameforge.main_quest_flame_lv104._450_sendLetter)
|
|||
|
say(gameforge.main_quest_flame_lv104._440_say)
|
|||
|
--npc Ÿ<><C5B8> <20>ȳ<EFBFBD><C8B3><EFBFBD>
|
|||
|
--say_reward(locale.target_npc_info)
|
|||
|
end
|
|||
|
|
|||
|
when SCHOLAR.chat.gameforge.main_quest_flame_lv104._450_sendLetter begin
|
|||
|
target.delete("__TARGET__")
|
|||
|
if pc.count_item(31024) < 5 then
|
|||
|
say_title(mob_name(SCHOLAR))
|
|||
|
say(gameforge.main_quest_flame_lv104._500_say)
|
|||
|
|
|||
|
set_state (state4_2)
|
|||
|
else
|
|||
|
pc.remove_item(31024, 5)
|
|||
|
say_title(mob_name(SCHOLAR))
|
|||
|
say(gameforge.main_quest_flame_lv104._510_say)
|
|||
|
|
|||
|
wait()
|
|||
|
say_reward(string.format(gameforge.main_quest_lv60._190_sayReward, 45580000))
|
|||
|
pc.give_exp2( 45580000)
|
|||
|
say_reward(string.format(gameforge.main_quest_lv60._200_sayReward, 173000))
|
|||
|
pc.change_money(173000)
|
|||
|
say_reward(string.format(gameforge.main_quest_lv60._210_sayReward, item_name(71095),1))
|
|||
|
pc.give_item2(71095, 1)
|
|||
|
say_reward(string.format(gameforge.main_quest_lv60._210_sayReward, item_name(30015),2)) -- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ǰ
|
|||
|
pc.give_item2(30015, 2)
|
|||
|
say_reward(string.format(gameforge.main_quest_lv60._210_sayReward, item_name(70043),1)) -- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>尩
|
|||
|
pc.give_item2_select(70043)
|
|||
|
item.set_socket(2, 60)
|
|||
|
say_reward(string.format(gameforge.main_quest_lv60._210_sayReward, item_name(31083),3)) -- <20><><EFBFBD><EFBFBD> <20>ָӴ<D6B8>
|
|||
|
pc.give_item2(31083, 3)
|
|||
|
|
|||
|
say()
|
|||
|
say_title(string.format(gameforge.main_quest_flame_lv99._430_say, 105))
|
|||
|
--<2D><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ<EFBFBD><C6AE>
|
|||
|
set_quest_state ("main_quest_flame_lv105", "state0")
|
|||
|
set_state (__COMPLETE__)
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
when leave begin
|
|||
|
--q.done()
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
|
|||
|
state __COMPLETE__ begin
|
|||
|
when enter begin
|
|||
|
--q.done()
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
|
|||
|
|
|||
|
end
|