quest make_herb_lv20 begin state start begin when login or levelup with pc.get_level() ==20 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_lv20._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_lv10._60_say) wait() say_title(gameforge.collect_herb_lv10._50_sayTitle) say(gameforge.collect_herb_lv20._20_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_lv15._50_sendLetter) end when button or info begin say_title(gameforge.collect_herb_lv20._30_sayTitle) say(gameforge.collect_herb_lv20._40_say) say_item_vnum(50705) say_reward(string.format(gameforge.collect_herb_lv20._50_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_lv10._120_say) return end if pc.count_item(50705)==0 then say_title(gameforge.collect_herb_lv10._50_sayTitle) say(gameforge.collect_herb_lv20._60_say) return end pc.remove_item(71035, 1) pc.setqf("drink_drug",1) end when 182.kill begin if pc.count_item(50705)< 10 - pc.getqf("collect_count")then pc.give_item2(50705, 1) end end when 20084.chat.gameforge.collect_herb_lv20._70_npcChat with pc.count_item(50705) >0 begin say_title(gameforge.collect_herb_lv10._50_sayTitle) say(gameforge.collect_herb_lv20._80_say) pc.remove_item(50705, 1) wait() local pass_percent if pc.getqf("drink_drug")==0 then pass_percent=80 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_lv20._90_sayTitle) say(string.format(gameforge.collect_herb_lv20._100_say, 10-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_lv20._110_say) say_reward(gameforge.collect_herb_lv20._120_sayReward) pc.setqf("collect_count",0) pc.setqf("drink_drug",0) clear_letter() set_state(__complete) pc.give_item2(14023) pc.change_money(15000) pc.give_exp2(95000) set_quest_state("levelup","run") return else say_title(gameforge.collect_herb_lv10._50_sayTitle) say(gameforge.collect_herb_lv20._130_say) pc.setqf("drink_drug",0) --Initialize Potion return end end end state __complete begin end end