if pc . getqf ( "collect_count_1" ) < new_quest_lv54_neededAmountDrop1 then 
if math . random ( 1 , 100 ) <= new_quest_lv54_dropProb1 then 
local index = pc . getqf ( "collect_count_1" ) + 1 
pc . setqf ( "collect_count_1" , index ) 
pc . give_item2 ( new_quest_lv54_drop1 ) 
if new_quest_lv54_neededAmountDrop1 == pc . getqf ( "collect_count_1" ) then 
notice_multiline ( gameforge . new_quest_lv54 . _082_notice , notice ) 
pc . setqf ( "collect_count_1" , index - new_quest_lv54_neededAmountDrop1 ) 
q . done ( ) 
set_state ( "backto_yangshin" ) 
else 
notice ( string . format ( gameforge . new_quest_lv54 . _081_notice , new_quest_lv54_neededAmountDrop1 - pc . getqf ( "collect_count_1" ) ) ) 
end 
else 
notice_multiline ( gameforge . new_quest_lv54 . _083_notice , notice ) 
end 
end 
