<data>
	<actions>
		<!-- GENERIC ACTIONS -->
		<actionTemplate r_name="'basicActionTemplate'"
										r_enabled="1"
										r_minRange="0"
										r_range="r_viewRange"
										r_targetingType="'all'"
										canPay="1"
										r_canExecute="r_enabled&&canPay"
										r_canTarget="1"
										actionTags="{}"
										r_actionIndexOffset="0">
		</actionTemplate>
		<actionTemplate r_name="'mainActionTemplate'" r_template="'basicActionTemplate'"
										canBeInActionList="1"
										canBeInAutoAttack="r_range>0"
										r_autoAddToActionList="canBeInActionList&&r_enabled"
										timeCost="100"
										costPaid="1"
										r_minRange="min(r_range,1)"
										r_range="0"
										r_targetingType="'standard'"
										isFree="0"
										canTargetFaction="1"
										canTargetGround="0"
										r_canTarget="(canTargetGround&&(targetSquare.actors.count==0))||(exists(target)&&target.isActor&&!target.isDead&&canTargetFaction)"
										actionEffectTemplate="{'mainSelfEffectTemplate','multiEffect'}">
			<modifier r_name="'ActionDelay'" r_template="'mainModifierTemplate'" r_modifierTarget="'timeCost'" r_modifiedValue="$0*actor.actionTimeCostMultiplier"/>
			<effect r_name="'costReset'" r_template="{'mainActorEffectTemplate','evaluationEffect'}" r_effect="costPaid=isFree"/>
			<effect r_name="'cost'" r_template="{'mainActorEffectTemplate','evaluationEffect'}" r_enabled="(!isFree)&&r_canExecute&&(!exists(target)||!target.isDead)" r_effect="costPaid=1"/>
			<effect r_name="'mainEffect'" r_template="actionEffectTemplate" r_enabled="costPaid"/>
			<effect r_name="'timeCost'" r_template="{'mainActorEffectTemplate','evaluationEffect'}" r_enabled="(!isFree)&&costPaid" r_effect="actor.rw_currentTime+=timeCost"/>
		</actionTemplate>
		<actionTemplate r_name="'mainActionWithFatigueTemplate'" r_template="'mainActionTemplate'"
										fatigueCost="0"
										exhaustionCost="0"
										hitPointsCost="0"
										costPaid="0"
										canPay="(actor.fatigue>=fatigueCost)&&(actor.exhaustion>=exhaustionCost)&&(actor.hitPoints>hitPointsCost)">
			<effect r_name="'secondaryCost'" r_template="{'mainActorEffectTemplate','evaluationEffect'}" r_enabled="costPaid&&(!isFree)" r_effect="all(((fatigueCost>0)?{actor.fatigue-=fatigueCost}:{})+((exhaustionCost>0)?{actor.exhaustion-=exhaustionCost}:{})+((hitPointsCost>0)?{actor.hitPoints-=hitPointsCost}:{}))"/>
			<effect r_name="'cannotPay'" r_template="'logCannotPayFatigue'" r_enabled="!costPaid&&!canPay&&r_canTarget"/>
		</actionTemplate>
		<actionTemplate r_name="'mainActionWithChargeTemplate'" r_template="'mainActionTemplate'"
										chargeCost="1"
										costPaid="0"
										canPay="(rw_charge>=chargeCost)">
			<effect r_name="'secondaryCost'" r_template="{'mainSelfEffectTemplate','evaluationEffect'}" r_enabled="costPaid&&(!isFree)" r_effect="rw_charge-=chargeCost"/>
			<effect r_name="'cannotPay'" r_template="'logCannotPayCharge'" r_enabled="!costPaid&&!canPay"/>
		</actionTemplate>
		
		<!-- SPECIFIC ACTIONS -->
		<action r_name="'pushAction'" r_template="'basicActionTemplate'"
						rw_xTarget="0"
						rw_yTarget="0"
						xDirection="0"
						yDirection="0">
			<effect r_name="'push'" r_template="'pushEffect'"
							r_enabled="exists(target)"
							pushXDirection="xDirection"
							pushYDirection="yDirection"/>
		</action>
	</actions>
</data>