Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix Up Unused Laser Cannon Superweapon #967

Merged
merged 2 commits into from
Aug 25, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file not shown.
Binary file not shown.
9 changes: 5 additions & 4 deletions Patch104pZH/GameFilesEdited/Data/INI/CommandButton.ini
Original file line number Diff line number Diff line change
Expand Up @@ -7456,15 +7456,16 @@ CommandButton Lazr_Command_ConstructLaserCannon
DescriptLabel = CONTROLBAR:ToolTipUSABuildParticleCannon
End

; Patch104p @feature commy2 23/08/2022 Customize Laser Cannon with unqiue text.
CommandButton Lazr_Command_FireLaserCannon
Command = SPECIAL_POWER
SpecialPower = Lazr_LaserCannon
Options = NEED_SPECIAL_POWER_SCIENCE NEED_TARGET_POS CONTEXTMODE_COMMAND CAN_USE_WAYPOINTS
TextLabel = CONTROLBAR:FireParticleUplinkCannon
TextLabel = CONTROLBAR:FireLaserCannon
ButtonImage = SSParticleFire
CursorName = LaserGuidedMissiles
ButtonBorderType = ACTION ; Identifier for the User as to what kind of button this is
DescriptLabel = CONTROLBAR:TooltipFireParticleUplinkCannon
DescriptLabel = CONTROLBAR:TooltipFireLaserCannon
CursorName = ParticleUplinkCannon
InvalidCursorName = GenericInvalid
End
Expand All @@ -7473,10 +7474,10 @@ CommandButton Lazr_Command_FireLaserCannonFromShortcut
Command = SPECIAL_POWER_FROM_SHORTCUT
SpecialPower = Lazr_LaserCannon
Options = NEED_SPECIAL_POWER_SCIENCE NEED_TARGET_POS CONTEXTMODE_COMMAND CAN_USE_WAYPOINTS
TextLabel = CONTROLBAR:FireParticleUplinkCannonShortcut
TextLabel = CONTROLBAR:FireLaserCannonShortcut
ButtonImage = SSParticleFire
ButtonBorderType = ACTION ; Identifier for the User as to what kind of button this is
DescriptLabel = OBJECT:TooltipFireParticleUplinkCannon
DescriptLabel = CONTROLBAR:TooltipFireLaserCannon
CursorName = ParticleUplinkCannon
InvalidCursorName = GenericInvalid
End
Expand Down
40 changes: 39 additions & 1 deletion Patch104pZH/GameFilesEdited/Data/INI/FXList.ini
Original file line number Diff line number Diff line change
Expand Up @@ -1889,6 +1889,29 @@ FXList SupW_FX_ParticleUplinkCannon_BeamLaunchIteration
; End
End

; Patch104p @feature commy2 23/08/2022 Recolored effect used when firing Laser Cannon.
; ---------------------------------------------------------------------------------------
FXList Lazr_FX_LaserCannon_BeamLaunchIteration

; ViewShake
; Type = SEVERE
; End

; Sound
; Name = ExplosionScudExplosive
; End

ParticleSystem
Name = Lazr_LaserCannon_LaunchFlare
Offset = X:0.0 Y:0.0 Z:10.0
End

; ParticleSystem
; Name = ParticleUplinkCannon_Magma
; Offset = X:0.0 Y:0.0 Z:1.0
; End
End

; ---------------------------------------------------------------------------------------
; The initial detonation of the Mammoth Tank - fiery 'arms' shoot out, and it breaks apart
FXList FX_GenericTankDeathEffect
Expand Down Expand Up @@ -7413,7 +7436,6 @@ FXList FX_ParticleUplinkDeathInitial
End

; Patch104p @bugfix commy2 11/09/2021 Use pink destruction effects to match the actual laser beam.

;--------------------------------------------------------------------------------------------------
FXList SupW_FX_ParticleUplinkDeathInitial
Sound
Expand All @@ -7429,6 +7451,22 @@ FXList SupW_FX_ParticleUplinkDeathInitial
End
End

; Patch104p @feature commy2 23/08/2022 Use red destruction effects to match the red laser beam.
;--------------------------------------------------------------------------------------------------
FXList Lazr_FX_LaserCannonDeathInitial
Sound
; Name = CratePickupSound
End
ParticleSystem
Name = Lazr_ParticleDeathFlare
Offset = X:30 Y:0 Z:10
End
ParticleSystem
Name = Lazr_ParticleDeathImplode
Offset = X:30 Y:0 Z:20
End
End

