Skip to content

Commit

Permalink
Change: Make USA Supply Drop Zone Cargo Plane unattackable (#836)
Browse files Browse the repository at this point in the history
  • Loading branch information
commy2 authored Aug 9, 2022
1 parent a789340 commit 637f3a3
Show file tree
Hide file tree
Showing 2 changed files with 204 additions and 2 deletions.
202 changes: 202 additions & 0 deletions Patch104pZH/GameFilesEdited/Data/INI/Object/AmericaAir.ini
Original file line number Diff line number Diff line change
Expand Up @@ -2566,6 +2566,208 @@ Object AmericaJetCargoPlane
End


Geometry = Box
GeometryIsSmall = No
GeometryMajorRadius = 40.0
GeometryMinorRadius = 10.0
GeometryHeight = 10.0
Shadow = SHADOW_VOLUME
ShadowSizeX = 89 ; minimum elevation angle above horizon. Used to limit shadow length
End

; Patch104p @performance hanfield commy2 06/08/2022 A harmless plane that can not be attacked.
;------------------------------------------------------------------------------
Object AmericaJetCargoPlane_SupplyDropZone

; *** ART Parameters ***
Draw = W3DModelDraw ModuleTag_01
DefaultConditionState
Model = AVCargoPln
Animation = AVCargoPln.AVCargoPln
AnimationMode = LOOP
ParticleSysBone = Propeller01 JetBlackTrailThin
ParticleSysBone = Propeller02 JetBlackTrailThin
ParticleSysBone = Propeller03 JetBlackTrailThin
ParticleSysBone = Propeller04 JetBlackTrailThin
ParticleSysBone = WingTip01 JetContrailThin
ParticleSysBone = WingTip02 JetContrailThin
End

ConditionState = DAMAGED
Model = AVCargoPln_D
Animation = AVCargoPln_D.AVCargoPln_D
AnimationMode = MANUAL
Flags = START_FRAME_FIRST
ParticleSysBone = Smoke01 JetFireLarge
ParticleSysBone = Smoke02 JetFireLarge
ParticleSysBone = Propeller03 JetBlackTrailThin
ParticleSysBone = Propeller04 JetBlackTrailThin
ParticleSysBone = Smoke01 JetSmokeLarge
ParticleSysBone = Smoke02 JetSmokeLarge
End

ConditionState = REALLYDAMAGED
Model = AVCargoPln_D
Animation = AVCargoPln_D.AVCargoPln_D
AnimationMode = MANUAL
Flags = START_FRAME_FIRST
ParticleSysBone = Smoke01 JetFireLarge
ParticleSysBone = Smoke02 JetFireLarge
ParticleSysBone = Smoke03 JetFireLarge
ParticleSysBone = Smoke05 JetFireLarge
ParticleSysBone = Propeller03 JetBlackTrailThin
ParticleSysBone = Propeller04 JetBlackTrailThin
ParticleSysBone = Smoke01 JetSmokeLarge
ParticleSysBone = Smoke02 JetSmokeLarge
ParticleSysBone = Smoke03 JetSmokeLarge
ParticleSysBone = Smoke05 JetSmokeLarge
End

ConditionState = RUBBLE
Model = AVCargoPln_D1
Animation = AVCargoPln_D.AVCargoPln_D
AnimationMode = MANUAL
Flags = START_FRAME_FIRST
ParticleSysBone = Smoke01 JetFireLarge
ParticleSysBone = Smoke06 JetFireLarge
ParticleSysBone = Smoke03 JetFireLarge
ParticleSysBone = Smoke05 JetFireLarge
ParticleSysBone = Smoke01 JetSmokeLarge
ParticleSysBone = Smoke06 JetSmokeLarge
ParticleSysBone = Smoke03 JetSmokeLarge
ParticleSysBone = Smoke05 JetSmokeLarge
End

OkToChangeModelColor = Yes
ParticlesAttachedToAnimatedBones = Yes

End

Draw = W3DModelDraw ModuleTag_02
DefaultConditionState
Model = AVCargoPln_A2
Animation = AVCargoPln_A2.AVCargoPln_A2
AnimationMode = MANUAL
Flags = START_FRAME_FIRST
End
ConditionState = DOOR_1_OPENING
Model = AVCargoPln_A2
Animation = AVCargoPln_A2.AVCargoPln_A2
AnimationMode = ONCE
Flags = START_FRAME_FIRST
End
ConditionState = DOOR_1_CLOSING
Model = AVCargoPln_A2
Animation = AVCargoPln_A2.AVCargoPln_A2
AnimationMode = ONCE_BACKWARDS
Flags = START_FRAME_LAST
End
End

; ***DESIGN parameters ***
DisplayName = OBJECT:CargoPlane
EditorSorting = VEHICLE
Side = America
TransportSlotCount = 0 ;how many "slots" we take in a transport (0 == not transportable)
VisionRange = 0.0
ArmorSet
Conditions = None
Armor = AirplaneArmor
DamageFX = TankDamageFX
End
ArmorSet
Conditions = PLAYER_UPGRADE
Armor = CountermeasuresAirplaneArmor
DamageFX = TankDamageFX ; Patch104p @bugfix commy2 12/09/2021 Fix hit effect disappearing after Countermeasures upgrade.
End
CommandSet = Command_ScriptedTransportDrops

; *** AUDIO Parameters ***
SoundAmbient = C130AmbientLoop
SoundAmbientRubble = NoSound

; *** ENGINEERING Parameters ***
RadarPriority = NOT_ON_RADAR
KindOf = PRELOAD CAN_CAST_REFLECTIONS VEHICLE TRANSPORT AIRCRAFT UNATTACKABLE IGNORED_IN_GUI EMP_HARDENED
Body = ActiveBody ModuleTag_03
MaxHealth = 1000.0
InitialHealth = 1000.0
End

ExperienceValue = 40 40 40 40 ; Experience point value at each level

Behavior = PhysicsBehavior ModuleTag_04
Mass = 500.0
End

Behavior = DeliverPayloadAIUpdate ModuleTag_09
DoorDelay = 500
MaxAttempts = 4
DropOffset = X:0 Y:0 Z:-10
DropDelay = 1000 ; time in between each item dropped (if more than one)
PutInContainer = AmericaParachute
DeliveryDistance = 150
End
Locomotor = SET_NORMAL B52Locomotor

Behavior = TransportContain ModuleTag_10
Slots = 100 ; hey, it's a BIG transport
ScatterNearbyOnExit = No
OrientLikeContainerOnExit = Yes
KeepContainerVelocityOnExit = Yes
ExitPitchRate = 30
ExitBone = WeaponA01
AllowInsideKindOf = INFANTRY VEHICLE PROJECTILE DOZER PARACHUTABLE
;gs I added parachutable as a catch all to prevent making new kindofs (like CRATE)
DoorOpenTime = 0 ; this prevents the Contain module from messing with the doors, since we want DeliverPayload to handle 'em
NumberOfExitPaths = 0
DestroyRidersWhoAreNotFreeToExit = Yes ; 'destroy' as opposed to 'kill'
End

Behavior = JetSlowDeathBehavior ModuleTag_11
DestructionDelay = 2000
RollRate = 0.0
RollRateDelta = 100% ;each frame, rollrate = rollrate * rollrateDelta
PitchRate = 0
FallHowFast = 25.0% ;Bigger is faster (can be over 100%,it's a fraction of gravity)
FXInitialDeath = FX_JetBigDeathInitial
OCLInitialDeath = OCL_AmericaJetCargoDeathStart
DelaySecondaryFromInitialDeath = 2000 ; in milliseconds This guy won't hit the ground, so this time equals the above time
OCLSecondary = OCL_AmericaJetCargoHulkDeath
FXSecondary = FX_BigPlaneDeath
; FXFinalBlowUp = FX_JetDeathFinalBlowUp
; OCLFinalBlowUp = OCL_AuroraDeathFinalBlowUp
; DeathLoopSound = MICAL NEEDS TO MAKE ME
End

;;;;;;;; ClientUpdate = AnimatedParticleSysBoneClientUpdate ModuleTag_12
;;;;;;;; End

Behavior = ArmorUpgrade ModuleTag_Armor01
TriggeredBy = Upgrade_AmericaCountermeasures
End

Behavior = CountermeasuresBehavior ModuleTag_13
TriggeredBy = Upgrade_AmericaCountermeasures
FlareTemplateName = CountermeasureFlare
FlareBoneBaseName = Flare ; Name of the base flare bone (Flare01, Flare02, Flare03)
VolleySize = 4 ; Number of flares launched per volley (requires bones)
VolleyArcAngle = 90.0 ; Max angle of flare relative to forward direction (with VolleySize of 1, flare will always goes straight back).
VolleyVelocityFactor = 2.0 ; Shoots out flares at a stronger velocity with a higher value.
DelayBetweenVolleys = 1000 ; Time between flare volleys
NumberOfVolleys = 5 ; Number of times the volleys will fire before reloading
ReloadTime = 0 ; After all volleys launched, then reloading must occur. If 0, then reloading occurs at airstrip only.
EvasionRate = 30% ; With active flares, the specified percentage will be diverted.
ReactionLaunchLatency = 0 ; Reaction between getting shot at and the firing of the first volley of countermeasures.
MissileDecoyDelay = 200 ; A reported missile that has been determined to hit a decoy will wait this long before acquiring countermeasures.
End

Behavior = TransitionDamageFX ModuleTag_17
DamagedFXList1 = Loc: X:0 Y:0 Z:0 FXList:FX_JetBigDamageTransition
ReallyDamagedFXList1 = Loc: X:0 Y:0 Z:0 FXList:FX_JetBigDamageTransition
End


Geometry = Box
GeometryIsSmall = No
GeometryMajorRadius = 40.0
Expand Down
4 changes: 2 additions & 2 deletions Patch104pZH/GameFilesEdited/Data/INI/ObjectCreationList.ini
Original file line number Diff line number Diff line change
Expand Up @@ -5931,11 +5931,12 @@ End



; Patch104p @performance hanfield commy2 06/08/2022 Do not attack SDZ plane for performance in spam games.
; -----------------------------------------------------------------------------
; -----------------------------------------------------------------------------
ObjectCreationList OCL_AmericaSupplyDropZoneCrateDrop
DeliverPayload
Transport = AmericaJetCargoPlane
Transport = AmericaJetCargoPlane_SupplyDropZone
StartAtPreferredHeight = Yes
StartAtMaxSpeed = Yes
MaxAttempts = 4
Expand Down Expand Up @@ -8065,7 +8066,6 @@ ObjectCreationList OCL_StlthGen_ReinforcementPadGLAVehicle
End

; Patch104p @bugfix commy2 16/09/2021 Add unit spawned by Reinforcement Pad for Boss General.

; -----------------------------------------------------------------------------
; -----------------------------------------------------------------------------
ObjectCreationList OCL_BossGen_ReinforcementPadCHIVehicle
Expand Down

0 comments on commit 637f3a3

Please sign in to comment.