forked from metin2/server
Restructured gamefiles, locale data loading refactoring, docker build fixes
This commit is contained in:
138
gamefiles/data/quest/collect_herb_lv25.quest
Normal file
138
gamefiles/data/quest/collect_herb_lv25.quest
Normal file
@ -0,0 +1,138 @@
|
||||
quest make_herb_lv25 begin
|
||||
state start begin
|
||||
when login or levelup with pc.get_level() ==25 begin
|
||||
set_state(information)
|
||||
end
|
||||
end
|
||||
|
||||
state information begin
|
||||
when letter begin
|
||||
local v = find_npc_by_vnum(20084)
|
||||
if v != 0 then
|
||||
target.vid("__TARGET__", v, gameforge.collect_herb_lv10._10_targetVid)
|
||||
end
|
||||
send_letter(gameforge.collect_herb_lv10._20_sendLetter)
|
||||
end
|
||||
|
||||
when button or info begin
|
||||
say_title(gameforge.collect_herb_lv10._20_sendLetter)
|
||||
say(gameforge.collect_herb_lv25._10_say)
|
||||
end
|
||||
|
||||
when __TARGET__.target.click or 20084.chat.gameforge.collect_herb_lv10._40_npcChat begin
|
||||
target.delete("__TARGET__")
|
||||
say_title(gameforge.collect_herb_lv10._50_sayTitle)
|
||||
say(gameforge.collect_herb_lv25._20_say)
|
||||
wait()
|
||||
say_title(gameforge.collect_herb_lv10._50_sayTitle)
|
||||
say(gameforge.collect_herb_lv25._30_say)
|
||||
set_state(go_to_disciple)
|
||||
pc.setqf("collect_count",0)--Current number of items
|
||||
pc.setqf("drink_drug",0) --when take the Potion of Daze
|
||||
end
|
||||
end
|
||||
|
||||
state go_to_disciple begin
|
||||
when letter begin
|
||||
send_letter(gameforge.collect_herb_lv10._80_sendLetter)
|
||||
|
||||
end
|
||||
when button or info begin
|
||||
say_title(gameforge.collect_herb_lv25._40_sayTitle)
|
||||
say(gameforge.collect_herb_lv25._50_say)
|
||||
say_item_vnum(50706)
|
||||
say_reward(string.format(gameforge.collect_herb_lv25._60_sayReward, pc.getqf("collect_count")))
|
||||
end
|
||||
|
||||
when 71035.use begin --Potion of Daze
|
||||
|
||||
if pc.getqf("drink_drug")==1 then
|
||||
say(gameforge.collect_herb_lv10._120_say)
|
||||
|
||||
return
|
||||
end
|
||||
if pc.count_item(50706)==0 then
|
||||
say(gameforge.collect_herb_lv25._70_say)
|
||||
return
|
||||
end
|
||||
pc.remove_item(71035, 1)
|
||||
pc.setqf("drink_drug",1)
|
||||
end
|
||||
|
||||
|
||||
when 183.kill begin
|
||||
if pc.count_item(50706)<10 - pc.getqf("collect_count") then
|
||||
pc.give_item2(50706, 1)
|
||||
end
|
||||
end
|
||||
|
||||
when 20084.chat.gameforge.collect_herb_lv25._80_npcChat with pc.count_item(50706) >0 begin
|
||||
say_title(gameforge.collect_herb_lv10._50_sayTitle)
|
||||
say(gameforge.collect_herb_lv25._90_say)
|
||||
pc.remove_item(50706, 1)
|
||||
wait()
|
||||
|
||||
local pass_percent
|
||||
if pc.getqf("drink_drug")==0 then
|
||||
pass_percent=70
|
||||
else
|
||||
pass_percent=100
|
||||
end
|
||||
|
||||
local s= number(1,100)
|
||||
if s<= pass_percent then
|
||||
if pc.getqf("collect_count")< 9 then --Less than 10
|
||||
local index =pc.getqf("collect_count")+1
|
||||
pc.setqf("collect_count",index) --you got one, so you would get +1
|
||||
say_title(gameforge.collect_herb_lv10._50_sayTitle)
|
||||
say(string.format(gameforge.collect_herb_lv25._100_say, 10-pc.getqf("collect_count")))
|
||||
pc.setqf("drink_drug",0) --Initialize the potion
|
||||
return
|
||||
end
|
||||
say_title(gameforge.collect_herb_lv10._50_sayTitle)
|
||||
say(gameforge.collect_herb_lv25._110_say)
|
||||
say_reward(gameforge.collect_herb_lv25._120_sayReward)
|
||||
|
||||
if pc.job==0 then
|
||||
pc.give_item2(12222)
|
||||
say_reward(gameforge.collect_herb_lv25._130_sayReward)
|
||||
end
|
||||
if pc.job==1 then
|
||||
pc.give_item2(12362)
|
||||
say_reward(gameforge.collect_herb_lv25._140_sayReward)
|
||||
end
|
||||
if pc.job==2 then
|
||||
pc.give_item2(12502)
|
||||
say_reward(gameforge.collect_herb_lv25._150_sayReward)
|
||||
end
|
||||
if pc.job==3 then
|
||||
pc.give_item2(12642)
|
||||
say_reward(gameforge.collect_herb_lv25._160_sayReward)
|
||||
end
|
||||
|
||||
pc.setqf("collect_count",0)
|
||||
pc.setqf("drink_drug",0)
|
||||
|
||||
clear_letter()
|
||||
set_state(__complete)
|
||||
|
||||
pc.change_money(20000)
|
||||
pc.give_exp2(200000)
|
||||
set_quest_state("levelup","run")
|
||||
|
||||
return
|
||||
else
|
||||
say_title(gameforge.collect_herb_lv10._50_sayTitle)
|
||||
say(gameforge.collect_herb_lv25._170_say)
|
||||
pc.setqf("drink_drug",0) --Initialize Potion
|
||||
return
|
||||
end
|
||||
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
|
||||
state __complete begin
|
||||
end
|
||||
end
|
Reference in New Issue
Block a user