forked from metin2/server
129 lines
3.6 KiB
Plaintext
129 lines
3.6 KiB
Plaintext
|
quest make_herb_lv4 begin
|
||
|
state start begin
|
||
|
when login or levelup with pc.get_level() == 4 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_lv4._10_sendLetter)
|
||
|
end
|
||
|
|
||
|
when button or info begin
|
||
|
say_title(gameforge.collect_herb_lv4._10_sendLetter)
|
||
|
say(gameforge.collect_herb_lv4._20_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_lv4._30_say)
|
||
|
wait()
|
||
|
say_title(gameforge.collect_herb_lv10._50_sayTitle)
|
||
|
say(gameforge.collect_herb_lv4._40_say)
|
||
|
set_state(go_to_disciple)
|
||
|
pc.setqf("collect_count",0)--Current number of items
|
||
|
pc.setqf("drink_drug",0) --when take 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_lv4._50_sayTitle)
|
||
|
say(gameforge.collect_herb_lv4._60_say)
|
||
|
say_item_vnum(50701)
|
||
|
say_reward(string.format(gameforge.collect_herb_lv4._70_sayReward, pc.getqf("collect_count")))
|
||
|
end
|
||
|
|
||
|
when 71035.use begin --Potion of Daze
|
||
|
if pc.getqf("drink_drug")==1 then
|
||
|
say_title(gameforge.collect_herb_lv10._50_sayTitle)
|
||
|
say(gameforge.collect_herb_lv4._80_say)
|
||
|
|
||
|
return
|
||
|
end
|
||
|
if pc.count_item(50701)==0 then
|
||
|
say_title(gameforge.collect_herb_lv10._50_sayTitle)
|
||
|
say(gameforge.collect_herb_lv4._90_say)
|
||
|
return
|
||
|
end
|
||
|
pc.remove_item(71035, 1)
|
||
|
pc.setqf("drink_drug",1)
|
||
|
end
|
||
|
|
||
|
|
||
|
when 173.kill begin
|
||
|
if pc.count_item(50701)<5-pc.getqf("collect_count") then
|
||
|
pc.give_item2(50701, 1)
|
||
|
end
|
||
|
end
|
||
|
|
||
|
when 20084.chat.gameforge.collect_herb_lv4._100_npcChat with pc.count_item(50701) >0 begin
|
||
|
say_title(gameforge.collect_herb_lv10._150_sayTitle)
|
||
|
say(gameforge.collect_herb_lv10._160_say)
|
||
|
pc.remove_item(50701, 1)
|
||
|
wait()
|
||
|
|
||
|
local pass_percent
|
||
|
if pc.getqf("drink_drug")==0 then
|
||
|
pass_percent=90
|
||
|
else
|
||
|
pass_percent=100
|
||
|
end
|
||
|
|
||
|
local s= number(1,100)
|
||
|
if s<= pass_percent then
|
||
|
if pc.getqf("collect_count")< 4 then --Less than 5
|
||
|
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_lv4._110_say, 5-pc.getqf("collect_count")))
|
||
|
pc.setqf("drink_drug",0) --Initialize the potions
|
||
|
return
|
||
|
end
|
||
|
say_title(gameforge.collect_herb_lv10._50_sayTitle)
|
||
|
say(gameforge.collect_herb_lv4._120_say)
|
||
|
say_title(gameforge.collect_herb_lv4._130_sayTitle)
|
||
|
say_reward(gameforge.collect_herb_lv4._140_sayReward)
|
||
|
pc.setqf("collect_count",0)
|
||
|
pc.setqf("drink_drug",0)
|
||
|
clear_letter()
|
||
|
set_state(__complete)
|
||
|
|
||
|
if pc.job==3 then
|
||
|
pc.give_item2(07003)
|
||
|
say_reward(gameforge.collect_herb_lv4._150_sayReward)
|
||
|
return
|
||
|
else
|
||
|
pc.give_item2(00013)
|
||
|
say_reward(gameforge.collect_herb_lv4._160_sayReward)
|
||
|
|
||
|
end
|
||
|
pc.change_money(1000)
|
||
|
pc.give_exp2(500)
|
||
|
set_quest_state("levelup","run")
|
||
|
|
||
|
else
|
||
|
say_title(gameforge.collect_herb_lv10._50_sayTitle)
|
||
|
say(gameforge.collect_herb_lv4._170_say)
|
||
|
pc.setqf("drink_drug",0) --Initialize Potions
|
||
|
return
|
||
|
end
|
||
|
|
||
|
end
|
||
|
end
|
||
|
|
||
|
|
||
|
state __complete begin
|
||
|
end
|
||
|
end
|