Enderal SE https://mod.pub/enderal-se/38-enderal-se
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1596 lines
59 KiB
1596 lines
59 KiB
Scriptname CWSiegeScript extends Quest Conditional
|
|
{Extends Quest}
|
|
|
|
;*******************
|
|
;This script helps unify the Attack and Defend Quests for attacks and defenses of cities.
|
|
;It is essentially a collection of "arrays" of aliases and functions to setup/enable/reset/disable the references in those alisases in those "arrays"
|
|
|
|
;"Arrays" holding aliases pointing to soldier references placed in the world
|
|
;ImperialAttackerX - these mimic an array called "ImperialAttackerAliases" - (the ones pointing at specific references in the world who have the link refs)
|
|
;ImperialDefenderX - these mimic an array called "ImperialDefenderAliases" - (the ones pointing at specific references in the world who have the link refs)
|
|
;SonsAttackerX - these mimic an array called "SonsAttackerAliases" - (the ones pointing at specific references in the world who have the link refs)
|
|
;SonsDefenderX - these mimic an array called "SonsDefenderAliases" - (the ones pointing at specific references in the world who have the link refs)
|
|
|
|
;"Arrays" holding aliases that are used to put packages on the soldiers who are acting as Attackers or Defenders in this instance of the quest (in otherwords which of the above mentioned aliases are actually the attackers and defenders at this very moment)
|
|
;AttackerX - these mimic an array called "AttackerAliases" - (the ones with the packages and scripts to make the sieges work)
|
|
;DefenderX - these mimic an array called "DefenderAliases" - (the ones with the packages and scripts to make the sieges work)
|
|
|
|
;Functions to call from quest stage fragment script:
|
|
|
|
;RegisterXYZ() - this is how you pass aliases into the "array"
|
|
;DisableXYZ() - this is how you Disable all the references in aliases in the "array"
|
|
;EnableXYZ() - this is how you enable all the references in aliases in the "array"
|
|
;ResetXYZ() - this is how you Reset all the references in aliases in the "array"
|
|
;
|
|
;SetUpAliases(bool IsAttackQuest) - sets up, enables, and resets aliases as appropriate to the player faction and attacking Faction (it enables and resets all the generic and attacker/defender aliases, and GenericAttack or GenericDefend as appropriate to the TYPE of QUEST [IsAttackQuest] true = this is an attack on a city, false = this is a defense of a city)
|
|
;DisableAllAliases() - disables all the aliases registered into any of the "arrays" (strictly speaking it disables the generic aliases, and the Imperial/SonsAttacker/Defender aliases, not the Attacker/Defender aliases, but the Attacker/Defender aliases are just pointing at a subset of the Imperial/SonsAttacker/Defender aliases, so it amounts to the same thing)
|
|
|
|
|
|
;*******************
|
|
|
|
CWScript Property CWs Auto
|
|
|
|
GlobalVariable Property CWBattlePhase Auto
|
|
|
|
GlobalVariable Property CWStateAttackerAtGate Auto
|
|
GlobalVariable Property CWStateAttackerBrokeThrough Auto
|
|
GlobalVariable Property CWStateAttackerLowReinforcements Auto
|
|
GlobalVariable Property CWStateAttackerOutOfReinforcements Auto
|
|
GlobalVariable Property CWStateAttackStarted Auto
|
|
GlobalVariable Property CWStateDefenderFallingBack Auto
|
|
GlobalVariable Property CWStateDefenderLastStand Auto
|
|
GlobalVariable Property CWStateDefenderLowReinforcements Auto
|
|
GlobalVariable Property CWStateDefenderOutOfReinforcements Auto
|
|
|
|
bool Property DoneSettingUpAliases = False auto Hidden
|
|
bool Property DoneTurningOnAliases = False auto Hidden
|
|
|
|
bool Property WasThisAnAttack Auto hidden
|
|
bool DisabledFastTravel = false
|
|
|
|
bool Property AttackersHaveWon = false Auto Conditional
|
|
bool Property DefendersHaveWon = false Auto Conditional
|
|
Int Property CurrentCity Auto Conditional
|
|
{Gets set when CWSiege starts:
|
|
1 = Solitude
|
|
2 = Markarth
|
|
4 = Whiterun
|
|
8 = Windhelm
|
|
9 = Riften
|
|
}
|
|
|
|
LocationAlias Property City Auto
|
|
LocationAlias Property Hold Auto
|
|
|
|
;Pointers to references that handle the quest title text replacement
|
|
ObjectReference Property TextReplaceDEFENSE Auto
|
|
ObjectReference Property TextReplaceATTACK Auto
|
|
ReferenceAlias Property ObjAliasTextReplaceAttackDefend Auto
|
|
|
|
|
|
;sound control
|
|
MusicType Property MUSCombatCivilWar auto
|
|
sound Property AMBCombatSoundsLoop Auto
|
|
int CombatSoundsLoopInstance
|
|
|
|
Weather Property WeatherWhiterun Auto
|
|
Weather Property WeatherMarkarth Auto
|
|
Weather Property WeatherRiften Auto
|
|
Weather Property WeatherSolitude Auto
|
|
Weather Property WeatherWindhelm Auto
|
|
|
|
Explosion Property CWCatapultExp Auto
|
|
|
|
|
|
quest Property DA08 Auto
|
|
|
|
Quest Property SolitudeOpening Auto
|
|
|
|
Scene Property CWSiegeWhiterunDefendedScene Auto
|
|
|
|
Quest Property CWPostWhiterunObj Auto ;objective turned on in stage 200 in CWSiege quest, and completed in CWSiegeJarlThankYouTopic fragment in CW quest
|
|
|
|
MS11QuestScript Property MS11 Auto ;ised tp call a function on MS11 to help handle murder scene not occuring duing siege
|
|
|
|
; ## External Aliases ##
|
|
Quest Property CWSiegeObj Auto
|
|
LocationAlias Property CWSiegeObjCity Auto
|
|
ReferenceAlias Property CWSiegeObjCityGate Auto
|
|
ReferenceAlias Property CWSiegeObjJarl Auto
|
|
ReferenceAlias Property CWSiegeObjGeneral Auto
|
|
|
|
ReferenceAlias Property CWSiegeObjObjective1A Auto
|
|
ReferenceAlias Property CWSiegeObjObjective2A Auto
|
|
ReferenceAlias Property CWSiegeObjObjective3A Auto
|
|
ReferenceAlias Property CWSiegeObjObjective4A Auto
|
|
|
|
ReferenceAlias Property CWSiegeObjObjective1B Auto
|
|
ReferenceAlias Property CWSiegeObjObjective2B Auto
|
|
ReferenceAlias Property CWSiegeObjObjective3B Auto
|
|
ReferenceAlias Property CWSiegeObjObjective4B Auto
|
|
|
|
ReferenceAlias Property CWReservationsBalgruuf Auto
|
|
ReferenceAlias Property CWReservationsProventus Auto
|
|
ReferenceAlias Property CWReservationsIrileth Auto
|
|
|
|
;"Array" of aliases
|
|
;rather than declaring these again on all siege scripts, we will create a function that the quest fragment can pass in the Alias_XXX aliases and put them in the "array"
|
|
|
|
;Imperial Attacker/Defender aliases (the ones pointing at specific references in the world who have the link refs)
|
|
ReferenceAlias ImperialAttacker1
|
|
ReferenceAlias ImperialAttacker2
|
|
ReferenceAlias ImperialAttacker3
|
|
ReferenceAlias ImperialAttacker4
|
|
ReferenceAlias ImperialAttacker5
|
|
ReferenceAlias ImperialAttacker6
|
|
ReferenceAlias ImperialAttacker7
|
|
ReferenceAlias ImperialAttacker8
|
|
ReferenceAlias ImperialAttacker9
|
|
ReferenceAlias ImperialAttacker10
|
|
|
|
ReferenceAlias ImperialDefender1
|
|
ReferenceAlias ImperialDefender2
|
|
ReferenceAlias ImperialDefender3
|
|
ReferenceAlias ImperialDefender4
|
|
ReferenceAlias ImperialDefender5
|
|
ReferenceAlias ImperialDefender6
|
|
ReferenceAlias ImperialDefender7
|
|
ReferenceAlias ImperialDefender8
|
|
ReferenceAlias ImperialDefender9
|
|
ReferenceAlias ImperialDefender10
|
|
|
|
;Sons Attacker/Defender aliases (the ones pointing at specific references in the world who have the link refs)
|
|
ReferenceAlias SonsAttacker1
|
|
ReferenceAlias SonsAttacker2
|
|
ReferenceAlias SonsAttacker3
|
|
ReferenceAlias SonsAttacker4
|
|
ReferenceAlias SonsAttacker5
|
|
ReferenceAlias SonsAttacker6
|
|
ReferenceAlias SonsAttacker7
|
|
ReferenceAlias SonsAttacker8
|
|
ReferenceAlias SonsAttacker9
|
|
ReferenceAlias SonsAttacker10
|
|
|
|
ReferenceAlias SonsDefender1
|
|
ReferenceAlias SonsDefender2
|
|
ReferenceAlias SonsDefender3
|
|
ReferenceAlias SonsDefender4
|
|
ReferenceAlias SonsDefender5
|
|
ReferenceAlias SonsDefender6
|
|
ReferenceAlias SonsDefender7
|
|
ReferenceAlias SonsDefender8
|
|
ReferenceAlias SonsDefender9
|
|
ReferenceAlias SonsDefender10
|
|
|
|
;Attacker/Defender Aliases (the ones with the packages and scripts to make the sieges work, the above aliases will be shoved into these depending on who is attacking/defending)
|
|
ReferenceAlias Attacker1
|
|
ReferenceAlias Attacker2
|
|
ReferenceAlias Attacker3
|
|
ReferenceAlias Attacker4
|
|
ReferenceAlias Attacker5
|
|
ReferenceAlias Attacker6
|
|
ReferenceAlias Attacker7
|
|
ReferenceAlias Attacker8
|
|
ReferenceAlias Attacker9
|
|
ReferenceAlias Attacker10
|
|
|
|
ReferenceAlias Defender1
|
|
ReferenceAlias Defender2
|
|
ReferenceAlias Defender3
|
|
ReferenceAlias Defender4
|
|
ReferenceAlias Defender5
|
|
ReferenceAlias Defender6
|
|
ReferenceAlias Defender7
|
|
ReferenceAlias Defender8
|
|
ReferenceAlias Defender9
|
|
ReferenceAlias Defender10
|
|
|
|
|
|
;Generic "array" of aliases of things we want to enable/reset/disable as a group (things like fires, catapolts, barricades, etc.)
|
|
ReferenceAlias Generic1
|
|
ReferenceAlias Generic2
|
|
ReferenceAlias Generic3
|
|
ReferenceAlias Generic4
|
|
ReferenceAlias Generic5
|
|
ReferenceAlias Generic6
|
|
ReferenceAlias Generic7
|
|
ReferenceAlias Generic8
|
|
ReferenceAlias Generic9
|
|
ReferenceAlias Generic10
|
|
ReferenceAlias Generic11
|
|
ReferenceAlias Generic12
|
|
ReferenceAlias Generic13
|
|
ReferenceAlias Generic14
|
|
ReferenceAlias Generic15
|
|
ReferenceAlias Generic16
|
|
ReferenceAlias Generic17
|
|
ReferenceAlias Generic18
|
|
ReferenceAlias Generic19
|
|
ReferenceAlias Generic20
|
|
ReferenceAlias Generic21
|
|
ReferenceAlias Generic22
|
|
ReferenceAlias Generic23
|
|
ReferenceAlias Generic24
|
|
ReferenceAlias Generic25
|
|
ReferenceAlias Generic26
|
|
ReferenceAlias Generic27
|
|
ReferenceAlias Generic28
|
|
ReferenceAlias Generic29
|
|
ReferenceAlias Generic30
|
|
|
|
|
|
;For ATTACK quests -Generic "array" of aliases of things we want to enable/reset/disable as a group (things like fires, catapolts, barricades, etc.)
|
|
ReferenceAlias GenericAttack1
|
|
ReferenceAlias GenericAttack2
|
|
ReferenceAlias GenericAttack3
|
|
ReferenceAlias GenericAttack4
|
|
ReferenceAlias GenericAttack5
|
|
ReferenceAlias GenericAttack6
|
|
ReferenceAlias GenericAttack7
|
|
ReferenceAlias GenericAttack8
|
|
ReferenceAlias GenericAttack9
|
|
ReferenceAlias GenericAttack10
|
|
ReferenceAlias GenericAttack11
|
|
ReferenceAlias GenericAttack12
|
|
ReferenceAlias GenericAttack13
|
|
ReferenceAlias GenericAttack14
|
|
ReferenceAlias GenericAttack15
|
|
ReferenceAlias GenericAttack16
|
|
ReferenceAlias GenericAttack17
|
|
ReferenceAlias GenericAttack18
|
|
ReferenceAlias GenericAttack19
|
|
ReferenceAlias GenericAttack20
|
|
ReferenceAlias GenericAttack21
|
|
ReferenceAlias GenericAttack22
|
|
ReferenceAlias GenericAttack23
|
|
ReferenceAlias GenericAttack24
|
|
ReferenceAlias GenericAttack25
|
|
ReferenceAlias GenericAttack26
|
|
ReferenceAlias GenericAttack27
|
|
ReferenceAlias GenericAttack28
|
|
ReferenceAlias GenericAttack29
|
|
ReferenceAlias GenericAttack30
|
|
|
|
;For DEFEND quests -Generic "array" of aliases of things we want to enable/reset/disable as a group (things like fires, catapolts, barricades, etc.)
|
|
ReferenceAlias GenericDefend1
|
|
ReferenceAlias GenericDefend2
|
|
ReferenceAlias GenericDefend3
|
|
ReferenceAlias GenericDefend4
|
|
ReferenceAlias GenericDefend5
|
|
ReferenceAlias GenericDefend6
|
|
ReferenceAlias GenericDefend7
|
|
ReferenceAlias GenericDefend8
|
|
ReferenceAlias GenericDefend9
|
|
ReferenceAlias GenericDefend10
|
|
ReferenceAlias GenericDefend11
|
|
ReferenceAlias GenericDefend12
|
|
ReferenceAlias GenericDefend13
|
|
ReferenceAlias GenericDefend14
|
|
ReferenceAlias GenericDefend15
|
|
ReferenceAlias GenericDefend16
|
|
ReferenceAlias GenericDefend17
|
|
ReferenceAlias GenericDefend18
|
|
ReferenceAlias GenericDefend19
|
|
ReferenceAlias GenericDefend20
|
|
ReferenceAlias GenericDefend21
|
|
ReferenceAlias GenericDefend22
|
|
ReferenceAlias GenericDefend23
|
|
ReferenceAlias GenericDefend24
|
|
ReferenceAlias GenericDefend25
|
|
ReferenceAlias GenericDefend26
|
|
ReferenceAlias GenericDefend27
|
|
ReferenceAlias GenericDefend28
|
|
ReferenceAlias GenericDefend29
|
|
ReferenceAlias GenericDefend30
|
|
|
|
|
|
ReferenceAlias AttackerSonsCampMapMarker
|
|
Referencealias AttackerImperialCampMapMarker
|
|
ReferenceAlias MapMarkerToDisable1
|
|
ReferenceAlias MapMarkerToDisable2
|
|
ReferenceAlias MapMarkerToDisable3
|
|
ReferenceAlias MapMarkerToDisable4
|
|
ReferenceAlias MapMarkerToDisable5
|
|
ReferenceAlias MapMarkerToDisable6
|
|
ReferenceAlias MapMarkerToDisable7
|
|
ReferenceAlias MapMarkerToDisable8
|
|
ReferenceAlias MapMarkerToDisable9
|
|
ReferenceAlias MapMarkerToDisable10
|
|
ReferenceAlias MapMarkerToDisable11
|
|
ReferenceAlias MapMarkerToDisable12
|
|
ReferenceAlias MapMarkerToDisable13
|
|
ReferenceAlias MapMarkerToDisable14
|
|
ReferenceAlias MapMarkerToDisable15
|
|
ReferenceAlias MapMarkerToDisable16
|
|
|
|
function RegisterMapMarkerAliases(ReferenceAlias AttackerSonsCampMapMarkerAlias, ReferenceAlias AttackerImperialCampMapMarkerAlias, \
|
|
ReferenceAlias MapMarkerToDisable1Alias, \
|
|
ReferenceAlias MapMarkerToDisable2Alias, \
|
|
ReferenceAlias MapMarkerToDisable3Alias, \
|
|
ReferenceAlias MapMarkerToDisable4Alias, \
|
|
ReferenceAlias MapMarkerToDisable5Alias, \
|
|
ReferenceAlias MapMarkerToDisable6Alias, \
|
|
ReferenceAlias MapMarkerToDisable7Alias, \
|
|
ReferenceAlias MapMarkerToDisable8Alias, \
|
|
ReferenceAlias MapMarkerToDisable9Alias, \
|
|
ReferenceAlias MapMarkerToDisable10Alias, \
|
|
ReferenceAlias MapMarkerToDisable11Alias, \
|
|
ReferenceAlias MapMarkerToDisable12Alias, \
|
|
ReferenceAlias MapMarkerToDisable13Alias, \
|
|
ReferenceAlias MapMarkerToDisable14Alias, \
|
|
ReferenceAlias MapMarkerToDisable15Alias, \
|
|
ReferenceAlias MapMarkerToDisable16Alias)
|
|
|
|
AttackerSonsCampMapMarker = AttackerSonsCampMapMarkerAlias
|
|
AttackerImperialCampMapMarker = AttackerImperialCampMapMarkerAlias
|
|
MapMarkerToDisable1 = MapMarkerToDisable1Alias
|
|
MapMarkerToDisable2 = MapMarkerToDisable2Alias
|
|
MapMarkerToDisable3 = MapMarkerToDisable3Alias
|
|
MapMarkerToDisable4 = MapMarkerToDisable4Alias
|
|
MapMarkerToDisable5 = MapMarkerToDisable5Alias
|
|
MapMarkerToDisable6 = MapMarkerToDisable6Alias
|
|
MapMarkerToDisable7 = MapMarkerToDisable7Alias
|
|
MapMarkerToDisable8 = MapMarkerToDisable8Alias
|
|
MapMarkerToDisable9 = MapMarkerToDisable9Alias
|
|
MapMarkerToDisable10 = MapMarkerToDisable10Alias
|
|
MapMarkerToDisable11 = MapMarkerToDisable11Alias
|
|
MapMarkerToDisable12 = MapMarkerToDisable12Alias
|
|
MapMarkerToDisable13 = MapMarkerToDisable13Alias
|
|
MapMarkerToDisable14 = MapMarkerToDisable14Alias
|
|
MapMarkerToDisable15 = MapMarkerToDisable15Alias
|
|
MapMarkerToDisable16 = MapMarkerToDisable16Alias
|
|
|
|
EndFunction
|
|
|
|
function ToggleMapMarkersAndFastTravelStartBattle(bool isAttackQuest)
|
|
|
|
; CWScript.Log("CWSiegeScript", self + "ToggleMapMarkersAndFastTravelStartBattle()")
|
|
|
|
isAttackQuest = WasThisAnAttack ;added this late in the game (set in stage 0), easier to just do this than fix all instances that call this function and pass in a param
|
|
|
|
|
|
DisabledFastTravel = false ;clear it to be on the safe side
|
|
|
|
if isAttackQuest
|
|
|
|
if CWs.PlayerAllegiance == 1
|
|
AttackerImperialCampMapMarker.TryToEnable()
|
|
elseif CWs.PlayerAllegiance == 2
|
|
AttackerSonsCampMapMarker.TryToEnable()
|
|
endif
|
|
MapMarkerToDisable1.TryToDisable()
|
|
MapMarkerToDisable2.TryToDisable()
|
|
MapMarkerToDisable3.TryToDisable()
|
|
MapMarkerToDisable4.TryToDisable()
|
|
MapMarkerToDisable5.TryToDisable()
|
|
MapMarkerToDisable6.TryToDisable()
|
|
MapMarkerToDisable7.TryToDisable()
|
|
MapMarkerToDisable8.TryToDisable()
|
|
MapMarkerToDisable9.TryToDisable()
|
|
MapMarkerToDisable10.TryToDisable()
|
|
MapMarkerToDisable11.TryToDisable()
|
|
MapMarkerToDisable12.TryToDisable()
|
|
MapMarkerToDisable13.TryToDisable()
|
|
MapMarkerToDisable14.TryToDisable()
|
|
MapMarkerToDisable15.TryToDisable()
|
|
MapMarkerToDisable16.TryToDisable()
|
|
|
|
Else
|
|
; CWScript.Log("CWSiegeScript", self + "DISABLING FAST TRAVEL!", 1, true, True)
|
|
Game.EnableFastTravel(false)
|
|
DisabledFastTravel = true
|
|
|
|
|
|
|
|
EndIf
|
|
|
|
EndFunction
|
|
|
|
function ToggleMapMarkersAndFastTravelEndBattle(bool isAttackQuest)
|
|
|
|
; CWScript.Log("CWSiegeScript", self + "ToggleMapMarkersAndFastTravelEndBattle()")
|
|
|
|
isAttackQuest = WasThisAnAttack ;added this late in the game (set in stage 0), easier to just do this than fix all instances that call this function and pass in a param
|
|
|
|
if isAttackQuest
|
|
|
|
AttackerImperialCampMapMarker.TryToDisable()
|
|
AttackerSonsCampMapMarker.TryToDisable()
|
|
|
|
MapMarkerToDisable1.TryToEnable()
|
|
MapMarkerToDisable2.TryToEnable()
|
|
MapMarkerToDisable3.TryToEnable()
|
|
MapMarkerToDisable4.TryToEnable()
|
|
MapMarkerToDisable5.TryToEnable()
|
|
MapMarkerToDisable6.TryToEnable()
|
|
MapMarkerToDisable7.TryToEnable()
|
|
MapMarkerToDisable8.TryToEnable()
|
|
MapMarkerToDisable9.TryToEnable()
|
|
MapMarkerToDisable10.TryToEnable()
|
|
MapMarkerToDisable11.TryToEnable()
|
|
MapMarkerToDisable12.TryToEnable()
|
|
MapMarkerToDisable13.TryToEnable()
|
|
MapMarkerToDisable14.TryToEnable()
|
|
MapMarkerToDisable15.TryToEnable()
|
|
MapMarkerToDisable16.TryToEnable()
|
|
|
|
Else
|
|
|
|
if DisabledFastTravel == true ;reminder why I am checking this: I need to check to make sure this quest actually disabled fast travel before turning it on again, because this might start/fail offscreen and I need to make sure I don't enable fast travel if the player didn't get involved
|
|
; CWScript.Log("CWSiegeScript", self + "ENABLING FAST TRAVEL!", 1, true, True)
|
|
Game.EnableFastTravel(true)
|
|
DisabledFastTravel = False
|
|
|
|
|
|
endif
|
|
|
|
EndIf
|
|
|
|
EndFunction
|
|
|
|
|
|
;Register functions essentially shove the aliases from the quest into arrays to be used more conveniently by other function calls
|
|
|
|
;Register Imperial aliases
|
|
Function RegisterImperialAttackerAliases(ReferenceAlias RefAlias1, ReferenceAlias RefAlias2, ReferenceAlias RefAlias3, ReferenceAlias RefAlias4, ReferenceAlias RefAlias5, ReferenceAlias RefAlias6, ReferenceAlias RefAlias7, ReferenceAlias RefAlias8, ReferenceAlias RefAlias9, ReferenceAlias RefAlias10 )
|
|
; CWScript.Log("CWSiegeScript", self + "calling RegisterImperialAttackerAliases()" + RefAlias1 + "," + RefAlias2 + "," + RefAlias3 + "," + RefAlias4 + "," + RefAlias5 + "," + RefAlias6 + "," + RefAlias7 + "," + RefAlias8 + "," + RefAlias9 + "," + RefAlias10 )
|
|
ImperialAttacker1 = RefAlias1
|
|
ImperialAttacker2 = RefAlias2
|
|
ImperialAttacker3 = RefAlias3
|
|
ImperialAttacker4 = RefAlias4
|
|
ImperialAttacker5 = RefAlias5
|
|
ImperialAttacker6 = RefAlias6
|
|
ImperialAttacker7 = RefAlias7
|
|
ImperialAttacker8 = RefAlias8
|
|
ImperialAttacker9 = RefAlias9
|
|
ImperialAttacker10 = RefAlias10
|
|
|
|
EndFunction
|
|
|
|
Function RegisterImperialDefenderAliases(ReferenceAlias RefAlias1, ReferenceAlias RefAlias2, ReferenceAlias RefAlias3, ReferenceAlias RefAlias4, ReferenceAlias RefAlias5, ReferenceAlias RefAlias6, ReferenceAlias RefAlias7, ReferenceAlias RefAlias8, ReferenceAlias RefAlias9, ReferenceAlias RefAlias10 )
|
|
; CWScript.Log("CWSiegeScript", self + "calling RegisterImperialDefenderAliases()" + RefAlias1 + "," + RefAlias2 + "," + RefAlias3 + "," + RefAlias4 + "," + RefAlias5 + "," + RefAlias6 + "," + RefAlias7 + "," + RefAlias8 + "," + RefAlias9 + "," + RefAlias10 )
|
|
ImperialDefender1 = RefAlias1
|
|
ImperialDefender2 = RefAlias2
|
|
ImperialDefender3 = RefAlias3
|
|
ImperialDefender4 = RefAlias4
|
|
ImperialDefender5 = RefAlias5
|
|
ImperialDefender6 = RefAlias6
|
|
ImperialDefender7 = RefAlias7
|
|
ImperialDefender8 = RefAlias8
|
|
ImperialDefender9 = RefAlias9
|
|
ImperialDefender10 = RefAlias10
|
|
|
|
EndFunction
|
|
|
|
;Register Sons aliases
|
|
Function RegisterSonsAttackerAliases(ReferenceAlias RefAlias1, ReferenceAlias RefAlias2, ReferenceAlias RefAlias3, ReferenceAlias RefAlias4, ReferenceAlias RefAlias5, ReferenceAlias RefAlias6, ReferenceAlias RefAlias7, ReferenceAlias RefAlias8, ReferenceAlias RefAlias9, ReferenceAlias RefAlias10 )
|
|
; CWScript.Log("CWSiegeScript", self + "calling RegisterSonsAttackerAliases()" + RefAlias1 + "," + RefAlias2 + "," + RefAlias3 + "," + RefAlias4 + "," + RefAlias5 + "," + RefAlias6 + "," + RefAlias7 + "," + RefAlias8 + "," + RefAlias9 + "," + RefAlias10 )
|
|
SonsAttacker1 = RefAlias1
|
|
SonsAttacker2 = RefAlias2
|
|
SonsAttacker3 = RefAlias3
|
|
SonsAttacker4 = RefAlias4
|
|
SonsAttacker5 = RefAlias5
|
|
SonsAttacker6 = RefAlias6
|
|
SonsAttacker7 = RefAlias7
|
|
SonsAttacker8 = RefAlias8
|
|
SonsAttacker9 = RefAlias9
|
|
SonsAttacker10 = RefAlias10
|
|
|
|
EndFunction
|
|
|
|
Function RegisterSonsDefenderAliases(ReferenceAlias RefAlias1, ReferenceAlias RefAlias2, ReferenceAlias RefAlias3, ReferenceAlias RefAlias4, ReferenceAlias RefAlias5, ReferenceAlias RefAlias6, ReferenceAlias RefAlias7, ReferenceAlias RefAlias8, ReferenceAlias RefAlias9, ReferenceAlias RefAlias10 )
|
|
; CWScript.Log("CWSiegeScript", self + "calling RegisterSonsDefenderAliases()" + RefAlias1 + "," + RefAlias2 + "," + RefAlias3 + "," + RefAlias4 + "," + RefAlias5 + "," + RefAlias6 + "," + RefAlias7 + "," + RefAlias8 + "," + RefAlias9 + "," + RefAlias10 )
|
|
SonsDefender1 = RefAlias1
|
|
SonsDefender2 = RefAlias2
|
|
SonsDefender3 = RefAlias3
|
|
SonsDefender4 = RefAlias4
|
|
SonsDefender5 = RefAlias5
|
|
SonsDefender6 = RefAlias6
|
|
SonsDefender7 = RefAlias7
|
|
SonsDefender8 = RefAlias8
|
|
SonsDefender9 = RefAlias9
|
|
SonsDefender10 = RefAlias10
|
|
|
|
EndFunction
|
|
|
|
;Register Attacker Aliases
|
|
Function RegisterAttackerAliases(ReferenceAlias RefAlias1, ReferenceAlias RefAlias2, ReferenceAlias RefAlias3, ReferenceAlias RefAlias4, ReferenceAlias RefAlias5, ReferenceAlias RefAlias6, ReferenceAlias RefAlias7, ReferenceAlias RefAlias8, ReferenceAlias RefAlias9, ReferenceAlias RefAlias10 )
|
|
; CWScript.Log("CWSiegeScript", self + "calling RegisterAttackerAliases()" + RefAlias1 + "," + RefAlias2 + "," + RefAlias3 + "," + RefAlias4 + "," + RefAlias5 + "," + RefAlias6 + "," + RefAlias7 + "," + RefAlias8 + "," + RefAlias9 + "," + RefAlias10 )
|
|
Attacker1 = RefAlias1
|
|
Attacker2 = RefAlias2
|
|
Attacker3 = RefAlias3
|
|
Attacker4 = RefAlias4
|
|
Attacker5 = RefAlias5
|
|
Attacker6 = RefAlias6
|
|
Attacker7 = RefAlias7
|
|
Attacker8 = RefAlias8
|
|
Attacker9 = RefAlias9
|
|
Attacker10 = RefAlias10
|
|
|
|
EndFunction
|
|
|
|
;Register Defender Aliases
|
|
Function RegisterDefenderAliases(ReferenceAlias RefAlias1, ReferenceAlias RefAlias2, ReferenceAlias RefAlias3, ReferenceAlias RefAlias4, ReferenceAlias RefAlias5, ReferenceAlias RefAlias6, ReferenceAlias RefAlias7, ReferenceAlias RefAlias8, ReferenceAlias RefAlias9, ReferenceAlias RefAlias10 )
|
|
; CWScript.Log("CWSiegeScript", self + "calling RegisterDefenderAliases()" + RefAlias1 + "," + RefAlias2 + "," + RefAlias3 + "," + RefAlias4 + "," + RefAlias5 + "," + RefAlias6 + "," + RefAlias7 + "," + RefAlias8 + "," + RefAlias9 + "," + RefAlias10 )
|
|
Defender1 = RefAlias1
|
|
Defender2 = RefAlias2
|
|
Defender3 = RefAlias3
|
|
Defender4 = RefAlias4
|
|
Defender5 = RefAlias5
|
|
Defender6 = RefAlias6
|
|
Defender7 = RefAlias7
|
|
Defender8 = RefAlias8
|
|
Defender9 = RefAlias9
|
|
Defender10 = RefAlias10
|
|
|
|
EndFunction
|
|
|
|
;Register Generic Aliases
|
|
Function RegisterGenericAliases( \
|
|
ReferenceAlias RefAlias1, ReferenceAlias RefAlias2 = None, ReferenceAlias RefAlias3 = None, ReferenceAlias RefAlias4 = None, ReferenceAlias RefAlias5 = None, ReferenceAlias RefAlias6 = None, ReferenceAlias RefAlias7 = None, ReferenceAlias RefAlias8 = None, ReferenceAlias RefAlias9 = None, ReferenceAlias RefAlias10 = None, \
|
|
ReferenceAlias RefAlias11 = None, ReferenceAlias RefAlias12 = None, ReferenceAlias RefAlias13 = None, ReferenceAlias RefAlias14 = None, ReferenceAlias RefAlias15 = None, ReferenceAlias RefAlias16 = None, ReferenceAlias RefAlias17 = None, ReferenceAlias RefAlias18 = None, ReferenceAlias RefAlias19 = None, ReferenceAlias RefAlias20 = None, \
|
|
ReferenceAlias RefAlias21 = None, ReferenceAlias RefAlias22 = None, ReferenceAlias RefAlias23 = None, ReferenceAlias RefAlias24 = None, ReferenceAlias RefAlias25 = None, ReferenceAlias RefAlias26 = None, ReferenceAlias RefAlias27 = None, ReferenceAlias RefAlias28 = None, ReferenceAlias RefAlias29 = None, ReferenceAlias RefAlias30 = None \
|
|
)
|
|
; CWScript.Log("CWSiegeScript", self + "calling RegisterGenericAliases()" + \
|
|
; RefAlias1 + "," + RefAlias2 + "," + RefAlias3 + "," + RefAlias4 + "," + RefAlias5 + "," + RefAlias6 + "," + RefAlias7 + "," + RefAlias8 + "," + RefAlias9 + "," + RefAlias10 + "," + \
|
|
; RefAlias11 + "," + RefAlias12 + "," + RefAlias13 + "," + RefAlias14 + "," + RefAlias15 + "," + RefAlias16 + "," + RefAlias17 + "," + RefAlias18 + "," + RefAlias19 + "," + RefAlias20 + "," + \
|
|
; RefAlias21 + "," + RefAlias22 + "," + RefAlias23 + "," + RefAlias24 + "," + RefAlias25 + "," + RefAlias26 + "," + RefAlias27 + "," + RefAlias28 + "," + RefAlias29 + "," + RefAlias30 + "," \
|
|
; )
|
|
|
|
Generic1 = RefAlias1
|
|
Generic2 = RefAlias2
|
|
Generic3 = RefAlias3
|
|
Generic4 = RefAlias4
|
|
Generic5 = RefAlias5
|
|
Generic6 = RefAlias6
|
|
Generic7 = RefAlias7
|
|
Generic8 = RefAlias8
|
|
Generic9 = RefAlias9
|
|
Generic10 = RefAlias10
|
|
|
|
Generic11 = RefAlias11
|
|
Generic12 = RefAlias12
|
|
Generic13 = RefAlias13
|
|
Generic14 = RefAlias14
|
|
Generic15 = RefAlias15
|
|
Generic16 = RefAlias16
|
|
Generic17 = RefAlias17
|
|
Generic18 = RefAlias18
|
|
Generic19 = RefAlias19
|
|
Generic20 = RefAlias20
|
|
|
|
Generic21 = RefAlias21
|
|
Generic22 = RefAlias22
|
|
Generic23 = RefAlias23
|
|
Generic24 = RefAlias24
|
|
Generic25 = RefAlias25
|
|
Generic26 = RefAlias26
|
|
Generic27 = RefAlias27
|
|
Generic28 = RefAlias28
|
|
Generic29 = RefAlias29
|
|
Generic30 = RefAlias30
|
|
|
|
|
|
EndFunction
|
|
|
|
;Register GenericAttack Aliases
|
|
Function RegisterGenericAttackAliases( \
|
|
ReferenceAlias RefAlias1, ReferenceAlias RefAlias2 = None, ReferenceAlias RefAlias3 = None, ReferenceAlias RefAlias4 = None, ReferenceAlias RefAlias5 = None, ReferenceAlias RefAlias6 = None, ReferenceAlias RefAlias7 = None, ReferenceAlias RefAlias8 = None, ReferenceAlias RefAlias9 = None, ReferenceAlias RefAlias10 = None, \
|
|
ReferenceAlias RefAlias11 = None, ReferenceAlias RefAlias12 = None, ReferenceAlias RefAlias13 = None, ReferenceAlias RefAlias14 = None, ReferenceAlias RefAlias15 = None, ReferenceAlias RefAlias16 = None, ReferenceAlias RefAlias17 = None, ReferenceAlias RefAlias18 = None, ReferenceAlias RefAlias19 = None, ReferenceAlias RefAlias20 = None, \
|
|
ReferenceAlias RefAlias21 = None, ReferenceAlias RefAlias22 = None, ReferenceAlias RefAlias23 = None, ReferenceAlias RefAlias24 = None, ReferenceAlias RefAlias25 = None, ReferenceAlias RefAlias26 = None, ReferenceAlias RefAlias27 = None, ReferenceAlias RefAlias28 = None, ReferenceAlias RefAlias29 = None, ReferenceAlias RefAlias30 = None \
|
|
)
|
|
; CWScript.Log("CWSiegeScript", self + "calling RegisterGenericAttackAliases()" + \
|
|
; RefAlias1 + "," + RefAlias2 + "," + RefAlias3 + "," + RefAlias4 + "," + RefAlias5 + "," + RefAlias6 + "," + RefAlias7 + "," + RefAlias8 + "," + RefAlias9 + "," + RefAlias10 + "," + \
|
|
; RefAlias11 + "," + RefAlias12 + "," + RefAlias13 + "," + RefAlias14 + "," + RefAlias15 + "," + RefAlias16 + "," + RefAlias17 + "," + RefAlias18 + "," + RefAlias19 + "," + RefAlias20 + "," + \
|
|
; RefAlias21 + "," + RefAlias22 + "," + RefAlias23 + "," + RefAlias24 + "," + RefAlias25 + "," + RefAlias26 + "," + RefAlias27 + "," + RefAlias28 + "," + RefAlias29 + "," + RefAlias30 + "," \
|
|
; )
|
|
|
|
GenericAttack1 = RefAlias1
|
|
GenericAttack2 = RefAlias2
|
|
GenericAttack3 = RefAlias3
|
|
GenericAttack4 = RefAlias4
|
|
GenericAttack5 = RefAlias5
|
|
GenericAttack6 = RefAlias6
|
|
GenericAttack7 = RefAlias7
|
|
GenericAttack8 = RefAlias8
|
|
GenericAttack9 = RefAlias9
|
|
GenericAttack10 = RefAlias10
|
|
|
|
GenericAttack11 = RefAlias11
|
|
GenericAttack12 = RefAlias12
|
|
GenericAttack13 = RefAlias13
|
|
GenericAttack14 = RefAlias14
|
|
GenericAttack15 = RefAlias15
|
|
GenericAttack16 = RefAlias16
|
|
GenericAttack17 = RefAlias17
|
|
GenericAttack18 = RefAlias18
|
|
GenericAttack19 = RefAlias19
|
|
GenericAttack20 = RefAlias20
|
|
|
|
GenericAttack21 = RefAlias21
|
|
GenericAttack22 = RefAlias22
|
|
GenericAttack23 = RefAlias23
|
|
GenericAttack24 = RefAlias24
|
|
GenericAttack25 = RefAlias25
|
|
GenericAttack26 = RefAlias26
|
|
GenericAttack27 = RefAlias27
|
|
GenericAttack28 = RefAlias28
|
|
GenericAttack29 = RefAlias29
|
|
GenericAttack30 = RefAlias30
|
|
|
|
EndFunction
|
|
|
|
;Register GenericDefend Aliases
|
|
Function RegisterGenericDefendAliases( \
|
|
ReferenceAlias RefAlias1, ReferenceAlias RefAlias2 = None, ReferenceAlias RefAlias3 = None, ReferenceAlias RefAlias4 = None, ReferenceAlias RefAlias5 = None, ReferenceAlias RefAlias6 = None, ReferenceAlias RefAlias7 = None, ReferenceAlias RefAlias8 = None, ReferenceAlias RefAlias9 = None, ReferenceAlias RefAlias10 = None, \
|
|
ReferenceAlias RefAlias11 = None, ReferenceAlias RefAlias12 = None, ReferenceAlias RefAlias13 = None, ReferenceAlias RefAlias14 = None, ReferenceAlias RefAlias15 = None, ReferenceAlias RefAlias16 = None, ReferenceAlias RefAlias17 = None, ReferenceAlias RefAlias18 = None, ReferenceAlias RefAlias19 = None, ReferenceAlias RefAlias20 = None, \
|
|
ReferenceAlias RefAlias21 = None, ReferenceAlias RefAlias22 = None, ReferenceAlias RefAlias23 = None, ReferenceAlias RefAlias24 = None, ReferenceAlias RefAlias25 = None, ReferenceAlias RefAlias26 = None, ReferenceAlias RefAlias27 = None, ReferenceAlias RefAlias28 = None, ReferenceAlias RefAlias29 = None, ReferenceAlias RefAlias30 = None \
|
|
)
|
|
; CWScript.Log("CWSiegeScript", self + "calling RegisterGenericDefendAliases()" + \
|
|
; RefAlias1 + "," + RefAlias2 + "," + RefAlias3 + "," + RefAlias4 + "," + RefAlias5 + "," + RefAlias6 + "," + RefAlias7 + "," + RefAlias8 + "," + RefAlias9 + "," + RefAlias10 + "," + \
|
|
; RefAlias11 + "," + RefAlias12 + "," + RefAlias13 + "," + RefAlias14 + "," + RefAlias15 + "," + RefAlias16 + "," + RefAlias17 + "," + RefAlias18 + "," + RefAlias19 + "," + RefAlias20 + "," + \
|
|
; RefAlias21 + "," + RefAlias22 + "," + RefAlias23 + "," + RefAlias24 + "," + RefAlias25 + "," + RefAlias26 + "," + RefAlias27 + "," + RefAlias28 + "," + RefAlias29 + "," + RefAlias30 + "," \
|
|
; )
|
|
|
|
GenericDefend1 = RefAlias1
|
|
GenericDefend2 = RefAlias2
|
|
GenericDefend3 = RefAlias3
|
|
GenericDefend4 = RefAlias4
|
|
GenericDefend5 = RefAlias5
|
|
GenericDefend6 = RefAlias6
|
|
GenericDefend7 = RefAlias7
|
|
GenericDefend8 = RefAlias8
|
|
GenericDefend9 = RefAlias9
|
|
GenericDefend10 = RefAlias10
|
|
|
|
GenericDefend11 = RefAlias11
|
|
GenericDefend12 = RefAlias12
|
|
GenericDefend13 = RefAlias13
|
|
GenericDefend14 = RefAlias14
|
|
GenericDefend15 = RefAlias15
|
|
GenericDefend16 = RefAlias16
|
|
GenericDefend17 = RefAlias17
|
|
GenericDefend18 = RefAlias18
|
|
GenericDefend19 = RefAlias19
|
|
GenericDefend20 = RefAlias20
|
|
|
|
GenericDefend21 = RefAlias21
|
|
GenericDefend22 = RefAlias22
|
|
GenericDefend23 = RefAlias23
|
|
GenericDefend24 = RefAlias24
|
|
GenericDefend25 = RefAlias25
|
|
GenericDefend26 = RefAlias26
|
|
GenericDefend27 = RefAlias27
|
|
GenericDefend28 = RefAlias28
|
|
GenericDefend29 = RefAlias29
|
|
GenericDefend30 = RefAlias30
|
|
|
|
EndFunction
|
|
|
|
Function RegisterAliasesWithCWReinforcementScript(Location SiegeLocationAttackPoint)
|
|
; CWScript.Log("CWSiegeScript", self + "calling RegisterAliasesWithCWReinforcementScript()")
|
|
|
|
CWReinforcementControllerScript CWReinforcementControllerS = (self as quest ) as CWReinforcementControllerScript
|
|
|
|
CWReinforcementControllerS.RegisterAttackPoint(SiegeLocationAttackPoint)
|
|
|
|
CWReinforcementControllerS.RegisterAlias(Attacker1)
|
|
CWReinforcementControllerS.RegisterAlias(Attacker2)
|
|
CWReinforcementControllerS.RegisterAlias(Attacker3)
|
|
CWReinforcementControllerS.RegisterAlias(Attacker4)
|
|
CWReinforcementControllerS.RegisterAlias(Attacker5)
|
|
CWReinforcementControllerS.RegisterAlias(Attacker6)
|
|
CWReinforcementControllerS.RegisterAlias(Attacker7)
|
|
CWReinforcementControllerS.RegisterAlias(Attacker8)
|
|
CWReinforcementControllerS.RegisterAlias(Attacker9)
|
|
CWReinforcementControllerS.RegisterAlias(Attacker10)
|
|
|
|
CWReinforcementControllerS.RegisterAlias(Defender1)
|
|
CWReinforcementControllerS.RegisterAlias(Defender2)
|
|
CWReinforcementControllerS.RegisterAlias(Defender3)
|
|
CWReinforcementControllerS.RegisterAlias(Defender4)
|
|
CWReinforcementControllerS.RegisterAlias(Defender5)
|
|
CWReinforcementControllerS.RegisterAlias(Defender6)
|
|
CWReinforcementControllerS.RegisterAlias(Defender7)
|
|
CWReinforcementControllerS.RegisterAlias(Defender8)
|
|
CWReinforcementControllerS.RegisterAlias(Defender9)
|
|
CWReinforcementControllerS.RegisterAlias(Defender10)
|
|
|
|
EndFunction
|
|
|
|
Function RegisterSpawnAttackerAliasesWithCWReinforcementScript(ReferenceAlias Marker1Alias, ReferenceAlias Marker2Alias, ReferenceAlias Marker3Alias, ReferenceAlias Marker4Alias, ReferenceAlias FailSafeMarkerAlias)
|
|
CWReinforcementControllerScript CWReinforcementControllerS = (self as quest ) as CWReinforcementControllerScript
|
|
|
|
; CWScript.Log("CWSiegeScript", self + "RegisterSpawnAttackerAliasesWithCWReinforcementScript() calling RegisterSpawnAttackerAliases() on CWReinforcementControllerScript")
|
|
CWReinforcementControllerS.RegisterSpawnAttackerAliases(Marker1Alias, Marker2Alias, Marker3Alias, Marker4Alias, FailSafeMarkerAlias)
|
|
|
|
EndFunction
|
|
|
|
Function RegisterSpawnDefenderAliasesWithCWReinforcementScript(ReferenceAlias Marker1Alias, ReferenceAlias Marker2Alias, ReferenceAlias Marker3Alias, ReferenceAlias Marker4Alias, ReferenceAlias FailSafeMarkerAlias)
|
|
CWReinforcementControllerScript CWReinforcementControllerS = (self as quest ) as CWReinforcementControllerScript
|
|
|
|
; CWScript.Log("CWSiegeScript", self + "RegisterSpawnDefenderAliasesWithCWReinforcementScript() calling RegisterSpawnDefenderAliases() on CWReinforcementControllerScript")
|
|
CWReinforcementControllerS.RegisterSpawnDefenderAliases(Marker1Alias, Marker2Alias, Marker3Alias, Marker4Alias, FailSafeMarkerAlias)
|
|
|
|
EndFunction
|
|
|
|
Function SetInfinitePoolsOnCWReinforcementScript()
|
|
CWReinforcementControllerScript CWReinforcementControllerS = (self as quest ) as CWReinforcementControllerScript
|
|
|
|
; CWScript.Log("CWSiegeScript", self + "setInfinitePoolsOnCWReinforcementScript() calling SetInfinitePools() on CWReinforcementControllerScript")
|
|
CWReinforcementControllerS.SetInfinitePools()
|
|
EndFunction
|
|
|
|
|
|
Function SetPoolAttackerOnCWReinforcementScript(int BasePool, float AttackDeltaMult = 1.0, float scaleMult = 1.0, bool InfinitePool = False)
|
|
CWReinforcementControllerScript CWReinforcementControllerS = (self as quest ) as CWReinforcementControllerScript
|
|
|
|
; CWScript.Log("CWSiegeScript", self + "SetPoolAttackerOnCWReinforcementScript() calling SetPoolAttacker() on CWReinforcementControllerScript")
|
|
CWReinforcementControllerS.SetPoolAttacker(BasePool, AttackDeltaMult, scaleMult, InfinitePool )
|
|
EndFunction
|
|
|
|
Function SetPoolDefenderOnCWReinforcementScript(int BasePool, float AttackDeltaMult = 1.0, float scaleMult = 1.0, bool InfinitePool = False)
|
|
CWReinforcementControllerScript CWReinforcementControllerS = (self as quest ) as CWReinforcementControllerScript
|
|
|
|
; CWScript.Log("CWSiegeScript", self + "SetPoolDefenderOnCWReinforcementScript() calling SetPoolDefender() on CWReinforcementControllerScript")
|
|
CWReinforcementControllerS.SetPoolDefender(BasePool, AttackDeltaMult, scaleMult, InfinitePool )
|
|
EndFunction
|
|
|
|
|
|
function DisableAllAliases()
|
|
; CWScript.Log("CWSiegeScript", self + "calling DisableAllAliases()")
|
|
DisableImperialSonsAliases()
|
|
DisableGenericAliases()
|
|
DisableGenericAttackAliases()
|
|
DisableGenericDefendAliases()
|
|
|
|
EndFunction
|
|
|
|
Function SetUpAliases(Location LocationOfSiege)
|
|
DoneSettingUpAliases = false
|
|
|
|
; CWScript.Log("CWSiegeScript", self + "calling SetUpAliases()")
|
|
|
|
DisableImperialSonsAliases() ;disables ALL the soldiers
|
|
SetUpAttackerDefenderAliases(LocationOfSiege) ;shoves soldiers into Attacker/Defender aliases depending on the player's faction and which faction is attacking
|
|
|
|
LogAttackDefenderAliases() ;for debugging
|
|
|
|
DoneSettingUpAliases = true
|
|
|
|
EndFunction
|
|
|
|
function TurnOnAliases(bool IsAttackQuest)
|
|
DoneTurningOnAliases = false
|
|
|
|
; CWScript.Log("CWSiegeScript", self + "calling TurnOnAliases()")
|
|
|
|
EnableAttackerDefenderAliases() ;Enables the Attacker/Defender aliases
|
|
ResetAttackerDefenderAliases() ;Resets the Attacker/Defender aliases
|
|
|
|
EnableGenericAliases() ;Enables anything put into the Generic Alias "array" by RegisterGenericAliases()
|
|
ResetGenericAliases() ;Resets anything put into the Generic Alias "array" by RegisterGenericAliases()
|
|
|
|
if IsAttackQuest
|
|
EnableGenericAttackAliases() ;Enables anything put into the Generic Attack Alias "array" by RegisterGenericAttackAliases()
|
|
ResetGenericAttackAliases() ;Resets anything put into the Generic Attack Alias "array" by RegisterGenericAttackAliases()
|
|
Else
|
|
EnableGenericDefendAliases() ;Enables anything put into the Generic Defend Alias "array" by RegisterGenericDefendAliases()
|
|
ResetGenericDefendAliases() ;Resets anything put into the Generic Defend Alias "array" by RegisterGenericDefendAliases()
|
|
EndIf
|
|
|
|
DoneTurningOnAliases = true
|
|
|
|
EndFunction
|
|
|
|
Function LogAttackDefenderAliases()
|
|
logAlias(Attacker1)
|
|
logAlias(Attacker2)
|
|
logAlias(Attacker3)
|
|
logAlias(Attacker4)
|
|
logAlias(Attacker5)
|
|
logAlias(Attacker6)
|
|
logAlias(Attacker7)
|
|
logAlias(Attacker8)
|
|
logAlias(Attacker9)
|
|
logAlias(Attacker10)
|
|
|
|
logAlias(Defender1)
|
|
logAlias(Defender2)
|
|
logAlias(Defender3)
|
|
logAlias(Defender4)
|
|
logAlias(Defender5)
|
|
logAlias(Defender6)
|
|
logAlias(Defender7)
|
|
logAlias(Defender8)
|
|
logAlias(Defender9)
|
|
logAlias(Defender10)
|
|
|
|
EndFunction
|
|
|
|
function logAlias(ReferenceAlias AliasToPrintToLog)
|
|
; CWScript.Log("CWSiegeScript", self + "logAlias()" + AliasToPrintToLog + " is REFERENCE " + AliasToPrintToLog.GetReference())
|
|
EndFunction
|
|
|
|
Function SetUpAttackerDefenderAliases(Location LocationOfSiege)
|
|
|
|
; CWScript.Log("CWSiegeScript", self + "calling SetUpAttackerDefenderAliases()")
|
|
|
|
if CWs.playerAllegiance == CWs.iImperials
|
|
if CWs.IsPlayerAttacking(LocationOfSiege)
|
|
SetUpAliasesImperialsAttacking()
|
|
|
|
else ;playerAllegiance == Imperials, but Sons are attacking
|
|
SetUpAliasesSonsAttacking()
|
|
|
|
endif
|
|
|
|
Elseif CWs.playerAllegiance == 2 ;Sons
|
|
if CWs.IsPlayerAttacking(LocationOfSiege)
|
|
SetUpAliasesSonsAttacking()
|
|
|
|
else ;playerAllegiance == Sons, but Imperials are attakcing
|
|
SetUpAliasesImperialsAttacking()
|
|
|
|
endif
|
|
|
|
Else ;unexpected player allegiance
|
|
; CWScript.Log("CWSiege", self + "WARNING: SetUpAliases() expected 1(Imperials) or 2(Sons) for CWs.PlayerAllegiance, got: " + CWs.PlayerAllegiance, 2)
|
|
|
|
endif
|
|
|
|
EndFunction
|
|
|
|
|
|
function SetUpAliasesImperialsAttacking()
|
|
; CWScript.Log("CWSiegeScript", self + "calling SetUpAliasesImperialsAttacking()")
|
|
Attacker1.ForceRefTo(ImperialAttacker1.GetReference())
|
|
Attacker2.ForceRefTo(ImperialAttacker2.GetReference())
|
|
Attacker3.ForceRefTo(ImperialAttacker3.GetReference())
|
|
Attacker4.ForceRefTo(ImperialAttacker4.GetReference())
|
|
Attacker5.ForceRefTo(ImperialAttacker5.GetReference())
|
|
Attacker6.ForceRefTo(ImperialAttacker6.GetReference())
|
|
Attacker7.ForceRefTo(ImperialAttacker7.GetReference())
|
|
Attacker8.ForceRefTo(ImperialAttacker8.GetReference())
|
|
Attacker9.ForceRefTo(ImperialAttacker9.GetReference())
|
|
Attacker10.ForceRefTo(ImperialAttacker10.GetReference())
|
|
|
|
Defender1.ForceRefTo(SonsDefender1.GetReference())
|
|
Defender2.ForceRefTo(SonsDefender2.GetReference())
|
|
Defender3.ForceRefTo(SonsDefender3.GetReference())
|
|
Defender4.ForceRefTo(SonsDefender4.GetReference())
|
|
Defender5.ForceRefTo(SonsDefender5.GetReference())
|
|
Defender6.ForceRefTo(SonsDefender6.GetReference())
|
|
Defender7.ForceRefTo(SonsDefender7.GetReference())
|
|
Defender8.ForceRefTo(SonsDefender8.GetReference())
|
|
Defender9.ForceRefTo(SonsDefender9.GetReference())
|
|
Defender10.ForceRefTo(SonsDefender10.GetReference())
|
|
EndFunction
|
|
|
|
function SetUpAliasesSonsAttacking()
|
|
; CWScript.Log("CWSiegeScript", self + "calling SetUpAliasesSonsAttacking()")
|
|
Attacker1.ForceRefTo(SonsAttacker1.GetReference())
|
|
Attacker2.ForceRefTo(SonsAttacker2.GetReference())
|
|
Attacker3.ForceRefTo(SonsAttacker3.GetReference())
|
|
Attacker4.ForceRefTo(SonsAttacker4.GetReference())
|
|
Attacker5.ForceRefTo(SonsAttacker5.GetReference())
|
|
Attacker6.ForceRefTo(SonsAttacker6.GetReference())
|
|
Attacker7.ForceRefTo(SonsAttacker7.GetReference())
|
|
Attacker8.ForceRefTo(SonsAttacker8.GetReference())
|
|
Attacker9.ForceRefTo(SonsAttacker9.GetReference())
|
|
Attacker10.ForceRefTo(SonsAttacker10.GetReference())
|
|
|
|
Defender1.ForceRefTo(ImperialDefender1.GetReference())
|
|
Defender2.ForceRefTo(ImperialDefender2.GetReference())
|
|
Defender3.ForceRefTo(ImperialDefender3.GetReference())
|
|
Defender4.ForceRefTo(ImperialDefender4.GetReference())
|
|
Defender5.ForceRefTo(ImperialDefender5.GetReference())
|
|
Defender6.ForceRefTo(ImperialDefender6.GetReference())
|
|
Defender7.ForceRefTo(ImperialDefender7.GetReference())
|
|
Defender8.ForceRefTo(ImperialDefender8.GetReference())
|
|
Defender9.ForceRefTo(ImperialDefender9.GetReference())
|
|
Defender10.ForceRefTo(ImperialDefender10.GetReference())
|
|
EndFunction
|
|
|
|
function tryToDisableAlias(ReferenceAlias AliasToTry)
|
|
ObjectReference AliasRef
|
|
|
|
if AliasToTry
|
|
AliasRef = AliasToTry.GetReference()
|
|
|
|
if AliasRef
|
|
; CWScript.Log("CWSiegeScript", self + "tryToDisableAlias([" + AliasToTry +"]) disabling: " + AliasRef)
|
|
AliasRef.Disable()
|
|
endif
|
|
|
|
EndIf
|
|
|
|
EndFunction
|
|
|
|
function tryToEnableAlias(ReferenceAlias AliasToTry)
|
|
ObjectReference AliasRef
|
|
|
|
if AliasToTry
|
|
AliasRef = AliasToTry.GetReference()
|
|
|
|
if AliasRef
|
|
; CWScript.Log("CWSiegeScript", self + "tryToEnableAlias([" + AliasToTry +"]) enabling: " + AliasRef)
|
|
AliasRef.Enable()
|
|
endif
|
|
|
|
EndIf
|
|
|
|
EndFunction
|
|
|
|
function tryToResetAlias(ReferenceAlias AliasToTry)
|
|
ObjectReference AliasRef
|
|
|
|
if AliasToTry
|
|
AliasRef = AliasToTry.GetReference()
|
|
|
|
if AliasRef
|
|
; CWScript.Log("CWSiegeScript", self + "tryToResetAlias([" + AliasToTry +"]) reseting: " + AliasRef)
|
|
AliasRef.Reset()
|
|
endif
|
|
|
|
EndIf
|
|
|
|
EndFunction
|
|
|
|
|
|
Function DisableImperialSonsAliases()
|
|
; CWScript.Log("CWSiegeScript", self + "calling DisableImperialSonsAliases()")
|
|
tryToDisableAlias(ImperialAttacker1)
|
|
tryToDisableAlias(ImperialAttacker2)
|
|
tryToDisableAlias(ImperialAttacker3)
|
|
tryToDisableAlias(ImperialAttacker4)
|
|
tryToDisableAlias(ImperialAttacker5)
|
|
tryToDisableAlias(ImperialAttacker6)
|
|
tryToDisableAlias(ImperialAttacker7)
|
|
tryToDisableAlias(ImperialAttacker8)
|
|
tryToDisableAlias(ImperialAttacker9)
|
|
tryToDisableAlias(ImperialAttacker10)
|
|
|
|
tryToDisableAlias(ImperialDefender1)
|
|
tryToDisableAlias(ImperialDefender2)
|
|
tryToDisableAlias(ImperialDefender3)
|
|
tryToDisableAlias(ImperialDefender4)
|
|
tryToDisableAlias(ImperialDefender5)
|
|
tryToDisableAlias(ImperialDefender6)
|
|
tryToDisableAlias(ImperialDefender7)
|
|
tryToDisableAlias(ImperialDefender8)
|
|
tryToDisableAlias(ImperialDefender9)
|
|
tryToDisableAlias(ImperialDefender10)
|
|
|
|
tryToDisableAlias(SonsAttacker1)
|
|
tryToDisableAlias(SonsAttacker2)
|
|
tryToDisableAlias(SonsAttacker3)
|
|
tryToDisableAlias(SonsAttacker4)
|
|
tryToDisableAlias(SonsAttacker5)
|
|
tryToDisableAlias(SonsAttacker6)
|
|
tryToDisableAlias(SonsAttacker7)
|
|
tryToDisableAlias(SonsAttacker8)
|
|
tryToDisableAlias(SonsAttacker9)
|
|
tryToDisableAlias(SonsAttacker10)
|
|
|
|
tryToDisableAlias(SonsDefender1)
|
|
tryToDisableAlias(SonsDefender2)
|
|
tryToDisableAlias(SonsDefender3)
|
|
tryToDisableAlias(SonsDefender4)
|
|
tryToDisableAlias(SonsDefender5)
|
|
tryToDisableAlias(SonsDefender6)
|
|
tryToDisableAlias(SonsDefender7)
|
|
tryToDisableAlias(SonsDefender8)
|
|
tryToDisableAlias(SonsDefender9)
|
|
tryToDisableAlias(SonsDefender10)
|
|
|
|
EndFunction
|
|
|
|
|
|
function EnableAttackerDefenderAliases()
|
|
; CWScript.Log("CWSiegeScript", self + "calling EnableAttackerDefenderAliases()")
|
|
|
|
TryToEnableAlias(Attacker1)
|
|
TryToEnableAlias(Attacker2)
|
|
TryToEnableAlias(Attacker3)
|
|
TryToEnableAlias(Attacker4)
|
|
TryToEnableAlias(Attacker5)
|
|
TryToEnableAlias(Attacker6)
|
|
TryToEnableAlias(Attacker7)
|
|
TryToEnableAlias(Attacker8)
|
|
TryToEnableAlias(Attacker9)
|
|
TryToEnableAlias(Attacker10)
|
|
|
|
TryToEnableAlias(Defender1)
|
|
TryToEnableAlias(Defender2)
|
|
TryToEnableAlias(Defender3)
|
|
TryToEnableAlias(Defender4)
|
|
TryToEnableAlias(Defender5)
|
|
TryToEnableAlias(Defender6)
|
|
TryToEnableAlias(Defender7)
|
|
TryToEnableAlias(Defender8)
|
|
TryToEnableAlias(Defender9)
|
|
TryToEnableAlias(Defender10)
|
|
|
|
EndFunction
|
|
|
|
Function ResetAttackerDefenderAliases()
|
|
; CWScript.Log("CWSiegeScript", self + "calling ResetAttackerDefenderAliases()")
|
|
|
|
TryToResetAlias(Attacker1)
|
|
TryToResetAlias(Attacker2)
|
|
TryToResetAlias(Attacker3)
|
|
TryToResetAlias(Attacker4)
|
|
TryToResetAlias(Attacker5)
|
|
TryToResetAlias(Attacker6)
|
|
TryToResetAlias(Attacker7)
|
|
TryToResetAlias(Attacker8)
|
|
TryToResetAlias(Attacker9)
|
|
TryToResetAlias(Attacker10)
|
|
|
|
TryToResetAlias(Defender1)
|
|
TryToResetAlias(Defender2)
|
|
TryToResetAlias(Defender3)
|
|
TryToResetAlias(Defender4)
|
|
TryToResetAlias(Defender5)
|
|
TryToResetAlias(Defender6)
|
|
TryToResetAlias(Defender7)
|
|
TryToResetAlias(Defender8)
|
|
TryToResetAlias(Defender9)
|
|
TryToResetAlias(Defender10)
|
|
|
|
EndFunction
|
|
|
|
;Functions to manipulate Generic Aliases "Array"
|
|
Function DisableGenericAliases()
|
|
; CWScript.Log("CWSiegeScript", self + "calling DisableGenericAliases()")
|
|
|
|
TryToDisableAlias(Generic1)
|
|
TryToDisableAlias(Generic2)
|
|
TryToDisableAlias(Generic3)
|
|
TryToDisableAlias(Generic4)
|
|
TryToDisableAlias(Generic5)
|
|
TryToDisableAlias(Generic6)
|
|
TryToDisableAlias(Generic7)
|
|
TryToDisableAlias(Generic8)
|
|
TryToDisableAlias(Generic9)
|
|
TryToDisableAlias(Generic10)
|
|
|
|
TryToDisableAlias(Generic11)
|
|
TryToDisableAlias(Generic12)
|
|
TryToDisableAlias(Generic13)
|
|
TryToDisableAlias(Generic14)
|
|
TryToDisableAlias(Generic15)
|
|
TryToDisableAlias(Generic16)
|
|
TryToDisableAlias(Generic17)
|
|
TryToDisableAlias(Generic18)
|
|
TryToDisableAlias(Generic19)
|
|
TryToDisableAlias(Generic20)
|
|
|
|
TryToDisableAlias(Generic21)
|
|
TryToDisableAlias(Generic22)
|
|
TryToDisableAlias(Generic23)
|
|
TryToDisableAlias(Generic24)
|
|
TryToDisableAlias(Generic25)
|
|
TryToDisableAlias(Generic26)
|
|
TryToDisableAlias(Generic27)
|
|
TryToDisableAlias(Generic28)
|
|
TryToDisableAlias(Generic29)
|
|
TryToDisableAlias(Generic30)
|
|
|
|
EndFunction
|
|
|
|
Function EnableGenericAliases()
|
|
; CWScript.Log("CWSiegeScript", self + "calling EnableGenericAliases()")
|
|
|
|
TryToEnableAlias(Generic1)
|
|
TryToEnableAlias(Generic2)
|
|
TryToEnableAlias(Generic3)
|
|
TryToEnableAlias(Generic4)
|
|
TryToEnableAlias(Generic5)
|
|
TryToEnableAlias(Generic6)
|
|
TryToEnableAlias(Generic7)
|
|
TryToEnableAlias(Generic8)
|
|
TryToEnableAlias(Generic9)
|
|
TryToEnableAlias(Generic10)
|
|
|
|
TryToEnableAlias(Generic11)
|
|
TryToEnableAlias(Generic12)
|
|
TryToEnableAlias(Generic13)
|
|
TryToEnableAlias(Generic14)
|
|
TryToEnableAlias(Generic15)
|
|
TryToEnableAlias(Generic16)
|
|
TryToEnableAlias(Generic17)
|
|
TryToEnableAlias(Generic18)
|
|
TryToEnableAlias(Generic19)
|
|
TryToEnableAlias(Generic20)
|
|
|
|
TryToEnableAlias(Generic21)
|
|
TryToEnableAlias(Generic22)
|
|
TryToEnableAlias(Generic23)
|
|
TryToEnableAlias(Generic24)
|
|
TryToEnableAlias(Generic25)
|
|
TryToEnableAlias(Generic26)
|
|
TryToEnableAlias(Generic27)
|
|
TryToEnableAlias(Generic28)
|
|
TryToEnableAlias(Generic29)
|
|
TryToEnableAlias(Generic30)
|
|
|
|
|
|
|
|
EndFunction
|
|
|
|
Function ResetGenericAliases()
|
|
; CWScript.Log("CWSiegeScript", self + "calling ResetGenericAliases()")
|
|
|
|
TryToResetAlias(Generic1)
|
|
TryToResetAlias(Generic2)
|
|
TryToResetAlias(Generic3)
|
|
TryToResetAlias(Generic4)
|
|
TryToResetAlias(Generic5)
|
|
TryToResetAlias(Generic6)
|
|
TryToResetAlias(Generic7)
|
|
TryToResetAlias(Generic8)
|
|
TryToResetAlias(Generic9)
|
|
TryToResetAlias(Generic10)
|
|
|
|
TryToResetAlias(Generic11)
|
|
TryToResetAlias(Generic12)
|
|
TryToResetAlias(Generic13)
|
|
TryToResetAlias(Generic14)
|
|
TryToResetAlias(Generic15)
|
|
TryToResetAlias(Generic16)
|
|
TryToResetAlias(Generic17)
|
|
TryToResetAlias(Generic18)
|
|
TryToResetAlias(Generic19)
|
|
TryToResetAlias(Generic20)
|
|
|
|
TryToResetAlias(Generic21)
|
|
TryToResetAlias(Generic22)
|
|
TryToResetAlias(Generic23)
|
|
TryToResetAlias(Generic24)
|
|
TryToResetAlias(Generic25)
|
|
TryToResetAlias(Generic26)
|
|
TryToResetAlias(Generic27)
|
|
TryToResetAlias(Generic28)
|
|
TryToResetAlias(Generic29)
|
|
TryToResetAlias(Generic30)
|
|
|
|
EndFunction
|
|
|
|
|
|
;Functions to manipulate GenericAttack Aliases "Array"
|
|
Function DisableGenericAttackAliases()
|
|
; CWScript.Log("CWSiegeScript", self + "calling DisableGenericAttackAliases()")
|
|
|
|
TryToDisableAlias(GenericAttack1)
|
|
TryToDisableAlias(GenericAttack2)
|
|
TryToDisableAlias(GenericAttack3)
|
|
TryToDisableAlias(GenericAttack4)
|
|
TryToDisableAlias(GenericAttack5)
|
|
TryToDisableAlias(GenericAttack6)
|
|
TryToDisableAlias(GenericAttack7)
|
|
TryToDisableAlias(GenericAttack8)
|
|
TryToDisableAlias(GenericAttack9)
|
|
TryToDisableAlias(GenericAttack10)
|
|
|
|
TryToDisableAlias(GenericAttack11)
|
|
TryToDisableAlias(GenericAttack12)
|
|
TryToDisableAlias(GenericAttack13)
|
|
TryToDisableAlias(GenericAttack14)
|
|
TryToDisableAlias(GenericAttack15)
|
|
TryToDisableAlias(GenericAttack16)
|
|
TryToDisableAlias(GenericAttack17)
|
|
TryToDisableAlias(GenericAttack18)
|
|
TryToDisableAlias(GenericAttack19)
|
|
TryToDisableAlias(GenericAttack20)
|
|
|
|
TryToDisableAlias(GenericAttack21)
|
|
TryToDisableAlias(GenericAttack22)
|
|
TryToDisableAlias(GenericAttack23)
|
|
TryToDisableAlias(GenericAttack24)
|
|
TryToDisableAlias(GenericAttack25)
|
|
TryToDisableAlias(GenericAttack26)
|
|
TryToDisableAlias(GenericAttack27)
|
|
TryToDisableAlias(GenericAttack28)
|
|
TryToDisableAlias(GenericAttack29)
|
|
TryToDisableAlias(GenericAttack30)
|
|
|
|
EndFunction
|
|
|
|
Function EnableGenericAttackAliases()
|
|
; CWScript.Log("CWSiegeScript", self + "calling EnableGenericAttackAliases()")
|
|
|
|
TryToEnableAlias(GenericAttack1)
|
|
TryToEnableAlias(GenericAttack2)
|
|
TryToEnableAlias(GenericAttack3)
|
|
TryToEnableAlias(GenericAttack4)
|
|
TryToEnableAlias(GenericAttack5)
|
|
TryToEnableAlias(GenericAttack6)
|
|
TryToEnableAlias(GenericAttack7)
|
|
TryToEnableAlias(GenericAttack8)
|
|
TryToEnableAlias(GenericAttack9)
|
|
TryToEnableAlias(GenericAttack10)
|
|
|
|
TryToEnableAlias(GenericAttack11)
|
|
TryToEnableAlias(GenericAttack12)
|
|
TryToEnableAlias(GenericAttack13)
|
|
TryToEnableAlias(GenericAttack14)
|
|
TryToEnableAlias(GenericAttack15)
|
|
TryToEnableAlias(GenericAttack16)
|
|
TryToEnableAlias(GenericAttack17)
|
|
TryToEnableAlias(GenericAttack18)
|
|
TryToEnableAlias(GenericAttack19)
|
|
TryToEnableAlias(GenericAttack20)
|
|
|
|
TryToEnableAlias(GenericAttack21)
|
|
TryToEnableAlias(GenericAttack22)
|
|
TryToEnableAlias(GenericAttack23)
|
|
TryToEnableAlias(GenericAttack24)
|
|
TryToEnableAlias(GenericAttack25)
|
|
TryToEnableAlias(GenericAttack26)
|
|
TryToEnableAlias(GenericAttack27)
|
|
TryToEnableAlias(GenericAttack28)
|
|
TryToEnableAlias(GenericAttack29)
|
|
TryToEnableAlias(GenericAttack30)
|
|
|
|
|
|
|
|
EndFunction
|
|
|
|
Function ResetGenericAttackAliases()
|
|
; CWScript.Log("CWSiegeScript", self + "calling ResetGenericAttackAliases()")
|
|
|
|
TryToResetAlias(GenericAttack1)
|
|
TryToResetAlias(GenericAttack2)
|
|
TryToResetAlias(GenericAttack3)
|
|
TryToResetAlias(GenericAttack4)
|
|
TryToResetAlias(GenericAttack5)
|
|
TryToResetAlias(GenericAttack6)
|
|
TryToResetAlias(GenericAttack7)
|
|
TryToResetAlias(GenericAttack8)
|
|
TryToResetAlias(GenericAttack9)
|
|
TryToResetAlias(GenericAttack10)
|
|
|
|
TryToResetAlias(GenericAttack11)
|
|
TryToResetAlias(GenericAttack12)
|
|
TryToResetAlias(GenericAttack13)
|
|
TryToResetAlias(GenericAttack14)
|
|
TryToResetAlias(GenericAttack15)
|
|
TryToResetAlias(GenericAttack16)
|
|
TryToResetAlias(GenericAttack17)
|
|
TryToResetAlias(GenericAttack18)
|
|
TryToResetAlias(GenericAttack19)
|
|
TryToResetAlias(GenericAttack20)
|
|
|
|
TryToResetAlias(GenericAttack21)
|
|
TryToResetAlias(GenericAttack22)
|
|
TryToResetAlias(GenericAttack23)
|
|
TryToResetAlias(GenericAttack24)
|
|
TryToResetAlias(GenericAttack25)
|
|
TryToResetAlias(GenericAttack26)
|
|
TryToResetAlias(GenericAttack27)
|
|
TryToResetAlias(GenericAttack28)
|
|
TryToResetAlias(GenericAttack29)
|
|
TryToResetAlias(GenericAttack30)
|
|
|
|
EndFunction
|
|
|
|
;Functions to manipulate GenericDefend Aliases "Array"
|
|
Function DisableGenericDefendAliases()
|
|
; CWScript.Log("CWSiegeScript", self + "calling DisableGenericDefendAliases()")
|
|
|
|
TryToDisableAlias(GenericDefend1)
|
|
TryToDisableAlias(GenericDefend2)
|
|
TryToDisableAlias(GenericDefend3)
|
|
TryToDisableAlias(GenericDefend4)
|
|
TryToDisableAlias(GenericDefend5)
|
|
TryToDisableAlias(GenericDefend6)
|
|
TryToDisableAlias(GenericDefend7)
|
|
TryToDisableAlias(GenericDefend8)
|
|
TryToDisableAlias(GenericDefend9)
|
|
TryToDisableAlias(GenericDefend10)
|
|
|
|
TryToDisableAlias(GenericDefend11)
|
|
TryToDisableAlias(GenericDefend12)
|
|
TryToDisableAlias(GenericDefend13)
|
|
TryToDisableAlias(GenericDefend14)
|
|
TryToDisableAlias(GenericDefend15)
|
|
TryToDisableAlias(GenericDefend16)
|
|
TryToDisableAlias(GenericDefend17)
|
|
TryToDisableAlias(GenericDefend18)
|
|
TryToDisableAlias(GenericDefend19)
|
|
TryToDisableAlias(GenericDefend20)
|
|
|
|
TryToDisableAlias(GenericDefend21)
|
|
TryToDisableAlias(GenericDefend22)
|
|
TryToDisableAlias(GenericDefend23)
|
|
TryToDisableAlias(GenericDefend24)
|
|
TryToDisableAlias(GenericDefend25)
|
|
TryToDisableAlias(GenericDefend26)
|
|
TryToDisableAlias(GenericDefend27)
|
|
TryToDisableAlias(GenericDefend28)
|
|
TryToDisableAlias(GenericDefend29)
|
|
TryToDisableAlias(GenericDefend30)
|
|
|
|
EndFunction
|
|
|
|
Function EnableGenericDefendAliases()
|
|
; CWScript.Log("CWSiegeScript", self + "calling EnableGenericDefendAliases()")
|
|
|
|
TryToEnableAlias(GenericDefend1)
|
|
TryToEnableAlias(GenericDefend2)
|
|
TryToEnableAlias(GenericDefend3)
|
|
TryToEnableAlias(GenericDefend4)
|
|
TryToEnableAlias(GenericDefend5)
|
|
TryToEnableAlias(GenericDefend6)
|
|
TryToEnableAlias(GenericDefend7)
|
|
TryToEnableAlias(GenericDefend8)
|
|
TryToEnableAlias(GenericDefend9)
|
|
TryToEnableAlias(GenericDefend10)
|
|
|
|
TryToEnableAlias(GenericDefend11)
|
|
TryToEnableAlias(GenericDefend12)
|
|
TryToEnableAlias(GenericDefend13)
|
|
TryToEnableAlias(GenericDefend14)
|
|
TryToEnableAlias(GenericDefend15)
|
|
TryToEnableAlias(GenericDefend16)
|
|
TryToEnableAlias(GenericDefend17)
|
|
TryToEnableAlias(GenericDefend18)
|
|
TryToEnableAlias(GenericDefend19)
|
|
TryToEnableAlias(GenericDefend20)
|
|
|
|
TryToEnableAlias(GenericDefend21)
|
|
TryToEnableAlias(GenericDefend22)
|
|
TryToEnableAlias(GenericDefend23)
|
|
TryToEnableAlias(GenericDefend24)
|
|
TryToEnableAlias(GenericDefend25)
|
|
TryToEnableAlias(GenericDefend26)
|
|
TryToEnableAlias(GenericDefend27)
|
|
TryToEnableAlias(GenericDefend28)
|
|
TryToEnableAlias(GenericDefend29)
|
|
TryToEnableAlias(GenericDefend30)
|
|
|
|
|
|
|
|
EndFunction
|
|
|
|
Function ResetGenericDefendAliases()
|
|
; CWScript.Log("CWSiegeScript", self + "calling ResetGenericDefendAliases()")
|
|
|
|
TryToResetAlias(GenericDefend1)
|
|
TryToResetAlias(GenericDefend2)
|
|
TryToResetAlias(GenericDefend3)
|
|
TryToResetAlias(GenericDefend4)
|
|
TryToResetAlias(GenericDefend5)
|
|
TryToResetAlias(GenericDefend6)
|
|
TryToResetAlias(GenericDefend7)
|
|
TryToResetAlias(GenericDefend8)
|
|
TryToResetAlias(GenericDefend9)
|
|
TryToResetAlias(GenericDefend10)
|
|
|
|
TryToResetAlias(GenericDefend11)
|
|
TryToResetAlias(GenericDefend12)
|
|
TryToResetAlias(GenericDefend13)
|
|
TryToResetAlias(GenericDefend14)
|
|
TryToResetAlias(GenericDefend15)
|
|
TryToResetAlias(GenericDefend16)
|
|
TryToResetAlias(GenericDefend17)
|
|
TryToResetAlias(GenericDefend18)
|
|
TryToResetAlias(GenericDefend19)
|
|
TryToResetAlias(GenericDefend20)
|
|
|
|
TryToResetAlias(GenericDefend21)
|
|
TryToResetAlias(GenericDefend22)
|
|
TryToResetAlias(GenericDefend23)
|
|
TryToResetAlias(GenericDefend24)
|
|
TryToResetAlias(GenericDefend25)
|
|
TryToResetAlias(GenericDefend26)
|
|
TryToResetAlias(GenericDefend27)
|
|
TryToResetAlias(GenericDefend28)
|
|
TryToResetAlias(GenericDefend29)
|
|
TryToResetAlias(GenericDefend30)
|
|
|
|
EndFunction
|
|
|
|
|
|
function FailAttackQuest(locationAlias CityAlias)
|
|
; CWScript.Log("CWSiegeScript", self + "FailAttackQuest()")
|
|
|
|
;fail the siege quest:
|
|
CWs.CWSiegeObj.setStage(8999)
|
|
|
|
CWs.FailCWObj(Hold.GetLocation())
|
|
|
|
;fail the campaign
|
|
;CWs.CWCampaignS.FailedMission = 1
|
|
|
|
CWs.ContestedHoldWinner = CWs.GetDefender(CityAlias.GetLocation())
|
|
|
|
;CWs.CWCampaign.setStage(255)
|
|
|
|
while Game.GetPlayer().IsInLocation(CityAlias.GetLocation())
|
|
; CWScript.Log("CWSiegeScript", self + "FailAttackQuest() Waiting for player to leave City before stoping Siege quest")
|
|
utility.wait(5)
|
|
endwhile
|
|
stop()
|
|
|
|
EndFunction
|
|
|
|
function FailDefenseQuest(locationAlias CityAlias)
|
|
; CWScript.Log("CWSiegeScript", self + "FailDefenseQuest()")
|
|
|
|
;start the escape through the city quest
|
|
; CWScript.Log("CWSiegeScript", self + "FailDefenseQuest() CWs.CWEscapeCityStart.SendStoryEvent(" + CityAlias.GetLocation() +")")
|
|
CWs.CWEscapeCityStart.SendStoryEvent(CityAlias.GetLocation(), CWs.GetRikkeOrGalmar())
|
|
|
|
|
|
; CWScript.Log("CWSiegeScript", self + "FailDefenseQuest() failing CWSiegeDefendObj quest and failing the campaign")
|
|
|
|
;fail the siege quest:
|
|
CWs.CWSiegeObj.setStage(8999)
|
|
|
|
CWs.FailCWObj(Hold.GetLocation())
|
|
|
|
|
|
;Update the campaign objectives
|
|
;CWs.CWCampaignObj.setStage(50) ;objective to flee the city with the Jarl
|
|
|
|
;Fail the campaign
|
|
;CWs.CWCampaignS.FailedMission = 1
|
|
|
|
CWs.ContestedHoldWinner = CWs.GetAttacker(CityAlias.GetLocation())
|
|
|
|
;CWs.CWCampaign.setstage(255)
|
|
|
|
while Game.GetPlayer().IsInLocation(CityAlias.GetLocation())
|
|
; CWScript.Log("CWSiegeScript", self + "FailDefenseQuest() Waiting for player to leave City before stoping Siege quest")
|
|
utility.wait(5)
|
|
endwhile
|
|
stop()
|
|
|
|
EndFunction
|
|
|
|
Function SucceedDefenseQuest(LocationAlias HoldAlias, LocationAlias CityAlias, ReferenceAlias MainGateExteriorAlias)
|
|
;SUCCESS!!! Defenders Win because attackers ran out of respawns
|
|
; CWScript.Log("CWSiegeScript", self + "SucceedDefenseQuest()")
|
|
|
|
;Removes this music from the stack
|
|
MUSCombatCivilWar.Remove()
|
|
|
|
;Prevent player activation of main gate into city
|
|
MainGateExteriorAlias.GetReference().BlockActivation(FALSE)
|
|
|
|
;Set Global Dialog Stuff
|
|
CWs.CWStateAttackStarted.SetValue(0)
|
|
CWs.CWStateAttackerBrokeThrough.SetValue(0)
|
|
CWs.CWStateDefenderFallingBack.SetValue(0)
|
|
CWs.CWStateDefenderLastStand.SetValue(0)
|
|
CWs.CWStateAttackerAtGate.SetValue(0)
|
|
CWs.CWStateAttackerOutOfReinforcements.SetValue(1)
|
|
|
|
CWs.CWSiegeObj.setStage(9000)
|
|
|
|
;obsolete:
|
|
CWs.CompleteCWObj(Hold.GetLocation())
|
|
|
|
CWs.ContestedHoldWinner = CWs.GetDefender(CityAlias.GetLocation())
|
|
|
|
;CWs.registerMissionSuccess() - NOT counting final sieges as successful missions, since those are what increase the CWObj global values
|
|
|
|
;CWs.CWCampaign.setStage(255) -- OBSOLETE
|
|
|
|
while Game.GetPlayer().IsInLocation(CityAlias.GetLocation())
|
|
; CWScript.Log("CWSiegeScript", self + "SucceedDefenseQuest(): Waiting for player to leave City before stoping Siege quest")
|
|
utility.wait(5)
|
|
endwhile
|
|
stop()
|
|
|
|
|
|
EndFunction
|
|
|
|
|
|
function TryToTurnOnCatapultAlias(ReferenceAlias CatapultAlias)
|
|
ObjectReference CatapultRef = CatapultAlias.GetReference()
|
|
|
|
If CatapultRef
|
|
; CWScript.Log("CWSiegeScript", self + "TryToTurnOnCatapultAlias() calling turnOn() on " + CatapultRef)
|
|
(CatapultRef as CWCatapultScript).turnOn()
|
|
Else
|
|
; CWScript.Log("CWSiegeScript", self + "TryToTurnOnCatapultAlias() is empty alias, not turning on:" + CatapultAlias)
|
|
EndIf
|
|
|
|
endfunction
|
|
|
|
function TryToturnOffCatapultAlias(ReferenceAlias CatapultAlias)
|
|
ObjectReference CatapultRef = CatapultAlias.GetReference()
|
|
|
|
If CatapultRef
|
|
; CWScript.Log("CWSiegeScript", self + "TryToturnOffCatapultAlias() calling turnOff() on " + CatapultRef)
|
|
(CatapultRef as CWCatapultScript).turnOff()
|
|
Else
|
|
; CWScript.Log("CWSiegeScript", self + "TryToturnOffCatapultAlias() is empty alias, not turning off:" + CatapultAlias)
|
|
EndIf
|
|
|
|
endfunction
|
|
|
|
bool function IsAttack()
|
|
; CWScript.Log("CWSiegeScript", self + "IsAttack()")
|
|
|
|
return CWs.IsPlayerAttacking(City.GetLocation())
|
|
|
|
EndFunction
|
|
|
|
function StartCombatSoundsLoop()
|
|
CombatSoundsLoopInstance = AMBCombatSoundsLoop.Play(game.GetPlayer())
|
|
Sound.SetInstanceVolume(CombatSoundsLoopInstance, 0.5)
|
|
|
|
EndFunction
|
|
|
|
function StopCombatSoundsLoop()
|
|
Sound.StopInstance(CombatSoundsLoopInstance)
|
|
|
|
EndFunction
|
|
|
|
function setupInteriorSiege(Location SiegeLocation, ObjectReference FieldCORef, ObjectReference CityCenterMarker)
|
|
; CWScript.Log("CWSiegeScript", self + "setupInteriorSiege(" + SiegeLocation + ")")
|
|
|
|
;start FortSiege
|
|
|
|
;safety check, in case you just finished a fort or capital siege, and before it finished shutting down, started the final battle - highly unlikely, put I can envision happening
|
|
int waitingFor
|
|
While CWs.CWFortSiegeCapital.IsStopped() == False
|
|
waitingFor += 1
|
|
utility.wait(1)
|
|
|
|
; CWScript.Log("CWSiegeScript", self + "setupInteriorSiege(" + SiegeLocation + ") WAITING for CWFortSiegeCapital.IsStopped() == false. Have been waiting for:" + waitingFor, 1, true, true)
|
|
|
|
;this is important enough to make sure even if we aren't explicitly testing in Civil War debug mode we get a message about it
|
|
; debug.trace(self + "CWSiegeScript: setupInteriorSiege(" + SiegeLocation + ") WAITING for CWFortSiegeCapital.IsStopped() == false. Have been waiting for:" + waitingFor, 1)
|
|
EndWhile
|
|
|
|
|
|
CWs.CWFortSiegeSpecialStart.SendStoryEventAndWait(SiegeLocation, FieldCORef, CityCenterMarker, aiValue1 = 3)
|
|
CWs.CWFinaleStart.SendStoryEvent(SiegeLocation)
|
|
|
|
EndFunction
|
|
|
|
function ToggleOffComplexWIInteractions(LocationAlias LocationAliasToToggle)
|
|
; CWScript.Log("CWSiegeScript", self + "ToggleOffComplexWIInteractions(" + LocationAliasToToggle + ") calling function on CWScript")
|
|
CWs.ToggleOffComplexWIInteractions(LocationAliasToToggle)
|
|
|
|
EndFunction
|
|
|
|
function ToggleOnComplexWIInteractions(LocationAlias LocationAliasToToggle)
|
|
; CWScript.Log("CWSiegeScript", self + "ToggleOnComplexWIInteractions(" + LocationAliasToToggle + ") calling function on CWScript")
|
|
CWs.ToggleOnComplexWIInteractions(LocationAliasToToggle)
|
|
|
|
EndFunction
|
|
|
|
|
|
scene Property CWAttackerStartingScene Auto
|
|
scene Property CWSiegeDefenderStartingScene Auto
|
|
|
|
Quest Property CWPrepareCity Auto
|
|
|
|
sound Property AMBCivilWarBattleDistantLP Auto
|
|
|
|
sound Property AMBCivilWarBattleStart Auto
|
|
|
|
sound Property AMBCivilWarBattleStartDistant Auto
|
|
|
|
ObjectReference Property WhiterunAmbExt01 Auto
|
|
|
|
ObjectReference Property WhiterunAmbExt02 Auto
|
|
|
|
int Property AMBDistantBattleSoundInstance Auto
|
|
{Don't assign a number, gets one when the sound is played as a way to refer to it}
|
|
int Property AMBDistantBattleStartInstance Auto
|
|
{Don't assign a number, gets one when the sound is played as a way to refer to it}
|
|
int Property AMBCloseBattleSoundInstance Auto
|
|
{Don't assign a number, gets one when the sound is played as a way to refer to it}
|
|
|
|
|
|
ObjectReference Property WhiterunAmbExt03 Auto
|
|
|
|
GlobalVariable Property CWDistantCatapultsAMB Auto
|
|
|