forked from metin2/server
186 lines
7.0 KiB
Plaintext
186 lines
7.0 KiB
Plaintext
|
quest new_quest_lv43 begin
|
|||
|
|
|||
|
state start begin
|
|||
|
when login or levelup with pc.get_level() >= 43 begin
|
|||
|
pc.setqf("collect_count_1", 1) -- this qf holds the ammount ouf items the character has to collect
|
|||
|
set_state(information)
|
|||
|
end
|
|||
|
end
|
|||
|
-- player asks wonda-rim, if his uncle chaegirab likes him now better -----------------------------------------
|
|||
|
-- wonda-rim grew up without parent, wants get to know more about his ancestry -----------------------------------------
|
|||
|
state information begin
|
|||
|
when login or enter begin
|
|||
|
send_letter(gameforge.new_quest_lv43._005_send_letter)
|
|||
|
q.start()
|
|||
|
q.set_title(gameforge.new_quest_lv43._005_send_letter)
|
|||
|
local v=find_npc_by_vnum(20087) -- Wonda-Rim
|
|||
|
if 0==v then
|
|||
|
else
|
|||
|
target.vid("__TARGET__", v, gameforge.new_quest_lv43._010_target)
|
|||
|
end
|
|||
|
end
|
|||
|
when button or info begin
|
|||
|
say_title(gameforge.new_quest_lv43._005_send_letter)
|
|||
|
say(gameforge.new_quest_lv43._011_say)
|
|||
|
say("")
|
|||
|
say(string.format(gameforge.new_quest_lv43._012_say, get_map_name_by_number(1)))
|
|||
|
end
|
|||
|
|
|||
|
when 20087.chat.gameforge.new_quest_lv43._005_send_letter begin
|
|||
|
target.delete("__TARGET__")
|
|||
|
say_title(gameforge.new_quest_lv43._021_say_title) -- yellow text headline
|
|||
|
say(gameforge.new_quest_lv43._020_say)
|
|||
|
say(gameforge.new_quest_lv43._022_say) -- white font text
|
|||
|
wait()
|
|||
|
say_title(gameforge.new_quest_lv43._021_say_title) -- yellow text headline
|
|||
|
say(gameforge.new_quest_lv43._023_say_reward)
|
|||
|
q.done()
|
|||
|
local doquest = select(gameforge.new_quest_lv43._024_select, gameforge.subquest_12._50_select, gameforge.new_quest_lv75._290_2_select)
|
|||
|
if doquest ==1 then
|
|||
|
set_state(ask_chaegirab)
|
|||
|
elseif doquest == 3 then
|
|||
|
say(gameforge.subquest_06._60_say)
|
|||
|
local abortquest = select(gameforge.subquest_06._70_select, gameforge.subquest_06._80_select)
|
|||
|
if abortquest == 1 then
|
|||
|
pc.setqf("collect_count_1", 0) -- resetting collect counter -> to be deleated
|
|||
|
set_state(__GIVEUP__)
|
|||
|
else
|
|||
|
say_title(gameforge.new_quest_lv43._021_say_title) -- yellow text headline
|
|||
|
say(gameforge.subquest_11._80_say)
|
|||
|
return
|
|||
|
end
|
|||
|
else
|
|||
|
say_title(gameforge.new_quest_lv43._021_say_title) -- yellow text headline
|
|||
|
say(gameforge.subquest_11._80_say)
|
|||
|
return
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
-- player shall ask uncle chaegirab about wonda-rims ancestry -----------------------------------------
|
|||
|
state ask_chaegirab begin
|
|||
|
when enter or login begin
|
|||
|
send_letter(gameforge.new_quest_lv43._006_send_letter)
|
|||
|
q.start()
|
|||
|
q.set_title(gameforge.new_quest_lv43._006_send_letter)
|
|||
|
local v=find_npc_by_vnum(20084) --Chaegirab
|
|||
|
if 0==v then
|
|||
|
else
|
|||
|
target.vid("__TARGET2__", v, gameforge.new_quest_lv43._030_target )
|
|||
|
end
|
|||
|
end
|
|||
|
when button or info begin
|
|||
|
say_title(gameforge.new_quest_lv43._006_send_letter)
|
|||
|
say(gameforge.new_quest_lv43._025_say)
|
|||
|
say("")
|
|||
|
say(string.format(gameforge.new_quest_lv43._026_say, get_map_name_by_number(1)))
|
|||
|
end
|
|||
|
|
|||
|
when 20084.chat.gameforge.new_quest_lv43._006_send_letter begin
|
|||
|
target.delete("__TARGET2__")
|
|||
|
say_title(gameforge.new_quest_lv43._031_say_title) -- yellow text headline
|
|||
|
say(gameforge.new_quest_lv43._032_say)
|
|||
|
wait()
|
|||
|
say_title(gameforge.new_quest_lv43._031_say_title)
|
|||
|
say(gameforge.new_quest_lv43._033_say)
|
|||
|
wait()
|
|||
|
say_title(gameforge.new_quest_lv43._031_say_title)
|
|||
|
say(gameforge.new_quest_lv43._034_say)
|
|||
|
say_reward(gameforge.new_quest_lv43._035_say_reward)
|
|||
|
q.done()
|
|||
|
set_state(hunting)
|
|||
|
end
|
|||
|
end
|
|||
|
-- because chaegirab found the foundling wonda-rim in the valley of seungryong, the player has to hunt orcs to get imfomation about wonda-rims parents -----------------------------------------
|
|||
|
state hunting begin
|
|||
|
when enter or login begin
|
|||
|
new_quest_lv43_dropProb1 = 5
|
|||
|
new_quest_lv43_drop1 = 30142 -- letter
|
|||
|
send_letter(gameforge.new_quest_lv43._006_send_letter)
|
|||
|
q.start()
|
|||
|
q.set_title(gameforge.new_quest_lv43._006_send_letter)
|
|||
|
end
|
|||
|
-------------- the orc drops a letter from wonda-rims parents ------------------------------------------------------
|
|||
|
-- kill a 603#Ork-K<>mpfer
|
|||
|
when 603.kill begin
|
|||
|
if pc.getqf("collect_count_1") > 0 then
|
|||
|
if math.random(1,100) <= new_quest_lv43_dropProb1 then -- probability if s.th. drops
|
|||
|
local index = pc.getqf("collect_count_1") - 1
|
|||
|
pc.setqf("collect_count_1",index) --you got one, so you would get -1 item to find
|
|||
|
pc.give_item2(new_quest_lv43_drop1) -- letter
|
|||
|
notice_multiline(gameforge.new_quest_lv43._043_notice, notice)
|
|||
|
if pc.getqf("collect_count_1") == 0 then
|
|||
|
q.done()
|
|||
|
set_state(goto_wondarim)
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
when info or button begin
|
|||
|
say_title(gameforge.new_quest_lv43._006_send_letter)
|
|||
|
if pc.getqf("collect_count_1") != 0 then
|
|||
|
say(gameforge.new_quest_lv43._041_say)
|
|||
|
else
|
|||
|
q.done()
|
|||
|
set_state(goto_wondarim)
|
|||
|
end
|
|||
|
end
|
|||
|
when 20084.chat.gameforge.new_quest_lv43._006_send_letter begin
|
|||
|
say_title(gameforge.new_quest_lv43._006_send_letter)
|
|||
|
say(gameforge.new_quest_lv43._045_say)
|
|||
|
end
|
|||
|
end
|
|||
|
-------------- the letter contains imformation about wonda-rims parents and why the had to abandon him------------------------------------------------------
|
|||
|
state goto_wondarim begin
|
|||
|
when enter or login begin
|
|||
|
new_quest_lv43_amountYang = 32000
|
|||
|
new_quest_lv43_amountXp = 1250000
|
|||
|
send_letter(gameforge.new_quest_lv43._006_send_letter)
|
|||
|
q.start()
|
|||
|
q.set_title(gameforge.new_quest_lv43._006_send_letter)
|
|||
|
local v=find_npc_by_vnum(20087) -- Wonda-Rim
|
|||
|
if 0==v then
|
|||
|
else
|
|||
|
target.vid("__TARGET3__", v, gameforge.new_quest_lv43._010_target)
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
when button or info begin
|
|||
|
say_title(gameforge.new_quest_lv43._006_send_letter)
|
|||
|
say(gameforge.new_quest_lv43._050_say)
|
|||
|
say("")
|
|||
|
say(string.format(gameforge.new_quest_lv43._012_say, get_map_name_by_number(1)))
|
|||
|
end
|
|||
|
|
|||
|
when 20087.chat.gameforge.new_quest_lv43._006_send_letter begin
|
|||
|
say_title(gameforge.new_quest_lv43._021_say_title) -- yellow text headline
|
|||
|
if pc.count_item(new_quest_lv43_drop1) == 1 and pc.getqf("collect_count_1") < 1 then
|
|||
|
target.delete("__TARGET3__")
|
|||
|
say(gameforge.new_quest_lv43._049_say) -- locakey needs to be reviewed. Should be a conversation and not a summery!
|
|||
|
say(gameforge.new_quest_lv43._050_say) -- locakey needs to be reviewed.
|
|||
|
say(gameforge.new_quest_lv43._051_say) -- locakey needs to be reviewed.
|
|||
|
wait()
|
|||
|
say_title(gameforge.new_quest_lv43._052_say_title) -- locakey needs to be reviewed.
|
|||
|
say_reward(string.format(gameforge.new_quest_lv43._054_say_reward, new_quest_lv43_amountXp))
|
|||
|
say_reward(string.format(gameforge.new_quest_lv43._053_say_reward, new_quest_lv43_amountYang))
|
|||
|
pc.change_money(new_quest_lv43_amountYang)
|
|||
|
pc.give_exp2(new_quest_lv43_amountXp)
|
|||
|
pc.remove_item(30142)
|
|||
|
q.done()
|
|||
|
set_state(__COMPLETE__)
|
|||
|
else
|
|||
|
say(gameforge.new_quest_lv43._060_say)
|
|||
|
set_state(start)
|
|||
|
return
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
------ give up ------------------------------------------------------------------------------------------------------
|
|||
|
state __GIVEUP__ begin
|
|||
|
end
|
|||
|
------ complete ------------------------------------------------------------------------------------------------------
|
|||
|
state __COMPLETE__ begin
|
|||
|
end
|
|||
|
end
|