seeing as nobody has replied, i will offer my template end mission system
MISSION EDITOR (Side failure to complete mission)Trigger 1Axis: [0,0]
Activation: None / Once
Type: None
Condition: (tx_Efail) OR (tx_Rfail) OR (tx_Wfail) OR (tx_timeout)
On Activation: [] exec "outro.sqs"
Trigger 2(Timelimit trigger)Axis: [0,0]
Activation: None / Once
Type: None
Condition: (time >= tx_timelimit)
On Activation: tx_timeout = true
Trigger 3(End mission trigger)Axis: [0,0]
Activation: None / Once
Type: #End1
Condition: (tx_missionend)
On Activation: Forcend
*******************************************************
INIT.SQS tx_Wfail = false
tx_Efail = false
tx_Rfail = false
tx_timeout = false
tx_missionend = false
;;; following is missiontime limit (set to 30 minutes in the example
;; if you want a time that is unlimited set it to some massive number
tx_timelimit = 1800
*******************************************************
OUTRO.SQS ~3
?(tx_Wfail): goto "W_Fails"
?(tx_Efail): goto "E_Fails"
?(tx_Rfail): goto "R_Fails"
;; edit the tx_timeout goto so that it points to the Lose scenario for the given side when the mission times out
?(tx_timeout): goto "R_Fails"
;; WEST FAILS
#W_Fails
;; add specific code to enable an outro for a given Res loses scenario's
;; see notes below
exit
;; EAST FAILS
#E_Fails
;; add specific code to enable an outro for a given Res loses scenario's
;; see notes below
exit
;; RES FAILS
#R_Fails
;; add specific code to enable an outro for a given Res loses scenario's
;; see notes below
exit
******************************************************
******************************************************
******************************************************
NOTES The outro is triggered by a boolean being declared
this boolean can either be
tx_Wfail, tx_Efail, tx_Rfail or tx_timeout
If you just needed 1 win (or fail) scenario per given side then these are the only booleans you need to be working with
however if you have various win / lose scenario's then you simply need to create additional booleans so that when the outro trigger is run, it kniows what to do
for instance
RES WIN / LOSE Scenario's when playing against east
a) They win if they destroy an EAST communications tower
b) they lose if they suffer 80% casualty rates
c) they lose if they fail to stop Enemy convoy reaching its objective
Lets take instance (a) first
_____________________________________________________________________
a) They fail to destroy a communications tower(a script or trigger or eventhandler is monitoring the dammage on the comms tower
when the comms tower is destroyed, the following code is run
?(condition):goto "Commsdestroyed"
#Commsdestroyed
tx_commsdestroyed = true; tx_Efail = true
{PublicVariable _x;}foreach[" tx_commsdestroyed ","tx_Efail"]
exit
_____________________________________________________________________
b) they lose if they suffer 80% casualty rates
your monitoring system (trigger / script) declares the following variables when the Resistance guys suiffer 80% casualty rates or more
tx_RcasrateHigh = true
tx_Rfail = true
{PublicVariable _x;}foreach[" tx_RcasrateHigh ","tx_Rfail"]
_____________________________________________________________________
c) they lose if they fail to stop Enemy convoy reaching its objective
when the convoy reaches either a waypoint or trigger area, the following booleans are declared
tx_convoyArrived = true
tx_Rfail = true
{PublicVariable _x;}foreach["tx_convoyArrived ","tx_Rfail "]
_____________________________________________________________________
You now have 3 win / lose scenario's for Resistance
Each time Res wins or loses one of the following variables is transmitted
tx_Efail or tx_Rfail
this kicks in the outro.sqs
and then it jumps to either #E_fail 0r #R_fail labels
All you need to do then is put your specific failure booleans in as a condition query under that label nand then run some code after that condition query, eg run a specific outro cutscene script
eg
*******************************************************
OUTRO.SQS ~3
?(tx_Wfail): goto "W_Fails"
?(tx_Efail): goto "E_Fails"
?(tx_Rfail): goto "R_Fails"
;; edit the tx_timeout goto so that it points to the Lose scenario for the given side when the mission times out
?(tx_timeout): goto "R_Fails"
;; WEST FAILS
#W_Fails
exit
;; EAST FAILS
#E_Fails
?(tx_commsdestroyed): [] exec "Commsdestroyed.sqs"
exit
;; RES FAILS
#R_Fails
?(tx_convoyArrived): [] exec "ConvoyArrivesOutro.sqs"
?(tx_RcasrateHigh): [] exec "RcasrateHighOutro.sqs"
exit
AT THE END OF YOUR FINAL OUTRO CUTSCENES ADD THE LINE
tx_missionend = truethis will activate the endmission trigger and forcend the mission
eg
ConvoyArrivesOutro.sqs";; do your cam stuff etc
;; at end of this script use line
tx_missionend = true