; ----------------------------------------------
; weapon fx for Strategy Center Barrage
; ----------------------------------------------
Expand Down
145 changes: 134 additions & 11 deletions Patch104pZH/GameFilesEdited/Data/INI/Object/LaserGeneral.ini
Original file line number Diff line number Diff line change
Expand Up @@ -18132,6 +18132,12 @@ End



; Patch104p @feature commy2 23/08/2022 Recoloured particle beam effects used by Laser Cannon to red.
; New objects are:
; Lazr_LaserCannon_MediumConnectorLaser
; Lazr_LaserCannon_IntenseConnectorLaser
; Lazr_LaserCannon_OrbitalLaser
; Lazr_SDILasers
;------------------------------------------------------------------------------
Object Lazr_AmericaLaserCannon

Expand Down Expand Up @@ -18873,6 +18879,9 @@ Object Lazr_AmericaLaserCannon
EnergyProduction = -10
VisionRange = 200.0 ; Shroud clearing distance
ShroudClearingRange = 200
ShroudRevealToAllRange = 60 ; Reveals shroud to all players at a specific amount which can be different.
; Using same value? Then use KINDOF_REVEAL_TO_ALL instead!

ArmorSet
Conditions = None
Armor = StructureArmorTough
Expand Down Expand Up @@ -18946,27 +18955,27 @@ Object Lazr_AmericaLaserCannon
FireBoneName = FXMain ;The name of the bone where the main beam is fired from.

;These are particle systems tied to the outer nodes in varying intensities.
OuterNodesLightFlareParticleSystem = ParticleUplinkCannon_OuterNodeLightFlare
OuterNodesMediumFlareParticleSystem = ParticleUplinkCannon_OuterNodeMediumFlare
OuterNodesIntenseFlareParticleSystem = ParticleUplinkCannon_OuterNodeIntenseFlare
OuterNodesLightFlareParticleSystem = Lazr_LaserCannon_OuterNodeLightFlare
OuterNodesMediumFlareParticleSystem = Lazr_LaserCannon_OuterNodeMediumFlare
OuterNodesIntenseFlareParticleSystem = Lazr_LaserCannon_OuterNodeIntenseFlare

;The connectors system connects each of the outer nodes to the central node that receives
;the lasers from outside.
ConnectorMediumLaserName = ParticleUplinkCannon_MediumConnectorLaser
ConnectorIntenseLaserName = ParticleUplinkCannon_IntenseConnectorLaser
ConnectorMediumLaserName = Lazr_LaserCannon_MediumConnectorLaser
ConnectorIntenseLaserName = Lazr_LaserCannon_IntenseConnectorLaser

;Currently commented out -- These
;ConnectorMediumFlare = ParticleUplinkCannon_InnerConnectorMediumFlare
;ConnectorIntenseFlare = ParticleUplinkCannon_InnerConnectorIntenseFlare

;This is the name of the bone on the building where the beam is fired from
LaserBaseLightFlareParticleSystemName = ParticleUplinkCannon_LaserBaseReadyToFire
ParticleBeamLaserName = ParticleUplinkCannon_OrbitalLaser
LaserBaseLightFlareParticleSystemName = Lazr_LaserCannon_LaserBaseReadyToFire
ParticleBeamLaserName = Lazr_LaserCannon_OrbitalLaser
GroundHitFX = FX_ParticleUplinkCannon_BeamHitsGround ;TotalScorchMarks determines how many times this gets called.

;The flare fxlist that is played over and over during the beam firing process. Be
;mindful of the delay because that effects both art and sound.
BeamLaunchFX = FX_ParticleUplinkCannon_BeamLaunchIteration
BeamLaunchFX = Lazr_FX_LaserCannon_BeamLaunchIteration
DelayBetweenLaunchFX = 1000

