3529 lines
241 KiBLFS
XML
Executable File
3529 lines
241 KiBLFS
XML
Executable File
<?xml version="1.0" encoding="utf-8"?>
|
|
<Override>
|
|
<Randomevents>
|
|
<!-- GENERIC IGNORE OPTION
|
|
USE THIS TO CLEAR TAG AND LOOP INTO THE CONVERSATION -->
|
|
<!-- <Label name="retry" />
|
|
<ClearTagAction tag="triggerer_player" />
|
|
|
|
<Option text="eventtext.option.ignore" endconversation="true">
|
|
<WaitAction time="2" />
|
|
<GoTo name="retry" />
|
|
</Option> -->
|
|
<!-- GENERIC NO REPEAT OPTION
|
|
PLACE THIS AT THE START OF THE EVENT AND LABEL AT THE END, SETDATAACTION SOMEWHERE -->
|
|
<!-- <CheckDataAction identifier="eventnorepeat" condition="eq 0" >
|
|
<Failure>
|
|
<Goto name="end" />
|
|
</Failure>
|
|
</CheckDataAction>
|
|
|
|
<SetDataAction identifier="eventnorepeat" operation="set" value="1" />
|
|
|
|
<Label name="end" /> -->
|
|
<EventSprites>
|
|
<Sprite identifier="piratehaven" texture="%ModDir:2532991202%/Events/DE_Event_pic1.png" sourcerect="23,0,234,242" origin="0.5,0.5" />
|
|
<Sprite identifier="piratehaven2" texture="%ModDir:2532991202%/Events/DE_Event_pic1.png" sourcerect="263,6,242,238" origin="0.5,0.5" />
|
|
<Sprite identifier="banditcaptain" texture="%ModDir:2532991202%/Events/DE_Event_pic1.png" sourcerect="529,0,236,254" origin="0.5,0.5" />
|
|
<Sprite identifier="bandittalk" texture="%ModDir:2532991202%/Events/DE_Event_pic1.png" sourcerect="768,0,256,256" origin="0.5,0.5" />
|
|
<Sprite identifier="radiocall" texture="%ModDir:2532991202%/Events/DE_Event_pic1.png" sourcerect="25,269,216,216" origin="0.5,0.5" />
|
|
<Sprite identifier="sonar" texture="%ModDir:2532991202%/Events/DE_Event_pic1.png" sourcerect="270,266,225,222" origin="0.5,0.5" />
|
|
<Sprite identifier="subblueprint" texture="%ModDir:2532991202%/Events/DE_Event_pic1.png" sourcerect="530,260,239,235" origin="0.5,0.5" />
|
|
<Sprite identifier="hitthelever" texture="%ModDir:2532991202%/Events/DE_Event_pic1.png" sourcerect="792,278,210,210" origin="0.5,0.5" />
|
|
<Sprite identifier="bloodycuffs" texture="%ModDir:2532991202%/Events/DE_Event_pic1.png" sourcerect="11,529,221,221" origin="0.5,0.5" />
|
|
<Sprite identifier="firefight" texture="%ModDir:2532991202%/Events/DE_Event_pic1.png" sourcerect="267,529,224,224" origin="0.5,0.5" />
|
|
<Sprite identifier="traitoress" texture="%ModDir:2532991202%/Events/DE_Event_pic1.png" sourcerect="527,529,223,224" origin="0.5,0.5" />
|
|
<Sprite identifier="hostage" texture="%ModDir:2532991202%/Events/DE_Event_pic1.png" sourcerect="779,526,225,225" origin="0.5,0.5" />
|
|
<Sprite identifier="huskoutbreak" texture="%ModDir:2532991202%/Events/DE_Event_pic1.png" sourcerect="25,769,226,235" origin="0.5,0.5" />
|
|
<Sprite identifier="brokenmachinery" texture="%ModDir:2532991202%/Events/DE_Event_pic1.png" sourcerect="283,792,199,199" origin="0.5,0.5" />
|
|
<Sprite identifier="malfunction" texture="%ModDir:2532991202%/Events/DE_Event_pic1.png" sourcerect="540,796,208,208" origin="0.5,0.5" />
|
|
<Sprite identifier="destruction" texture="%ModDir:2532991202%/Events/DE_Event_pic1.png" sourcerect="768,768,256,256" origin="0.5,0.5" />
|
|
</EventSprites>
|
|
<EventPrefabs>
|
|
<!-- Starter outpost teleport bullshit TODO: this doesn't work, camera is hard zoomed on characters when level loads -->
|
|
<!-- <ScriptedEvent identifier="starteroutpostelevatorteleport" >
|
|
<CheckDataAction identifier="visitedstarteroutpost" condition="eq 0" >
|
|
<Failure>
|
|
<Goto name="end" />
|
|
</Failure>
|
|
</CheckDataAction>
|
|
<WaitAction time="1" />
|
|
<TagAction criteria="player" SubmarineType="player" tag="teleportme" team="Team1"/>
|
|
<TagAction criteria="crew" SubmarineType="player" tag="teleportme" team="Team1"/>
|
|
<TeleportAction targettag="teleportme" Position="Outpost" SpawnPointTag="elevatorteleport" />
|
|
<SetDataAction identifier="visitedstarteroutpost" operation="set" value="1" />
|
|
<Label name="end" />
|
|
</ScriptedEvent> -->
|
|
<!-- Starter outpost event, introduction to campaign. Very WIP
|
|
TODO: work on "first mission" event when starteroutpost is finally enabled -->
|
|
<ScriptedEvent identifier="firstmission" commonness="100" requiredDestinationTypes="anyoutpost">
|
|
<CheckDataAction identifier="visitedfirstmission" condition="eq 0">
|
|
<Failure>
|
|
<Goto name="end" />
|
|
</Failure>
|
|
</CheckDataAction>
|
|
<ConversationAction text="EventText.firstmission.justarrived" speakertag="outpostmanager" invokertag="firstmission_player" eventsprite="heartofgold">
|
|
<Option text="EventText.firstmission.ready">
|
|
<ConversationAction TargetTag="firstmission_player" text="EventText.firstmission.notready" eventsprite="heartofgold">
|
|
<Option text="eventtext.generic.continue">
|
|
<Label name="restofconvo" />
|
|
<ConversationAction TargetTag="firstmission_player" text="EventText.firstmission.anyway" eventsprite="JacovSubra1">
|
|
<Option text="EventText.firstmission.timetodive">
|
|
<ConversationAction TargetTag="firstmission_player" text="EventText.firstmission.mission" eventsprite="instructor" endconversation="true" />
|
|
<MissionAction missiontag="cargo" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Option>
|
|
</ConversationAction>
|
|
</Option>
|
|
<Option text="EventText.firstmission.thebest">
|
|
<ConversationAction TargetTag="firstmission_player" text="EventText.firstmission.notdonebefore" eventsprite="heartofgold">
|
|
<Option text="eventtext.generic.continue">
|
|
<Goto name="restofconvo" endconversation="false" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Option>
|
|
<Option text="EventText.firstmission.donebefore">
|
|
<ConversationAction TargetTag="firstmission_player" text="EventText.firstmission.notdonebefore" eventsprite="heartofgold">
|
|
<Option text="eventtext.generic.continue">
|
|
<Goto name="restofconvo" endconversation="false" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Option>
|
|
</ConversationAction>
|
|
<SetDataAction identifier="visitedfirstmission" operation="set" value="1" />
|
|
<Label name="end" />
|
|
</ScriptedEvent>
|
|
<ScriptedEvent identifier="removestarteroutpostice">
|
|
<LayerAction layer="RemoveIce" enabled="false" />
|
|
</ScriptedEvent>
|
|
<ScriptedEvent identifier="forcestarteroutpostchange">
|
|
<OnRoundEndAction>
|
|
<ModifyLocationAction type="StarterOutpostAFTER" />
|
|
</OnRoundEndAction>
|
|
</ScriptedEvent>
|
|
<!-- spawns NPCs in the fake militaryforces subs, not a fan of this one -->
|
|
<ScriptedEvent identifier="militaryforces_position_npcs" commonness="100">
|
|
<WaitAction time="3" />
|
|
<TagAction criteria="humanprefabidentifier:outpostmanager" tag="outpostmanager" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="humanprefabidentifier:outpostmanagercoalition" tag="outpostmanager" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="humanprefabidentifier:outpostmanagerseparatists" tag="outpostmanager" ContinueIfNoTargetsFound="true" />
|
|
<!--TagAction criteria="humanprefabidentifier:hrmanager" tag="hrmanager" ContinueIfNoTargetsFound="true" /-->
|
|
<TagAction criteria="humanprefabidentifier:reactoroperator" tag="reactoroperator" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="humanprefabidentifier:merchantmilitary" tag="merchantmilitary" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="humanprefabidentifier:merchantarmory" tag="merchantarmory" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="humanprefabidentifier:outpostdoctor" tag="outpostdoctor" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="itemtag:adminseat" tag="adminseat" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="itemtag:hrseat" tag="hrseat" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="itemtag:reactoroperatorseat" tag="reactoroperatorseat" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="itemtag:merchantmilitaryseat" tag="merchantmilitaryseat" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="itemtag:merchantarmoryseat" tag="merchantarmoryseat" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="itemtag:doctorseat" tag="doctorseat" ContinueIfNoTargetsFound="true" />
|
|
<NPCOperateItemAction npctag="outpostmanager" targettag="adminseat" ItemComponentName="Controller" operate="true" />
|
|
<!--NPCOperateItemAction npctag="hrmanager" targettag="hrseat" ItemComponentName="Controller" operate="true" /-->
|
|
<NPCOperateItemAction npctag="reactoroperator" targettag="reactoroperatorseat" ItemComponentName="Controller" operate="true" />
|
|
<NPCOperateItemAction npctag="merchantmilitary" targettag="merchantmilitaryseat" ItemComponentName="Controller" operate="true" />
|
|
<NPCOperateItemAction npctag="merchantarmory" targettag="merchantarmoryseat" ItemComponentName="Controller" operate="true" />
|
|
<NPCOperateItemAction npctag="outpostdoctor" targettag="doctorseat" ItemComponentName="Controller" operate="true" />
|
|
</ScriptedEvent>
|
|
<!-- ////////////////////// -->
|
|
<!-- ////////////////////// -->
|
|
<!-- ////////////////////// -->
|
|
<!-- ////////////////////// -->
|
|
<!-- ////////////////////// -->
|
|
<!-- only exists to help players figure out how to make construction crates, triggered by event below -->
|
|
<ScriptedEvent identifier="Constructionrecipe" commonness="100">
|
|
<TagAction criteria="player" tag="player" />
|
|
<TagAction criteria="itemtag:constructioncargounit" tag="constructioncargounit" SubmarineType="Outpost" chooserandom="true" />
|
|
<TriggerAction target1tag="constructioncargounit" target2tag="player" applytotarget2="triggerer_player" radius="150" waitforinteraction="true" />
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.constructionrecipe.recipe" eventsprite="mines" endconversation="true" />
|
|
</ScriptedEvent>
|
|
<!-- Construction event
|
|
Deliver 5 construction crates to a construction site, put them inside ULD (crate storage thingy)
|
|
If you have >50 reputation, you can pick the type of outpost that will be built.
|
|
Undock for the outpost to be built. -->
|
|
<ScriptedEvent identifier="Constructionprogress" commonness="100">
|
|
<TagAction criteria="player" tag="player" />
|
|
<TagAction criteria="itemtag:fabricator" tag="selectedfabricator" SubmarineType="Outpost" chooserandom="true" />
|
|
<TagAction criteria="itemtag:deconstructor" tag="selecteddeconstructor" SubmarineType="Outpost" chooserandom="true" />
|
|
<TagAction criteria="itemtag:constructioncargounit" tag="constructioncargounit" SubmarineType="Outpost" chooserandom="true" />
|
|
<TriggerEventAction identifier="Constructionrecipe" />
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="miner" targettag="worker1" spawnlocation="Outpost" />
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="miner" targettag="worker2" spawnlocation="Outpost" />
|
|
<TriggerAction target1tag="worker1" target2tag="player" applytotarget1="contruction_manager" applytotarget2="triggerer_player" radius="150" waitforinteraction="true" />
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.starterdialogue" eventsprite="mines">
|
|
<Option text="eventtext.Constructionprogress.wehavecrates">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.speaktomeagain" />
|
|
<GoTo name="waitingforgoods" />
|
|
</Option>
|
|
<Option text="eventtext.Constructionprogress.letmecheck">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.ifyoufindcrates" />
|
|
<GoTo name="waitingforgoods" />
|
|
</Option>
|
|
<Option text="eventtext.Constructionprogress.notinterested">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.findmeagain" />
|
|
<GoTo name="changemind" />
|
|
</Option>
|
|
<Option text="eventtext.Constructionprogress.nomaterials">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.wellwait" />
|
|
<GoTo name="changemind" />
|
|
</Option>
|
|
</ConversationAction>
|
|
<Label name="changemind" />
|
|
<ClearTagAction tag="triggerer_player" />
|
|
<ClearTagAction tag="contruction_manager" />
|
|
<TriggerAction target1tag="worker1" target2tag="player" applytotarget1="contruction_manager" applytotarget2="triggerer_player" radius="150" waitforinteraction="true" />
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.changeyourmind" eventsprite="mines">
|
|
<Option text="eventtext.Constructionprogress.cratescoming">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.speaktomeagain" />
|
|
<GoTo name="waitingforgoods" />
|
|
</Option>
|
|
<Option text="eventtext.generic.ignore" endconversation="true" />
|
|
</ConversationAction>
|
|
<Label name="waitingforgoods" />
|
|
<ClearTagAction tag="triggerer_player" />
|
|
<ClearTagAction tag="contruction_manager" />
|
|
<HighlightAction targettag="constructioncargounit" targetcharacter="player" />
|
|
<TriggerAction target1tag="worker1" target2tag="player" applytotarget1="contruction_manager" applytotarget2="triggerer_player" radius="150" waitforinteraction="true" />
|
|
<CheckItemAction targettag="constructioncargounit" itemidentifiers="constructionmaterialcrate" amount="5">
|
|
<Success>
|
|
<StatusEffectAction targettag="constructioncargounit">
|
|
<StatusEffect target="this" noninteractable="true" setvalue="true" />
|
|
</StatusEffectAction>
|
|
<CheckReputationAction targettype="Location" condition="gte 50">
|
|
<Success>
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.cratesdelivered" eventsprite="mines">
|
|
<Option text="eventtext.Constructionprogress.thanks">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.youdecide" eventsprite="mines">
|
|
<Option text="eventtext.Constructionprogress.settlement">
|
|
<ModifyLocationAction type="Settlement" />
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.settlementpicked" />
|
|
<GoTo name="reward" />
|
|
</Option>
|
|
<Option text="eventtext.Constructionprogress.base">
|
|
<ModifyLocationAction type="Base" />
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.basepicked" />
|
|
<GoTo name="reward" />
|
|
</Option>
|
|
<Option text="eventtext.Constructionprogress.research">
|
|
<ModifyLocationAction type="Research" />
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.researchpicked" />
|
|
<GoTo name="reward" />
|
|
</Option>
|
|
<Option text="eventtext.Constructionprogress.hospital">
|
|
<ModifyLocationAction type="Hospital" />
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.hospitalpicked" />
|
|
<GoTo name="reward" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Option>
|
|
</ConversationAction>
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.cratesdelivered" eventsprite="mines">
|
|
<Option text="eventtext.Constructionprogress.thanks">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.backtowork" />
|
|
<!-- 25% chance of any outcome -->
|
|
<RNGAction chance="0.50">
|
|
<Success>
|
|
<RNGAction chance="0.50">
|
|
<Success>
|
|
<ModifyLocationAction type="Settlement" />
|
|
<GoTo name="reward" />
|
|
</Success>
|
|
<Failure>
|
|
<ModifyLocationAction type="Base" />
|
|
<GoTo name="reward" />
|
|
</Failure>
|
|
</RNGAction>
|
|
</Success>
|
|
<Failure>
|
|
<RNGAction chance="0.50">
|
|
<Success>
|
|
<ModifyLocationAction type="Research" />
|
|
<GoTo name="reward" />
|
|
</Success>
|
|
<Failure>
|
|
<ModifyLocationAction type="Hospital" />
|
|
<GoTo name="reward" />
|
|
</Failure>
|
|
</RNGAction>
|
|
</Failure>
|
|
</RNGAction>
|
|
</Option>
|
|
</ConversationAction>
|
|
</Failure>
|
|
</CheckReputationAction>
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.notenough" eventsprite="mines">
|
|
<Option text="eventtext.Constructionprogress.checkagain" endconversation="true">
|
|
<GoTo name="waitingforgoods" />
|
|
</Option>
|
|
<Option text="eventtext.Constructionprogress.allwegot">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.takecargoback" eventsprite="mines" />
|
|
<GoTo name="changemind" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Failure>
|
|
</CheckItemAction>
|
|
<Label name="reward" />
|
|
<NPCOperateItemAction npctag="worker1" targettag="selectedfabricator" ItemComponentName="Fabricator" Operate="true" />
|
|
<NPCOperateItemAction npctag="worker2" targettag="selecteddeconstructor" ItemComponentName="Deconstructor" Operate="true" />
|
|
<HighlightAction targettag="constructioncargounit" targetcharacter="player" state="false" />
|
|
<MoneyAction amount="2000" />
|
|
<ReputationAction targettype="Location" increase="5" />
|
|
<SpawnAction itemidentifier="coalitioncommendation" targetinventory="triggerer_player" />
|
|
<ClearTagAction tag="triggerer_player" />
|
|
<ClearTagAction tag="contruction_manager" />
|
|
</ScriptedEvent>
|
|
<!-- ////////////////////// -->
|
|
<!-- Construction UPGRADE events, allow upgrading an outpost, simplified from construction (3 crates instead of 5) -->
|
|
<ScriptedEvent identifier="ConstructionUpgradeToColony" commonness="100">
|
|
<TagAction criteria="player" tag="player" />
|
|
<TagAction criteria="itemtag:constructioncargounit" tag="constructioncargounit" SubmarineType="Outpost" chooserandom="true" />
|
|
<TriggerEventAction identifier="Constructionrecipe" />
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="miner" targettag="worker1" spawnlocation="Outpost" spawnpointtag="constructionworker" requirespawnpointtag="true" ContinueIfFailedToSpawn="false" />
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="miner" targettag="worker2" spawnlocation="Outpost" spawnpointtag="constructionworker" requirespawnpointtag="true" ContinueIfFailedToSpawn="false" />
|
|
<NPCFollowAction npctag="worker1" targettag="constructioncargounit" follow="true" priority="50" />
|
|
<NPCFollowAction npctag="worker2" targettag="worker1" follow="true" priority="50" />
|
|
<TriggerAction target1tag="worker1" target2tag="player" applytotarget1="contruction_manager" applytotarget2="triggerer_player" radius="150" waitforinteraction="true" />
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.ConstructionUpgrade.starterdialogue" eventsprite="mines">
|
|
<Option text="eventtext.Constructionprogress.letmecheck">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.ifyoufindcrates" />
|
|
</Option>
|
|
<Option text="eventtext.Constructionprogress.notinterested">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.findmeagain" />
|
|
</Option>
|
|
</ConversationAction>
|
|
<ClearTagAction tag="triggerer_player" />
|
|
<HighlightAction targettag="constructioncargounit" targetcharacter="player" />
|
|
<Label name="waitingforgoods" />
|
|
<CheckItemAction targettag="constructioncargounit" itemidentifiers="constructionmaterialcrate" amount="3">
|
|
<Success>
|
|
<StatusEffectAction targettag="constructioncargounit">
|
|
<StatusEffect target="this" noninteractable="true" setvalue="true" />
|
|
</StatusEffectAction>
|
|
<TriggerAction target1tag="worker1" target2tag="player" applytotarget1="contruction_manager" applytotarget2="triggerer_player" radius="150" waitforinteraction="true" />
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.cratesdelivered" eventsprite="mines">
|
|
<Option text="eventtext.Constructionprogress.thanks">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.backtowork" />
|
|
<ModifyLocationAction type="Colony" />
|
|
<GoTo name="reward" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Success>
|
|
<Failure>
|
|
<GoTo name="waitingforgoods" />
|
|
</Failure>
|
|
</CheckItemAction>
|
|
<Label name="reward" />
|
|
<HighlightAction targettag="constructioncargounit" targetcharacter="player" state="false" />
|
|
<MoneyAction amount="1000" />
|
|
<ReputationAction targettype="Location" increase="3" />
|
|
</ScriptedEvent>
|
|
<ScriptedEvent identifier="ConstructionUpgradeToBase" commonness="100">
|
|
<TagAction criteria="player" tag="player" />
|
|
<TagAction criteria="itemtag:constructioncargounit" tag="constructioncargounit" SubmarineType="Outpost" chooserandom="true" />
|
|
<TriggerEventAction identifier="Constructionrecipe" />
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="miner" targettag="worker1" spawnlocation="Outpost" spawnpointtag="constructionworker" requirespawnpointtag="true" ContinueIfFailedToSpawn="false" />
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="miner" targettag="worker2" spawnlocation="Outpost" spawnpointtag="constructionworker" requirespawnpointtag="true" ContinueIfFailedToSpawn="false" />
|
|
<NPCFollowAction npctag="worker1" targettag="constructioncargounit" follow="true" priority="50" />
|
|
<NPCFollowAction npctag="worker2" targettag="worker1" follow="true" priority="50" />
|
|
<TriggerAction target1tag="worker1" target2tag="player" applytotarget1="contruction_manager" applytotarget2="triggerer_player" radius="150" waitforinteraction="true" />
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.ConstructionUpgrade.starterdialogue" eventsprite="mines">
|
|
<Option text="eventtext.Constructionprogress.letmecheck">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.ifyoufindcrates" />
|
|
</Option>
|
|
<Option text="eventtext.Constructionprogress.notinterested">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.findmeagain" />
|
|
</Option>
|
|
</ConversationAction>
|
|
<ClearTagAction tag="triggerer_player" />
|
|
<HighlightAction targettag="constructioncargounit" targetcharacter="player" />
|
|
<Label name="waitingforgoods" />
|
|
<CheckItemAction targettag="constructioncargounit" itemidentifiers="constructionmaterialcrate" amount="3">
|
|
<Success>
|
|
<StatusEffectAction targettag="constructioncargounit">
|
|
<StatusEffect target="this" noninteractable="true" setvalue="true" />
|
|
</StatusEffectAction>
|
|
<TriggerAction target1tag="worker1" target2tag="player" applytotarget1="contruction_manager" applytotarget2="triggerer_player" radius="150" waitforinteraction="true" />
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.cratesdelivered" eventsprite="mines">
|
|
<Option text="eventtext.Constructionprogress.thanks">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.backtowork" />
|
|
<ModifyLocationAction type="base" />
|
|
<GoTo name="reward" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Success>
|
|
<Failure>
|
|
<GoTo name="waitingforgoods" />
|
|
</Failure>
|
|
</CheckItemAction>
|
|
<Label name="reward" />
|
|
<HighlightAction targettag="constructioncargounit" targetcharacter="player" state="false" />
|
|
<MoneyAction amount="1000" />
|
|
<ReputationAction targettype="Location" increase="3" />
|
|
</ScriptedEvent>
|
|
<ScriptedEvent identifier="ConstructionUpgradeToHospital" commonness="100">
|
|
<TagAction criteria="player" tag="player" />
|
|
<TagAction criteria="itemtag:constructioncargounit" tag="constructioncargounit" SubmarineType="Outpost" chooserandom="true" />
|
|
<TriggerEventAction identifier="Constructionrecipe" />
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="miner" targettag="worker1" spawnlocation="Outpost" spawnpointtag="constructionworker" requirespawnpointtag="true" ContinueIfFailedToSpawn="false" />
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="miner" targettag="worker2" spawnlocation="Outpost" spawnpointtag="constructionworker" requirespawnpointtag="true" ContinueIfFailedToSpawn="false" />
|
|
<NPCFollowAction npctag="worker1" targettag="constructioncargounit" follow="true" priority="50" />
|
|
<NPCFollowAction npctag="worker2" targettag="worker1" follow="true" priority="50" />
|
|
<TriggerAction target1tag="worker1" target2tag="player" applytotarget1="contruction_manager" applytotarget2="triggerer_player" radius="150" waitforinteraction="true" />
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.ConstructionUpgrade.starterdialogue" eventsprite="mines">
|
|
<Option text="eventtext.Constructionprogress.letmecheck">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.ifyoufindcrates" />
|
|
</Option>
|
|
<Option text="eventtext.Constructionprogress.notinterested">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.findmeagain" />
|
|
</Option>
|
|
</ConversationAction>
|
|
<ClearTagAction tag="triggerer_player" />
|
|
<HighlightAction targettag="constructioncargounit" targetcharacter="player" />
|
|
<Label name="waitingforgoods" />
|
|
<CheckItemAction targettag="constructioncargounit" itemidentifiers="constructionmaterialcrate" amount="3">
|
|
<Success>
|
|
<StatusEffectAction targettag="constructioncargounit">
|
|
<StatusEffect target="this" noninteractable="true" setvalue="true" />
|
|
</StatusEffectAction>
|
|
<TriggerAction target1tag="worker1" target2tag="player" applytotarget1="contruction_manager" applytotarget2="triggerer_player" radius="150" waitforinteraction="true" />
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.cratesdelivered" eventsprite="mines">
|
|
<Option text="eventtext.Constructionprogress.thanks">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.backtowork" />
|
|
<ModifyLocationAction type="hospital" />
|
|
<GoTo name="reward" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Success>
|
|
<Failure>
|
|
<GoTo name="waitingforgoods" />
|
|
</Failure>
|
|
</CheckItemAction>
|
|
<Label name="reward" />
|
|
<HighlightAction targettag="constructioncargounit" targetcharacter="player" state="false" />
|
|
<MoneyAction amount="1000" />
|
|
<ReputationAction targettype="Location" increase="3" />
|
|
</ScriptedEvent>
|
|
<ScriptedEvent identifier="ConstructionUpgradeToResearch" commonness="100">
|
|
<TagAction criteria="player" tag="player" />
|
|
<TagAction criteria="itemtag:constructioncargounit" tag="constructioncargounit" SubmarineType="Outpost" chooserandom="true" />
|
|
<TriggerEventAction identifier="Constructionrecipe" />
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="miner" targettag="worker1" spawnlocation="Outpost" spawnpointtag="constructionworker" requirespawnpointtag="true" ContinueIfFailedToSpawn="false" />
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="miner" targettag="worker2" spawnlocation="Outpost" spawnpointtag="constructionworker" requirespawnpointtag="true" ContinueIfFailedToSpawn="false" />
|
|
<NPCFollowAction npctag="worker1" targettag="constructioncargounit" follow="true" priority="50" />
|
|
<NPCFollowAction npctag="worker2" targettag="worker1" follow="true" priority="50" />
|
|
<TriggerAction target1tag="worker1" target2tag="player" applytotarget1="contruction_manager" applytotarget2="triggerer_player" radius="150" waitforinteraction="true" />
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.ConstructionUpgrade.starterdialogue" eventsprite="mines">
|
|
<Option text="eventtext.Constructionprogress.letmecheck">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.ifyoufindcrates" />
|
|
</Option>
|
|
<Option text="eventtext.Constructionprogress.notinterested">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.findmeagain" />
|
|
</Option>
|
|
</ConversationAction>
|
|
<ClearTagAction tag="triggerer_player" />
|
|
<HighlightAction targettag="constructioncargounit" targetcharacter="player" />
|
|
<Label name="waitingforgoods" />
|
|
<CheckItemAction targettag="constructioncargounit" itemidentifiers="constructionmaterialcrate" amount="3">
|
|
<Success>
|
|
<StatusEffectAction targettag="constructioncargounit">
|
|
<StatusEffect target="this" noninteractable="true" setvalue="true" />
|
|
</StatusEffectAction>
|
|
<TriggerAction target1tag="worker1" target2tag="player" applytotarget1="contruction_manager" applytotarget2="triggerer_player" radius="150" waitforinteraction="true" />
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.cratesdelivered" eventsprite="mines">
|
|
<Option text="eventtext.Constructionprogress.thanks">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.Constructionprogress.backtowork" />
|
|
<ModifyLocationAction type="research" />
|
|
<GoTo name="reward" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Success>
|
|
<Failure>
|
|
<GoTo name="waitingforgoods" />
|
|
</Failure>
|
|
</CheckItemAction>
|
|
<Label name="reward" />
|
|
<HighlightAction targettag="constructioncargounit" targetcharacter="player" state="false" />
|
|
<MoneyAction amount="1000" />
|
|
<ReputationAction targettype="Location" increase="3" />
|
|
</ScriptedEvent>
|
|
<!-- ////////////////////// -->
|
|
<!-- ////////////////////// -->
|
|
<!-- ////////////////////// -->
|
|
<!-- ////////////////////// -->
|
|
<!-- ////////////////////// -->
|
|
<!-- ////////////////////// -->
|
|
<!-- ////////////////////// -->
|
|
<!-- Mine door event
|
|
Pay to get access to the mines / dry cave -->
|
|
<ScriptedEvent identifier="minedoorevent" commonness="100">
|
|
<WaitAction time="2" />
|
|
<TagAction criteria="player" tag="player" />
|
|
<TagAction criteria="itemtag:mineterminal" tag="mineterminal" ContinueIfNoTargetsFound="false" />
|
|
<TagAction criteria="itemtag:mineentrance" tag="mineentrance" ContinueIfNoTargetsFound="false" />
|
|
<TriggerEventAction identifier="checkminepayment" />
|
|
<StatusEffectAction targettag="mineterminal">
|
|
<StatusEffect target="This" noninteractable="false" nonplayerteaminteractable="false" setvalue="true" disabledeltatime="true" />
|
|
</StatusEffectAction>
|
|
<Label name="restart" />
|
|
<TriggerAction target1tag="player" target2tag="mineterminal" applytotarget1="mde_player" waitforinteraction="true" />
|
|
<ConversationAction targettag="mde_player" text="eventtext.mine.terminal.interact" eventsprite="mines" dialogtype="small">
|
|
<Option text="EventText.option.pay">
|
|
<CheckMoneyAction targettag="mde_player" amount="250">
|
|
<Success>
|
|
<MoneyAction targettag="mde_player" amount="-250" />
|
|
<ConversationAction targettag="mde_player" text="EventText.mine.terminal.interact.pay.success" eventsprite="mines" dialogtype="small" />
|
|
<StatusEffectAction targettag="mineentrance">
|
|
<StatusEffect target="This" State="true" setvalue="true" disabledeltatime="true" />
|
|
</StatusEffectAction>
|
|
<StatusEffectAction targettag="mineterminal">
|
|
<StatusEffect target="This" LightColor="0,92,23,255" noninteractable="true" setvalue="true" disabledeltatime="true" />
|
|
</StatusEffectAction>
|
|
<SetDataAction identifier="mineopened" value="1" />
|
|
<ClearTagAction tag="mde_player" />
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="mde_player" text="EventText.mine.terminal.interact.pay.failure" eventsprite="mines" dialogtype="small" />
|
|
<ClearTagAction tag="mde_player" />
|
|
<GoTo name="restart" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="eventtext.option.leave" endconversation="true">
|
|
<ClearTagAction tag="mde_player" />
|
|
<GoTo name="restart" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</ScriptedEvent>
|
|
<!-- check if you paid for the mine access, -reputation if you dont -->
|
|
<ScriptedEvent identifier="checkminepayment">
|
|
<TagAction criteria="player" tag="player" />
|
|
<TagAction criteria="hullname:entrance" tag="entrance" submarinetype="Outpost" />
|
|
<TriggerAction target1tag="player" target2tag="entrance" radius="10" waitforinteraction="false" />
|
|
<CheckDataAction identifier="mineopened" condition="eq 1">
|
|
<Success>
|
|
<SetDataAction identifier="mineopened" value="0" />
|
|
</Success>
|
|
<Failure>
|
|
<StatusEffectAction targettag="alarm">
|
|
<StatusEffect IsOn="true" target="This" setvalue="true" />
|
|
</StatusEffectAction>
|
|
<ConversationAction text="EventText.mine.breakin" ContinueAutomatically="true" dialogtype="small" />
|
|
<ReputationAction targettype="Location" increase="-5" />
|
|
<SetDataAction identifier="mineopened" value="0" />
|
|
</Failure>
|
|
</CheckDataAction>
|
|
</ScriptedEvent>
|
|
<!-- Events that randomly delete cave/lair items -->
|
|
<!-- randomizes ore nodes in dry caves -->
|
|
<ScriptedEvent identifier="unlockorenodes" commonness="100">
|
|
<WaitAction time="2" />
|
|
<TagAction criteria="itemidentifier:mineralspawner" tag="deleteorenode" submarinetype="Outpost" chooserandom="true" ChoosePercentage="66" />
|
|
<!-- 2/3 nodes are deleted -->
|
|
<StatusEffectAction targettag="deleteorenode">
|
|
<StatusEffect target="This">
|
|
<Remove />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
</ScriptedEvent>
|
|
<!-- randomizes ore nodes in lairs -->
|
|
<ScriptedEvent identifier="unlockorenodeslair" commonness="100">
|
|
<WaitAction time="2" />
|
|
<TagAction criteria="itemidentifier:mineralspawner" tag="deleteorenode" submarinetype="Outpost" ChoosePercentage="80" />
|
|
<!-- 4/5 nodes are deleted -->
|
|
<StatusEffectAction targettag="deleteorenode">
|
|
<StatusEffect target="This">
|
|
<Remove />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
</ScriptedEvent>
|
|
<!-- randomizes plant nodes in dry caves -->
|
|
<ScriptedEvent identifier="unlockplantnodes" commonness="100">
|
|
<WaitAction time="2" />
|
|
<TagAction criteria="itemidentifier:plantcluster" tag="plantnode" submarinetype="Outpost" chooserandom="true" ChoosePercentage="75" />
|
|
<!-- 3/4 nodes are deleted -->
|
|
<StatusEffectAction targettag="plantnode">
|
|
<StatusEffect target="This">
|
|
<Remove />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
</ScriptedEvent>
|
|
<!-- randomizes plant nodes in lairs -->
|
|
<ScriptedEvent identifier="unlockplantnodeslair" commonness="100">
|
|
<WaitAction time="2" />
|
|
<TagAction criteria="itemidentifier:plantcluster" tag="deleteplantnode" submarinetype="Outpost" chooserandom="true" ChoosePercentage="75" />
|
|
<!-- 3/4 nodes are deleted -->
|
|
<StatusEffectAction targettag="deleteplantnode">
|
|
<StatusEffect target="This">
|
|
<Remove />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
</ScriptedEvent>
|
|
<!-- randomizes pest nests in dry caves -->
|
|
<ScriptedEvent identifier="unlockpestnests" commonness="100">
|
|
<WaitAction time="2" />
|
|
<TagAction criteria="itemidentifier:cavepestspawner" tag="deletepestnest" submarinetype="Outpost" chooserandom="true" ChoosePercentage="75" />
|
|
<!-- 3/4 nodes are deleted -->
|
|
<StatusEffectAction targettag="deletepestnest">
|
|
<StatusEffect target="This">
|
|
<Remove />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
</ScriptedEvent>
|
|
<!-- "Reactor operator sale"
|
|
Spawns a NPC that sells fuel rods at stations that do not have an engineering merchant so people don't get soft-locked.
|
|
TODO: replace basic supply seller event with "proxy" items that spawn the real items, add a new merchant that sells basic supplies (rods, fuel, coilgun ammo) in those locations instead? -->
|
|
<ScriptedEvent identifier="reactoroperatorsale" commonness="100">
|
|
<TagAction criteria="player" tag="player" />
|
|
<Label name="waitforinput" />
|
|
<TriggerAction target1tag="reactoroperator" target2tag="player" applytotarget2="ro_trig_player" waitforinteraction="true" />
|
|
<CheckReputationAction targettype="faction" identifier="Location" condition="gte -20">
|
|
<Success>
|
|
<ConversationAction targettag="ro_trig_player" text="eventtext.shop.engineer.interact" eventsprite="engineer">
|
|
<Option text="eventtext.shop.engineer.option.fuelrod">
|
|
<CheckMoneyAction targettag="ro_trig_player" Amount="900">
|
|
<Success>
|
|
<MoneyAction targettag="ro_trig_player" amount="-900" />
|
|
<SpawnAction itemidentifier="fuelrod" targetinventory="ro_trig_player" />
|
|
<SpawnAction itemidentifier="fuelrod" targetinventory="ro_trig_player" />
|
|
<SpawnAction itemidentifier="fuelrod" targetinventory="ro_trig_player" />
|
|
<SpawnAction itemidentifier="fuelrod" targetinventory="ro_trig_player" />
|
|
<ConversationAction targettag="ro_trig_player" text="eventtext.shop.engineer.option.fuelrod.buy.success" eventsprite="engineer" />
|
|
<ClearTagAction tag="ro_trig_player" />
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="ro_trig_player" text="eventtext.shop.engineer.option.fuelrod.buy.failure" eventsprite="engineer" />
|
|
<ClearTagAction tag="ro_trig_player" />
|
|
<GoTo name="waitforinput" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="eventtext.shop.engineer.option.fpga">
|
|
<CheckMoneyAction targettag="ro_trig_player" Amount="250">
|
|
<Success>
|
|
<MoneyAction targettag="ro_trig_player" amount="-250" />
|
|
<SpawnAction itemidentifier="fpgacircuit" targetinventory="ro_trig_player" />
|
|
<SpawnAction itemidentifier="fpgacircuit" targetinventory="ro_trig_player" />
|
|
<ConversationAction targettag="ro_trig_player" text="eventtext.shop.engineer.option.fpga.buy.success" eventsprite="engineer" />
|
|
<ClearTagAction tag="ro_trig_player" />
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="ro_trig_player" text="eventtext.shop.engineer.option.fpga.buy.failure" eventsprite="engineer" />
|
|
<ClearTagAction tag="ro_trig_player" />
|
|
<GoTo name="waitforinput" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="eventtext.shop.engineer.option.extinguisher">
|
|
<CheckMoneyAction targettag="ro_trig_player" Amount="100">
|
|
<Success>
|
|
<MoneyAction targettag="ro_trig_player" amount="-100" />
|
|
<SpawnAction itemidentifier="extinguisher" targetinventory="ro_trig_player" />
|
|
<ConversationAction targettag="ro_trig_player" text="eventtext.shop.engineer.option.extinguisher.buy.success" eventsprite="engineer" />
|
|
<ClearTagAction tag="ro_trig_player" />
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="ro_trig_player" text="eventtext.shop.engineer.option.extinguisher.buy.failure" eventsprite="engineer" />
|
|
<ClearTagAction tag="ro_trig_player" />
|
|
<GoTo name="waitforinput" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="eventtext.option.leave">
|
|
<ConversationAction text="eventtext.general.decline" targettag="ro_trig_player" />
|
|
<ClearTagAction tag="ro_trig_player" />
|
|
<GoTo name="waitforinput" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="ro_trig_player" text="eventtext.shop.engineer.unfriedly" eventsprite="group" />
|
|
<ClearTagAction tag="ro_trig_player" />
|
|
</Failure>
|
|
</CheckReputationAction>
|
|
</ScriptedEvent>
|
|
<!-- Unused since welding fuel is sold in vending machines -->
|
|
<ScriptedEvent identifier="quartermaster" commonness="100">
|
|
<TagAction criteria="player" tag="player" />
|
|
<SpawnAction npcsetidentifier="DE_outpostnpcs" npcidentifier="quartermaster" targettag="quartermaster" spawnlocation="Outpost" />
|
|
<Label name="waitforinput" />
|
|
<TriggerAction target1tag="quartermaster" target2tag="player" applytotarget2="qm_trig_player" radius="200" waitforinteraction="true" />
|
|
<ConversationAction targettag="qm_trig_player" text="eventtext.shop.quartermaster.interact" eventsprite="mechanic">
|
|
<Option text="eventtext.shop.quartermaster.option.weldingfuel">
|
|
<CheckMoneyAction targettag="qm_trig_player" Amount="1000">
|
|
<Success>
|
|
<MoneyAction targettag="qm_trig_player" amount="-1000" />
|
|
<SpawnAction itemidentifier="weldingfueltank" targetinventory="qm_trig_player" />
|
|
<SpawnAction itemidentifier="weldingfueltank" targetinventory="qm_trig_player" />
|
|
<SpawnAction itemidentifier="weldingfueltank" targetinventory="qm_trig_player" />
|
|
<SpawnAction itemidentifier="weldingfueltank" targetinventory="qm_trig_player" />
|
|
<ConversationAction targettag="qm_trig_player" text="eventtext.shop.quartermaster.option.weldingfuel.buy.success" eventsprite="mechanic" />
|
|
<ClearTagAction tag="qm_trig_player" />
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="qm_trig_player" text="eventtext.shop.quartermaster.option.weldingfuel.buy.failure" eventsprite="mechanic" />
|
|
<ClearTagAction tag="qm_trig_player" />
|
|
<GoTo name="waitforinput" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="eventtext.option.leave">
|
|
<ConversationAction text="eventtext.general.decline" targettag="qm_trig_player" />
|
|
<ClearTagAction tag="qm_trig_player" />
|
|
<GoTo name="waitforinput" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</ScriptedEvent>
|
|
<!-- "Scrap dealer 1"
|
|
Buy scrap and acess to scrap dealer 2 -->
|
|
<ScriptedEvent identifier="scrapdealer1" commonness="100">
|
|
<CheckDataAction identifier="scrapdealerprogress" condition="eq 0">
|
|
<Failure></Failure>
|
|
<Success>
|
|
<TagAction criteria="player" tag="player" />
|
|
<SpawnAction npcsetidentifier="customnpcs" npcidentifier="scrapdealer" targettag="scrapdealer" spawnlocation="Outpost" targetmoduletags="crewmodule" />
|
|
<Label name="waitforinput" />
|
|
<TriggerAction target1tag="scrapdealer" target2tag="player" applytotarget2="triggerer_player" radius="200" waitforinteraction="true" />
|
|
<ConversationAction targettag="triggerer_player" text="EventText.scrapdealer1.scrapseller" eventsprite="office">
|
|
<Option text="EventText.scrapdealer1.sellmescrap">
|
|
<ConversationAction targettag="triggerer_player" text="EventText.scrapdealer1.junktreasure" eventsprite="ScrapMetal" />
|
|
<GoTo name="skiptrigger" />
|
|
<Label name="scrapproposition" />
|
|
<TriggerAction target1tag="scrapdealer" target2tag="player" applytotarget2="triggerer_player" radius="200" waitforinteraction="true" />
|
|
<Label name="skiptrigger" />
|
|
<ConversationAction targettag="triggerer_player" text="EventText.scrapdealer1.buyscrap" eventsprite="ScrapMetal">
|
|
<Option text="EventText.scrapdealer1.deal">
|
|
<CheckMoneyAction targettag="triggerer_player" Amount="250">
|
|
<Success>
|
|
<MoneyAction targettag="triggerer_player" amount="-250" />
|
|
<SpawnAction itemidentifier="scrap" amount="4" targetinventory="triggerer_player" />
|
|
<SetDataAction identifier="scrapdealerprogress" value="1" />
|
|
<ConversationAction targettag="triggerer_player" text="EventText.scrapdealer1.scrapbought" />
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="triggerer_player" text="EventText.scrapdealer1.nomoney" eventsprite="ScrapMetal" />
|
|
<ClearTagAction tag="triggerer_player" />
|
|
<GoTo name="scrapproposition" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="eventtext.option.leave" endconversation="true">
|
|
<ClearTagAction tag="triggerer_player" />
|
|
<GoTo name="scrapproposition" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Option>
|
|
<Option text="eventtext.option.leave" endconversation="true">
|
|
<ClearTagAction tag="triggerer_player" />
|
|
<GoTo name="waitforinput" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Success>
|
|
</CheckDataAction>
|
|
<OnRoundEndAction>
|
|
<CheckConditionalAction targettag="scrapdealer" IsDead="true">
|
|
<Success>
|
|
<SetDataAction identifier="scrapdealerprogress" value="3" />
|
|
</Success>
|
|
</CheckConditionalAction>
|
|
</OnRoundEndAction>
|
|
</ScriptedEvent>
|
|
<!-- "Scrap dealer 2"
|
|
Buy scrap and gain get a salvage mission -->
|
|
<ScriptedEvent identifier="scrapdealer2" commonness="100">
|
|
<CheckDataAction identifier="scrapdealerprogress" condition="eq 1">
|
|
<Failure></Failure>
|
|
<Success>
|
|
<TagAction criteria="player" tag="player" />
|
|
<SpawnAction npcsetidentifier="customnpcs" npcidentifier="scrapdealer" targettag="scrapdealer" spawnlocation="Outpost" targetmoduletags="crewmodule" />
|
|
<Label name="waitforinput" />
|
|
<TriggerAction target1tag="scrapdealer" target2tag="player" applytotarget2="triggerer_player" radius="200" waitforinteraction="true" />
|
|
<ConversationAction targettag="triggerer_player" text="EventText.scrapdealer2.scrapseller" eventsprite="office" />
|
|
<GoTo name="skiptrigger" />
|
|
<Label name="scrapproposition" />
|
|
<TriggerAction target1tag="scrapdealer" target2tag="player" applytotarget2="triggerer_player" radius="200" waitforinteraction="true" />
|
|
<Label name="skiptrigger" />
|
|
<ConversationAction targettag="triggerer_player" text="EventText.scrapdealer2.buyscrap" eventsprite="ScrapMetal">
|
|
<Option text="EventText.scrapdealer1.deal">
|
|
<CheckMoneyAction targettag="triggerer_player" Amount="250">
|
|
<Success>
|
|
<MoneyAction targettag="triggerer_player" amount="-250" />
|
|
<SpawnAction itemidentifier="scrap" amount="6" targetinventory="triggerer_player" />
|
|
<SetDataAction identifier="scrapdealerprogress" value="2" />
|
|
<ConversationAction targettag="triggerer_player" text="EventText.scrapdealer2.scrapbought" />
|
|
<MissionAction missiontag="salvagewreck" />
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.shop.quartermaster.option.scrap.buy.failure" eventsprite="ScrapMetal" />
|
|
<ClearTagAction tag="triggerer_player" />
|
|
<GoTo name="scrapproposition" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="eventtext.option.leave" endconversation="true">
|
|
<ClearTagAction tag="triggerer_player" />
|
|
<GoTo name="waitforinput" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Success>
|
|
</CheckDataAction>
|
|
<OnRoundEndAction>
|
|
<CheckConditionalAction targettag="scrapdealer" IsDead="true">
|
|
<Success>
|
|
<SetDataAction identifier="scrapdealerprogress" value="3" />
|
|
</Success>
|
|
</CheckConditionalAction>
|
|
</OnRoundEndAction>
|
|
</ScriptedEvent>
|
|
<!-- "Scrap dealer 3"
|
|
Transit event, spawns the corpse of the scrap dealer inside a wreck (RIP) -->
|
|
<ScriptedEvent identifier="scrapdealer3" commonness="25">
|
|
<CheckDataAction identifier="scrapdealerprogress" condition="eq 2">
|
|
<Failure></Failure>
|
|
<Success>
|
|
<TagAction criteria="player" tag="player" />
|
|
<SpawnAction npcsetidentifier="customnpcs" npcidentifier="scrapdealer" targettag="scrapdealer" spawnlocation="wreck" />
|
|
<TriggerAction target1tag="player" target2tag="scrapdealer" applytotarget2="triggerer_player" radius="200" waitforinteraction="false" />
|
|
<SetDataAction identifier="scrapdealerprogress" value="3" />
|
|
</Success>
|
|
</CheckDataAction>
|
|
</ScriptedEvent>
|
|
<!-- "Psychovisions"
|
|
Spooky research station event, if you interact with a research station while psychotic. Way too hard to trigger -->
|
|
<ScriptedEvent identifier="psychovisions" commonness="100">
|
|
<CheckDataAction identifier="psychovisionsnorepeat" condition="eq 0">
|
|
<Failure>
|
|
<!-- does not spawn the event if already done -->
|
|
</Failure>
|
|
<Success>
|
|
<TagAction criteria="player" tag="player" />
|
|
<TagAction criteria="itemidentifier:op_researchterminal" tag="potentialresearchterminal" submarinetype="outpost" chooserandom="true" />
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="researcher" targettag="psychoresearcher" spawnpointtag="potentialresearchterminal" spawnlocation="Outpost" />
|
|
<NPCFollowAction npctag="psychoresearcher" targettag="potentialresearchterminal" follow="true" />
|
|
<TriggerAction target1tag="psychoresearcher" target2tag="player" applytotarget2="triggerer_player" radius="150" waitforinteraction="true" />
|
|
<AfflictionAction targettag="psychoresearcher" affliction="psychosis" strength="100" />
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.psychovisions.ghosts" eventsprite="MentalBreakdown">
|
|
<Option text="eventtext.psychovisions.noghosts">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.psychovisions.insidemyhead" eventsprite="MentalBreakdown">
|
|
<Option text="eventtext.psychovisions.psychotic">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.psychovisions.panic" ContinueAutomatically="true" endconversation="true" eventsprite="MentalBreakdown" />
|
|
<CombatAction combatmode="Retreat" npctag="psychoresearcher" enemytag="triggerer_player" isinstigator="false" witnessreaction="none" cooldown="10" />
|
|
</Option>
|
|
<Option text="eventtext.psychovisions.leave" endconversation="true"></Option>
|
|
</ConversationAction>
|
|
</Option>
|
|
</ConversationAction>
|
|
<Label name="checkpsychosisloop" />
|
|
<WaitAction time="2" />
|
|
<TriggerAction target1tag="potentialresearchterminal" target2tag="player" applytotarget2="psychoplayer" radius="150" waitforinteraction="false" />
|
|
<CheckAfflictionAction identifier="psychosis" targettag="psychoplayer" minstrength="20">
|
|
<Success>
|
|
<TriggerAction target1tag="potentialresearchterminal" target2tag="triggerer_player" applytotarget2="psychoplayer" radius="150" waitforinteraction="true" />
|
|
<StatusEffectAction targettag="psychoplayer">
|
|
<StatusEffect target="This">
|
|
<Sound file="Content/Characters/Jove/JOVE_idle1.ogg" range="150" volume="2" frequencymultiplier="1" />
|
|
<Explosion range="500" force="0" empstrength="0.5" showeffects="false" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<SetDataAction identifier="spookytext" operation="set" value="0" />
|
|
<Label name="spawnmoretext" />
|
|
<CheckDataAction identifier="spookytext" condition="lt 15">
|
|
<Success>
|
|
<SpawnAction itemidentifier="alienwritingdecalevent" targettag="alientext" spawnpointtag="potentialresearchterminal" offset="200" />
|
|
<SetDataAction identifier="spookytext" operation="add" value="1" />
|
|
<WaitAction time="0.1" />
|
|
<Goto name="spawnmoretext" />
|
|
</Success>
|
|
<Failure>
|
|
<SetDataAction identifier="psychovisionsnorepeat" operation="set" value="1" />
|
|
<ConversationAction targettag="psychoplayer" text="eventtext.psychovisions.listenalien" eventsprite="Ancient1" dialogtype="small" />
|
|
<WaitAction time="2" />
|
|
<ConversationAction targettag="psychoplayer" text="eventtext.psychovisions.paranoid" endconversation="true" dialogtype="small" />
|
|
<GiveSkillEXPAction skill="helm" amount="5" targettag="psychoplayer" />
|
|
<GiveSkillEXPAction skill="weapons" amount="2" targettag="psychoplayer" />
|
|
</Failure>
|
|
</CheckDataAction>
|
|
</Success>
|
|
<Failure>
|
|
<ClearTagAction tag="psychoplayer" />
|
|
<Goto name="checkpsychosisloop" />
|
|
</Failure>
|
|
</CheckAfflictionAction>
|
|
</Success>
|
|
</CheckDataAction>
|
|
</ScriptedEvent>
|
|
<!-- COALITION SECURITY OFFICER - Super old and unused
|
|
<ScriptedEvent identifier="securityofficer" commonness="100">
|
|
<TagAction criteria="player" tag="player"/>
|
|
<Label name="restart"/>
|
|
<TriggerAction target1tag="securitynpc" target2tag="player" applytotarget2="cso_trig_player" radius="200" allowmultipletargets="true"/>
|
|
<CheckReputationAction targettype="faction" identifier="coalition" condition="gte 20">
|
|
<Success>
|
|
<TriggerAction target1tag="securitynpc" target2tag="player" applytotarget2="cso_trig_player" radius="200" waitforinteraction="true"/>
|
|
<NPCWaitAction npctag="securitynpc" wait="true"/>
|
|
<ConversationAction targettag="cso_trig_player" text="eventtext.shop.securityofficer.interact" eventsprite="security">
|
|
<Option text="eventtext.shop.securityofficer.option.coilgunammo">
|
|
<CheckMoneyAction Amount="150">
|
|
<Success>
|
|
<MoneyAction amount="-150"/>
|
|
<SpawnAction itemidentifier="coilgunammobox" targetinventory="cso_trig_player"/>
|
|
<ConversationAction targettag="cso_trig_player" text="eventtext.shop.securityofficer.option.coilgunammo.buy.success"/>
|
|
<NPCWaitAction npctag="securitynpc" wait="false"/>
|
|
<ClearTagAction tag="cso_trig_player"/>
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="cso_trig_player" text="eventtext.shop.securityofficer.option.coilgunammo.buy.failure"/>
|
|
<NPCWaitAction npctag="securitynpc" wait="false"/>
|
|
<ClearTagAction tag="cso_trig_player"/>
|
|
<GoTo name="restart"/>
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="eventtext.shop.securityofficer.option.revolverammo">
|
|
<CheckMoneyAction Amount="600">
|
|
<Success>
|
|
<MoneyAction amount="-600"/>
|
|
<SpawnAction itemidentifier="revolverround" targetinventory="cso_trig_player" />
|
|
<SpawnAction itemidentifier="revolverround" targetinventory="cso_trig_player" />
|
|
<SpawnAction itemidentifier="revolverround" targetinventory="cso_trig_player" />
|
|
<SpawnAction itemidentifier="revolverround" targetinventory="cso_trig_player" />
|
|
<SpawnAction itemidentifier="revolverround" targetinventory="cso_trig_player" />
|
|
<SpawnAction itemidentifier="revolverround" targetinventory="cso_trig_player" />
|
|
<SpawnAction itemidentifier="revolverround" targetinventory="cso_trig_player" />
|
|
<SpawnAction itemidentifier="revolverround" targetinventory="cso_trig_player" />
|
|
<SpawnAction itemidentifier="revolverround" targetinventory="cso_trig_player" />
|
|
<SpawnAction itemidentifier="revolverround" targetinventory="cso_trig_player" />
|
|
<SpawnAction itemidentifier="revolverround" targetinventory="cso_trig_player" />
|
|
<SpawnAction itemidentifier="revolverround" targetinventory="cso_trig_player" />
|
|
<ConversationAction targettag="cso_trig_player" text="eventtext.shop.securityofficer.option.revolverammo.buy.success"/>
|
|
<NPCWaitAction npctag="securitynpc" wait="false"/>
|
|
<ClearTagAction tag="cso_trig_player"/>
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="cso_trig_player" text="eventtext.shop.securityofficer.option.revolverammo.buy.failure"/>
|
|
<NPCWaitAction npctag="securitynpc" wait="false"/>
|
|
<ClearTagAction tag="cso_trig_player"/>
|
|
<GoTo name="restart"/>
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="eventtext.shop.securityofficer.option.smgmagazine">
|
|
<CheckMoneyAction Amount="400">
|
|
<Success>
|
|
<MoneyAction amount="-400"/>
|
|
<SpawnAction itemidentifier="smgmagazine" targetinventory="cso_trig_player" />
|
|
<SpawnAction itemidentifier="smgmagazine" targetinventory="cso_trig_player" />
|
|
<ConversationAction targettag="cso_trig_player" text="eventtext.shop.securityofficer.option.smgmagazine.buy.success"/>
|
|
<NPCWaitAction npctag="securitynpc" wait="false"/>
|
|
<ClearTagAction tag="cso_trig_player"/>
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="cso_trig_player" text="eventtext.shop.securityofficer.option.smgmagazine.buy.failure"/>
|
|
<NPCWaitAction npctag="securitynpc" wait="false"/>
|
|
<ClearTagAction tag="cso_trig_player"/>
|
|
<GoTo name="restart"/>
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="eventtext.securityofficer.option.insult">
|
|
<ReputationAction targettype="Faction" identifier="coalition" increase="-10"/>
|
|
<ConversationAction text="eventtext.securityofficer.option.insult.answer" targettag="cso_trig_player">
|
|
<Option text="eventtext.securityofficer.option.insult">
|
|
<ReputationAction targettype="Faction" identifier="coalition" increase="-20"/>
|
|
<ConversationAction text="eventtext.securityofficer.option.insult.answer.insult.answer" targettag="cso_trig_player"/>
|
|
<NPCWaitAction npctag="securitynpc" wait="false"/>
|
|
<GoTo name="arrest"/>
|
|
</Option>
|
|
<Option text="eventtext.option.leave">
|
|
<ConversationAction text="eventtext.securityofficer.option.insult.leave.answer" targettag="cso_trig_player"/>
|
|
<NPCWaitAction npctag="securitynpc" wait="false"/>
|
|
</Option>
|
|
</ConversationAction>
|
|
</Option>
|
|
<Option text="eventtext.option.leave">
|
|
<ConversationAction text="eventtext.general.decline" targettag="cso_trig_player"/>
|
|
<NPCWaitAction npctag="securitynpc" wait="false"/>
|
|
<ClearTagAction tag="cso_trig_player"/>
|
|
<GoTo name="restart"/>
|
|
</Option>
|
|
</ConversationAction>
|
|
</Success>
|
|
<Failure>
|
|
<CheckReputationAction targettype="faction" identifier="coalition" condition="gte -60">
|
|
<Success>
|
|
<RNGAction chance="0.4">
|
|
<Success>
|
|
<NPCFollowAction npctag="securitynpc" targettag="cso_trig_player" follow="true"/>
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="securitynpccoalition" targettag="backup" spawnlocation="Outpost" spawnpointtype="Path"/>
|
|
<CheckItemAction targettag="cso_trig_player" RequiredConditionalMatchPercentage="1">
|
|
<Conditional HasTag="stolen" targetcontainedItem="true" />
|
|
<Success>
|
|
<ReputationAction targettype="Faction" identifier="coalition" increase="-10"/>
|
|
<NPCFollowAction npctag="securitynpc" targettag="cso_trig_player" follow="false"/>
|
|
<GoTo name="arrest"/>
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction text="eventtext.securityofficer.interact" targettag="cso_trig_player">
|
|
<Option text="eventtext.securityofficer.option.rude">
|
|
<ReputationAction targettype="Faction" identifier="coalition" increase="-1"/>
|
|
<ConversationAction text="eventtext.securityofficer.option.rude.answer" targettag="cso_trig_player"/>
|
|
</Option>
|
|
<Option text="eventtext.securityofficer.option.polite">
|
|
<ConversationAction text="eventtext.securityofficer.option.polite.answer" targettag="cso_trig_player"/>
|
|
</Option>
|
|
</ConversationAction>
|
|
</Failure>
|
|
</CheckItemAction>
|
|
<ConversationAction targettag="cso_trig_player" text="eventtext.securityofficer.bribe.interact" continueconversation="true">
|
|
<Option text="eventtext.securityofficer.bribe.option.polite">
|
|
<ConversationAction targettag="cso_trig_player" text="eventtext.securityofficer.bribe.option.polite.answer">
|
|
<Option text="eventtext.securityofficer.bribe.option.bribe.high">
|
|
<CheckMoneyAction Amount="500">
|
|
<Success>
|
|
<MoneyAction amount="-500"/>
|
|
<ConversationAction text="eventtext.securityofficer.bribe.option.bribe.success" targettag="cso_trig_player"/>
|
|
<ReputationAction targettype="Faction" identifier="coalition" increase="1"/>
|
|
<NPCFollowAction npctag="securitynpc" targettag="cso_trig_player" follow="false"/>
|
|
<ClearTagAction tag="cso_trig_player"/>
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="cso_trig_player" text="eventtext.securityofficer.bribe.option.bribe.failure"/>
|
|
<GoTo name="arrest"/>
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="eventtext.securityofficer.bribe.option.bribe.medium">
|
|
<RNGAction chance="0.75">
|
|
<Success>
|
|
<CheckMoneyAction Amount="250">
|
|
<Success>
|
|
<MoneyAction amount="-250"/>
|
|
<ConversationAction text="eventtext.securityofficer.bribe.option.bribe.success" targettag="cso_trig_player"/>
|
|
<ReputationAction targettype="Faction" identifier="coalition" increase="1"/>
|
|
<NPCFollowAction npctag="securitynpc" targettag="cso_trig_player" follow="false"/>
|
|
<ClearTagAction tag="cso_trig_player"/>
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="cso_trig_player" text="eventtext.securityofficer.bribe.option.bribe.failure"/>
|
|
<GoTo name="arrest"/>
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="cso_trig_player" text="eventtext.securityofficer.bribe.option.bribe.rejected"/>
|
|
<GoTo name="arrest"/>
|
|
</Failure>
|
|
</RNGAction>
|
|
</Option>
|
|
<Option text="eventtext.securityofficer.bribe.option.bribe.low">
|
|
<RNGAction chance="0.50">
|
|
<Success>
|
|
<CheckMoneyAction Amount="75">
|
|
<Success>
|
|
<MoneyAction amount="-75"/>
|
|
<ConversationAction text="eventtext.securityofficer.bribe.option.bribe.success" targettag="cso_trig_player"/>
|
|
<ReputationAction targettype="Faction" identifier="coalition" increase="1"/>
|
|
<NPCFollowAction npctag="securitynpc" targettag="cso_trig_player" follow="false"/>
|
|
<ClearTagAction tag="cso_trig_player"/>
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="cso_trig_player" text="eventtext.securityofficer.bribe.option.bribe.failure"/>
|
|
<GoTo name="arrest"/>
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="cso_trig_player" text="eventtext.securityofficer.bribe.option.bribe.rejected"/>
|
|
<GoTo name="arrest"/>
|
|
</Failure>
|
|
</RNGAction>
|
|
</Option>
|
|
<Option text="eventtext.option.leave">
|
|
<ConversationAction text="eventtext.securityofficer.bribe.option.leave.answer" targettag="cso_trig_player"/>
|
|
<ClearTagAction tag="cso_trig_player"/>
|
|
</Option>
|
|
</ConversationAction>
|
|
</Option>
|
|
<Option text="eventtext.securityofficer.bribe.option.rude">
|
|
<ReputationAction targettype="Faction" identifier="coalition" increase="-5"/>
|
|
<CombatAction combatmode="arrest" npctag="securitynpc" enemytag="cso_trig_player" witnessreaction="retreat"/>
|
|
<ConversationAction text="eventtext.securityofficer.bribe.option.rude.answer" targettag="cso_trig_player"/>
|
|
<ClearTagAction tag="cso_trig_player"/>
|
|
</Option>
|
|
<Option text="eventtext.option.leave">
|
|
<ConversationAction text="eventtext.securityofficer.bribe.option.leave.answer" targettag="cso_trig_player"/>
|
|
<GoTo name="arrest"/>
|
|
</Option>
|
|
</ConversationAction>
|
|
</Success>
|
|
<Failure>
|
|
<Label name="tolloptions"/>
|
|
<NPCWaitAction npctag="securityofficer" wait="false"/>
|
|
<ClearTagAction tag="cso_trig_player"/>
|
|
</Failure>
|
|
</RNGAction>
|
|
</Success>
|
|
<Failure>
|
|
<Label name="arrest"/>
|
|
<CombatAction combatmode="arrest" npctag="securitynpc" enemytag="cso_trig_player" isinstigator="false" guardreaction="none" witnessreaction="retreat"/>
|
|
<WaitAction time="60"/>
|
|
<GoTo name="tolloptions"/>
|
|
</Failure>
|
|
</CheckReputationAction>
|
|
</Failure>
|
|
</CheckReputationAction>
|
|
</ScriptedEvent>
|
|
-->
|
|
<!--/////////////////// BLOCKADE EVENTS ////////////////
|
|
/////////////////// BLOCKADE EVENTS ////////////////
|
|
/////////////////// BLOCKADE EVENTS //////////////// -->
|
|
<!-- Check if a blockade of the same faction to the same biome has been opened, so you don't have to pay twice if you visit another allied blockade. -->
|
|
<ScriptedEvent identifier="checkblockadestate_coldcaverns_coalition" commonness="100">
|
|
<WaitAction time="8" />
|
|
<!-- check if a blockade of this faction was unlocked previously for this biome -->
|
|
<CheckDataAction identifier="blockade_coldcaverns_coalition_unlocked" condition="true">
|
|
<Success>
|
|
<TriggerEventAction identifier="opendoortoblockade" />
|
|
</Success>
|
|
<Failure>
|
|
<!-- do nothing -->
|
|
</Failure>
|
|
</CheckDataAction>
|
|
</ScriptedEvent>
|
|
<ScriptedEvent identifier="checkblockadestate_europanridge_coalition" commonness="100">
|
|
<WaitAction time="8" />
|
|
<!-- check if a blockade of this faction was unlocked previously for this biome -->
|
|
<CheckDataAction identifier="blockade_europanridge_coalition_unlocked" condition="true">
|
|
<Success>
|
|
<TriggerEventAction identifier="opendoortoblockade" />
|
|
</Success>
|
|
<Failure>
|
|
<!-- do nothing -->
|
|
</Failure>
|
|
</CheckDataAction>
|
|
</ScriptedEvent>
|
|
<ScriptedEvent identifier="checkblockadestate_aphoticplateau_coalition" commonness="100">
|
|
<WaitAction time="8" />
|
|
<!-- check if a blockade of this faction was unlocked previously for this biome -->
|
|
<CheckDataAction identifier="blockade_aphoticplateau_coalition_unlocked" condition="true">
|
|
<Success>
|
|
<TriggerEventAction identifier="opendoortoblockade" />
|
|
</Success>
|
|
<Failure>
|
|
<!-- do nothing -->
|
|
</Failure>
|
|
</CheckDataAction>
|
|
</ScriptedEvent>
|
|
<ScriptedEvent identifier="checkblockadestate_greatsea_coalition" commonness="100">
|
|
<WaitAction time="8" />
|
|
<!-- check if a blockade of this faction was unlocked previously for this biome -->
|
|
<CheckDataAction identifier="blockade_greatsea_coalition_unlocked" condition="true">
|
|
<Success>
|
|
<TriggerEventAction identifier="opendoortoblockade" />
|
|
</Success>
|
|
<Failure>
|
|
<!-- do nothing -->
|
|
</Failure>
|
|
</CheckDataAction>
|
|
</ScriptedEvent>
|
|
<ScriptedEvent identifier="checkblockadestate_coldcaverns_separatists" commonness="100">
|
|
<WaitAction time="8" />
|
|
<!-- check if a blockade of this faction was unlocked previously for this biome -->
|
|
<CheckDataAction identifier="blockade_coldcaverns_separatists_unlocked" condition="true">
|
|
<Success>
|
|
<TriggerEventAction identifier="opendoortoblockade" />
|
|
</Success>
|
|
<Failure>
|
|
<!-- do nothing -->
|
|
</Failure>
|
|
</CheckDataAction>
|
|
</ScriptedEvent>
|
|
<ScriptedEvent identifier="checkblockadestate_europanridge_separatists" commonness="100">
|
|
<WaitAction time="8" />
|
|
<!-- check if a blockade of this faction was unlocked previously for this biome -->
|
|
<CheckDataAction identifier="blockade_europanridge_separatists_unlocked" condition="true">
|
|
<Success>
|
|
<TriggerEventAction identifier="opendoortoblockade" />
|
|
</Success>
|
|
<Failure>
|
|
<!-- do nothing -->
|
|
</Failure>
|
|
</CheckDataAction>
|
|
</ScriptedEvent>
|
|
<ScriptedEvent identifier="checkblockadestate_aphoticplateau_separatists" commonness="100">
|
|
<WaitAction time="8" />
|
|
<!-- check if a blockade of this faction was unlocked previously for this biome -->
|
|
<CheckDataAction identifier="blockade_aphoticplateau_separatists_unlocked" condition="true">
|
|
<Success>
|
|
<TriggerEventAction identifier="opendoortoblockade" />
|
|
</Success>
|
|
<Failure>
|
|
<!-- do nothing -->
|
|
</Failure>
|
|
</CheckDataAction>
|
|
</ScriptedEvent>
|
|
<ScriptedEvent identifier="checkblockadestate_greatsea_separatists" commonness="100">
|
|
<WaitAction time="8" />
|
|
<!-- check if a blockade of this faction was unlocked previously for this biome -->
|
|
<CheckDataAction identifier="blockade_greatsea_separatists_unlocked" condition="true">
|
|
<Success>
|
|
<TriggerEventAction identifier="opendoortoblockade" />
|
|
</Success>
|
|
<Failure>
|
|
<!-- do nothing -->
|
|
</Failure>
|
|
</CheckDataAction>
|
|
</ScriptedEvent>
|
|
<!--"Unlock Path blockade" (generic template, versions by biome/cost below)
|
|
Only used for negociating and disabling the alarm, the actual event that unlocks the biome is openblockade -->
|
|
<ScriptedEvent identifier="unlockpathblockade" commonness="0" unlockpathevent="true">
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="watchman" targettag="unlockpathnpc" spawnlocation="Outpost" spawnpointtag="unlockpath" />
|
|
<TriggerEventAction identifier="blockadealarm" />
|
|
<TriggerEventAction identifier="openblockade" />
|
|
<CheckReputationAction targettype="Location" condition="gte 30">
|
|
<Success>
|
|
<ConversationAction text="EventText.unlockpathgeneric.c1" speakertag="unlockpathnpc" dialogtype="Regular" />
|
|
<SetDataAction identifier="blockadeopened" value="1" />
|
|
<TriggerEventAction identifier="opendoortoblockade" />
|
|
</Success>
|
|
<Failure>
|
|
<Label name="retry" />
|
|
<ConversationAction text="EventText.unlockpathgeneric.c2" speakertag="unlockpathnpc" invokertag="unlock_player" dialogtype="Regular" eventsprite="captain">
|
|
<Option text="EventText.unlockpathgeneric.o1">
|
|
<CheckMoneyAction amount="2000">
|
|
<Success>
|
|
<MoneyAction amount="-2000" />
|
|
<SetDataAction identifier="blockadeopened" value="1" />
|
|
<ConversationAction speakertag="unlockpathnpc" waitforinteraction="false" targettag="unlock_player" text="EventText.unlockpathgeneric.o1.c1" eventsprite="captain" />
|
|
<TriggerEventAction identifier="opendoortoblockade" />
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction speakertag="unlockpathnpc" waitforinteraction="false" targettag="unlock_player" text="EventText.unlockpathgeneric.nomoney" eventsprite="captain" />
|
|
<ClearTagAction tag="unlock_player" />
|
|
<GoTo name="retry" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="EventText.unlockpathgeneric.o2">
|
|
<ConversationAction speakertag="unlockpathnpc" waitforinteraction="false" targettag="unlock_player" text="EventText.unlockpathgeneric.o2.c1" eventsprite="captain" />
|
|
<ClearTagAction tag="unlock_player" />
|
|
<GoTo name="retry" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Failure>
|
|
</CheckReputationAction>
|
|
</ScriptedEvent>
|
|
<ScriptedEvent identifier="unlockpathcoldcaverns" commonness="1" unlockpathevent="true" unlockpathtooltip="lockedpathtooltipcoalitionreputation" unlockpathreputation="30" faction="coalition" biome="coldcaverns">
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="watchman" targettag="unlockpathnpc" spawnlocation="Outpost" spawnpointtag="unlockpath" />
|
|
<TriggerEventAction identifier="blockadealarm" />
|
|
<TriggerEventAction identifier="openblockade" />
|
|
<CheckDataAction identifier="blockade_coldcaverns_coalition_unlocked" condition="true">
|
|
<Success>
|
|
<Goto name="skip" />
|
|
</Success>
|
|
</CheckDataAction>
|
|
<CheckReputationAction targettype="Location" condition="gte 30">
|
|
<Success>
|
|
<ConversationAction text="EventText.unlockpathcoldcaverns.c1" speakertag="unlockpathnpc" dialogtype="Regular" />
|
|
<SetDataAction identifier="blockadeopened" value="1" />
|
|
<SetDataAction identifier="blockade_coldcaverns_coalition_unlocked" value="true" />
|
|
<TriggerEventAction identifier="opendoortoblockade" />
|
|
<TagAction criteria="itemtag:blockadeswitch" submarinetype="Outpost" tag="blockadeswitch" />
|
|
<StatusEffectAction targettag="blockadeswitch">
|
|
<StatusEffect target="This" State="true" setvalue="true" disabledeltatime="true" />
|
|
</StatusEffectAction>
|
|
</Success>
|
|
<Failure>
|
|
<Label name="retry" />
|
|
<ConversationAction text="EventText.unlockpathcoldcaverns.c2" speakertag="unlockpathnpc" invokertag="unlock_player" dialogtype="Regular" eventsprite="captain">
|
|
<Option text="EventText.unlockpathcoldcaverns.o1">
|
|
<CheckMoneyAction amount="2000">
|
|
<Success>
|
|
<MoneyAction amount="-2000" />
|
|
<SetDataAction identifier="blockadeopened" value="1" />
|
|
<ConversationAction speakertag="unlockpathnpc" waitforinteraction="false" targettag="unlock_player" text="EventText.unlockpathcoldcaverns.o1.c1" eventsprite="captain" />
|
|
<SetDataAction identifier="blockade_coldcaverns_coalition_unlocked" value="true" />
|
|
<TriggerEventAction identifier="opendoortoblockade" />
|
|
<TagAction criteria="itemtag:blockadeswitch" submarinetype="Outpost" tag="blockadeswitch" />
|
|
<StatusEffectAction targettag="blockadeswitch">
|
|
<StatusEffect target="This" State="true" setvalue="true" disabledeltatime="true" />
|
|
</StatusEffectAction>
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction speakertag="unlockpathnpc" waitforinteraction="false" targettag="unlock_player" text="EventText.unlockpathcoldcaverns.o1.nomoney" eventsprite="captain" />
|
|
<ClearTagAction tag="unlock_player" />
|
|
<GoTo name="retry" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="EventText.unlockpath.refusebribe">
|
|
<ConversationAction speakertag="unlockpathnpc" waitforinteraction="false" targettag="unlock_player" text="EventText.unlockpathcoldcaverns.o2.c1" eventsprite="captain" />
|
|
<ClearTagAction tag="unlock_player" />
|
|
<GoTo name="retry" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Failure>
|
|
</CheckReputationAction>
|
|
<Label name="skip" />
|
|
</ScriptedEvent>
|
|
<ScriptedEvent identifier="unlockpatheuropanridge" commonness="1" unlockpathevent="true" unlockpathtooltip="lockedpathtooltipcoalitionreputation" unlockpathreputation="40" faction="coalition" biome="europanridge">
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="watchman" targettag="unlockpathnpc" spawnlocation="Outpost" spawnpointtag="unlockpath" />
|
|
<TriggerEventAction identifier="blockadealarm" />
|
|
<TriggerEventAction identifier="openblockade" />
|
|
<CheckDataAction identifier="blockade_europanridge_coalition_unlocked" condition="true">
|
|
<Success>
|
|
<Goto name="skip" />
|
|
</Success>
|
|
</CheckDataAction>
|
|
<CheckReputationAction targettype="Location" condition="gte 40">
|
|
<Success>
|
|
<ConversationAction text="EventText.unlockpatheuropanridge.c1" speakertag="unlockpathnpc" dialogtype="Regular" />
|
|
<SetDataAction identifier="blockadeopened" value="1" />
|
|
<SetDataAction identifier="blockade_europanridge_coalition_unlocked" value="true" />
|
|
<TriggerEventAction identifier="opendoortoblockade" />
|
|
<TagAction criteria="itemtag:blockadeswitch" submarinetype="Outpost" tag="blockadeswitch" />
|
|
<StatusEffectAction targettag="blockadeswitch">
|
|
<StatusEffect target="This" State="true" setvalue="true" disabledeltatime="true" />
|
|
</StatusEffectAction>
|
|
</Success>
|
|
<Failure>
|
|
<Label name="retry" />
|
|
<ConversationAction text="EventText.unlockpatheuropanridge.c2" speakertag="unlockpathnpc" invokertag="unlock_player" dialogtype="Regular" eventsprite="captain">
|
|
<Option text="EventText.unlockpatheuropanridge.o1">
|
|
<CheckMoneyAction amount="4000">
|
|
<Success>
|
|
<MoneyAction amount="-4000" />
|
|
<SetDataAction identifier="blockadeopened" value="1" />
|
|
<ConversationAction speakertag="unlockpathnpc" waitforinteraction="false" targettag="unlock_player" text="EventText.unlockpatheuropanridge.o1.c1" eventsprite="captain" />
|
|
<SetDataAction identifier="blockade_europanridge_coalition_unlocked" value="true" />
|
|
<TriggerEventAction identifier="opendoortoblockade" />
|
|
<TagAction criteria="itemtag:blockadeswitch" submarinetype="Outpost" tag="blockadeswitch" />
|
|
<StatusEffectAction targettag="blockadeswitch">
|
|
<StatusEffect target="This" State="true" setvalue="true" disabledeltatime="true" />
|
|
</StatusEffectAction>
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction speakertag="unlockpathnpc" waitforinteraction="false" targettag="unlock_player" text="EventText.unlockpatheuropanridge.o1.nomoney" eventsprite="captain" />
|
|
<ClearTagAction tag="unlock_player" />
|
|
<GoTo name="retry" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="EventText.unlockpath.refusebribe">
|
|
<ConversationAction speakertag="unlockpathnpc" waitforinteraction="false" targettag="unlock_player" text="EventText.unlockpatheuropanridge.o2.c1" eventsprite="captain" />
|
|
<ClearTagAction tag="unlock_player" />
|
|
<GoTo name="retry" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Failure>
|
|
</CheckReputationAction>
|
|
<Label name="skip" />
|
|
</ScriptedEvent>
|
|
<ScriptedEvent identifier="unlockpathaphoticplateau" commonness="1" unlockpathevent="true" unlockpathtooltip="lockedpathtooltipcoalitionreputation" unlockpathreputation="50" faction="coalition" biome="theaphoticplateau">
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="watchman" targettag="unlockpathnpc" spawnlocation="Outpost" spawnpointtag="unlockpath" />
|
|
<TriggerEventAction identifier="blockadealarm" />
|
|
<TriggerEventAction identifier="openblockade" />
|
|
<CheckDataAction identifier="blockade_aphoticplateau_coalition_unlocked" condition="true">
|
|
<Success>
|
|
<Goto name="skip" />
|
|
</Success>
|
|
</CheckDataAction>
|
|
<CheckReputationAction targettype="Location" condition="gte 50">
|
|
<Success>
|
|
<ConversationAction text="EventText.unlockpathaphoticplateau.c1" speakertag="unlockpathnpc" dialogtype="Regular" />
|
|
<SetDataAction identifier="blockadeopened" value="1" />
|
|
<SetDataAction identifier="blockade_aphoticplateau_coalition_unlocked" value="true" />
|
|
<TriggerEventAction identifier="opendoortoblockade" />
|
|
<TagAction criteria="itemtag:blockadeswitch" submarinetype="Outpost" tag="blockadeswitch" />
|
|
<StatusEffectAction targettag="blockadeswitch">
|
|
<StatusEffect target="This" State="true" setvalue="true" disabledeltatime="true" />
|
|
</StatusEffectAction>
|
|
</Success>
|
|
<Failure>
|
|
<Label name="retry" />
|
|
<ConversationAction text="EventText.unlockpathaphoticplateau.c2" speakertag="unlockpathnpc" invokertag="unlock_player" dialogtype="Regular" eventsprite="captain">
|
|
<Option text="EventText.unlockpathaphoticplateau.o1">
|
|
<CheckMoneyAction amount="8000">
|
|
<Success>
|
|
<MoneyAction amount="-8000" />
|
|
<SetDataAction identifier="blockadeopened" value="1" />
|
|
<ConversationAction speakertag="unlockpathnpc" waitforinteraction="false" targettag="unlock_player" text="EventText.unlockpathaphoticplateau.o1.c1" eventsprite="captain" />
|
|
<SetDataAction identifier="blockade_aphoticplateau_coalition_unlocked" value="true" />
|
|
<TriggerEventAction identifier="opendoortoblockade" />
|
|
<TagAction criteria="itemtag:blockadeswitch" submarinetype="Outpost" tag="blockadeswitch" />
|
|
<StatusEffectAction targettag="blockadeswitch">
|
|
<StatusEffect target="This" State="true" setvalue="true" disabledeltatime="true" />
|
|
</StatusEffectAction>
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction speakertag="unlockpathnpc" waitforinteraction="false" targettag="unlock_player" text="EventText.unlockpathaphoticplateau.o1.nomoney" eventsprite="captain" />
|
|
<ClearTagAction tag="unlock_player" />
|
|
<GoTo name="retry" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="EventText.unlockpath.refusebribe">
|
|
<ConversationAction speakertag="unlockpathnpc" waitforinteraction="false" targettag="unlock_player" text="EventText.unlockpathaphoticplateau.o2.c1" eventsprite="captain" />
|
|
<ClearTagAction tag="unlock_player" />
|
|
<GoTo name="retry" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Failure>
|
|
</CheckReputationAction>
|
|
<Label name="skip" />
|
|
</ScriptedEvent>
|
|
<ScriptedEvent identifier="unlockpathgreatsea" commonness="1" unlockpathevent="true" unlockpathtooltip="lockedpathtooltipcoalitionreputation" unlockpathreputation="75" faction="coalition" biome="thegreatsea">
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="watchman" targettag="unlockpathnpc" spawnlocation="Outpost" spawnpointtag="unlockpath" />
|
|
<TriggerEventAction identifier="blockadealarm" />
|
|
<TriggerEventAction identifier="openblockade" />
|
|
<CheckDataAction identifier="blockade_greatsea_coalition_unlocked" condition="true">
|
|
<Success>
|
|
<Goto name="skip" />
|
|
</Success>
|
|
</CheckDataAction>
|
|
<CheckReputationAction targettype="Location" condition="gte 75">
|
|
<Success>
|
|
<ConversationAction text="EventText.unlockpathgreatsea.c1" speakertag="unlockpathnpc" dialogtype="Regular" eventsprite="captain" />
|
|
<SetDataAction identifier="blockadeopened" value="1" />
|
|
<SetDataAction identifier="blockade_greatsea_coalition_unlocked" value="true" />
|
|
<TriggerEventAction identifier="opendoortoblockade" />
|
|
<TagAction criteria="itemtag:blockadeswitch" submarinetype="Outpost" tag="blockadeswitch" />
|
|
<StatusEffectAction targettag="blockadeswitch">
|
|
<StatusEffect target="This" State="true" setvalue="true" disabledeltatime="true" />
|
|
</StatusEffectAction>
|
|
</Success>
|
|
<Failure>
|
|
<Label name="retry" />
|
|
<ConversationAction text="EventText.unlockpathgreatsea.c2" speakertag="unlockpathnpc" invokertag="unlock_player" dialogtype="Regular" eventsprite="captain">
|
|
<Option text="EventText.unlockpathgreatsea.o1">
|
|
<CheckMoneyAction amount="16000">
|
|
<Success>
|
|
<MoneyAction amount="-16000" />
|
|
<SetDataAction identifier="blockadeopened" value="1" />
|
|
<ConversationAction speakertag="unlockpathnpc" waitforinteraction="false" targettag="unlock_player" text="EventText.unlockpathgreatsea.o1.c1" eventsprite="captain" />
|
|
<SetDataAction identifier="blockade_greatsea_coalition_unlocked" value="true" />
|
|
<TriggerEventAction identifier="opendoortoblockade" />
|
|
<TagAction criteria="itemtag:blockadeswitch" submarinetype="Outpost" tag="blockadeswitch" />
|
|
<StatusEffectAction targettag="blockadeswitch">
|
|
<StatusEffect target="This" State="true" setvalue="true" disabledeltatime="true" />
|
|
</StatusEffectAction>
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction speakertag="unlockpathnpc" waitforinteraction="false" targettag="unlock_player" text="EventText.unlockpathgreatsea.o1.nomoney" eventsprite="captain" />
|
|
<ClearTagAction tag="unlock_player" />
|
|
<GoTo name="retry" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="EventText.unlockpath.refusebribe">
|
|
<ConversationAction speakertag="unlockpathnpc" waitforinteraction="false" targettag="unlock_player" text="EventText.unlockpathgreatsea.o2.c1" eventsprite="captain" />
|
|
<ClearTagAction tag="unlock_player" />
|
|
<GoTo name="retry" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Failure>
|
|
</CheckReputationAction>
|
|
<Label name="skip" />
|
|
</ScriptedEvent>
|
|
<ScriptedEvent identifier="unlockpathcoldcavernsseparatists" commonness="1" unlockpathevent="true" unlockpathtooltip="lockedpathtooltipseparatistreputation" unlockpathreputation="30" faction="separatists" biome="coldcaverns">
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="watchmanseparatist" targettag="unlockpathnpc" spawnlocation="Outpost" spawnpointtag="unlockpath" />
|
|
<TriggerEventAction identifier="blockadealarm" />
|
|
<TriggerEventAction identifier="openblockade" />
|
|
<CheckDataAction identifier="blockade_coldcaverns_separatists_unlocked" condition="true">
|
|
<Success>
|
|
<Goto name="skip" />
|
|
</Success>
|
|
</CheckDataAction>
|
|
<CheckReputationAction targettype="Location" condition="gte 30">
|
|
<Success>
|
|
<ConversationAction text="EventText.unlockpathcoldcavernsseparatists.c1" speakertag="unlockpathnpc" dialogtype="Regular" />
|
|
<SetDataAction identifier="blockadeopened" value="1" />
|
|
<SetDataAction identifier="blockade_coldcaverns_separatists_unlocked" value="true" />
|
|
<TriggerEventAction identifier="opendoortoblockade" />
|
|
<TagAction criteria="itemtag:blockadeswitch" submarinetype="Outpost" tag="blockadeswitch" />
|
|
<StatusEffectAction targettag="blockadeswitch">
|
|
<StatusEffect target="This" State="true" setvalue="true" disabledeltatime="true" />
|
|
</StatusEffectAction>
|
|
</Success>
|
|
<Failure>
|
|
<Label name="retry" />
|
|
<ConversationAction text="eventtext.unlockpathcoldcavernsseparatists.c2" speakertag="unlockpathnpc" invokertag="unlock_player" dialogtype="Regular" eventsprite="captain">
|
|
<Option text="EventText.unlockpathcoldcaverns.o1">
|
|
<CheckMoneyAction amount="2000">
|
|
<Success>
|
|
<MoneyAction amount="-2000" />
|
|
<SetDataAction identifier="blockadeopened" value="1" />
|
|
<ConversationAction speakertag="unlockpathnpc" waitforinteraction="false" targettag="unlock_player" text="eventtext.unlockpathcoldcavernsseparatists.o1.c1" eventsprite="captain" />
|
|
<SetDataAction identifier="blockade_coldcaverns_separatists_unlocked" value="true" />
|
|
<TriggerEventAction identifier="opendoortoblockade" />
|
|
<TagAction criteria="itemtag:blockadeswitch" submarinetype="Outpost" tag="blockadeswitch" />
|
|
<StatusEffectAction targettag="blockadeswitch">
|
|
<StatusEffect target="This" State="true" setvalue="true" disabledeltatime="true" />
|
|
</StatusEffectAction>
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction speakertag="unlockpathnpc" waitforinteraction="false" targettag="unlock_player" text="eventtext.unlockpathcoldcavernsseparatists.o1.nomoney" eventsprite="captain" />
|
|
<ClearTagAction tag="unlock_player" />
|
|
<GoTo name="retry" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="EventText.unlockpath.refusebribe">
|
|
<ConversationAction speakertag="unlockpathnpc" waitforinteraction="false" targettag="unlock_player" text="eventtext.unlockpathcoldcavernsseparatists.o2.c1" eventsprite="captain" />
|
|
<ClearTagAction tag="unlock_player" />
|
|
<GoTo name="retry" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Failure>
|
|
</CheckReputationAction>
|
|
<Label name="skip" />
|
|
</ScriptedEvent>
|
|
<ScriptedEvent identifier="unlockpatheuropanridgeseparatists" commonness="1" unlockpathevent="true" unlockpathtooltip="lockedpathtooltipseparatistreputation" unlockpathreputation="40" faction="separatists" biome="europanridge">
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="watchmanseparatist" targettag="unlockpathnpc" spawnlocation="Outpost" spawnpointtag="unlockpath" />
|
|
<TriggerEventAction identifier="blockadealarm" />
|
|
<TriggerEventAction identifier="openblockade" />
|
|
<CheckDataAction identifier="blockade_europanridge_separatists_unlocked" condition="true">
|
|
<Success>
|
|
<Goto name="skip" />
|
|
</Success>
|
|
</CheckDataAction>
|
|
<CheckReputationAction targettype="Location" condition="gte 40">
|
|
<Success>
|
|
<ConversationAction text="eventtext.unlockpatheuropanridgeseparatists.c1" speakertag="unlockpathnpc" dialogtype="Regular" />
|
|
<SetDataAction identifier="blockadeopened" value="1" />
|
|
<SetDataAction identifier="blockade_europanridge_separatists_unlocked" value="true" />
|
|
<TriggerEventAction identifier="opendoortoblockade" />
|
|
<TagAction criteria="itemtag:blockadeswitch" submarinetype="Outpost" tag="blockadeswitch" />
|
|
<StatusEffectAction targettag="blockadeswitch">
|
|
<StatusEffect target="This" State="true" setvalue="true" disabledeltatime="true" />
|
|
</StatusEffectAction>
|
|
</Success>
|
|
<Failure>
|
|
<Label name="retry" />
|
|
<ConversationAction text="EventText.unlockpatheuropanridge.c2" speakertag="unlockpathnpc" invokertag="unlock_player" dialogtype="Regular" eventsprite="captain">
|
|
<Option text="EventText.unlockpatheuropanridge.o1">
|
|
<CheckMoneyAction amount="4000">
|
|
<Success>
|
|
<MoneyAction amount="-4000" />
|
|
<SetDataAction identifier="blockadeopened" value="1" />
|
|
<ConversationAction speakertag="unlockpathnpc" waitforinteraction="false" targettag="unlock_player" text="EventText.unlockpatheuropanridge.o1.c1" eventsprite="captain" />
|
|
<SetDataAction identifier="blockade_europanridge_separatists_unlocked" value="true" />
|
|
<TriggerEventAction identifier="opendoortoblockade" />
|
|
<TagAction criteria="itemtag:blockadeswitch" submarinetype="Outpost" tag="blockadeswitch" />
|
|
<StatusEffectAction targettag="blockadeswitch">
|
|
<StatusEffect target="This" State="true" setvalue="true" disabledeltatime="true" />
|
|
</StatusEffectAction>
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction speakertag="unlockpathnpc" waitforinteraction="false" targettag="unlock_player" text="EventText.unlockpatheuropanridge.o1.nomoney" eventsprite="captain" />
|
|
<ClearTagAction tag="unlock_player" />
|
|
<GoTo name="retry" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="EventText.unlockpath.refusebribe">
|
|
<ConversationAction speakertag="unlockpathnpc" waitforinteraction="false" targettag="unlock_player" text="EventText.unlockpatheuropanridge.o2.c1" eventsprite="captain" />
|
|
<ClearTagAction tag="unlock_player" />
|
|
<GoTo name="retry" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Failure>
|
|
</CheckReputationAction>
|
|
<Label name="skip" />
|
|
</ScriptedEvent>
|
|
<ScriptedEvent identifier="unlockpathaphoticplateauseparatists" commonness="1" unlockpathevent="true" unlockpathtooltip="lockedpathtooltipseparatistreputation" unlockpathreputation="50" faction="separatists" biome="theaphoticplateau">
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="watchmanseparatist" targettag="unlockpathnpc" spawnlocation="Outpost" spawnpointtag="unlockpath" />
|
|
<TriggerEventAction identifier="blockadealarm" />
|
|
<TriggerEventAction identifier="openblockade" />
|
|
<CheckDataAction identifier="blockade_aphoticplateau_separatists_unlocked" condition="true">
|
|
<Success>
|
|
<Goto name="skip" />
|
|
</Success>
|
|
</CheckDataAction>
|
|
<CheckReputationAction targettype="Location" condition="gte 50">
|
|
<Success>
|
|
<ConversationAction text="EventText.unlockpathaphoticplateauseparatists.c1" speakertag="unlockpathnpc" dialogtype="Regular" />
|
|
<SetDataAction identifier="blockadeopened" value="1" />
|
|
<SetDataAction identifier="blockade_aphoticplateau_separatists_unlocked" value="true" />
|
|
<TriggerEventAction identifier="opendoortoblockade" />
|
|
<TagAction criteria="itemtag:blockadeswitch" submarinetype="Outpost" tag="blockadeswitch" />
|
|
<StatusEffectAction targettag="blockadeswitch">
|
|
<StatusEffect target="This" State="true" setvalue="true" disabledeltatime="true" />
|
|
</StatusEffectAction>
|
|
</Success>
|
|
<Failure>
|
|
<Label name="retry" />
|
|
<ConversationAction text="EventText.unlockpathaphoticplateau.c2" speakertag="unlockpathnpc" invokertag="unlock_player" dialogtype="Regular" eventsprite="captain">
|
|
<Option text="EventText.unlockpathaphoticplateau.o1">
|
|
<CheckMoneyAction amount="8000">
|
|
<Success>
|
|
<MoneyAction amount="-8000" />
|
|
<SetDataAction identifier="blockadeopened" value="1" />
|
|
<ConversationAction speakertag="unlockpathnpc" waitforinteraction="false" targettag="unlock_player" text="eventtext.unlockpathaphoticplateauseparatists.o1.c1" eventsprite="captain" />
|
|
<SetDataAction identifier="blockade_aphoticplateau_separatists_unlocked" value="true" />
|
|
<TriggerEventAction identifier="opendoortoblockade" />
|
|
<TagAction criteria="itemtag:blockadeswitch" submarinetype="Outpost" tag="blockadeswitch" />
|
|
<StatusEffectAction targettag="blockadeswitch">
|
|
<StatusEffect target="This" State="true" setvalue="true" disabledeltatime="true" />
|
|
</StatusEffectAction>
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction speakertag="unlockpathnpc" waitforinteraction="false" targettag="unlock_player" text="EventText.unlockpathaphoticplateau.o1.nomoney" eventsprite="captain" />
|
|
<ClearTagAction tag="unlock_player" />
|
|
<GoTo name="retry" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="EventText.unlockpath.refusebribe">
|
|
<ConversationAction speakertag="unlockpathnpc" waitforinteraction="false" targettag="unlock_player" text="EventText.unlockpathaphoticplateau.o2.c1" eventsprite="captain" />
|
|
<ClearTagAction tag="unlock_player" />
|
|
<GoTo name="retry" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Failure>
|
|
</CheckReputationAction>
|
|
<Label name="skip" />
|
|
</ScriptedEvent>
|
|
<ScriptedEvent identifier="unlockpathgreatseaseparatists" commonness="1" unlockpathevent="true" unlockpathtooltip="lockedpathtooltipseparatistreputation" unlockpathreputation="75" faction="separatists" biome="thegreatsea">
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="watchmanseparatist" targettag="unlockpathnpc" spawnlocation="Outpost" spawnpointtag="unlockpath" />
|
|
<TriggerEventAction identifier="blockadealarm" />
|
|
<TriggerEventAction identifier="openblockade" />
|
|
<CheckDataAction identifier="blockade_greatsea_separatists_unlocked" condition="true">
|
|
<Success>
|
|
<Goto name="skip" />
|
|
</Success>
|
|
</CheckDataAction>
|
|
<CheckReputationAction targettype="Location" condition="gte 75">
|
|
<Success>
|
|
<ConversationAction text="eventtext.unlockpathgreatseaseparatists.c1" speakertag="unlockpathnpc" dialogtype="Regular" eventsprite="captain" />
|
|
<SetDataAction identifier="blockadeopened" value="1" />
|
|
<SetDataAction identifier="blockade_greatsea_separatists_unlocked" value="true" />
|
|
<TriggerEventAction identifier="opendoortoblockade" />
|
|
<TagAction criteria="itemtag:blockadeswitch" submarinetype="Outpost" tag="blockadeswitch" />
|
|
<StatusEffectAction targettag="blockadeswitch">
|
|
<StatusEffect target="This" State="true" setvalue="true" disabledeltatime="true" />
|
|
</StatusEffectAction>
|
|
</Success>
|
|
<Failure>
|
|
<Label name="retry" />
|
|
<ConversationAction text="EventText.unlockpathgreatsea.c2" speakertag="unlockpathnpc" invokertag="unlock_player" dialogtype="Regular" eventsprite="captain">
|
|
<Option text="EventText.unlockpathgreatsea.o1">
|
|
<CheckMoneyAction amount="16000">
|
|
<Success>
|
|
<MoneyAction amount="-16000" />
|
|
<SetDataAction identifier="blockadeopened" value="1" />
|
|
<ConversationAction speakertag="unlockpathnpc" waitforinteraction="false" targettag="unlock_player" text="EventText.unlockpathgreatsea.o1.c1" eventsprite="captain" />
|
|
<SetDataAction identifier="blockade_greatsea_separatists_unlocked" value="true" />
|
|
<TriggerEventAction identifier="opendoortoblockade" />
|
|
<TagAction criteria="itemtag:blockadeswitch" submarinetype="Outpost" tag="blockadeswitch" />
|
|
<StatusEffectAction targettag="blockadeswitch">
|
|
<StatusEffect target="This" State="true" setvalue="true" disabledeltatime="true" />
|
|
</StatusEffectAction>
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction speakertag="unlockpathnpc" waitforinteraction="false" targettag="unlock_player" text="EventText.unlockpathgreatsea.o1.nomoney" eventsprite="captain" />
|
|
<ClearTagAction tag="unlock_player" />
|
|
<GoTo name="retry" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="EventText.unlockpath.refusebribe">
|
|
<ConversationAction speakertag="unlockpathnpc" waitforinteraction="false" targettag="unlock_player" text="EventText.unlockpathgreatsea.o2.c1" eventsprite="captain" />
|
|
<ClearTagAction tag="unlock_player" />
|
|
<GoTo name="retry" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Failure>
|
|
</CheckReputationAction>
|
|
<Label name="skip" />
|
|
</ScriptedEvent>
|
|
<!-- opens the door leading to blockade lever, triggered by events above -->
|
|
<ScriptedEvent identifier="opendoortoblockade" commonness="1">
|
|
<TagAction criteria="itemtag:blockadedoor" submarinetype="Outpost" tag="blockadedoor" />
|
|
<TagAction criteria="itemtag:blockadebutton" submarinetype="Outpost" tag="blockadebutton" />
|
|
<TagAction criteria="itemtag:blockadesensor" submarinetype="Outpost" tag="blockadesensor" />
|
|
<TagAction criteria="itemtag:blockadedoorstatus" tag="blockadedoorstatus" />
|
|
<StatusEffectAction targettag="blockadedoorstatus">
|
|
<StatusEffect target="this" lightcolor="0,255,0,255" setvalue="true" />
|
|
</StatusEffectAction>
|
|
<StatusEffectAction targettag="blockadebutton">
|
|
<StatusEffect target="this" noninteractable="true" setvalue="true" />
|
|
</StatusEffectAction>
|
|
<StatusEffectAction targettag="blockadesensor">
|
|
<StatusEffect target="This" targetitemcomponent="MotionSensor" isActive="false" />
|
|
<StatusEffect target="This" condition="-100" setvalue="true" />
|
|
</StatusEffectAction>
|
|
<WaitAction time="1" />
|
|
<StatusEffectAction targettag="blockadedoor">
|
|
<StatusEffect target="this" ShouldBeOpen="true" noninteractable="true" setvalue="true" />
|
|
</StatusEffectAction>
|
|
<SetDataAction identifier="blockadeopened" value="1" />
|
|
</ScriptedEvent>
|
|
<!-- simple event that unlocks the path by flicking a lever, allows forcing blockades open -->
|
|
<ScriptedEvent identifier="openblockade" commonness="1">
|
|
<TagAction criteria="player" tag="player" />
|
|
<TagAction criteria="itemtag:blockadeswitch" submarinetype="Outpost" tag="blockadeswitch" />
|
|
<TutorialHighlightAction targetcharacter="player" targettag="blockadeswitch" />
|
|
<EventObjectiveAction targettag="player" type="add" identifier="eventtext.openblockade.gotolever" />
|
|
<Label name="retry" />
|
|
<CheckConditionalAction targettag="blockadeswitch" targetitemcomponent="Controller" State="True">
|
|
<Success>
|
|
<StatusEffectAction targettag="blockadeswitch">
|
|
<StatusEffect target="this" noninteractable="true" setvalue="true" />
|
|
</StatusEffectAction>
|
|
<StatusEffectAction targettag="blockadeswitch">
|
|
<StatusEffect target="this">
|
|
<Sound file="Content/Items/Door/Door2.ogg" range="10000" dontmuffle="true" volume="3" frequencymultiplier="0.25" />
|
|
<Explosion range="5000.0" camerashake="2" stun="0" force="0.0" flames="false" smoke="false" flash="false" shockwave="false" sparks="false" underwaterbubble="false" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<UnlockPathAction />
|
|
<EventObjectiveAction targettag="player" type="completeandremove" identifier="eventtext.openblockade.gotolever" />
|
|
</Success>
|
|
<Failure>
|
|
<WaitAction time="1" />
|
|
<Goto name="retry" />
|
|
</Failure>
|
|
</CheckConditionalAction>
|
|
</ScriptedEvent>
|
|
<!-- triggers alarm if it detects a player in the blockade hulls without negociating with NPC -->
|
|
<ScriptedEvent identifier="blockadealarm">
|
|
<CheckMissionAction MissionTag="outposttakeovermission" Type="Current">
|
|
<Success>
|
|
<!-- do not activate if takeover active -->
|
|
</Success>
|
|
<Failure>
|
|
<TagAction criteria="player" tag="player" />
|
|
<TagAction criteria="hullname:commandroom" tag="blockadehull" submarinetype="Outpost" />
|
|
<TagAction criteria="itemtag:securityalarm" submarinetype="Outpost" tag="alarm" />
|
|
<!-- spawns security in the blockade room -->
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="securitynpc[faction]" targettag="security" spawnlocation="Outpost" spawnpointtag="blockadehull" />
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="securitynpc[faction]" targettag="security" spawnlocation="Outpost" spawnpointtag="blockadehull" />
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="securitynpc[faction]" targettag="security" spawnlocation="Outpost" spawnpointtag="blockadehull" />
|
|
<TriggerAction target1tag="player" target2tag="blockadehull" applytotarget1="triggerer_player" radius="10" disableincombat="false" disableiftargetincapacitated="false" waitforinteraction="false" />
|
|
<CheckDataAction identifier="blockadeopened" condition="eq 1">
|
|
<Success>
|
|
<SetDataAction identifier="blockadeopened" value="0" />
|
|
</Success>
|
|
<Failure>
|
|
<StatusEffectAction targettag="alarm">
|
|
<StatusEffect IsOn="true" target="This" setvalue="true" />
|
|
</StatusEffectAction>
|
|
<StatusEffectAction targettag="security">
|
|
<StatusEffect target="this">
|
|
<Forcesay message="eventtext.blockadealarm.breakin" sayinradio="true" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<StatusEffectAction targettag="blockadehull">
|
|
<StatusEffect target="this" duration="3">
|
|
<Sound file="Content/Sounds/Radiostatic.ogg" range="4000" volume="2" loop="true" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<ReputationAction targettype="Location" increase="-25" />
|
|
<SetDataAction identifier="blockadeopened" value="0" />
|
|
<WaitAction time="1" />
|
|
<Label name="tagcombatloop" />
|
|
<TriggerAction target1tag="player" target2tag="blockadehull" applytotarget1="trespasser_player" radius="10" disableincombat="false" disableiftargetincapacitated="false" waitforinteraction="false" />
|
|
<CombatAction combatmode="Offensive" npctag="securitynpc" enemytag="trespasser_player" isinstigator="false" witnessreaction="retreat" cooldown="10" AbandonOnReset="false" />
|
|
<WaitAction time="5" />
|
|
<ClearTagAction tag="trespasser_player" />
|
|
<Goto name="tagcombatloop" />
|
|
</Failure>
|
|
</CheckDataAction>
|
|
</Failure>
|
|
</CheckMissionAction>
|
|
</ScriptedEvent>
|
|
<!--/////////////////// BANDIT EVENTS ////////////////
|
|
/////////////////// BANDIT EVENTS ////////////////
|
|
/////////////////// BANDIT EVENTS //////////////// -->
|
|
<!-- "Pirate toll"
|
|
When entering a pirate outpost, you have to pay a toll to get in. There are multiple options:
|
|
-Paying the toll gives access for a high cost.
|
|
-Haggling checks your Helm (charisma) skill, can lock you out of accessing the armory
|
|
-Plead checks your Helm (charisma) skill, get mugged you if you fail + no armory
|
|
|
|
If you have >20 coalition reputation, the costs are increased.
|
|
If you have >60 coalition reputation, the pirates wont let you in.
|
|
If you have <-13 bandit reputation (hostile), this doesnt trigger. -->
|
|
<ScriptedEvent identifier="pirateoutpostevent">
|
|
<TagAction criteria="player" tag="player" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="speciesname:Human" submarinetype="Outpost" team="FriendlyNPC" tag="piratenpc" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="speciesname:Human" submarinetype="Outpost" team="Team2" tag="piratenpc" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="itemtag:pirateentrance" tag="pirateentrance" ContinueIfNoTargetsFound="false" />
|
|
<TagAction criteria="itemtag:navterminal" tag="commsrelay" submarinetype="player" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="itemtag:piratechair" tag="piratechair" ContinueIfNoTargetsFound="true" />
|
|
<NPCChangeTeamAction npctag="piratenpc" teamtag="FriendlyNPC" />
|
|
<WaitAction time="1" />
|
|
<CheckReputationAction targettype="faction" identifier="bandits" condition="gte -12">
|
|
<!-- Must have over -12 pirate rep, if under pirates are hostile and event doesnt trigger -->
|
|
<Success>
|
|
<TriggerEventAction identifier="piratecheckfordead" />
|
|
<!-- continue -->
|
|
</Success>
|
|
<Failure>
|
|
<Goto name="end" />
|
|
</Failure>
|
|
</CheckReputationAction>
|
|
<CheckReputationAction targettype="faction" identifier="coalition" condition="gte 60">
|
|
<!-- Pirates turn hostile if too much coalition rep -->
|
|
<Success>
|
|
<NPCChangeTeamAction npctag="piratenpc" teamtag="Team2" />
|
|
<TriggerAction target1tag="commsrelay" target2tag="player" applytotarget2="listener_player" radius="300" waitforinteraction="true" />
|
|
<ConversationAction text="eventtext.commsrelay.piratehaven" dialogtype="Regular" targettag="listener_player" eventsprite="malfunction">
|
|
<Option text="eventtext.option.listen">
|
|
<ConversationAction text="eventtext.commsrelay.piratehaven.answer" dialogtype="Regular" targettag="listener_player" eventsprite="piratehaven" endconversation="true" ContinueAutomatically="true" />
|
|
<StatusEffectAction targettag="commsrelay">
|
|
<StatusEffect target="This" duration="10.2">
|
|
<Sound file="%ModDir:2532991202%/Sounds/Events/PirateBroadcast.ogg" range="500" volume="1" loop="true" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
</Option>
|
|
<Option text="eventtext.option.ignore" endconversation="true"></Option>
|
|
</ConversationAction>
|
|
</Success>
|
|
<!-- Choose to negociate or attack -->
|
|
<Failure>
|
|
<SpawnAction NPCSetIdentifier="outpostnpcspirate" NPCIdentifier="securitynpcpirate" TargetTag="guard" SpawnPointTag="guard" />
|
|
<SpawnAction NPCSetIdentifier="outpostnpcspirate" NPCIdentifier="securitynpcpirate" TargetTag="dockingguard" SpawnPointTag="dockingguard" />
|
|
<NPCOperateItemAction npctag="guard" targettag="piratechair" ItemComponentName="Controller" operate="true" />
|
|
<TriggerEventAction identifier="piratehavenalarm" />
|
|
<!-- Toll part -->
|
|
<Label name="tolloptions" />
|
|
<ClearTagAction tag="pso_trig_player" />
|
|
<TriggerAction target1tag="guard" target2tag="player" applytotarget2="pso_trig_player" radius="250" disableincombat="true" disableiftargetincapacitated="true" waitforinteraction="true" allowmultipletargets="true" />
|
|
<CheckReputationAction targettype="faction" identifier="coalition" condition="lt 20">
|
|
<Success>
|
|
<ConversationAction targettag="pso_trig_player" text="eventtext.piratesecurityofficer.toll.low.interact" eventsprite="piratehaven">
|
|
<!-- Pay the toll, get in, + reputation -->
|
|
<Option text="eventtext.piratesecurityofficer.highrep.pay.high">
|
|
<CheckMoneyAction Amount="1000">
|
|
<Success>
|
|
<MoneyAction amount="-1000" />
|
|
<ReputationAction targettype="Faction" identifier="bandits" increase="5" />
|
|
<ConversationAction text="eventtext.piratesecurityofficer.highrep.paytoll.success" targettag="pso_trig_player" eventsprite="piratehaven" />
|
|
<SetDataAction identifier="piratehavenunlocked" value="1" />
|
|
<StatusEffectAction targettag="pirateentrance">
|
|
<StatusEffect target="This" State="true" setvalue="true" disabledeltatime="true" />
|
|
</StatusEffectAction>
|
|
<ConversationAction text="eventtext.piratesecurityofficer.highrep.paytoll.success.extra.reputation" targettag="pso_trig_player" eventsprite="piratehaven">
|
|
<!-- Option to pay extra to lower your coalition reputation, but increase bandit reputation -->
|
|
<Option text="eventtext.piratesecurityofficer.highrep.paytoll.success.extra.reputation.buy">
|
|
<CheckMoneyAction Amount="1000">
|
|
<Success>
|
|
<MoneyAction amount="-1000" />
|
|
<ReputationAction targettype="Faction" identifier="coalition" increase="-20" />
|
|
<ReputationAction targettype="Faction" identifier="bandits" increase="5" />
|
|
<ConversationAction text="eventtext.piratesecurityofficer.highrep.paytoll.success.extra.reputation.buy.success" targettag="pso_trig_player" />
|
|
<ClearTagAction tag="pso_trig_player" />
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction text="eventtext.piratesecurityofficer.highrep.paytoll.success.extra.reputation.buy.failure" />
|
|
<ClearTagAction tag="pso_trig_player" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="eventtext.option.leave">
|
|
<ConversationAction text="eventtext.piratesecurityofficer.highrep.paytoll.success.extra.reputation.declined" targettag="pso_trig_player" />
|
|
<ClearTagAction tag="pso_trig_player" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Success>
|
|
<!-- no money, loop back -->
|
|
<Failure>
|
|
<ConversationAction targettag="pso_trig_player" text="eventtext.piratesecurityofficer.highrep.paytoll.failure" />
|
|
<GoTo name="tolloptions" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<!-- Haggle (helm skill check) -->
|
|
<Option text="eventtext.piratesecurityofficer.highrep.pay.medium">
|
|
<CheckMoneyAction Amount="750">
|
|
<Success>
|
|
<SkillCheckAction requiredskill="helm" requiredlevel="60" targettag="pso_trig_player">
|
|
<!-- get in, armory unlocked -->
|
|
<Success>
|
|
<MoneyAction amount="-750" />
|
|
<ConversationAction text="eventtext.piratesecurityofficer.highrep.haggle.success" targettag="pso_trig_player" />
|
|
<SetDataAction identifier="piratehavenunlocked" value="1" />
|
|
<StatusEffectAction targettag="pirateentrance">
|
|
<StatusEffect target="This" State="true" setvalue="true" disabledeltatime="true" />
|
|
</StatusEffectAction>
|
|
<ClearTagAction tag="pso_trig_player" />
|
|
</Success>
|
|
<!-- get in, armory locked -->
|
|
<Failure>
|
|
<MoneyAction amount="-750" />
|
|
<ConversationAction targettag="pso_trig_player" text="eventtext.piratesecurityofficer.highrep.haggle.failure" />
|
|
<SetDataAction identifier="piratehavenunlocked" value="1" />
|
|
<StatusEffectAction targettag="pirateentrance">
|
|
<StatusEffect target="This" State="true" setvalue="true" disabledeltatime="true" />
|
|
</StatusEffectAction>
|
|
<ClearTagAction tag="pso_trig_player" />
|
|
<TriggerEventAction identifier="piratearmorylocked" />
|
|
</Failure>
|
|
</SkillCheckAction>
|
|
</Success>
|
|
<!-- no money, loop back -->
|
|
<Failure>
|
|
<ConversationAction targettag="pso_trig_player" text="eventtext.piratesecurityofficer.highrep.haggle.rejected" />
|
|
<GoTo name="tolloptions" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<!-- Plead. (very low success chance) -->
|
|
<Option text="eventtext.piratesecurityofficer.highrep.pay.low">
|
|
<CheckMoneyAction Amount="250">
|
|
<Success>
|
|
<SkillCheckAction requiredskill="helm" requiredlevel="100" targettag="pso_trig_player">
|
|
<!-- Get in, armory locked -->
|
|
<Success>
|
|
<MoneyAction amount="-250" />
|
|
<ConversationAction text="eventtext.piratesecurityofficer.highrep.plead.success" targettag="pso_trig_player" />
|
|
<SetDataAction identifier="piratehavenunlocked" value="1" />
|
|
<StatusEffectAction targettag="pirateentrance">
|
|
<StatusEffect target="This" State="true" setvalue="true" disabledeltatime="true" />
|
|
</StatusEffectAction>
|
|
<ClearTagAction tag="pso_trig_player" />
|
|
<TriggerEventAction identifier="piratearmorylocked" />
|
|
</Success>
|
|
<!-- get mugged by guards, armory locked (you have no rizz) -->
|
|
<Failure>
|
|
<MoneyAction amount="-250" />
|
|
<CheckItemAction targettag="pso_trig_player" itemtags="clothing" applytagtoitem="playerclothes">
|
|
<Success>
|
|
<Label name="removeclothes" />
|
|
<ConversationAction targettag="pso_trig_player" text="eventtext.piratesecurityofficer.highrep.plead.undress">
|
|
<Option text="eventtext.piratesecurityofficer.highrep.plead.UhOh">
|
|
<ConversationAction targettag="pso_trig_player" text="eventtext.piratesecurityofficer.highrep.plead.failure" fadetoblack="true" ContinueAutomatically="true" />
|
|
<Waitaction time="1" />
|
|
<AfflictionAction targettag="pso_trig_player" affliction="stun" strength="6" />
|
|
<AfflictionAction targettag="pso_trig_player" affliction="blunttrauma" strength="3" limbtype="head" />
|
|
<StatusEffectAction targettag="playerclothes">
|
|
<StatusEffect target="This" spawnedincurrentoutpost="true" allowstealing="false" setvalue="true">
|
|
<DropItem />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<StatusEffectAction targettag="pso_trig_player">
|
|
<StatusEffect target="This">
|
|
<Sound file="Content/Sounds/Damage/Limbblunt4.ogg" range="800" volume="2" frequencymultiplier="1" />
|
|
<Sound file="Content/Sounds/Impact/SoftImpact1.ogg" range="800" volume="3" frequencymultiplier="1" />
|
|
<Sound file="Content/Items/Medical/Bandage2.ogg" range="800" volume="2" frequencymultiplier="0.5" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<SetDataAction identifier="piratehavenunlocked" value="1" />
|
|
<StatusEffectAction targettag="pirateentrance">
|
|
<StatusEffect target="This" State="true" setvalue="true" disabledeltatime="true" />
|
|
</StatusEffectAction>
|
|
<CombatAction combatmode="Arrest" npctag="dockingguard" enemytag="pso_trig_player" isinstigator="true" guardreaction="none" witnessreaction="none" />
|
|
<ClearTagAction tag="pso_trig_player" />
|
|
<TriggerEventAction identifier="piratearmorylocked" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Success>
|
|
<Failure>
|
|
<Goto name="removeclothes" />
|
|
</Failure>
|
|
</CheckItemAction>
|
|
</Failure>
|
|
</SkillCheckAction>
|
|
</Success>
|
|
<!-- no money, NPC attacks -->
|
|
<Failure>
|
|
<StatusEffectAction targettag="guard">
|
|
<StatusEffect target="this">
|
|
<Forcesay message="eventtext.piratesecurityofficer.highrep.plead.rejected" sayinradio="false" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<ConversationAction targettag="pso_trig_player" text="eventtext.piratesecurityofficer.highrep.plead.rejected" eventsprite="piratehaven" endconversation="true" ContinueAutomatically="true" />
|
|
<WaitAction time="1" />
|
|
<GoTo name="attack" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<!-- insult, NPC attacks, lose reputation -->
|
|
<Option text="eventtext.piratesecurityofficer.toll.option.insult" endconversation="true">
|
|
<ReputationAction targettype="faction" identifier="bandits" increase="-2" />
|
|
<StatusEffectAction targettag="guard">
|
|
<StatusEffect target="this">
|
|
<Forcesay message="eventtext.piratesecurityofficer.toll.option.insult.answer" sayinradio="false" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<GoTo name="attack" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Success>
|
|
<Failure>
|
|
<!-- If large coalition rep, toll price is increased -->
|
|
<CheckReputationAction targettype="faction" identifier="coalition" condition="lt 60">
|
|
<Success>
|
|
<ConversationAction targettag="pso_trig_player" text="eventtext.piratesecurityofficer.toll.high.interact" eventsprite="piratehaven">
|
|
<!-- Pay the toll, get in, + reputation -->
|
|
<Option text="eventtext.piratesecurityofficer.lowrep.pay.high">
|
|
<CheckMoneyAction Amount="2000">
|
|
<Success>
|
|
<MoneyAction amount="-2000" />
|
|
<ConversationAction text="eventtext.piratesecurityofficer.lowrep.paytoll.success" targettag="pso_trig_player" />
|
|
<SetDataAction identifier="piratehavenunlocked" value="1" />
|
|
<StatusEffectAction targettag="pirateentrance">
|
|
<StatusEffect target="This" State="true" setvalue="true" disabledeltatime="true" />
|
|
</StatusEffectAction>
|
|
<ReputationAction targettype="Faction" identifier="coalition" increase="-5" />
|
|
<ReputationAction targettype="Faction" identifier="bandits" increase="5" />
|
|
<ConversationAction text="eventtext.piratesecurityofficer.lowrep.paytoll.success.extra.reputation" targettag="pso_trig_player">
|
|
<!-- Option to pay extra to lower your coalition reputation, but increase bandit reputation -->
|
|
<Option text="eventtext.piratesecurityofficer.lowrep.paytoll.success.extra.reputation.buy">
|
|
<CheckMoneyAction Amount="1000">
|
|
<Success>
|
|
<MoneyAction amount="-1000" />
|
|
<ReputationAction targettype="Faction" identifier="coalition" increase="-20" />
|
|
<ReputationAction targettype="Faction" identifier="bandits" increase="5" />
|
|
<ConversationAction text="eventtext.piratesecurityofficer.lowrep.paytoll.success.extra.reputation.buy.success" targettag="pso_trig_player" />
|
|
<ClearTagAction tag="pso_trig_player" />
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction text="eventtext.piratesecurityofficer.lowrep.paytoll.success.extra.reputation.buy.failure" />
|
|
<ClearTagAction tag="pso_trig_player" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="eventtext.option.leave">
|
|
<ConversationAction text="eventtext.piratesecurityofficer.lowrep.paytoll.success.extra.reputation.declined" targettag="pso_trig_player" />
|
|
<ClearTagAction tag="pso_trig_player" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Success>
|
|
<!-- no money, loop back -->
|
|
<Failure>
|
|
<ConversationAction targettag="pso_trig_player" text="eventtext.piratesecurityofficer.lowrep.paytoll.failure" />
|
|
<GoTo name="tolloptions" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<!-- Haggle, checks money then helm -->
|
|
<Option text="eventtext.piratesecurityofficer.lowrep.pay.medium">
|
|
<CheckMoneyAction Amount="1500">
|
|
<Success>
|
|
<SkillCheckAction requiredskill="helm" requiredlevel="60" targettag="pso_trig_player">
|
|
<!-- Get in, armory unlocked -->
|
|
<Success>
|
|
<MoneyAction amount="-1500" />
|
|
<ConversationAction text="eventtext.piratesecurityofficer.lowrep.haggle.success" targettag="pso_trig_player" />
|
|
<SetDataAction identifier="piratehavenunlocked" value="1" />
|
|
<StatusEffectAction targettag="pirateentrance">
|
|
<StatusEffect target="This" State="true" setvalue="true" disabledeltatime="true" />
|
|
</StatusEffectAction>
|
|
<ClearTagAction tag="pso_trig_player" />
|
|
</Success>
|
|
<!-- Get in, armory locked -->
|
|
<Failure>
|
|
<MoneyAction amount="-1500" />
|
|
<ConversationAction targettag="pso_trig_player" text="eventtext.piratesecurityofficer.lowrep.haggle.failure" />
|
|
<SetDataAction identifier="piratehavenunlocked" value="1" />
|
|
<StatusEffectAction targettag="pirateentrance">
|
|
<StatusEffect target="This" State="true" setvalue="true" disabledeltatime="true" />
|
|
</StatusEffectAction>
|
|
<ClearTagAction tag="pso_trig_player" />
|
|
<TriggerEventAction identifier="piratearmorylocked" />
|
|
</Failure>
|
|
</SkillCheckAction>
|
|
</Success>
|
|
<Failure>
|
|
<SkillCheckAction requiredskill="helm" requiredlevel="60" targettag="pso_trig_player">
|
|
<Success>
|
|
<!-- no money, loop back -->
|
|
<ConversationAction targettag="pso_trig_player" text="eventtext.piratesecurityofficer.highrep.haggle.rejected" />
|
|
<GoTo name="tolloptions" />
|
|
</Success>
|
|
<Failure>
|
|
<!-- no money, NPC attacks -->
|
|
<StatusEffectAction targettag="guard">
|
|
<StatusEffect target="this">
|
|
<Forcesay message="eventtext.piratesecurityofficer.toll.high.haggle.rejected" sayinradio="false" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<GoTo name="attack" />
|
|
</Failure>
|
|
</SkillCheckAction>
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<!-- insult, NPC attacks, lose reputation -->
|
|
<Option text="eventtext.piratesecurityofficer.toll.option.insult" endconversation="true">
|
|
<ReputationAction targettype="Faction" identifier="bandits" increase="-2" />
|
|
<StatusEffectAction targettag="guard">
|
|
<StatusEffect target="this">
|
|
<Forcesay message="eventtext.piratesecurityofficer.toll.option.insult.answer" sayinradio="false" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<Label name="attack" />
|
|
<WaitAction time="2" />
|
|
<CombatAction combatmode="Offensive" npctag="guard" enemytag="pso_trig_player" isinstigator="false" guardreaction="none" witnessreaction="none" cooldown="10" />
|
|
<CombatAction combatmode="Arrest" npctag="dockingguard" enemytag="pso_trig_player" isinstigator="false" guardreaction="none" witnessreaction="none" cooldown="10" />
|
|
<WaitAction time="11" />
|
|
<GoTo name="tolloptions" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Success>
|
|
</CheckReputationAction>
|
|
</Failure>
|
|
</CheckReputationAction>
|
|
</Failure>
|
|
</CheckReputationAction>
|
|
<Label name="end" />
|
|
</ScriptedEvent>
|
|
<!-- triggers alarm if it detects a player in the pirate outpost without negociating with the toll NPC -->
|
|
<!-- TODO: simplify hull tagging? -->
|
|
<ScriptedEvent identifier="piratehavenalarm">
|
|
<TagAction criteria="player" tag="player" />
|
|
<TagAction criteria="hullname:armory" tag="piratehull" submarinetype="Outpost" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="hullname:centralaccessshaft" tag="piratehull" submarinetype="Outpost" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="hullname:centralaccesspassage" tag="piratehull" submarinetype="Outpost" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="hullname:crewquarters" tag="piratehull" submarinetype="Outpost" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="hullname:electrical" tag="piratehull" submarinetype="Outpost" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="hullname:engineering" tag="piratehull" submarinetype="Outpost" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="hullname:medbay" tag="piratehull" submarinetype="Outpost" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="hullname:reactorroom" tag="piratehull" submarinetype="Outpost" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="hullname:research" tag="piratehull" submarinetype="Outpost" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="hullname:subtopright" tag="piratehull" submarinetype="Outpost" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="speciesname:Human" submarinetype="Outpost" team="FriendlyNPC" tag="piratenpc" />
|
|
<TagAction criteria="itemtag:securityalarm" submarinetype="Outpost" tag="alarm" />
|
|
<TriggerAction target1tag="player" target2tag="piratehull" applytotarget1="triggerer_player" radius="10" disableincombat="false" disableiftargetincapacitated="false" waitforinteraction="false" allowmultipletargets="true" />
|
|
<CheckDataAction identifier="piratehavenunlocked" condition="eq 1">
|
|
<Success>
|
|
<SetDataAction identifier="piratehavenunlocked" value="0" />
|
|
</Success>
|
|
<Failure>
|
|
<StatusEffectAction targettag="alarm">
|
|
<StatusEffect IsOn="true" target="This" setvalue="true" />
|
|
</StatusEffectAction>
|
|
<ConversationAction targettag="player" text="eventtext.piratehavenalarm.breakin" dialogtype="small" eventsprite="firefight" ContinueAutomatically="true" />
|
|
<StatusEffectAction targettag="piratehull">
|
|
<StatusEffect target="this" duration="3" oneshot="true">
|
|
<Sound file="Content/Sounds/Radiostatic.ogg" range="4000" volume="2" loop="true" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<ReputationAction targettype="Location" increase="-5" />
|
|
<NPCChangeTeamAction npctag="piratenpc" teamtag="Team2" />
|
|
<SetDataAction identifier="piratehavenunlocked" value="0" />
|
|
</Failure>
|
|
</CheckDataAction>
|
|
</ScriptedEvent>
|
|
<!-- If you didn't pay enough at the toll, the armory is locked and you have to pay extra to get inside -->
|
|
<ScriptedEvent identifier="piratearmorylocked">
|
|
<TagAction criteria="player" tag="player" />
|
|
<TagAction criteria="itemtag:armorybutton" tag="armorybutton" SubmarineType="Outpost" ContinueIfNoTargetsFound="false" />
|
|
<TagAction criteria="itemtag:armorydoor" tag="armorydoor" SubmarineType="Outpost" ContinueIfNoTargetsFound="false" />
|
|
<SetDataAction identifier="armorylocked" value="1" />
|
|
<StatusEffectAction targettag="armorybutton">
|
|
<StatusEffect target="this" noninteractable="true" setvalue="true" />
|
|
</StatusEffectAction>
|
|
<StatusEffectAction targettag="armorydoor">
|
|
<StatusEffect target="this" IsOpen="false" setvalue="true" />
|
|
</StatusEffectAction>
|
|
<TriggerEventAction identifier="piratearmoryalarm" />
|
|
<TriggerAction target1tag="player" target2tag="armorydoor" applytotarget1="triggerer_player" waitforinteraction="true" />
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.piratearmorylocked.doorlocked" eventsprite="piratehaven">
|
|
<Option text="eventtext.piratearmorylocked.howmuch">
|
|
<GoTo name="payarmoryskiptrigger" />
|
|
<Label name="payarmory" />
|
|
<TriggerAction target1tag="player" target2tag="armorydoor" applytotarget1="triggerer_player" waitforinteraction="true" />
|
|
<Label name="payarmoryskiptrigger" />
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.piratearmorylocked.500mk" eventsprite="piratehaven">
|
|
<Option text="eventtext.piratearmorylocked.Pay">
|
|
<CheckMoneyAction targettag="triggerer_player" Amount="500">
|
|
<Success>
|
|
<MoneyAction amount="-500" />
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.piratearmorylocked.dooropens" eventsprite="piratehaven" />
|
|
<StatusEffectAction targettag="armorybutton">
|
|
<StatusEffect target="this" noninteractable="false" setvalue="true" />
|
|
</StatusEffectAction>
|
|
<SetDataAction identifier="armorylocked" value="0" />
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.piratearmorylocked.nomoney" endconversation="true" eventsprite="piratehaven" />
|
|
<ClearTagAction tag="triggerer_player" />
|
|
<GoTo name="payarmory" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="eventtext.piratearmorylocked.noway">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.piratearmorylocked.comeback" endconversation="true" eventsprite="piratehaven" />
|
|
<ClearTagAction tag="triggerer_player" />
|
|
<Goto name="payarmory" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Option>
|
|
</ConversationAction>
|
|
</ScriptedEvent>
|
|
<!-- triggers an alarm if you break into the armory stash -->
|
|
<ScriptedEvent identifier="piratearmoryalarm">
|
|
<TagAction criteria="player" tag="player" />
|
|
<TagAction criteria="itemtag:armorydoor" tag="armorydoor" SubmarineType="Outpost" />
|
|
<TagAction criteria="hullname:armory" tag="armory" submarinetype="Outpost" />
|
|
<TagAction criteria="itemtag:securityalarm" submarinetype="Outpost" tag="alarm" />
|
|
<TriggerAction target1tag="player" target2tag="armory" applytotarget1="triggerer_player" radius="10" waitforinteraction="false" />
|
|
<CheckDataAction identifier="armorylocked" condition="eq 0">
|
|
<Success>
|
|
<!-- Do nothing -->
|
|
</Success>
|
|
<Failure>
|
|
<StatusEffectAction targettag="alarm">
|
|
<StatusEffect IsOn="true" target="This" setvalue="true" />
|
|
</StatusEffectAction>
|
|
<ConversationAction targettag="player" text="eventtext.piratearmoryalarm.breakin" dialogtype="small" eventsprite="firefight" ContinueAutomatically="true" />
|
|
<ReputationAction targettype="Location" increase="-35" />
|
|
<StatusEffectAction targettag="armorydoor">
|
|
<StatusEffect target="this" IsOpen="true" noninteractable="true" setvalue="true" />
|
|
</StatusEffectAction>
|
|
</Failure>
|
|
</CheckDataAction>
|
|
</ScriptedEvent>
|
|
<!-- triggers an alarm if you break into the armory stash. -->
|
|
<ScriptedEvent identifier="piratestashalarm">
|
|
<TagAction criteria="player" tag="player" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="speciesname:Human" submarinetype="Outpost" team="FriendlyNPC" tag="piratenpc" />
|
|
<TagAction criteria="humanprefabidentifier:securitynpcpirate" tag="security" ChoosePercentage="100" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="hullname:armory" tag="armory" submarinetype="Outpost" />
|
|
<NPCChangeTeamAction npctag="piratenpc" teamtag="Team2" />
|
|
<NPCFollowAction npctag="security" targettag="armory" follow="true" priority="10" />
|
|
<CombatAction combatmode="Offensive" npctag="security" enemytag="player" isinstigator="true" guardreaction="none" witnessreaction="none" />
|
|
</ScriptedEvent>
|
|
<!-- Loop that checks if enough pirates are dead and flips them to team2 -->
|
|
<ScriptedEvent identifier="piratecheckfordead">
|
|
<WaitAction time="5" />
|
|
<TagAction criteria="player" tag="player" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="speciesname:Human" submarinetype="Outpost" team="FriendlyNPC" tag="outpostpirate" />
|
|
<Label name="recheck" />
|
|
<CountTargetsAction targettag="outpostpirate" CompareToTarget="outpostpirate" MinPercentageRelativeToTarget="10">
|
|
<Conditional isdead="True" />
|
|
<Success>
|
|
<NPCChangeTeamAction npctag="outpostpirate" teamtag="Team2" />
|
|
</Success>
|
|
<Failure>
|
|
<WaitAction time="1" />
|
|
<Goto name="recheck" />
|
|
</Failure>
|
|
</CountTargetsAction>
|
|
</ScriptedEvent>
|
|
<!-- spawns one exosuit pirate in armory if hostile reputation (includes high coalition rep) -->
|
|
<ScriptedEvent identifier="spawnexopiratelowrep_bandits">
|
|
<TagAction criteria="player" tag="player" />
|
|
<CheckReputationAction TargetType="Faction" identifier="bandits" condition="lte -13">
|
|
<Success>
|
|
<SpawnAction NPCSetIdentifier="pirate_npcs" NPCIdentifier="pirateannihilator" teamid="Team2" SpawnLocation="Outpost" targetmoduletags="ArmoryPirate" spawnpointtag="pirateexosuit" TargetTag="extrapirate" />
|
|
</Success>
|
|
<Failure>
|
|
<CheckReputationAction TargetType="Faction" identifier="coalition" condition="gte 60">
|
|
<Success>
|
|
<SpawnAction NPCSetIdentifier="pirate_npcs" NPCIdentifier="pirateannihilator" teamid="Team2" SpawnLocation="Outpost" targetmoduletags="ArmoryPirate" spawnpointtag="pirateexosuit" TargetTag="extrapirate" />
|
|
</Success>
|
|
</CheckReputationAction>
|
|
</Failure>
|
|
</CheckReputationAction>
|
|
</ScriptedEvent>
|
|
<!-- Pirate informant
|
|
You can pay the pirate manager to access a cargo robbing mission -->
|
|
<ScriptedEvent identifier="piratemissioninformant" commonness="100">
|
|
<TagAction criteria="player" tag="player" />
|
|
<Label name="waitforinput" />
|
|
<ClearTagAction tag="pmi_trig_player" />
|
|
<TriggerAction target1tag="outpostmanagerpirate" target2tag="player" applytotarget2="pmi_trig_player" radius="200" waitforinteraction="true" />
|
|
<ConversationAction targettag="pmi_trig_player" text="eventtext.piratemissioninformant.interact" eventsprite="banditcaptain">
|
|
<Option text="eventtext.piratemissioninformant.option.buy">
|
|
<CheckMoneyAction Amount="1000">
|
|
<Success>
|
|
<MoneyAction amount="-1000" />
|
|
<ConversationAction targettag="pmi_trig_player" text="eventtext.piratemissioninformant.option.buy.success" eventsprite="banditcaptain" />
|
|
<MissionAction missiontag="coalitionciv" />
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="pmi_trig_player" text="eventtext.piratemissioninformant.option.buy.failure" eventsprite="banditcaptain" />
|
|
<GoTo name="waitforinput" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="eventtext.option.leave">
|
|
<ConversationAction text="eventtext.general.decline" targettag="pmi_trig_player" />
|
|
<GoTo name="waitforinput" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</ScriptedEvent>
|
|
<!-- "Orangeboy combat"
|
|
A NPC talks and follows you around in the outpost as a distraction while pirate divers spawn and invade your ship from the airlock -->
|
|
<ScriptedEvent identifier="orangecombat">
|
|
<CheckDataAction identifier="orangecombatnorepeat" condition="eq 0">
|
|
<!-- <Failure>
|
|
<Goto name="end" />
|
|
</Failure> -->
|
|
</CheckDataAction>
|
|
<TagAction criteria="player" tag="player" />
|
|
<SpawnAction npcsetidentifier="outpostnpcspirate" npcidentifier="commonerpirate" targettag="orangegambler1" spawnlocation="Outpost" targetmoduletags="crewpirate" spawnpointtag="pirateambusher" />
|
|
<SpawnAction npcsetidentifier="outpostnpcspirate" npcidentifier="commonerpirate" targettag="orangegambler2" spawnlocation="Outpost" targetmoduletags="crewpirate" spawnpointtag="orangegambler1" />
|
|
<NPCWaitAction npctag="orangegambler1" wait="true" priority="90" />
|
|
<NPCFollowAction npctag="orangegambler2" targettag="orangegambler1" priority="90" follow="true" />
|
|
<!-- spawn and color crates -->
|
|
<SpawnAction itemidentifier="metalcrate" targetinventory="orangegambler1" targettag="tylercrate" />
|
|
<SpawnAction itemidentifier="metalcrate" targetinventory="orangegambler2" targettag="durdencrate" />
|
|
<StatusEffectAction targettag="tylercrate">
|
|
<StatusEffect target="this" spritecolor="255,120,110" setvalue="true" />
|
|
</StatusEffectAction>
|
|
<StatusEffectAction targettag="durdencrate">
|
|
<StatusEffect target="this" spritecolor="150,255,230" setvalue="true" />
|
|
</StatusEffectAction>
|
|
<Label name="talktonpc" />
|
|
<ClearTagAction tag="triggerer_player" />
|
|
<TriggerAction target1tag="player" target2tag="orangegambler1" applytotarget1="triggerer_player" radius="50" waitforinteraction="true" />
|
|
<SetDataAction identifier="orangecombatnorepeat" operation="set" value="1" />
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.orangecombat.cheering" endeventifinterrupted="false" dialogtype="regular" eventsprite="piratehaven">
|
|
<Option text="eventtext.orangecombat.whatsthis">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.orangecombat.petfighters" endeventifinterrupted="false" dialogtype="regular" eventsprite="bandittalk" />
|
|
<Goto name="skiptrigger" />
|
|
<Label name="gamblingloop" />
|
|
<TriggerAction target1tag="player" target2tag="orangegambler1" applytotarget1="triggerer_player" radius="50" waitforinteraction="true" />
|
|
<Label name="skiptrigger" />
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.orangecombat.gambling" endeventifinterrupted="false" dialogtype="regular" eventsprite="bandittalk">
|
|
<Option text="eventtext.orangecombat.picktyler">
|
|
<CheckMoneyAction targettag="triggerer_player" Amount="300">
|
|
<Success>
|
|
<MoneyAction targettag="triggerer_player" amount="-300" />
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.orangecombat.betsareoff" endconversation="true" />
|
|
<WaitAction time="1" />
|
|
<!-- spawn the orangeboys, give name tags, effects on crate -->
|
|
<SpawnAction SpeciesName="orangeboy_combat" targettag="orangetyler" SpawnLocation="Outpost" SpawnPointTag="tylercrate" teamid="Team2" />
|
|
<SpawnAction SpeciesName="orangeboy_combat" targettag="orangedurden" SpawnLocation="Outpost" SpawnPointTag="durdencrate" teamid="Team2" />
|
|
<StatusEffectAction targettag="tylercrate">
|
|
<StatusEffect target="this">
|
|
<Sound file="Content/Items/Door/Doorbreak1.ogg" range="500" frequencymultiplier="2" volume="2" />
|
|
<ParticleEmitter particle="shrapnel" particleamount="15" velocitymin="50" velocitymax="150" anglemin="0" anglemax="360" scalemin="0.5" scalemax="1" colormultiplier="255,255,255,180" />
|
|
<Remove />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<StatusEffectAction targettag="durdencrate">
|
|
<StatusEffect target="this">
|
|
<Sound file="Content/Items/Door/Doorbreak2.ogg" range="500" frequencymultiplier="2" volume="2" />
|
|
<ParticleEmitter particle="shrapnel" particleamount="20" velocitymin="50" velocitymax="150" anglemin="0" anglemax="360" scalemin="0.75" scalemax="2" colormultiplier="255,255,255,180" />
|
|
<Remove />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<CheckItemAction targettag="orangetyler" itemidentifiers="petnametag" ApplyTagToItem="tylertag" />
|
|
<CheckItemAction targettag="orangedurden" itemidentifiers="petnametag" ApplyTagToItem="durdentag" />
|
|
<StatusEffectAction targettag="tylertag">
|
|
<StatusEffect target="This" WrittenName="Tyler" setvalue="true" />
|
|
</StatusEffectAction>
|
|
<StatusEffectAction targettag="durdentag">
|
|
<StatusEffect target="This" WrittenName="Durden" setvalue="true" />
|
|
</StatusEffectAction>
|
|
<!-- I am giving those idiots a genetic affliction to trigger their attack in their AI. It's an absurd roundabout way of doing it -->
|
|
<TagAction criteria="speciesname:orangeboy_combat" tag="fighters" />
|
|
<AfflictionAction targettag="fighters" affliction="strengthen" strength="100" />
|
|
<CombatAction combatmode="Offensive" npctag="orangetyler" enemytag="orangedurden" isinstigator="true" witnessreaction="none" AbandonOnReset="false" />
|
|
<CombatAction combatmode="Offensive" npctag="orangedurden" enemytag="orangetyler" isinstigator="true" witnessreaction="none" AbandonOnReset="false" />
|
|
<SetDataAction identifier="betontyler" operation="set" value="1" />
|
|
<GoTo name="checkorangedeadloop" />
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.orangecombat.nomoney" />
|
|
<ClearTagAction tag="triggerer_player" />
|
|
<GoTo name="gamblingloop" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="eventtext.orangecombat.pickdurden">
|
|
<CheckMoneyAction targettag="triggerer_player" Amount="300">
|
|
<Success>
|
|
<MoneyAction targettag="triggerer_player" amount="-300" />
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.orangecombat.betsareoff" endconversation="true" />
|
|
<WaitAction time="3" />
|
|
<NPCWaitAction npctag="fighters" wait="false" priority="100" />
|
|
<AfflictionAction targettag="fighters" affliction="paralysis" strength="-100" />
|
|
<CombatAction combatmode="Offensive" npctag="orangetyler" enemytag="orangedurden" isinstigator="true" witnessreaction="none" />
|
|
<CombatAction combatmode="Offensive" npctag="orangedurden" enemytag="orangetyler" isinstigator="true" witnessreaction="none" />
|
|
<SetDataAction identifier="betondurden" operation="set" value="1" />
|
|
<GoTo name="checkorangedeadloop" />
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.orangecombat.nomoney" />
|
|
<ClearTagAction tag="triggerer_player" />
|
|
<GoTo name="gamblingloop" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="eventtext.generic.ignore" endconversation="true">
|
|
<ClearTagAction tag="triggerer_player" />
|
|
<GoTo name="gamblingloop" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Option>
|
|
<Option text="eventtext.generic.ignore" endconversation="true">
|
|
<GoTo name="talktonpc" />
|
|
</Option>
|
|
</ConversationAction>
|
|
<!-- check for dead orangeboys, make sure they werent attacked or grabbed by players, or NPCs will attack you
|
|
4 seconds of grabbing is enough -->
|
|
<Label name="checkorangedeadloop" />
|
|
<WaitAction time="1" />
|
|
<CheckSelectedAction targettag="fighters" charactertag="player">
|
|
<Success>
|
|
<SetDataAction identifier="touchedorangeboys" operation="add" value="1" />
|
|
<StatusEffectAction targettag="orangegambler1">
|
|
<StatusEffect target="this">
|
|
<Forcesay message="eventtext.orangecombat.dropit" sayinradio="false" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
</Success>
|
|
</CheckSelectedAction>
|
|
<CheckAfflictionAction identifier="gunshotwound" targettag="fighters" minstrength="1">
|
|
<Success>
|
|
<SetDataAction identifier="touchedorangeboys" operation="set" value="4" />
|
|
</Success>
|
|
</CheckAfflictionAction>
|
|
<CheckAfflictionAction identifier="lacerations" targettag="fighters" minstrength="1">
|
|
<Success>
|
|
<SetDataAction identifier="touchedorangeboys" operation="set" value="4" />
|
|
</Success>
|
|
</CheckAfflictionAction>
|
|
<CheckAfflictionAction identifier="blunttrauma" targettag="fighters" minstrength="10">
|
|
<Success>
|
|
<SetDataAction identifier="touchedorangeboys" operation="set" value="4" />
|
|
</Success>
|
|
</CheckAfflictionAction>
|
|
<CheckDataAction identifier="touchedorangeboys" condition="neq 4">
|
|
<Success>
|
|
<CheckConditionalAction targettag="orangetyler" IsDead="true">
|
|
<Success>
|
|
<CheckDataAction identifier="betondurden" condition="eq 1">
|
|
<Success>
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.orangecombat.youwon" dialogtype="small" endconversation="true" eventsprite="bandittalk" />
|
|
<MoneyAction targettag="triggerer_player" amount="600" />
|
|
<SetDataAction identifier="orangePETAcounter" operation="add" value="1" />
|
|
<Goto name="end" />
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.orangecombat.youlost" dialogtype="small" endconversation="true" eventsprite="bandittalk" />
|
|
<Goto name="end" />
|
|
</Failure>
|
|
</CheckDataAction>
|
|
</Success>
|
|
</CheckConditionalAction>
|
|
<CheckConditionalAction targettag="orangedurden" IsDead="true">
|
|
<Success>
|
|
<CheckDataAction identifier="betontyler" condition="eq 1">
|
|
<Success>
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.orangecombat.youwon" dialogtype="small" endconversation="true" eventsprite="bandittalk" />
|
|
<MoneyAction targettag="triggerer_player" amount="600" />
|
|
<SetDataAction identifier="orangePETAcounter" operation="add" value="1" />
|
|
<Goto name="end" />
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.orangecombat.youlost" dialogtype="small" endconversation="true" eventsprite="bandittalk" />
|
|
<Goto name="end" />
|
|
</Failure>
|
|
</CheckDataAction>
|
|
</Success>
|
|
</CheckConditionalAction>
|
|
<Goto name="checkorangedeadloop" />
|
|
</Success>
|
|
<Failure>
|
|
<StatusEffectAction targettag="orangegambler1">
|
|
<StatusEffect target="this">
|
|
<Forcesay message="eventtext.orangecombat.dontmess" sayinradio="false" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<TagAction criteria="player" tag="player" />
|
|
<CombatAction combatmode="Offensive" npctag="orangegambler1" enemytag="player" isinstigator="false" witnessreaction="Retreat" />
|
|
<CombatAction combatmode="Offensive" npctag="orangegambler2" enemytag="player" isinstigator="false" witnessreaction="Retreat" />
|
|
</Failure>
|
|
</CheckDataAction>
|
|
<!-- end -->
|
|
<Label name="end" />
|
|
<OnRoundEndAction>
|
|
<StatusEffectAction targettag="fighters">
|
|
<StatusEffect type="Always" target="Character">
|
|
<RemoveCharacter />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
</OnRoundEndAction>
|
|
</ScriptedEvent>
|
|
<!-- "Pirate Divers"
|
|
A NPC talks and follows you around in the outpost as a distraction while pirate divers spawn and invade your ship from the airlock -->
|
|
<ScriptedEvent identifier="piratediversoutpost">
|
|
<CheckDataAction identifier="piratediversnorepeat" condition="eq 0">
|
|
<Failure></Failure>
|
|
<Success>
|
|
<CheckReputationAction targettype="faction" identifier="bandits" condition="lt -5">
|
|
<Success>
|
|
<TagAction criteria="hullname:airlock" tag="airlock" submarinetype="Player" />
|
|
<TagAction criteria="hullname:airlock" tag="airlock" submarinetype="Outpost" />
|
|
<TagAction criteria="itemtag:navterminal" tag="navterminal" SubmarineType="Player" chooserandom="true" />
|
|
<TagAction criteria="player" tag="player" />
|
|
<TagAction criteria="crew" tag="crew" />
|
|
<WaitAction time="10" />
|
|
<SpawnAction npcsetidentifier="outpostnpcspirate" npcidentifier="commonerpirate" targettag="pirateambusher" spawnlocation="Outpost" targetmoduletags="crewpirate" spawnpointtag="pirateambusher" />
|
|
<TriggerAction target1tag="player" target2tag="pirateambusher" applytotarget1="playertofollow" radius="50" waitforinteraction="false" />
|
|
<NPCFollowAction npctag="pirateambusher" targettag="playertofollow" follow="true" />
|
|
<ConversationAction targettag="playertofollow" text="eventtext.piratediversoutpost.meetambusher" endeventifinterrupted="false" dialogtype="Small" eventsprite="bandittalk">
|
|
<Option text="eventtext.piratediversoutpost.agree" endconversation="true">
|
|
<Label name="dialogstep2" />
|
|
<NPCFollowAction npctag="pirateambusher" targettag="playertofollow" follow="true" />
|
|
<WaitAction time="5" />
|
|
<TriggerAction target1tag="pirateambusher" target2tag="player" applytotarget2="playertofollow" radius="150" waitforinteraction="false" />
|
|
<ConversationAction text="eventtext.piratediversoutpost.Iwascaptain" eventsprite="bandittalk" />
|
|
<WaitAction time="5" />
|
|
<TriggerAction target1tag="pirateambusher" target2tag="player" applytotarget2="playertofollow" radius="150" waitforinteraction="false" />
|
|
<ConversationAction text="eventtext.piratediversoutpost.Iwascaptain2" eventsprite="bandittalk">
|
|
<Option text="eventtext.piratediversoutpost.goodluck" endconversation="true">
|
|
<Label name="dialogstep3" />
|
|
<NPCFollowAction npctag="pirateambusher" targettag="playertofollow" follow="true" />
|
|
<WaitAction time="5" />
|
|
<TriggerAction target1tag="pirateambusher" target2tag="player" applytotarget2="playertofollow" radius="150" waitforinteraction="false" />
|
|
<ConversationAction text="eventtext.piratediversoutpost.offersbooze" eventsprite="bandittalk">
|
|
<Option text="eventtext.piratediversoutpost.takebooze">
|
|
<ConversationAction text="eventtext.piratediversoutpost.drinkup" eventsprite="bandittalk" />
|
|
<SpawnAction itemidentifier="he-rum" targetinventory="playertofollow" />
|
|
<SpawnAction itemidentifier="he-rum" targetinventory="playertofollow" />
|
|
<SpawnAction itemidentifier="he-rum" targetinventory="playertofollow" />
|
|
<NPCFollowAction npctag="pirateambusher" targettag="playertofollow" follow="false" />
|
|
<!-- Go to part 2 -->
|
|
<GoTo name="pirateinvaders" />
|
|
</Option>
|
|
<Option text="eventtext.piratediversoutpost.getthehelloff">
|
|
<ConversationAction text="eventtext.piratediversoutpost.dontgetalong" eventsprite="bandittalk" endconversation="true" />
|
|
<NPCFollowAction npctag="pirateambusher" targettag="playertofollow" follow="false" />
|
|
<!-- Go to part 2 -->
|
|
<GoTo name="pirateinvaders" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Option>
|
|
<Option text="eventtext.piratediversoutpost.dontcare" endconversation="true">
|
|
<GoTo name="dialogstep3" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Option>
|
|
<Option text="eventtext.piratediversoutpost.buggeroff" endconversation="true">
|
|
<GoTo name="dialogstep2" />
|
|
</Option>
|
|
</ConversationAction>
|
|
<!-- part 2: pirates invade -->
|
|
<Label name="pirateinvaders" />
|
|
<WaitAction time="15" />
|
|
<SpawnAction npcsetidentifier="pirate_npcs" npcidentifier="piratediver" targettag="piratediver" SpawnLocation="Outpost" spawnpointtag="piratedivers" teamid="Team2" amount="3" />
|
|
<NPCFollowAction npctag="pirateambusher" targettag="airlock" follow="true" />
|
|
<NPCFollowAction npctag="piratediver" targettag="airlock" follow="true" />
|
|
<TriggerAction target1tag="piratediver" target2tag="airlock" applytotarget1="boardedpirate" radius="100" waitforinteraction="false" />
|
|
<WaitAction time="3" />
|
|
<StatusEffectAction targettag="piratediver">
|
|
<StatusEffect target="this">
|
|
<Sound file="Content/Items/Tools/Crowbar.ogg" volume="3" range="2000" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<ConversationAction targettag="player" text="eventtext.piratediversoutpost.soundinairlock" dialogtype="Small" eventsprite="ventinside" ContinueAutomatically="true" />
|
|
<WaitAction time="2" />
|
|
<NPCFollowAction npctag="pirateambusher" targettag="navterminal" follow="true" />
|
|
<NPCFollowAction npctag="piratediver" targettag="navterminal" follow="true" />
|
|
<TriggerAction target1tag="piratediver" target2tag="navterminal" applytotarget2="playertofollow" radius="400" waitforinteraction="false" />
|
|
<NPCFollowAction npctag="piratediver" targettag="navterminal" follow="false" />
|
|
<!-- use spoken dialogue if ever implemented -->
|
|
<ConversationAction targettag="player" text="eventtext.piratediversoutpost.takeover" dialogtype="Small" eventsprite="firefight" ContinueAutomatically="true" />
|
|
<SetDataAction identifier="piratediversnorepeat" operation="set" value="1" />
|
|
<NPCChangeTeamAction npctag="pirateambusher" teamtag="Team2" />
|
|
<NPCChangeTeamAction npctag="piratediver" teamtag="Team2" />
|
|
<Label name="combatrefresh" />
|
|
<CombatAction combatmode="Offensive" npctag="pirateambusher" enemytag="player" isinstigator="true" guardreaction="none" witnessreaction="retreat" AbandonOnReset="false" />
|
|
<CombatAction combatmode="Offensive" npctag="piratediver" enemytag="crew" isinstigator="true" guardreaction="none" witnessreaction="retreat" AbandonOnReset="false" />
|
|
<WaitAction time="5" />
|
|
<GoTo name="combatrefresh" />
|
|
</Success>
|
|
<Failure></Failure>
|
|
</CheckReputationAction>
|
|
</Success>
|
|
</CheckDataAction>
|
|
</ScriptedEvent>
|
|
<!-- Pirate body bag
|
|
Spawns a suspicious body bag in the pirate outpost "morgue" module. The bag shakes and a husk is released -->
|
|
<ScriptedEvent identifier="piratebodybag" commonness="100">
|
|
<CheckDataAction identifier="piratebodybagnorepeat" condition="eq 0">
|
|
<Failure></Failure>
|
|
<Success>
|
|
<TagAction criteria="player" tag="player" />
|
|
<SpawnAction itemidentifier="huskbodybag" targettag="bodybag" spawnlocation="Outpost" spawnpointtag="husk" ignorebyai="true" />
|
|
<TriggerAction target1tag="bodybag" target2tag="player" applytotarget2="triggerer_player" radius="120" waitforinteraction="false" />
|
|
<ConversationAction text="EventText.piratebodybag.smellyroom" dialogtype="small" targettag="triggerer_player" eventsprite="brokenmachinery" endconversation="true" />
|
|
<WaitAction time="2" />
|
|
<StatusEffectAction targettag="bodybag">
|
|
<StatusEffect target="This" IsActive="true" />
|
|
</StatusEffectAction>
|
|
<Label name="retry" />
|
|
<ClearTagAction tag="bag_player" />
|
|
<TriggerAction target1tag="bodybag" target2tag="player" applytotarget2="bag_player" radius="120" waitforinteraction="true" />
|
|
<ConversationAction text="EventText.piratebodybag.hearthump" dialogtype="small" targettag="bag_player" eventsprite="brokenmachinery">
|
|
<Option text="EventText.piratebodybag.kickit" endconversation="true">
|
|
<SetDataAction identifier="piratebodybagnorepeat" operation="set" value="1" />
|
|
<StatusEffectAction targettag="bodybag">
|
|
<StatusEffect target="This" condition="-15" duration="10" />
|
|
</StatusEffectAction>
|
|
</Option>
|
|
<Option text="EventText.piratebodybag.stayaway" endconversation="true">
|
|
<WaitAction time="3" />
|
|
<Goto name="retry" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Success>
|
|
</CheckDataAction>
|
|
</ScriptedEvent>
|
|
<!-- "Panty theft"
|
|
A bandit asks you to steal some clothes and put them in a duffel bag. The duffel bag is marked as stolen, so avoid security. Gives bandit reputation -->
|
|
<ScriptedEvent identifier="pantytheft">
|
|
<CheckDataAction identifier="pantytheftnorepeat" condition="eq 0">
|
|
<Failure>
|
|
<!-- does not spawn the event if already done -->
|
|
</Failure>
|
|
<Success>
|
|
<TagAction criteria="player" tag="player" />
|
|
<!-- tags the clothes on bots -->
|
|
<TagAction criteria="itemtag:clothing" tag="stolenclothes" submarinetype="Outpost" />
|
|
<!-- unlocks the shelf in the vanilla outpost that contains clothes -->
|
|
<TagAction criteria="itemidentifier:crateshelf" tag="unlockcrateshelf" submarinetype="Outpost" ContinueIfNoTargetsFound="true" />
|
|
<StatusEffectAction targettag="unlockcrateshelf">
|
|
<StatusEffect target="This" noninteractable="false" setvalue="true" />
|
|
</StatusEffectAction>
|
|
<StatusEffectAction targettag="stolenclothes">
|
|
<StatusEffect target="This" noninteractable="false" setvalue="true" />
|
|
</StatusEffectAction>
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="commoner" targettag="smuggler" spawnlocation="Outpost" targetmoduletags="adminmodule" />
|
|
<TriggerAction target1tag="player" target2tag="smuggler" applytotarget1="heyyouplayer" radius="200" />
|
|
<ConversationAction targettag="heyyouplayer" text="eventtext.pantytheft.heyyou" endeventifinterrupted="false" endconversation="true" eventsprite="bandittalk" />
|
|
<Label name="talktonpc" />
|
|
<ConversationAction speakertag="smuggler" invokertag="panty_player" text="eventtext.pantytheft.opportunity" endeventifinterrupted="false" eventsprite="bandittalk">
|
|
<Option text="eventtext.generic.continue">
|
|
<ConversationAction targettag="panty_player" text="eventtext.pantytheft.confidentiality" endeventifinterrupted="false" eventsprite="JacovSubra1">
|
|
<Option text="eventtext.generic.continue">
|
|
<ConversationAction targettag="panty_player" text="eventtext.pantytheft.plantingtags" endeventifinterrupted="false" eventsprite="JacovSubra1">
|
|
<Option text="eventtext.pantytheft.ifitpays">
|
|
<!-- Spawns bag. If bag gets near clothes, mark it as stolen and proceed -->
|
|
<ConversationAction text="eventtext.pantytheft.grabclothes" endeventifinterrupted="false" endconversation="true" eventsprite="Duffelbag" />
|
|
<SpawnAction itemidentifier="traitorduffelbag" targetinventory="panty_player" targettag="stealingbag" />
|
|
<StatusEffectAction targettag="stealingbag">
|
|
<StatusEffect target="This" delay="60" SpawnedInCurrentOutpost="true" AllowStealing="false" stackable="false" setvalue="true" />
|
|
</StatusEffectAction>
|
|
</Option>
|
|
<Option text="eventtext.generic.refuse" endconversation="true">
|
|
<ClearTagAction tag="panty_player" />
|
|
<Goto name="end" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Option>
|
|
</ConversationAction>
|
|
</Option>
|
|
<Option text="eventtext.generic.ignore" endconversation="true">
|
|
<ClearTagAction tag="panty_player" />
|
|
<WaitAction time="1" />
|
|
<Goto name="talktonpc" />
|
|
</Option>
|
|
</ConversationAction>
|
|
<Label name="retry" />
|
|
<Waitaction time="1" />
|
|
<TriggerAction target1tag="player" target2tag="smuggler" applytotarget1="deliverer_player" waitforinteraction="true" />
|
|
<!-- double check: if player carries bag, and if bag has clothes -->
|
|
<CheckItemAction targettag="deliverer_player" itemtags="stealingbag">
|
|
<Success>
|
|
<CheckItemAction targettag="stealingbag" itemtags="stolenclothes" amount="5" ApplyTagToItem="removeclothes">
|
|
<Success>
|
|
<StatusEffectAction targettag="removeclothes">
|
|
<StatusEffect target="This">
|
|
<Remove />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<StatusEffectAction targettag="stealingbag">
|
|
<StatusEffect target="This">
|
|
<Remove />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<ReputationAction increase="3" identifier="bandits" targettype="Faction" />
|
|
<MoneyAction amount="500" targettag="deliverer_player" />
|
|
<SetDataAction identifier="pantytheftnorepeat" value="1" />
|
|
<ConversationAction targettag="deliverer_player" text="eventtext.pantytheft.clothesdelivered" dialogtype="Small" endconversation="true" eventsprite="bandittalk" />
|
|
</Success>
|
|
<Failure>
|
|
<Goto name="noclothes" />
|
|
</Failure>
|
|
</CheckItemAction>
|
|
</Success>
|
|
<Failure>
|
|
<Label name="noclothes" />
|
|
<ConversationAction text="eventtext.pantytheft.moreclothes" targettag="deliverer_player" dialogtype="Small" endconversation="true" eventsprite="bandittalk" />
|
|
<ClearTagAction tag="deliverer_player" />
|
|
<Goto name="retry" />
|
|
</Failure>
|
|
</CheckItemAction>
|
|
<Label name="end" />
|
|
</Success>
|
|
</CheckDataAction>
|
|
</ScriptedEvent>
|
|
<!-- Vending Smashing
|
|
A bandit asks you to rob a vending machine. You equip a crowbar, it breaks and items drop, but it alerts security. Gives bandit reputation -->
|
|
<ScriptedEvent identifier="vendingsmashing">
|
|
<CheckDataAction identifier="vendingsmashingnorepeat" condition="eq 0">
|
|
<Failure>
|
|
<!-- does not spawn the event if already done -->
|
|
</Failure>
|
|
<Success>
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="securitynpc[faction]" targettag="vendingsecurity" spawnlocation="Outpost" />
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="commoner" targettag="thief" spawnlocation="Outpost" />
|
|
<TagAction criteria="player" tag="player" />
|
|
<TagAction criteria="itemtag:vendingmachine" tag="targetvendingmachine" submarinetype="Outpost" />
|
|
<!-- wait a little before triggering so you have time to leave the sub -->
|
|
<WaitAction time="60" />
|
|
<TriggerAction target1tag="player" target2tag="thief" applytotarget1="heyyouplayer" radius="200" />
|
|
<ConversationAction targettag="heyyouplayer" text="eventtext.vendingsmashing.heyyou" endeventifinterrupted="false" dialogtype="Small" endconversation="true" eventsprite="bandittalk" />
|
|
<NPCWaitAction npctag="thief" wait="false" />
|
|
<Label name="talktonpc" />
|
|
<ConversationAction speakertag="thief" invokertag="triggerer_player" text="eventtext.vendingsmashing.quickcash" endeventifinterrupted="false" eventsprite="bandittalk">
|
|
<Option text="eventtext.generic.continue">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.vendingsmashing.machinetrick" endeventifinterrupted="false" dialogtype="Small" eventsprite="Terrorism1">
|
|
<Option text="eventtext.generic.continue">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.vendingsmashing.hitemhard" endeventifinterrupted="false" dialogtype="Small" eventsprite="Terrorism1">
|
|
<Option text="eventtext.vendingsmashing.Notsubtle">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.vendingsmashing.Ilootyourun" endeventifinterrupted="false" dialogtype="Small" endconversation="true" eventsprite="Terrorism1" />
|
|
<SpawnAction itemidentifier="crowbar" targetinventory="triggerer_player" targettag="smashingcrowbar" />
|
|
<SpawnAction itemidentifier="toolbelt" targetinventory="thief" targettag="stealingbag" ignorebyai="true" />
|
|
<NPCFollowAction npctag="thief" targettag="triggerer_player" follow="true" />
|
|
<TriggerAction target1tag="thief" target2tag="targetvendingmachine" applytotarget2="selectvendingmachine" radius="200" />
|
|
<NPCFollowAction npctag="thief" targettag="triggerer_player" follow="false" />
|
|
<TriggerAction target1tag="triggerer_player" target2tag="selectvendingmachine" radius="200" waitforinteraction="true" />
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.vendingsmashing.readycrowbar" endeventifinterrupted="false" eventsprite="Terrorism1" endconversation="true" />
|
|
<Label name="foundvendingmachine" />
|
|
<TriggerAction target1tag="triggerer_player" target2tag="selectvendingmachine" radius="200" waitforinteraction="true" />
|
|
<CheckItemAction targettag="triggerer_player" itemidentifiers="crowbar" RequireEquipped="true">
|
|
<Failure>
|
|
<WaitAction time="1" />
|
|
<Goto name="foundvendingmachine" />
|
|
</Failure>
|
|
<Success>
|
|
<NPCChangeTeamAction npctag="thief" teamtag="Team1" />
|
|
<StatusEffectAction targettag="selectvendingmachine">
|
|
<StatusEffect target="this">
|
|
<SpawnItem identifier="banditprop6" spawnposition="This" Offset="0,10" />
|
|
<Sound file="Content/Sounds/Damage/GlassImpact2.ogg" range="500" />
|
|
<ParticleEmitter particle="shrapnel" particleamount="15" velocitymin="50" velocitymax="150" anglemin="0" anglemax="360" scalemin="0.5" scalemax="1" colormultiplier="255,255,255,180" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<StatusEffectAction targettag="smashingcrowbar">
|
|
<StatusEffect target="This" SpawnedInCurrentOutpost="true" AllowStealing="false" setvalue="true" />
|
|
</StatusEffectAction>
|
|
<ReputationAction targettype="Location" increase="-1" />
|
|
<NPCOperateItemAction npctag="thief" targettag="selectvendingmachine" ItemComponentName="Fabricator" Operate="true" AbandonOnReset="true" />
|
|
<WaitAction time="1" />
|
|
<!-- items spawned in bag -->
|
|
<SpawnAction itemidentifier="weldingfueltank" targetinventory="stealingbag" targettag="stolenitem" ignorebyai="true" />
|
|
<SpawnAction itemidentifier="batterycell" targetinventory="stealingbag" targettag="stolenitem" ignorebyai="true" />
|
|
<SpawnAction itemidentifier="ethanol" targetinventory="stealingbag" targettag="stolenitem" ignorebyai="true" />
|
|
<SpawnAction itemidentifier="antibiotics" targetinventory="stealingbag" targettag="stolenitem" ignorebyai="true" />
|
|
<!-- items spawned around vending machine -->
|
|
<WaitAction time="0.5" />
|
|
<SpawnAction itemidentifier="weldingfueltank" SpawnPointTag="selectvendingmachine" targettag="stolenitem" offset="100" />
|
|
<WaitAction time="0.5" />
|
|
<SpawnAction itemidentifier="batterycell" SpawnPointTag="selectvendingmachine" targettag="stolenitem" offset="100" />
|
|
<WaitAction time="0.5" />
|
|
<SpawnAction itemidentifier="ethanol" SpawnPointTag="selectvendingmachine" targettag="stolenitem" offset="100" />
|
|
<WaitAction time="0.5" />
|
|
<SpawnAction itemidentifier="antibiotics" SpawnPointTag="selectvendingmachine" targettag="stolenitem" offset="100" />
|
|
<!-- tag items as stolen -->
|
|
<StatusEffectAction targettag="stolenitem">
|
|
<StatusEffect target="This" SpawnedInCurrentOutpost="true" AllowStealing="false" setvalue="true" />
|
|
</StatusEffectAction>
|
|
<CombatAction combatmode="arrest" npctag="vendingsecurity" enemytag="triggerer_player" isinstigator="true" guardreaction="none" witnessreaction="none" />
|
|
<WaitAction time="5" />
|
|
<!-- jank, to make NPC stop operating -->
|
|
<Goto name="skipoperate" />
|
|
<Label name="skipoperate" />
|
|
<CombatAction combatmode="Retreat" npctag="thief" enemytag="triggerer_player" isinstigator="false" witnessreaction="none" />
|
|
<NPCChangeTeamAction npctag="thief" teamtag="FriendlyNPC" />
|
|
<WaitAction time="3" />
|
|
<TriggerAction target1tag="triggerer_player" target2tag="thief" waitforinteraction="true" />
|
|
<ReputationAction increase="3" identifier="bandits" targettype="Faction" />
|
|
<MoneyAction amount="200" targettag="triggerer_player" />
|
|
<SetDataAction identifier="vendingsmashingnorepeat" value="1" />
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.vendingsmashing.yourshare" dialogtype="Small" endconversation="true" eventsprite="bandittalk" />
|
|
</Success>
|
|
</CheckItemAction>
|
|
</Option>
|
|
<Option text="eventtext.generic.refuse">
|
|
<Goto name="end" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Option>
|
|
</ConversationAction>
|
|
</Option>
|
|
<Option text="eventtext.generic.ignore" endconversation="true">
|
|
<ClearTagAction tag="triggerer_player" />
|
|
<Goto name="talktonpc" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Success>
|
|
</CheckDataAction>
|
|
<Label name="end" />
|
|
</ScriptedEvent>
|
|
<!-- Duck Corleone
|
|
A bandit asks you to drop a plastic duck in the administator's cabinet. Gives bandit reputation -->
|
|
<ScriptedEvent identifier="duckcorleone">
|
|
<CheckDataAction identifier="duckcorleonenorepeat" condition="eq 0">
|
|
<Failure>
|
|
<!-- does not spawn the event if already done -->
|
|
</Failure>
|
|
<Success>
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="securitynpc[faction]" targettag="securitynpc" spawnlocation="Outpost" />
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="commoner" targettag="mafioso" spawnlocation="Outpost" targetmoduletags="crewmodule" />
|
|
<TagAction criteria="player" tag="player" />
|
|
<TagAction criteria="itemtag:admincabinet" tag="targetcabinet" submarinetype="Outpost" />
|
|
<TagAction criteria="humanprefabidentifier:outpostmanager" tag="outpostmanager" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="humanprefabidentifier:outpostmanagercoalition" tag="outpostmanager" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="humanprefabidentifier:outpostmanagerseparatists" tag="outpostmanager" ContinueIfNoTargetsFound="true" />
|
|
<TriggerAction target1tag="player" target2tag="mafioso" applytotarget1="triggerer_player" radius="20" />
|
|
<SetDataAction identifier="duckcorleonenorepeat" value="1" />
|
|
<NPCWaitAction npctag="mafioso" wait="true" priority="50" />
|
|
<AfflictionAction targettag="triggerer_player" affliction="stun" strength="0.35" />
|
|
<StatusEffectAction targettag="triggerer_player">
|
|
<StatusEffect target="This">
|
|
<Sound file="Content/Sounds/Impact/softimpact3.ogg" range="150" volume="2" frequencymultiplier="1" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.duckcorleone.heyyou" endeventifinterrupted="false" dialogtype="Regular" eventsprite="MysteryMan">
|
|
<Option text="eventtext.generic.continue">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.duckcorleone.delivery" dialogtype="Regular" endeventifinterrupted="false" eventsprite="MysteryMan">
|
|
<Option text="eventtext.duckcorleone.whatisit">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.duckcorleone.themessage" endeventifinterrupted="false" dialogtype="Regular" eventsprite="MysteryMan">
|
|
<Option text="eventtext.duckcorleone.Iwilldoit">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.duckcorleone.good" endeventifinterrupted="false" dialogtype="Regular" eventsprite="MysteryMan" endconversation="true" />
|
|
<SpawnAction itemidentifier="piraterubberduck" targetinventory="triggerer_player" targettag="scaryduck" Equip="true" />
|
|
<StatusEffectAction targettag="scaryduck">
|
|
<StatusEffect target="this" tags="id_outpostmanager" setvalue="true" />
|
|
</StatusEffectAction>
|
|
<Label name="opencabinet" />
|
|
<TriggerAction target1tag="triggerer_player" target2tag="targetcabinet" radius="200" waitforinteraction="true" selectontrigger="true" />
|
|
<CheckItemAction targettag="triggerer_player" itemtags="scaryduck" RequireEquipped="false">
|
|
<Failure>
|
|
<WaitAction time="1" />
|
|
<Goto name="opencabinet" />
|
|
</Failure>
|
|
<Success>
|
|
<!-- try not to get seen by the admin -->
|
|
<CheckVisibilityAction EntityTag="outpostmanager" TargetTag="triggerer_player" maxdistance="400" CheckFacing="true">
|
|
<Success>
|
|
<StatusEffectAction targettag="outpostmanager">
|
|
<StatusEffect target="this">
|
|
<Forcesay message="eventtext.duckcorleone.security" sayinradio="true" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<ReputationAction targettype="Location" increase="-2" />
|
|
<CombatAction combatmode="Arrest" npctag="securitynpc" enemytag="triggerer_player" isinstigator="false" guardreaction="none" witnessreaction="retreat" cooldown="30" />
|
|
</Success>
|
|
</CheckVisibilityAction>
|
|
<!-- tag items as stolen -->
|
|
<StatusEffectAction targettag="scaryduck">
|
|
<StatusEffect target="This" SpawnedInCurrentOutpost="true" AllowStealing="false" setvalue="true" />
|
|
</StatusEffectAction>
|
|
<StatusEffectAction targettag="targetcabinet">
|
|
<StatusEffect target="This">
|
|
<Sound file="%ModDir:2532991202%/Sounds/Impact/RubberDuck4.ogg" range="300" volume="2" frequencymultiplier="1" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<WaitAction time="5" />
|
|
<Label name="checkduckinside" />
|
|
<CheckItemAction targettag="targetcabinet" itemtags="scaryduck">
|
|
<Failure>
|
|
<WaitAction time="1" />
|
|
<Goto name="checkduckinside" />
|
|
</Failure>
|
|
</CheckItemAction>
|
|
<TriggerAction target1tag="triggerer_player" target2tag="mafioso" waitforinteraction="true" />
|
|
<ReputationAction increase="2" identifier="bandits" targettype="Faction" />
|
|
<MoneyAction amount="500" targettag="triggerer_player" />
|
|
<SetDataAction identifier="duckcorleonenorepeat" value="1" />
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.duckcorleone.pleased" dialogtype="Small" endconversation="true" eventsprite="MysteryMan2" />
|
|
</Success>
|
|
</CheckItemAction>
|
|
</Option>
|
|
<Option text="eventtext.generic.refuse">
|
|
<ReputationAction increase="-1" identifier="bandits" targettype="Faction" />
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.duckcorleone.unfortunate" endeventifinterrupted="false" dialogtype="Small" endconversation="true" eventsprite="MysteryMan2" />
|
|
<Goto name="end" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Option>
|
|
</ConversationAction>
|
|
</Option>
|
|
</ConversationAction>
|
|
</Success>
|
|
</CheckDataAction>
|
|
<Label name="end" />
|
|
</ScriptedEvent>
|
|
<!-- BUGGED, the doctor interact button is disabled after conversations/triggers and never reappaears after ending the event, currently no way to make it appear again, guess I'll just heal through event instead
|
|
spawns an unlicensed doctor, you're supposed to give meth to access the doctor UI, but the doc gets increasingly addicted and overdoses -->
|
|
<ScriptedEvent identifier="methformeds">
|
|
<CheckDataAction identifier="methformedsnorepeat" condition="eq 0">
|
|
<Failure>
|
|
<!-- does not spawn the event if already done -->
|
|
</Failure>
|
|
<Success>
|
|
<SpawnAction npcsetidentifier="customnpcs" npcidentifier="mafiadoctornpc" targettag="mafiadoctor" spawnlocation="Outpost" targetmoduletags="crewmodule" />
|
|
<TagAction criteria="player" tag="player" />
|
|
<Label name="spotdoctor" />
|
|
<TriggerAction target1tag="player" target2tag="mafiadoctor" applytotarget1="triggerer_player" waitforinteraction="true" radius="300" />
|
|
<SetDataAction identifier="methformedsnorepeat" value="1" />
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.methformeds.dirtydoctor" dialogtype="Regular" eventsprite="GuyWithAlcohol">
|
|
<Option text="eventtext.methformeds.dontlookgood">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.methformeds.lostlicense" eventsprite="doctor">
|
|
<Option text="eventtext.methformeds.nojob">
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.methformeds.kickedout" eventsprite="doctor">
|
|
<Option text="eventtext.methformeds.useadoc">
|
|
<Goto name="skiptrigger" />
|
|
<Label name="methcheck" />
|
|
<ClearTagAction tag="triggerer_player" />
|
|
<TriggerAction target1tag="player" target2tag="mafiadoctor" applytotarget1="triggerer_player" radius="200" waitforinteraction="true" />
|
|
<Label name="skiptrigger" />
|
|
<ConversationAction text="eventtext.methformeds.findmeth" targettag="triggerer_player" eventsprite="doctor">
|
|
<Option text="EventText.methformeds.havesome" endconversation="true">
|
|
<CheckItemAction targettag="triggerer_player" itemidentifiers="meth" amount="1" ApplyTagToItem="pickedmeth">
|
|
<Failure>
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.methformeds.nometh" eventsprite="doctor" dialogtype="small" endconversation="true" />
|
|
<Goto name="methcheck" />
|
|
</Failure>
|
|
<Success>
|
|
<TagAction criteria="eventtag:pickedmeth" tag="removemeth" chooserandom="true" ChoosePercentage="1" />
|
|
<StatusEffectAction targettag="removemeth">
|
|
<StatusEffect target="This">
|
|
<Remove />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<StatusEffectAction targettag="mafiadoctor">
|
|
<StatusEffect target="this">
|
|
<Sound file="Content/Items/Medical/Syringe.ogg" range="500" volume="2" />
|
|
<Affliction identifier="stun" amount="1" />
|
|
</StatusEffect>
|
|
<StatusEffect target="this" duration="30.0">
|
|
<Affliction identifier="chemaddiction" amount="3" />
|
|
<Affliction identifier="chemwithdrawal" amount="0.5" />
|
|
<Affliction identifier="haste" amount="1" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<ConversationAction targettag="triggerer_player" text="eventtext.methformeds.feelsgood" endconversation="true" dialogtype="small" eventsprite="doctor" />
|
|
<StatusEffectAction targettag="triggerer_player">
|
|
<StatusEffect target="this" duration="5.0">
|
|
<Sound file="Content/Items/Medical/bandage1.ogg" range="500" volume="2" />
|
|
<ReduceAffliction identifier="damage" amount="2" />
|
|
<ReduceAffliction identifier="bleeding" amount="1" />
|
|
<ReduceAffliction identifier="bloodloss" amount="1" />
|
|
<ReduceAffliction identifier="burn" amount="1" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<WaitAction time="5" />
|
|
<Goto name="methcheck" MaxTimes="3" />
|
|
<Goto name="end" />
|
|
</Success>
|
|
</CheckItemAction>
|
|
</Option>
|
|
<Option text="eventtext.generic.ignore" endconversation="true">
|
|
<Goto name="methcheck" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Option>
|
|
</ConversationAction>
|
|
</Option>
|
|
</ConversationAction>
|
|
</Option>
|
|
<Option text="eventtext.generic.ignore" endconversation="true">
|
|
<ClearTagAction tag="triggerer_player" />
|
|
<Goto name="spotdoctor" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Success>
|
|
</CheckDataAction>
|
|
<Label name="end" />
|
|
</ScriptedEvent>
|
|
<!--"Orange Protection Society"
|
|
if you did 2+ missions or events that involve hurting orangeboys, a group of NPCs with chitin helmets spawns and confronts you
|
|
you can lie and they'll give you a helmet, or provoke them and fight -->
|
|
<ScriptedEvent identifier="orangePETA" commonness="100">
|
|
<!-- checks if you've done 2 or more orangeboy transports -->
|
|
<CheckDataAction identifier="orangePETAcounter" condition="gte 2">
|
|
<Failure>
|
|
<!-- does not spawn the event if already done -->
|
|
</Failure>
|
|
<Success>
|
|
<CheckDataAction identifier="orangePETAnorepeat" condition="eq 0">
|
|
<Failure>
|
|
<!-- does not spawn the event if already done -->
|
|
</Failure>
|
|
<Success>
|
|
<TagAction criteria="player" tag="player" />
|
|
<SpawnAction npcsetidentifier="customnpcs" npcidentifier="orangelover" targettag="orangelover1" spawnlocation="Outpost" spawnpointtype="Path" offset="100" />
|
|
<SpawnAction npcsetidentifier="customnpcs" npcidentifier="orangelover" targettag="orangelover2" spawnlocation="Outpost" spawnpointtag="orangelover1" offset="100" />
|
|
<SpawnAction npcsetidentifier="customnpcs" npcidentifier="orangelover" targettag="orangelover3" spawnlocation="Outpost" spawnpointtag="orangelover2" offset="100" />
|
|
<NPCFollowAction npctag="orangelover2" targettag="orangelover1" follow="true" />
|
|
<NPCFollowAction npctag="orangelover3" targettag="orangelover2" follow="true" />
|
|
<TriggerAction target1tag="orangelover1" target2tag="player" applytotarget2="triggerer_player" radius="250" waitforinteraction="false" />
|
|
<NPCFollowAction npctag="orangelover1" targettag="triggerer_player" follow="true" />
|
|
<SetDataAction identifier="orangePETAnorepeat" operation="set" value="1" />
|
|
<ConversationAction targettag="triggerer_player" text="EventText.orangePETA.spotted" eventsprite="group">
|
|
<Option text="EventText.orangePETA.whatme">
|
|
<ConversationAction targettag="triggerer_player" text="EventText.orangePETA.OPSspeech1" eventsprite="group">
|
|
<Option text="EventText.generic.continue">
|
|
<ConversationAction targettag="triggerer_player" text="EventText.orangePETA.OPSspeech2" eventsprite="group">
|
|
<Option text="EventText.orangePETA.lie">
|
|
<RNGAction chance="0.2">
|
|
<Success>
|
|
<GiveSkillEXPAction skill="helm" amount="3" targettag="triggerer_player" />
|
|
<ConversationAction targettag="triggerer_player" text="EventText.orangePETA.whatarelief" eventsprite="group" endconversation="true" />
|
|
<NPCFollowAction npctag="orangelover1" targettag="triggerer_player" follow="false" />
|
|
<SpawnAction itemidentifier="chitinhelmet" amount="1" targetinventory="triggerer_player" />
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="triggerer_player" text="EventText.orangePETA.getem" eventsprite="mediator" endconversation="true" />
|
|
<CombatAction combatmode="Offensive" npctag="orangelover1" enemytag="triggerer_player" isinstigator="true" guardreaction="arrest" witnessreaction="retreat" />
|
|
<CombatAction combatmode="Offensive" npctag="orangelover2" enemytag="triggerer_player" isinstigator="true" guardreaction="arrest" witnessreaction="retreat" />
|
|
<CombatAction combatmode="Offensive" npctag="orangelover3" enemytag="triggerer_player" isinstigator="true" guardreaction="arrest" witnessreaction="retreat" />
|
|
</Failure>
|
|
</RNGAction>
|
|
</Option>
|
|
<Option text="EventText.orangePETA.delicious">
|
|
<GiveSkillEXPAction skill="weapons" amount="2" targettag="triggerer_player" />
|
|
<ConversationAction targettag="triggerer_player" text="EventText.orangePETA.getem" eventsprite="mediator" endconversation="true" />
|
|
<CombatAction combatmode="Offensive" npctag="orangelover1" enemytag="triggerer_player" isinstigator="true" guardreaction="arrest" witnessreaction="retreat" />
|
|
<CombatAction combatmode="Offensive" npctag="orangelover2" enemytag="triggerer_player" isinstigator="true" guardreaction="arrest" witnessreaction="retreat" />
|
|
<CombatAction combatmode="Offensive" npctag="orangelover3" enemytag="triggerer_player" isinstigator="true" guardreaction="arrest" witnessreaction="retreat" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Option>
|
|
</ConversationAction>
|
|
</Option>
|
|
</ConversationAction>
|
|
</Success>
|
|
</CheckDataAction>
|
|
</Success>
|
|
</CheckDataAction>
|
|
</ScriptedEvent>
|
|
<!-- ////////////// OTHER EVENTS ///////////// -->
|
|
<!-- remove lithomorphs in outpost levels, I hate it. repeated once because it sometimes fail -->
|
|
<ScriptedEvent identifier="removelithomorphsoutpost" commonness="100">
|
|
<Label name="removelithosagain" />
|
|
<TagAction criteria="itemtag:lithomorphspawner" tag="lithomorphspawner" ContinueIfNoTargetsFound="true" />
|
|
<TagAction criteria="speciesname:Lithomorph" tag="Lithomorph" ContinueIfNoTargetsFound="true" />
|
|
<StatusEffectAction targettag="lithomorphspawner">
|
|
<StatusEffect target="This">
|
|
<Remove />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<StatusEffectAction targettag="Lithomorph">
|
|
<StatusEffect target="This">
|
|
<RemoveCharacter />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<WaitAction time="10" />
|
|
<GoTo name="removelithosagain" maxtimes="2" />
|
|
</ScriptedEvent>
|
|
<!-- "Circus welcome"
|
|
triggers when you step inside the sinking circus for the first time, gives you reputation and triggers a cool visual effect -->
|
|
<ScriptedEvent identifier="circuswelcome" commonness="100">
|
|
<CheckDataAction identifier="circuswelcomenorepeat" condition="eq 0">
|
|
<Failure>
|
|
<!-- does not spawn the event if already done -->
|
|
</Failure>
|
|
<Success>
|
|
<TagAction criteria="player" tag="player" />
|
|
<TagAction criteria="itemidentifier:op_clownmarquee" tag="showtimesign" submarinetype="Outpost" />
|
|
<TagAction criteria="itemidentifier:searchlight" tag="showtimesign" submarinetype="Outpost" />
|
|
<TagAction criteria="itemtag:smokeemitter" tag="smokeemitter" submarinetype="Outpost" />
|
|
<TriggerAction target1tag="player" target2tag="showtimesign" radius="420" />
|
|
<WaitAction time="2" />
|
|
<ReputationAction increase="5" identifier="Clowns" targettype="Faction" />
|
|
<StatusEffectAction targettag="showtimesign">
|
|
<StatusEffect target="this" duration="5">
|
|
<Sound file="Content/Items/Jobgear/Clown/ITEM_bananaSlip1.ogg" range="2000" volume="3" frequencymultiplier="0.5" />
|
|
<ParticleEmitter particle="impactfirearm" particlespersecond="15" velocitymin="0" velocitymax="0" anglemin="180" anglemax="360" scalemin="0.5" scalemax="1" distancemin="50" distancemax="500" colormultiplier="255,255,255,200" lifetimemultiplier="50" />
|
|
<ParticleEmitter particle="whitespark" particlespersecond="30" velocitymin="100" velocitymax="200" anglemin="240" anglemax="320" scalemin="1" scalemax="2" distancemin="5" distancemax="250" colormultiplier="255,255,255,255" lifetimemultiplier="5" HighQualityCollisionDetection="true" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<StatusEffectAction targettag="smokeemitter">
|
|
<StatusEffect target="this" duration="5">
|
|
<ParticleEmitter particle="flare" particlespersecond="5" velocitymin="0" velocitymax="100" anglemin="80" anglemax="100" scalemin="2" scalemax="4" distancemin="0" distancemax="50" colormultiplier="255,255,255,120" lifetimemultiplier="1" HighQualityCollisionDetection="false" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<WaitAction time="3" />
|
|
<ConversationAction targettag="player" text="eventtext.circuswelcome.foundus" dialogtype="Small" endconversation="true" eventsprite="Jestmaster" />
|
|
<SetDataAction identifier="circuswelcomenorepeat" value="1" />
|
|
</Success>
|
|
</CheckDataAction>
|
|
</ScriptedEvent>
|
|
<!-- "Piezo Pioneer"
|
|
NPCs talk about how pioneers used piezo crystals as an energy source, gives you a special pickaxes to harvest piezo shards (batteries/grenades) -->
|
|
<ScriptedEvent identifier="piezopioneer" commonness="100">
|
|
<CheckDataAction identifier="piezopioneernorepeat" condition="eq 0">
|
|
<Failure>
|
|
<!-- does not spawn the event if already done -->
|
|
</Failure>
|
|
<Success>
|
|
<TagAction criteria="player" tag="player" />
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="miner" targettag="minerskeptic" spawnlocation="Outpost" spawnpointtag="mineevent" />
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="miner" targettag="minerpiezo" spawnlocation="Outpost" spawnpointtag="minerskeptic" />
|
|
<NPCFollowAction npctag="minerpiezo" targettag="minerskeptic" follow="true" />
|
|
<TriggerAction target1tag="minerskeptic" target2tag="player" applytotarget2="hearer_player" radius="150" />
|
|
<ConversationAction targettag="hearer_player" text="EventText.piezopioneer.argument" eventsprite="mediator">
|
|
<Option text="EventText.piezopioneer.hmmm" endconversation="true" />
|
|
</ConversationAction>
|
|
<NPCFollowAction npctag="minerpiezo" targettag="minerskeptic" follow="false" />
|
|
<Label name="tryagain" />
|
|
<WaitAction time="2" />
|
|
<TriggerAction target1tag="minerpiezo" target2tag="player" applytotarget2="triggerer_player" radius="150" waitforinteraction="true" />
|
|
<ConversationAction targettag="triggerer_player" text="EventText.piezopioneer.upsetminer" eventsprite="mechanic">
|
|
<Option text="EventText.piezopioneer.inquirepiezos">
|
|
<ConversationAction targettag="triggerer_player" text="EventText.piezopioneer.taleofpioneers" eventsprite="badvibration1">
|
|
<Option text="EventText.piezopioneer.insane">
|
|
<ConversationAction targettag="triggerer_player" text="EventText.piezopioneer.strangetool" eventsprite="mechanic">
|
|
<Option text="EventText.piezopioneer.youdontknow">
|
|
<ConversationAction targettag="triggerer_player" text="EventText.piezopioneer.taketool" eventsprite="mines" endconversation="true" />
|
|
<SpawnAction itemidentifier="piezochipper" amount="1" targetinventory="triggerer_player" />
|
|
<SetDataAction identifier="piezopioneernorepeat" operation="set" value="1" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Option>
|
|
</ConversationAction>
|
|
</Option>
|
|
</ConversationAction>
|
|
</Success>
|
|
</CheckDataAction>
|
|
</ScriptedEvent>
|
|
<ScriptedEvent identifier="mudraptorracing">
|
|
<TagAction criteria="itemtag:petfoodgun" tag="petfoodgun" />
|
|
<TagAction criteria="itemtag:raptorracelever" tag="raptorracelever" />
|
|
<TagAction criteria="player" tag="player" />
|
|
<SetDataAction identifier="betonred" operation="set" value="0" />
|
|
<SetDataAction identifier="betongreen" operation="set" value="0" />
|
|
<SetDataAction identifier="betonblue" operation="set" value="0" />
|
|
<SetDataAction identifier="redraptorwon" operation="set" value="0" />
|
|
<SetDataAction identifier="greenraptorwon" operation="set" value="0" />
|
|
<SetDataAction identifier="blueraptorwon" operation="set" value="0" />
|
|
<SetDataAction identifier="betonraptorcounter" operation="set" value="0" />
|
|
<SetDataAction identifier="raptorracefinished" operation="set" value="0" />
|
|
<TagAction criteria="player" tag="player" />
|
|
<TagAction criteria="itemtag:petfoodgun" tag="petfoodgun" />
|
|
<TagAction criteria="itemtag:raptorracelever" tag="raptorracelever" />
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="watchman" targettag="bookmaker" spawnlocation="Outpost" spawnpointtag="bookmaker" />
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="commoner" targettag="spectator1" spawnlocation="Outpost" spawnpointtag="spectator" />
|
|
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="commoner" targettag="spectator2" spawnlocation="Outpost" spawnpointtag="spectator" />
|
|
<SpawnAction speciesname="Mudraptorred" targettag="raceraptor" spawnlocation="Outpost" spawnpointtag="raceraptors" offset="50" />
|
|
<SpawnAction speciesname="Mudraptorgreen" targettag="raceraptor" spawnlocation="Outpost" spawnpointtag="raceraptors" offset="50" />
|
|
<SpawnAction speciesname="Mudraptorblue" targettag="raceraptor" spawnlocation="Outpost" spawnpointtag="raceraptors" offset="50" />
|
|
<!-- PHASE 1: TALK TO NPC TO TAKE BETS -->
|
|
<!-- PHASE 1: TALK TO NPC TO TAKE BETS -->
|
|
<!-- PHASE 1: TALK TO NPC TO TAKE BETS -->
|
|
<Label name="talktobookie" />
|
|
<ClearTagAction tag="gambler_player" />
|
|
<CheckDataAction identifier="betonraptorcounter" condition="gte 3">
|
|
<Success>
|
|
<StatusEffectAction targettag="bookmaker">
|
|
<StatusEffect target="this">
|
|
<Forcesay message="Eventtext.mudraptorracing.enoughbets" sayinradio="false" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<Goto name="betsareoff" />
|
|
</Success>
|
|
<Failure>
|
|
<StatusEffectAction targettag="bookmaker">
|
|
<StatusEffect target="this">
|
|
<Forcesay message="Eventtext.mudraptorracing.morebets" sayinradio="false" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
</Failure>
|
|
</CheckDataAction>
|
|
<ConversationAction text="EventText.mudraptorracing.bookmaker" speakertag="bookmaker" invokertag="gambler_player" dialogtype="Regular" eventsprite="gambler">
|
|
<!-- Pick red raptor -->
|
|
<Option text="EventText.mudraptorracing.pickred">
|
|
<!-- How much do you bet, create more for different sums -->
|
|
<ConversationAction text="EventText.mudraptorracing.howmuchred" targettag="gambler_player" dialogtype="Regular" eventsprite="gambler">
|
|
<Option text="EventText.mudraptorracing.100">
|
|
<CheckMoneyAction targettag="gambler_player" amount="100">
|
|
<Success>
|
|
<MoneyAction targettag="gambler_player" amount="-100" />
|
|
<ConversationAction targettag="gambler_player" text="EventText.mudraptorracing.yourticket" eventsprite="gambler" endconversation="true" />
|
|
<SpawnAction itemidentifier="raceticket_red" amount="1" targetinventory="gambler_player" targettag="raceticket" />
|
|
<SetDataAction identifier="betonraptorcounter" operation="add" value="1" />
|
|
<SetDataAction identifier="betonred" operation="set" value="1" />
|
|
<Goto name="talktobookie" />
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="gambler_player" text="EventText.mudraptorracing.nomoney" eventsprite="gambler" dialogtype="small" />
|
|
<GoTo name="talktobookie" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="EventText.mudraptorracing.300">
|
|
<CheckMoneyAction targettag="gambler_player" amount="300">
|
|
<Success>
|
|
<MoneyAction targettag="gambler_player" amount="-300" />
|
|
<ConversationAction targettag="gambler_player" text="EventText.mudraptorracing.yourticket" eventsprite="gambler" endconversation="true" />
|
|
<SpawnAction itemidentifier="raceticket_red" amount="3" targetinventory="gambler_player" targettag="raceticket" />
|
|
<SetDataAction identifier="betonraptorcounter" operation="add" value="1" />
|
|
<SetDataAction identifier="betonred" operation="set" value="1" />
|
|
<Goto name="talktobookie" />
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="gambler_player" text="EventText.mudraptorracing.nomoney" eventsprite="gambler" dialogtype="small" />
|
|
<GoTo name="talktobookie" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="eventtext.generic.nevermind" endconversation="true">
|
|
<Goto name="talktobookie" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Option>
|
|
<!-- Pick green raptor -->
|
|
<Option text="EventText.mudraptorracing.pickgreen">
|
|
<!-- How much do you bet, create more for different sums -->
|
|
<ConversationAction text="EventText.mudraptorracing.howmuchgreen" targettag="gambler_player" dialogtype="Regular" eventsprite="gambler">
|
|
<Option text="EventText.mudraptorracing.100">
|
|
<CheckMoneyAction targettag="gambler_player" amount="100">
|
|
<Success>
|
|
<MoneyAction targettag="gambler_player" amount="-100" />
|
|
<ConversationAction targettag="gambler_player" text="EventText.mudraptorracing.yourticket" eventsprite="gambler" endconversation="true" />
|
|
<SpawnAction itemidentifier="raceticket_green" amount="1" targetinventory="gambler_player" targettag="raceticket" />
|
|
<SetDataAction identifier="betonraptorcounter" operation="add" value="1" />
|
|
<SetDataAction identifier="betongreen" operation="set" value="1" />
|
|
<Goto name="talktobookie" />
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="gambler_player" text="EventText.mudraptorracing.nomoney" eventsprite="gambler" dialogtype="small" />
|
|
<GoTo name="talktobookie" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="EventText.mudraptorracing.300">
|
|
<CheckMoneyAction targettag="gambler_player" amount="300">
|
|
<Success>
|
|
<MoneyAction targettag="gambler_player" amount="-300" />
|
|
<ConversationAction targettag="gambler_player" text="EventText.mudraptorracing.yourticket" eventsprite="gambler" endconversation="true" />
|
|
<SpawnAction itemidentifier="raceticket_green" amount="3" targetinventory="gambler_player" targettag="raceticket" />
|
|
<SetDataAction identifier="betonraptorcounter" operation="add" value="1" />
|
|
<SetDataAction identifier="betongreen" operation="set" value="1" />
|
|
<Goto name="talktobookie" />
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="gambler_player" text="EventText.mudraptorracing.nomoney" eventsprite="gambler" dialogtype="small" />
|
|
<GoTo name="talktobookie" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="eventtext.generic.nevermind" endconversation="true">
|
|
<Goto name="talktobookie" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Option>
|
|
<!-- Pick blue raptor -->
|
|
<Option text="EventText.mudraptorracing.pickblue">
|
|
<!-- How much do you bet, create more for different sums -->
|
|
<ConversationAction text="EventText.mudraptorracing.howmuchblue" targettag="gambler_player" dialogtype="Regular" eventsprite="gambler">
|
|
<Option text="EventText.mudraptorracing.100">
|
|
<CheckMoneyAction targettag="gambler_player" amount="100">
|
|
<Success>
|
|
<MoneyAction targettag="gambler_player" amount="-100" />
|
|
<ConversationAction targettag="gambler_player" text="EventText.mudraptorracing.yourticket" eventsprite="gambler" endconversation="true" />
|
|
<SpawnAction itemidentifier="raceticket_blue" amount="1" targetinventory="gambler_player" targettag="raceticket" />
|
|
<SetDataAction identifier="betonraptorcounter" operation="add" value="1" />
|
|
<SetDataAction identifier="betonblue" operation="set" value="1" />
|
|
<Goto name="talktobookie" />
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="gambler_player" text="EventText.mudraptorracing.nomoney" eventsprite="gambler" dialogtype="small" />
|
|
<GoTo name="talktobookie" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="EventText.mudraptorracing.300">
|
|
<CheckMoneyAction targettag="gambler_player" amount="300">
|
|
<Success>
|
|
<MoneyAction targettag="gambler_player" amount="-300" />
|
|
<ConversationAction targettag="gambler_player" text="EventText.mudraptorracing.yourticket" eventsprite="gambler" endconversation="true" />
|
|
<SpawnAction itemidentifier="raceticket_blue" amount="3" targetinventory="gambler_player" targettag="raceticket" />
|
|
<SetDataAction identifier="betonraptorcounter" operation="add" value="1" />
|
|
<SetDataAction identifier="betonblue" operation="set" value="1" />
|
|
<Goto name="talktobookie" />
|
|
</Success>
|
|
<Failure>
|
|
<ConversationAction targettag="gambler_player" text="EventText.mudraptorracing.nomoney" eventsprite="gambler" dialogtype="small" />
|
|
<GoTo name="talktobookie" />
|
|
</Failure>
|
|
</CheckMoneyAction>
|
|
</Option>
|
|
<Option text="eventtext.generic.nevermind" endconversation="true">
|
|
<Goto name="talktobookie" />
|
|
</Option>
|
|
</ConversationAction>
|
|
</Option>
|
|
<!-- ignore -->
|
|
<Option text="eventtext.generic.ignore" endconversation="true">
|
|
<Goto name="talktobookie" />
|
|
</Option>
|
|
</ConversationAction>
|
|
<!-- PHASE 2: BETS ARE OFF, HIT THE LEVER -->
|
|
<!-- PHASE 2: BETS ARE OFF, HIT THE LEVER -->
|
|
<!-- PHASE 2: BETS ARE OFF, HIT THE LEVER -->
|
|
<Label name="betsareoff" />
|
|
<ConversationAction text="EventText.mudraptorracing.betsareoff" speakertag="bookmaker" invokertag="gambler_player" dialogtype="Small" eventsprite="gambler" endconversation="true" />
|
|
<TagAction criteria="itemtag:raptorracelever" tag="raptorracelever" />
|
|
<!-- touch the lever to start the race -->
|
|
<TriggerAction target1tag="player" target2tag="raptorracelever" applytotarget1="triggerer_player" waitforinteraction="true" selectontrigger="true" />
|
|
<TriggerEventAction identifier="mudraptorracing_winner_red" />
|
|
<TriggerEventAction identifier="mudraptorracing_winner_green" />
|
|
<TriggerEventAction identifier="mudraptorracing_winner_blue" />
|
|
<StatusEffectAction targettag="raptorracelever">
|
|
<StatusEffect target="This" state="true" setvalue="true" />
|
|
</StatusEffectAction>
|
|
<WaitAction time="4" />
|
|
<!-- shoot the ducky -->
|
|
<StatusEffectAction targettag="petfoodgun">
|
|
<StatusEffect target="This" offset="30,0">
|
|
<Sound file="Content/Items/Weapons/Shotgunshot2.ogg" range="1500" volume="3" frequencymultiplier="0.5" dontmuffle="true" />
|
|
<ParticleEmitter particle="weldspark" particleamount="20" anglemin="-20" anglemax="20" velocitymin="250" velocitymax="500" distancemin="0" distancemax="30" scalemin="1.5" scalemax="1.9" colormultiplier="255,200,225,180" lifetimemultiplier="2" />
|
|
<SpawnItem identifier="raptorrubberduck" spawnposition="This" impulse="1.1" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<!-- slow down 2 raptors to avoid ties -->
|
|
<TagAction criteria="eventtag:raceraptor" tag="slowerraptor" submarinetype="Outpost" ChooseRandomExcludingTag="slowerraptor" chooserandom="true" />
|
|
<TagAction criteria="eventtag:raceraptor" tag="slowerraptor" submarinetype="Outpost" ChooseRandomExcludingTag="slowerraptor" chooserandom="true" />
|
|
<StatusEffectAction targettag="slowerraptor">
|
|
<StatusEffect target="This" speedmultiplier="0.75" duration="4" setvalue="true" />
|
|
</StatusEffectAction>
|
|
<!-- PHASE 3: WAIT FOR A RAPTOR TO WIN -->
|
|
<!-- PHASE 3: WAIT FOR A RAPTOR TO WIN -->
|
|
<!-- PHASE 3: WAIT FOR A RAPTOR TO WIN -->
|
|
<Label name="waitforfinish" />
|
|
<WaitAction time="1" />
|
|
<CheckDataAction identifier="raptorracefinished" condition="gte 1">
|
|
<Failure>
|
|
<Goto name="waitforfinish" />
|
|
</Failure>
|
|
</CheckDataAction>
|
|
<ConversationAction text="EventText.mudraptorracing.winner" TargetTag="gambler_player" dialogtype="small" eventsprite="mediator" endconversation="true" />
|
|
<!-- PHASE 4: CASHOUT TERMINAL -->
|
|
<!-- PHASE 4: CASHOUT TERMINAL -->
|
|
<!-- PHASE 4: CASHOUT TERMINAL -->
|
|
<TagAction criteria="itemtag:cashoutterminal" tag="cashoutterminal" />
|
|
<TagAction criteria="itemtag:cashoutlight" tag="cashoutlight" />
|
|
<StatusEffectAction targettag="cashoutlight">
|
|
<StatusEffect target="This" IsOn="true" />
|
|
</StatusEffectAction>
|
|
<Label name="cashout" />
|
|
<ClearTagAction tag="cashout_player" />
|
|
<WaitAction time="1" />
|
|
<TriggerAction target1tag="player" target2tag="cashoutterminal" applytotarget1="cashout_player" radius="150" waitforinteraction="true" />
|
|
<Label name="cashout_repeat" />
|
|
<ConversationAction text="EventText.mudraptorracing.cashout.claim" TargetTag="cashout_player" dialogtype="Regular" eventsprite="brokenterminal">
|
|
<Option text="EventText.mudraptorracing.cashout.redticket">
|
|
<!-- check if you have a ticket -->
|
|
<CheckItemAction targettag="cashout_player" itemidentifiers="raceticket_red" amount="1" ApplyTagToItem="pickedticket">
|
|
<Success>
|
|
<!-- check if raptor of the same color won -->
|
|
<CheckDataAction identifier="redraptorwon" condition="eq 1">
|
|
<Success>
|
|
<!-- use this label for payout - COMMENTED OUT BECAUSE GAME THROWS YELLOW ERROR -->
|
|
<!-- <Label name="payout" /> -->
|
|
<TagAction criteria="eventtag:pickedticket" tag="removeticket" chooserandom="true" ChoosePercentage="1" />
|
|
<StatusEffectAction targettag="removeticket">
|
|
<StatusEffect target="This">
|
|
<Sound file="Content/Sounds/UI/UI_labelMarkka.ogg" range="300" volume="2" />
|
|
<Remove />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<MoneyAction targettag="cashout_player" amount="200" />
|
|
<Goto name="cashout_repeat" />
|
|
</Success>
|
|
<Failure>
|
|
<!-- use this label for raptor lost - COMMENTED OUT BECAUSE GAME THROWS YELLOW ERROR -->
|
|
<!-- <Label name="raptorlost" /> -->
|
|
<ClearTagAction tag="pickedticket" />
|
|
<ConversationAction targettag="cashout_player" text="EventText.mudraptorracing.cashout.raptorlost" eventsprite="brokenterminal" dialogtype="small" />
|
|
<GoTo name="cashout" />
|
|
</Failure>
|
|
</CheckDataAction>
|
|
</Success>
|
|
<Failure>
|
|
<!-- use this label for no ticket - COMMENTED OUT BECAUSE GAME THROWS YELLOW ERROR -->
|
|
<!-- <Label name="noticket" /> -->
|
|
<ClearTagAction tag="pickedticket" />
|
|
<ConversationAction targettag="cashout_player" text="EventText.mudraptorracing.cashout.noticket" eventsprite="brokenterminal" dialogtype="small" />
|
|
<GoTo name="cashout" />
|
|
</Failure>
|
|
</CheckItemAction>
|
|
</Option>
|
|
<Option text="EventText.mudraptorracing.cashout.greenticket">
|
|
<!-- check if you have a ticket -->
|
|
<CheckItemAction targettag="cashout_player" itemidentifiers="raceticket_green" amount="1" ApplyTagToItem="pickedticket">
|
|
<Success>
|
|
<!-- check if raptor of the same color won -->
|
|
<CheckDataAction identifier="greenraptorwon" condition="eq 1">
|
|
<Success>
|
|
<!-- <Goto name="payout" /> -->
|
|
<TagAction criteria="eventtag:pickedticket" tag="removeticket" chooserandom="true" ChoosePercentage="1" />
|
|
<StatusEffectAction targettag="removeticket">
|
|
<StatusEffect target="This">
|
|
<Sound file="Content/Sounds/UI/UI_labelMarkka.ogg" range="300" volume="2" />
|
|
<Remove />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<MoneyAction targettag="cashout_player" amount="200" />
|
|
<Goto name="cashout_repeat" />
|
|
</Success>
|
|
<Failure>
|
|
<!-- <Goto name="raptorlost" /> -->
|
|
<ClearTagAction tag="pickedticket" />
|
|
<ConversationAction targettag="cashout_player" text="EventText.mudraptorracing.cashout.raptorlost" eventsprite="brokenterminal" dialogtype="small" />
|
|
<GoTo name="cashout" />
|
|
</Failure>
|
|
</CheckDataAction>
|
|
</Success>
|
|
<Failure>
|
|
<!-- <Goto name="noticket" /> -->
|
|
<ClearTagAction tag="pickedticket" />
|
|
<ConversationAction targettag="cashout_player" text="EventText.mudraptorracing.cashout.noticket" eventsprite="brokenterminal" dialogtype="small" />
|
|
<GoTo name="cashout" />
|
|
</Failure>
|
|
</CheckItemAction>
|
|
</Option>
|
|
<Option text="EventText.mudraptorracing.cashout.blueticket">
|
|
<!-- check if you have a ticket -->
|
|
<CheckItemAction targettag="cashout_player" itemidentifiers="raceticket_blue" amount="1" ApplyTagToItem="pickedticket">
|
|
<Success>
|
|
<!-- check if raptor of the same color won -->
|
|
<CheckDataAction identifier="blueraptorwon" condition="eq 1">
|
|
<Success>
|
|
<!-- <Goto name="payout" /> -->
|
|
<TagAction criteria="eventtag:pickedticket" tag="removeticket" chooserandom="true" ChoosePercentage="1" />
|
|
<StatusEffectAction targettag="removeticket">
|
|
<StatusEffect target="This">
|
|
<Sound file="Content/Sounds/UI/UI_labelMarkka.ogg" range="300" volume="2" />
|
|
<Remove />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<MoneyAction targettag="cashout_player" amount="200" />
|
|
<Goto name="cashout_repeat" />
|
|
</Success>
|
|
<Failure>
|
|
<!-- <Goto name="raptorlost" /> -->
|
|
<!-- <Goto name="raptorlost" /> -->
|
|
<ClearTagAction tag="pickedticket" />
|
|
<ConversationAction targettag="cashout_player" text="EventText.mudraptorracing.cashout.raptorlost" eventsprite="brokenterminal" dialogtype="small" />
|
|
<GoTo name="cashout" />
|
|
</Failure>
|
|
</CheckDataAction>
|
|
</Success>
|
|
<Failure>
|
|
<!-- <Goto name="noticket" /> -->
|
|
<ClearTagAction tag="pickedticket" />
|
|
<ConversationAction targettag="cashout_player" text="EventText.mudraptorracing.cashout.noticket" eventsprite="brokenterminal" dialogtype="small" />
|
|
<GoTo name="cashout" />
|
|
</Failure>
|
|
</CheckItemAction>
|
|
</Option>
|
|
<Option text="eventtext.generic.ignore" endconversation="true">
|
|
<Goto name="cashout" />
|
|
</Option>
|
|
</ConversationAction>
|
|
<!-- PHASE 5: REMOVE ALL TICKETS -->
|
|
<OnRoundEndAction>
|
|
<RemoveItemAction targettag="raceticket" Amount="100" />
|
|
</OnRoundEndAction>
|
|
</ScriptedEvent>
|
|
<ScriptedEvent identifier="mudraptorracing_winner_red">
|
|
<TagAction criteria="hullname:finishline" tag="finishline" submarinetype="Outpost" />
|
|
<TagAction criteria="speciesname:Mudraptorred" tag="Mudraptorred" submarinetype="Outpost" />
|
|
<TriggerAction target1tag="Mudraptorred" target2tag="finishline" radius="10" disableiftargetincapacitated="true" disableincombat="false" />
|
|
<CheckDataAction identifier="raptorracefinished" condition="lte 0">
|
|
<Success>
|
|
<SetDataAction identifier="raptorracefinished" operation="set" value="1" />
|
|
<SetDataAction identifier="redraptorwon" operation="Set" value="1" />
|
|
<TagAction criteria="itemtag:raptorracelever" tag="raptorracelever" />
|
|
<TagAction criteria="itemtag:confettilauncher" tag="confettilauncher" />
|
|
<StatusEffectAction targettag="raptorracelever">
|
|
<StatusEffect target="this" duration="10">
|
|
<Sound file="Content/Sounds/ClubMusic_transitionScratch.ogg" range="1500" volume="3" frequencymultiplier="0.5" loop="true" dontmuffle="true" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<StatusEffectAction targettag="confettilauncher">
|
|
<StatusEffect target="this" duration="10">
|
|
<ParticleEmitter particle="whitespark" particlespersecond="20" velocitymin="250" velocitymax="400" anglemin="70" anglemax="110" scalemin="1" scalemax="2" distancemin="5" distancemax="250" colormultiplier="255,30,30,255" lifetimemultiplier="2" HighQualityCollisionDetection="true" />
|
|
<ParticleEmitter particle="steamspray" particlespersecond="5" velocitymin="50" velocitymax="100" anglemin="260" anglemax="280" scalemin="0.8" scalemax="1.2" distancemin="0" distancemax="0" colormultiplier="255,30,30,255" lifetimemultiplier="2" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<StatusEffectAction targettag="raptorracelever">
|
|
<StatusEffect target="NearbyCharacters" range="1000" oneshot="true" disabledeltatime="true">
|
|
<ReduceAffliction identifier="mood" strength="25" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
</Success>
|
|
</CheckDataAction>
|
|
</ScriptedEvent>
|
|
<ScriptedEvent identifier="mudraptorracing_winner_green">
|
|
<TagAction criteria="hullname:finishline" tag="finishline" submarinetype="Outpost" />
|
|
<TagAction criteria="speciesname:Mudraptorgreen" tag="Mudraptorgreen" submarinetype="Outpost" />
|
|
<TriggerAction target1tag="Mudraptorgreen" target2tag="finishline" radius="10" disableiftargetincapacitated="true" disableincombat="false" />
|
|
<CheckDataAction identifier="raptorracefinished" condition="lte 0">
|
|
<Success>
|
|
<SetDataAction identifier="raptorracefinished" operation="set" value="1" />
|
|
<SetDataAction identifier="greenraptorwon" operation="Set" value="1" />
|
|
<TagAction criteria="itemtag:raptorracelever" tag="raptorracelever" />
|
|
<TagAction criteria="itemtag:confettilauncher" tag="confettilauncher" />
|
|
<StatusEffectAction targettag="raptorracelever">
|
|
<StatusEffect target="this" duration="10">
|
|
<Sound file="Content/Sounds/ClubMusic_transitionScratch.ogg" range="1500" volume="3" frequencymultiplier="0.5" loop="true" dontmuffle="true" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<StatusEffectAction targettag="confettilauncher">
|
|
<StatusEffect target="this" duration="10">
|
|
<ParticleEmitter particle="whitespark" particlespersecond="20" velocitymin="250" velocitymax="400" anglemin="70" anglemax="110" scalemin="1" scalemax="2" distancemin="5" distancemax="250" colormultiplier="30,255,30,255" lifetimemultiplier="2" HighQualityCollisionDetection="true" />
|
|
<ParticleEmitter particle="steamspray" particlespersecond="5" velocitymin="50" velocitymax="100" anglemin="260" anglemax="280" scalemin="0.8" scalemax="1.2" distancemin="0" distancemax="0" colormultiplier="30,255,30,255" lifetimemultiplier="2" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<StatusEffectAction targettag="raptorracelever">
|
|
<StatusEffect target="NearbyCharacters" range="1000" oneshot="true" disabledeltatime="true">
|
|
<ReduceAffliction identifier="mood" strength="25" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
</Success>
|
|
</CheckDataAction>
|
|
</ScriptedEvent>
|
|
<ScriptedEvent identifier="mudraptorracing_winner_blue">
|
|
<TagAction criteria="hullname:finishline" tag="finishline" submarinetype="Outpost" />
|
|
<TagAction criteria="speciesname:Mudraptorblue" tag="Mudraptorblue" submarinetype="Outpost" />
|
|
<TriggerAction target1tag="Mudraptorblue" target2tag="finishline" radius="10" disableiftargetincapacitated="true" disableincombat="false" />
|
|
<CheckDataAction identifier="raptorracefinished" condition="lte 0">
|
|
<Success>
|
|
<SetDataAction identifier="raptorracefinished" operation="set" value="1" />
|
|
<SetDataAction identifier="blueraptorwon" operation="Set" value="1" />
|
|
<TagAction criteria="itemtag:raptorracelever" tag="raptorracelever" />
|
|
<TagAction criteria="itemtag:confettilauncher" tag="confettilauncher" />
|
|
<StatusEffectAction targettag="raptorracelever">
|
|
<StatusEffect target="this" duration="10">
|
|
<Sound file="Content/Sounds/ClubMusic_transitionScratch.ogg" range="1500" volume="3" frequencymultiplier="0.5" loop="true" dontmuffle="true" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<StatusEffectAction targettag="confettilauncher">
|
|
<StatusEffect target="this" duration="10">
|
|
<ParticleEmitter particle="whitespark" particlespersecond="20" velocitymin="250" velocitymax="400" anglemin="70" anglemax="110" scalemin="1" scalemax="2" distancemin="5" distancemax="250" colormultiplier="30,30,255,255" lifetimemultiplier="2" HighQualityCollisionDetection="true" />
|
|
<ParticleEmitter particle="steamspray" particlespersecond="5" velocitymin="50" velocitymax="100" anglemin="260" anglemax="280" scalemin="0.8" scalemax="1.2" distancemin="0" distancemax="0" colormultiplier="30,30,255,255" lifetimemultiplier="2" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
<StatusEffectAction targettag="raptorracelever">
|
|
<StatusEffect target="NearbyCharacters" range="1000" oneshot="true" disabledeltatime="true">
|
|
<ReduceAffliction identifier="mood" strength="25" />
|
|
</StatusEffect>
|
|
</StatusEffectAction>
|
|
</Success>
|
|
</CheckDataAction>
|
|
</ScriptedEvent>
|
|
</EventPrefabs>
|
|
</Randomevents>
|
|
</Override> |