All pastes #445944 Raw Edit

Chao7

public lua v1 · immutable
#445944 ·published 2007-04-18 05:27 UTC
rendered paste body
---------------------------------------------------------------------------------------------------------- Dialog & InfoPortions Function------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ Trader--------------------------------------------------------------------------------------------------------function trader_alredy_give_job(trader, actor)	if (has_alife_info("agroprom_military_case") and not has_alife_info("agroprom_military_case_done")) or	   (has_alife_info("escape_blockpost_case") and not has_alife_info("escape_blockpost_case_done")) or	   (has_alife_info("tutorial_artefact_start") and not has_alife_info("tutorial_artefact_done")) or	   (has_alife_info("tutorial_wounded_start") and not has_alife_info("esc_serious_talk"))	then		return true	end	return false endfunction trader_give_extra_job(trader, actor)	local actor = db.actor	if has_alife_info("escape_blockpost_case") and not has_alife_info("escape_blockpost_case_done")	then		return true	end	return falseendfunction bandits_die(actor,npc)	local actor = db.actor	if has_alife_info("esc_kill_bandits_quest_kill") and not has_alife_info("esc_kill_bandits_noquest_kill")	then		return true	end	return falseendfunction trader_need_extra_job(trader, actor)	if not has_alife_info("escape_blockpost_case") and 	    has_alife_info("esc_return")	then		return true	end	return falseendfunction is_tutorial()	return not has_alife_info("tutorial_end")endfunction is_not_tutorial()	return has_alife_info("tutorial_end")endfunction is_not_tutorial_art(actor, trader)	local tutorial_artefact = db.actor:object("af_blood_tutorial")	if (has_alife_info("tutorial_artefact_start") and not has_alife_info("tutorial_artefact_done")		and  tutorial_artefact ~= nil) or has_alife_info("tutorial_artefact_done")	then		return true	end	return falseendfunction not_final_job(trader, actor)	local actor = db.actor	return not has_alife_info("escape_blockpost_case_done")endfunction trader_test(actor, npc) 	printf ("!!!!!")		return trueendfunction trader_dont_give_job(first_speaker, second_speaker)	return not trader_alredy_give_job(first_speaker, second_speaker)endfunction finalize_quests(first_speaker, second_speaker)	if tutorial_artefact_end(first_speaker, second_speaker) == true or	   tutorial_wounded_end(first_speaker, second_speaker) == true	then		return true	end	return falseendfunction not_finalize_quests(first_speaker, second_speaker)	return not this.finalize_quests(first_speaker, second_speaker)	endfunction tutorial_artefact_end(first_speaker, second_speaker)	local actor = db.actor	local tutorial_artefact = first_speaker:object("af_blood_tutorial")	if has_alife_info("tutorial_artefact_start") and 	   not has_alife_info("tutorial_artefact_done") and	   tutorial_artefact ~= nil	then		return true	end	return falseendfunction tutorial_artefact_have_not(first_speaker, second_speaker)	local actor = db.actor	local tutorial_artefact = first_speaker:object("af_blood_tutorial")	if has_alife_info("tutorial_artefact_start") and 	   not has_alife_info("tutorial_artefact_done") and	   tutorial_artefact == nil	then		return true	end	return falseendfunction tutorial_wounded_end(first_speaker, second_speaker)	local actor = db.actor	-- local wounded_flash = first_speaker:object("esc_wounded_flash")	if has_alife_info("tutorial_wounded_start")	and 		has_alife_info("tutorial_wounded_give_info")	and 		   not has_alife_info("esc_serious_talk") -- and   wounded_flash ~= nil	then		return true	end	return falseendfunction trader_dont_has_job(first_speaker, second_speaker)    if trader_need_military_case(first_speaker, second_speaker) == false and	   trader_need_blockpost_box(first_speaker, second_speaker) == false	then		return true	end	return falseend--' Escape tutorial artefactfunction have_tutorial_artefact(first_speaker, second_speaker)  	return first_speaker:object("af_blood_tutorial") ~= nilendfunction give_medkit(first_speaker, second_speaker)	dialogs.relocate_item_section(first_speaker, "medkit", "in")endfunction give_tutorial_artefact(first_speaker, second_speaker)	dialogs.relocate_item_section(second_speaker, "af_blood_tutorial", "out")end--' Meet foxfunction have_fox_info(first_speaker, second_speaker)  	return first_speaker:object("fox_flash") ~= nilend--' fox helpfunction transfer_medikit_to_fox (player, wounded)	wounded:set_relation(game_object.friend, player)	db.actor:give_info_portion("escape_fox_heal")endfunction give_weapon_to_actor (trader, actor)    dialogs.relocate_item_section(trader, "wpn_pm", "in")    dialogs.relocate_item_section(trader, "ammo_9x18_fmj", "in")	dialogs.relocate_item_section(trader, "ammo_9x18_fmj", "in")    dialogs.relocate_item_section(trader, "wpn_knife", "in")     end--' Escape blockpost boxfunction have_blockpost_case(first_speaker, second_speaker)  	return first_speaker:object("quest_case_01") ~= nilendfunction give_blockpost_case(first_speaker, second_speaker)	dialogs.relocate_item_section(second_speaker, "quest_case_01", "out")endfunction give_blockpost_case_reward(first_speaker, second_speaker)	dialogs.relocate_money(first_speaker, 2000, "in")end--' Agroprom military casefunction trader_need_military_case(first_speaker, second_speaker)    if has_alife_info("esc_serious_talk") and	   not has_alife_info("agroprom_military_case")	then		return true	end	return falseend--' Escape trader artefactfunction have_artefact_from_fleshes(first_speaker, second_speaker)	local actor = db.actor	if actor ~= nil and	   (actor:object("af_vyvert") ~= nil or	   actor:object("af_gravi") ~= nil or	   actor:object("af_gold_fish") ~= nil)	then		return true	end  	return falseend--' ßùèê ñ áëîêïîñòàfunction trader_need_blockpost_box(first_speaker, second_speaker)    if has_alife_info("tutorial_end") and	   has_alife_info("esc_trader_speak") and	   not has_alife_info("escape_blockpost_case")	then		return true	end	return falseend--' tutorial wounded in vagonfunction wounded_need_help(first_speaker, second_speaker)	local actor = db.actor	return actor ~= nil and not has_alife_info( "tutorial_wounded_help" )end--' trader needs military documentsfunction trader_need_military_document(first_speaker, second_speaker)    if has_alife_info("escape_blockpost_case_done") and	   not has_alife_info("agroprom_military_case")	then		return true	end	return falseend--' trader dialog about docs from labx18function actor_has_documents (actor, npc)	if actor:object("dar_document4") then		return true	else		return false	endend--' Escape dynamite for Wolffunction transfer_wolf_reward(first_speaker, second_speaker)	dialogs.relocate_item_section(first_speaker, "af_medusa", "in")endfunction wolf_additional_reward(first_speaker, second_speaker)    dialogs.relocate_item_section(first_speaker, "medkit", "in")    dialogs.relocate_item_section(first_speaker, "bandage", "in")    dialogs.relocate_item_section(first_speaker, "wpn_fort", "in")    dialogs.relocate_item_section(first_speaker, "grenade_f1", "in")     dialogs.relocate_item_section(first_speaker, "ammo_9x18_fmj", "in")        end--' Escape Wounded's flashfunction wounded_give_flash(first_speaker, second_speaker)	dialogs.relocate_item_section(first_speaker, "esc_wounded_flash", "in")endfunction have_wounded_flash(first_speaker, second_speaker)  	return first_speaker:object("esc_wounded_flash") ~= nilendfunction dont_have_wounded_flash(first_speaker, second_speaker)  	return not have_wounded_flash(first_speaker, second_speaker)endfunction give_wounded_flash(first_speaker, second_speaker)	dialogs.relocate_item_section(second_speaker, "esc_wounded_flash", "out")	dialogs.relocate_money(second_speaker, 1500, "in")endfunction give_knife_to_actor(first_speaker, second_speaker)	dialogs.relocate_item_section(first_speaker, "wpn_knife", "in")end--' Escape bandits factoryfunction give_factory_reward_trader(first_speaker, second_speaker)	dialogs.relocate_money(first_speaker, 500, "in")end--' Give X-18 documents readfunction give_documents_reward (first_speaker, second_speaker)	dialogs.relocate_money(first_speaker, 1000, "in")end--' Kill killers raidfunction give_reward_killers(first_speaker, second_speaker)	dialogs.relocate_money(first_speaker, 2500, "in")end--' Soldiers on bridgefunction has_soldiers_bribe(actor, npc)	return actor:money() >= 500endfunction give_soldiers_bribe(actor, npc)	dialogs.relocate_money(npc, 500, "out")	endfunction fox_pay_money(actor, npc)	dialogs.relocate_money(npc, 1500, "in")		treasure_manager.get_treasure_manager():give_treasure("esc_secret_truck_goods")endfunction run_tutorial_pda(first_speaker, second_speaker)	printf("!-!-!")	first_speaker:stop_talk()	second_speaker:stop_talk()	local dlg = ui_repair_items.uiRepairDialog( first_speaker, (2/3) )	dlg.Open()	wait( 10000 )	game.start_tutorial("part_1_pda")endfunction wolf_precond_univ (actor, npc)	return has_alife_info("esc_kill_bandits_quest_done") or (has_alife_info("tutorial_wounded_give_info") and not has_alife_info("esc_kill_bandits_quest_have"))end