;Each scorch mark creates an object in the world, so while making more looks better
Expand Down Expand Up @@ -19021,8 +19030,8 @@ Object Lazr_AmericaLaserCannon
; don't run this death if we are under construction...
ExemptStatus = UNDER_CONSTRUCTION
DestructionDelay = 2000
FX = INITIAL FX_ParticleUplinkDeathInitial
OCL = INITIAL OCL_SDILinkLasers
FX = INITIAL Lazr_FX_LaserCannonDeathInitial
OCL = INITIAL Lazr_OCL_SDILinkLasers
FX = FINAL FX_StructureMediumDeath
OCL = FINAL Lazr_OCL_ParticleUplinkDeathFinal ; Patch104p @bugfix hanfield 26/08/2021 Added proper death OCL to spawn Laser General Rangers.
End
Expand All @@ -19043,8 +19052,122 @@ Object Lazr_AmericaLaserCannon
BuildCompletion = PLACED_BY_PLAYER

End
;----------------------------------------------------------------------------------

;------------------------------------------------------------------------------
Object Lazr_LaserCannon_MediumConnectorLaser
; *** ART Parameters ***
Draw = W3DLaserDraw ModuleTag_01
Texture = EXLaser.tga
NumBeams = 4 ;Number of overlapping cylinders that make the beam. 1 beam will just use inner data.

InnerBeamWidth = 0.4 ;The total width of beam
InnerColor = R:255 G:255 B:255 A:250 ;The inside color of the laser (hot)

OuterBeamWidth = 1.2 ;The total width of beam
OuterColor = R:255 G:0 B:0 A:150 ;The outside color of the laser (cool)

;MaxIntensityLifetime = 2000 ;Laser stays at max intensity for specified time in ms.
;FadeLifetime = 0 ;Laser will fade and delete.

;@todo -- add shot ability functionality (instead of instant point A to B)
End

KindOf = IMMOBILE

ClientUpdate = LaserUpdate ModuleTag_02
;MuzzleParticleSystem = None
;TargetParticleSystem = None
End
End

;------------------------------------------------------------------------------
Object Lazr_LaserCannon_IntenseConnectorLaser
; *** ART Parameters ***
Draw = W3DLaserDraw ModuleTag_01
Texture = EXLaser.tga
NumBeams = 5 ;Number of overlapping cylinders that make the beam. 1 beam will just use inner data.

InnerBeamWidth = 0.6 ;The total width of beam
InnerColor = R:255 G:255 B:255 A:250 ;The inside color of the laser (hot)

OuterBeamWidth = 2.0 ;The total width of beam
OuterColor = R:255 G:0 B:0 A:150 ;The outside color of the laser (cool)

;MaxIntensityLifetime = 2000 ;Laser stays at max intensity for specified time in ms.
;FadeLifetime = 0 ;Laser will fade and delete.

;@todo -- add shot ability functionality (instead of instant point A to B)
End

KindOf = IMMOBILE

ClientUpdate = LaserUpdate ModuleTag_02
;MuzzleParticleSystem = None
;TargetParticleSystem = None
End
End

;------------------------------------------------------------------------------
Object Lazr_LaserCannon_OrbitalLaser
; *** ART Parameters ***
Draw = W3DLaserDraw ModuleTag_01
Texture = EXNoise02.tga
NumBeams = 12 ;Number of overlapping cylinders that make the beam. 1 beam will just use inner data.

Tile = Yes ;The height of the texture will determine how many times to tile the texture to fit without scaling.
ScrollRate = -1.75 ;Scrolls the texture offset this fast -- towards(-) away(+)
TilingScalar = 0.15 ;Stretches tiling if value > 1.0, otherwise shrinks it (1.0 is natural)

InnerBeamWidth = 0.6 ;The total width of beam
InnerColor = R:255 G:155 B:155 A:250 ;The inside color of the laser (hot)

OuterBeamWidth = 26.0 ;The total width of beam
OuterColor = R:255 G:0 B:0 A:150 ;The outside color of the laser (cool)

;MaxIntensityLifetime = 2000 ;Laser stays at max intensity for specified time in ms.
;FadeLifetime = 0 ;Laser will fade and delete.

;@todo -- add shot ability functionality (instead of instant point A to B)
End

; *** DESIGN Parameters ***
VisionRange = 100
ShroudClearingRange = 120

; *** ENGINEERING Parameters ***
KindOf = IMMOBILE

ClientUpdate = LaserUpdate ModuleTag_02
;MuzzleParticleSystem = None
;TargetParticleSystem = None
End
End

