quest collect_quest_lv30 begin
state start begin
when login or levelup with pc.level>=30 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._150_sayTitle)
end
send_letter(gameforge.collect_quest_lv30._10_sendLetter)
end
when button or info begin
say_title(gameforge.collect_quest_lv30._10_sendLetter)
say(gameforge.collect_quest_lv30._20_say)
end
when __TARGET__.target.click or 20084.chat.gameforge.collect_quest_lv30._30_npcChat begin
target.delete("__TARGET__")
say_title(gameforge.collect_herb_lv10._50_sayTitle)
say(gameforge.collect_quest_lv30._40_say)
wait()
say_title(gameforge.collect_herb_lv10._50_sayTitle)
say(gameforge.collect_quest_lv30._50_say)
wait()
say_title(gameforge.collect_herb_lv10._150_sayTitle)
say(gameforge.collect_quest_lv30._60_say)
set_state(go_to_disciple)
pc.setqf("duration",0)
pc.setqf("collect_count",0)
pc.setqf("drink_drug",0)
end
end
state go_to_disciple begin
when letter begin
send_letter(gameforge.collect_quest_lv30._70_sendLetter)
end
when button or info begin
say_title(gameforge.collect_quest_lv30._80_sayTitle)
say(gameforge.collect_quest_lv30._90_say)
say_item_vnum(30006)
say_reward(string.format(gameforge.collect_quest_lv30._100_sayReward, pc.getqf("collect_count")))
end
when 71035.use begin
if get_time()<pc.getqf("duration") then
say(gameforge.collect_quest_lv30._110_say)
return
end
if pc.getqf("drink_drug")==1 then
say(gameforge.collect_quest_lv30._120_say)
return
end
if pc.count_item(30006)==0 then
say_title(gameforge.collect_herb_lv10._50_sayTitle)
say(gameforge.collect_quest_lv30._130_say)
return
end
pc.remove_item(71035,1)
pc.setqf("drink_drug",1)
end
when 601.kill begin
local s=number(1,100)
if s<=5 then
pc.give_item2(30006,1)
end
end
when 20084.chat.gameforge.collect_quest_lv30._140_npcChat with pc.count_item(30006)>0 begin
if get_time()>pc.getqf("duration") then
if pc.count_item(30006)>0 then
say_title(gameforge.collect_herb_lv10._150_sayTitle)
say(gameforge.collect_quest_lv30._150_say)
pc.remove_item("30006",1)
wait()
local pass_percent
if pc.getqf("drink_drug")==0 then
pass_percent=60
else
if true==pet.is_summon(34003) or true==pet.is_summon(34001) then
pass_percent=92
else
pass_percent=90
end
end
local s=number(1,100)
if s<=pass_percent then
if pc.getqf("collect_count")<9 then
local index=pc.getqf("collect_count")+1
pc.setqf("collect_count",index)
say_title(gameforge.collect_herb_lv10._150_sayTitle)
say(string.format(gameforge.collect_quest_lv30._160_say,10-pc.getqf("collect_count")))
pc.setqf("drink_drug",0)
return
end
say_title(gameforge.collect_herb_lv10._50_sayTitle)
say(gameforge.collect_quest_lv30._170_say)
pc.setqf("collect_count",0)
pc.setqf("drink_drug",0)
pc.setqf("duration",0)
set_state(key_item)
return
else
say_title(gameforge.collect_herb_lv10._50_sayTitle)
say(gameforge.collect_quest_lv30._180_say)
pc.setqf("drink_drug",0)
return
end
else
say_title(gameforge.collect_herb_lv10._50_sayTitle)
--say(string.format(gameforge.collect_quest_lv30._190_say,item_name(30006)))
say(gameforge.collect_quest_lv30._190_say)
return
end
else
say_title(gameforge.collect_herb_lv10._50_sayTitle)
say(gameforge.collect_quest_lv30._200_say)
return
end
end
end
state key_item begin
when letter begin
send_letter(gameforge.collect_quest_lv30._210_sendLetter)
if pc.count_item(30220)>0 then
local v=find_npc_by_vnum(20084)
if v!=0 then
target.vid("__TARGET__",v,gameforge.collect_herb_lv10._150_sayTitle)
end
end
end
when button or info begin
if pc.count_item(30220)>0 then
say_title(gameforge.collect_quest_lv30._220_sayTitle)
say_reward(gameforge.collect_quest_lv30._230_sayReward)
return
end
say_title(gameforge.collect_quest_lv30._220_sayTitle)
say(gameforge.collect_quest_lv30._240_say)
say_item_vnum(30220)
say(gameforge.collect_quest_lv30._250_say)
end
when 631.kill or 632.kill or 633.kill or 634.kill or 635.kill or 636.kill or 637.kill begin
local s=number(1,100)
if s==1 and pc.count_item(30220)==0 then
pc.give_item2(30220,1)
send_letter(gameforge.collect_quest_lv30._260_sendLetter)
end
end
when __TARGET__.target.click or 20084.chat.gameforge.collect_quest_lv30._270_npcChat with pc.count_item(30220)>0 begin
target.delete("__TARGET__")
if pc.count_item(30220)>0 then
say_title(gameforge.collect_herb_lv10._150_sayTitle)
say(gameforge.collect_quest_lv30._280_say)
pc.remove_item(30220,1)
set_state(__reward)
else
say_title(gameforge.collect_herb_lv10._150_sayTitle)
--say(string.format(gameforge.collect_quest_lv30._290_say, item_name(30220)))
say(gameforge.collect_quest_lv30._290_say)
return
end
end
end
state __reward begin
when letter begin
send_letter(gameforge.collect_quest_lv30._300_sendLetter)
local v=find_npc_by_vnum(20018)
if v!=0 then
target.vid("__TARGET__",v,gameforge.collect_quest_lv30._310_targetVid)
end
end
when button or info begin
say_title(gameforge.collect_quest_lv30._300_sendLetter)
say(gameforge.collect_quest_lv30._320_say)
end
when __TARGET__.target.click or 20018.chat.gameforge.collect_quest_lv30._330_npcChat begin
target.delete("__TARGET__")
say_title(gameforge.collect_quest_lv30._340_sayTitle)
say(gameforge.collect_quest_lv30._350_say)
say_reward(gameforge.collect_quest_lv30._360_sayReward)
affect.add_collect(apply.MOV_SPEED,10,60*60*24*365*60)--60Jahre
pc.give_item2(50109)
clear_letter()
set_quest_state("collect_quest_lv40","run")
notice_all("Jucatorul "..pc.get_name().." tocmai a terminat misiunea dintilor orc cu nivel "..pc.get_level()..". Felicitari!")
set_state(__complete)
end
end
state __giveup__ begin
when 20084.chat.gameforge.collect_quest_lv30._370_npcChat begin
say_title(gameforge.collect_herb_lv10._50_sayTitle)
say(gameforge.collect_quest_lv30._380_say)
set_state(start)
end
end
state __complete begin
end
end