;------------------------------------------------------------------------------
Object Lazr_SDILasers
Draw = W3DModelDraw ModuleTag_01
OkToChangeModelColor = Yes
ConditionState = NONE
Model = ABLGCLink_L
Animation = ABLGCLink_L.ABLGCLink_L
AnimationMode = ONCE
End
End
Behavior = LifetimeUpdate ModuleTag_02
MinLifetime = 3000 ; min lifetime in msec
MaxLifetime = 3000 ; max lifetime in msec
End
Body = HighlanderBody ModuleTag_03
MaxHealth = 1.0
InitialHealth = 1.0
End
Behavior = DestroyDie ModuleTag_04
;<NO DATA>
End
End


;----------------------------------------------------------------------------------
Object Lazr_PatriotLaserBeam
; *** ART Parameters ***
Draw = W3DLaserDraw ModuleTag_01
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4402,7 +4402,6 @@ Object SupW_ParticleUplinkCannon_IntenseConnectorLaser
End

; Patch104p @bugfix commy2 11/09/2021 Changed some effects to use pink color instead of blue to better match other effects.

;------------------------------------------------------------------------------
Object SupW_ParticleUplinkCannon_OrbitalLaser
; *** ART Parameters ***
Expand Down
20 changes: 15 additions & 5 deletions Patch104pZH/GameFilesEdited/Data/INI/ObjectCreationList.ini
Original file line number Diff line number Diff line change
Expand Up @@ -2334,7 +2334,6 @@ ObjectCreationList OCL_ParticleUplinkDeathFinal
End

; Patch104p @bugfix hanfield 26/08/2021 Added death OCL for Airforce General Particle Cannon.

; ----------------------------------------------
ObjectCreationList AirF_OCL_ParticleUplinkDeathFinal
; SlowDeath treats two listings as an OR, so this combines the two it was using. OCL_ABPowerPlantExplode & OCL_AmericanRangerDebris06
Expand Down Expand Up @@ -2440,7 +2439,6 @@ ObjectCreationList AirF_OCL_ParticleUplinkDeathFinal
End

; Patch104p @bugfix hanfield 26/08/2021 Added death OCL for Laser General Particle Cannon.

; ----------------------------------------------
ObjectCreationList Lazr_OCL_ParticleUplinkDeathFinal
; SlowDeath treats two listings as an OR, so this combines the two it was using. OCL_ABPowerPlantExplode & OCL_AmericanRangerDebris06
Expand Down Expand Up @@ -2546,7 +2544,6 @@ ObjectCreationList Lazr_OCL_ParticleUplinkDeathFinal
End

; Patch104p @bugfix hanfield 26/08/2021 Added death OCL for Superweapon General Particle Cannon.

; ----------------------------------------------
ObjectCreationList SupW_OCL_ParticleUplinkDeathFinal
; SlowDeath treats two listings as an OR, so this combines the two it was using. OCL_ABPowerPlantExplode & OCL_AmericanRangerDebris06
Expand Down Expand Up @@ -2652,7 +2649,6 @@ ObjectCreationList SupW_OCL_ParticleUplinkDeathFinal
End

; @bugfix commy2 19/09/2021 Used when Boss General Particle Cannon is destroyed.

; ----------------------------------------------
ObjectCreationList Boss_OCL_ParticleUplinkDeathFinal
; SlowDeath treats two listings as an OR, so this combines the two it was using. OCL_ABPowerPlantExplode & OCL_AmericanRangerDebris06
Expand Down Expand Up @@ -7771,7 +7767,6 @@ ObjectCreationList OCL_SDILinkLasers
End

; Patch104p @bugfix commy2 11/09/2021 Recolored effects for SWG - pink instead of blue.

; ---------------------------------------------------------------------------------------
; The Lasers that fire out of the SDIUplink when dying
; ---------------------------------------------------------------------------------------
Expand All @@ -7786,6 +7781,21 @@ ObjectCreationList SupW_OCL_SDILinkLasers
End
End

; Patch104p @feature commy2 23/08/2022 Recolored effects for Lasergen - red instead of blue.
; ---------------------------------------------------------------------------------------
; The Lasers that fire out of the SDIUplink when dying
; ---------------------------------------------------------------------------------------
ObjectCreationList Lazr_OCL_SDILinkLasers
CreateObject
ObjectNames = Lazr_SDILasers
Disposition = LIKE_EXISTING
Count = 1
MinLifetime = 3000
MaxLifetime = 3000
Offset = X:30 Y:0 Z:0
End
End

;------------------------------------------------------------------
; Sneak attack Generals Ability
; John Comes - 5/03
Expand Down
Loading