I have decided to do what you all have voted for, you buy all your powers through the Control Tower. Now, I am planning to do this through a drone object, but that isn't working. When the upgrade is done, it exits to desktop.
Here is the code:
Katana_NekoControlTower.ini
Code:
;------------------------------------------------------------------------------
Object Katana_NekoControlTower
SelectPortrait = NekoTower
ButtonImage = NekoTower
Draw = W3DModelDraw ModuleTag_01
OkToChangeModelColor = Yes
DefaultConditionState
Model = AWMNCTOWER
End
AliasConditionState = DAMAGED
AliasConditionState = REALLYDAMAGED
AliasConditionState = NIGHT
AliasConditionState = NIGHT DAMAGED
AliasConditionState = NIGHT REALLYDAMAGED
ConditionState = SNOW
Model = SnowAWMNCTOWER
End
AliasConditionState = DAMAGED SNOW
AliasConditionState = REALLYDAMAGED SNOW
AliasConditionState = NIGHT SNOW
AliasConditionState = NIGHT DAMAGED SNOW
AliasConditionState = NIGHT REALLYDAMAGED SNOW
ConditionState = AWAITING_CONSTRUCTION PARTIALLY_CONSTRUCTED ACTIVELY_BEING_CONSTRUCTED
Model = AWMNCTOWER
Flags = ADJUST_HEIGHT_BY_CONSTRUCTION_PERCENT
End
ConditionState = AWAITING_CONSTRUCTION PARTIALLY_CONSTRUCTED ACTIVELY_BEING_CONSTRUCTED SNOW
Model = SnowAWMNCTOWER
Flags = ADJUST_HEIGHT_BY_CONSTRUCTION_PERCENT
End
ConditionState = AWAITING_CONSTRUCTION
Model = NONE
End
AliasConditionState = AWAITING_CONSTRUCTION DAMAGED
AliasConditionState = AWAITING_CONSTRUCTION REALLYDAMAGED
AliasConditionState = AWAITING_CONSTRUCTION NIGHT
AliasConditionState = AWAITING_CONSTRUCTION NIGHT DAMAGED
AliasConditionState = AWAITING_CONSTRUCTION NIGHT REALLYDAMAGED
AliasConditionState = AWAITING_CONSTRUCTION SNOW
AliasConditionState = AWAITING_CONSTRUCTION SNOW DAMAGED
AliasConditionState = AWAITING_CONSTRUCTION SNOW REALLYDAMAGED
AliasConditionState = AWAITING_CONSTRUCTION NIGHT SNOW
AliasConditionState = AWAITING_CONSTRUCTION NIGHT SNOW DAMAGED
AliasConditionState = AWAITING_CONSTRUCTION NIGHT SNOW REALLYDAMAGED
AliasConditionState = SOLD
AliasConditionState = SOLD DAMAGED
AliasConditionState = SOLD REALLYDAMAGED
AliasConditionState = SOLD NIGHT
AliasConditionState = SOLD NIGHT DAMAGED
AliasConditionState = SOLD NIGHT REALLYDAMAGED
AliasConditionState = SOLD SNOW
AliasConditionState = SOLD SNOW DAMAGED
AliasConditionState = SOLD SNOW REALLYDAMAGED
AliasConditionState = SOLD NIGHT SNOW
AliasConditionState = SOLD NIGHT SNOW DAMAGED
AliasConditionState = SOLD NIGHT SNOW REALLYDAMAGED
End
PlacementViewAngle = -135
DisplayName = OBJECT:ControlTower
Side = Neko
EditorSorting = STRUCTURE
Prerequisites
; Object = Katana_NekoBattleLab
Science = SCIENCE_Rank5
End
EnergyProduction = -2
BuildCost = 1500
BuildTime = 15.0 ;20.0
CommandSet = ControlTowerCommandSet
VisionRange = 200.0
ShroudClearingRange = 200
ArmorSet
Conditions = None
Armor = StructureArmor
DamageFX = StructureDamageFXNoShake
End
ExperienceValue = 25 25 25 25 ;Experience point value at each level
VoiceSelect = WarFactoryUSASelect
SoundOnDamaged = BuildingDamagedStateLight
SoundOnReallyDamaged = BuildingDestroy
UnitSpecificSounds
UnderConstruction = UnderConstructionLoop
End
RadarPriority = STRUCTURE
KindOf = PRELOAD STRUCTURE SELECTABLE IMMOBILE SCORE CAPTURABLE FS_FACTORY AUTO_RALLYPOINT MP_COUNT_FOR_VICTORY FS_ADVANCED_TECH FS_TECHNOLOGY POWERED IMMUNE_TO_CAPTURE
Body = StructureBody ModuleTag_05
MaxHealth = 3000.0
InitialHealth = 3000.0
SubdualDamageCap = 2200
SubdualDamageHealRate = 500
SubdualDamageHealAmount = 100
End
Behavior = DestroyDie ModuleTag_06
;nothing
End
Behavior = CreateObjectDie ModuleTag_07
CreationList = OCL_LargeStructureDebris
End
Behavior = FXListDie ModuleTag_08
DeathFX = FX_StructureMediumDeath
End
Behavior = ProductionUpdate ModuleTag_09
End
Behavior = GrantUpgradeCreate ModuleTag_10
UpgradeToGrant = Upgrade_AmericaRadar
ExemptStatus = UNDER_CONSTRUCTION
End
Behavior = RadarUpgrade ModuleTag_11
TriggeredBy = Upgrade_AmericaRadar
End
Behavior = FlammableUpdate ModuleTag_12
AflameDuration = 5000 ; If I catch fire, I'll burn for this long...
AflameDamageAmount = 5 ; taking this much damage...
AflameDamageDelay = 500 ; this often.
End
Behavior = TransitionDamageFX ModuleTag_13
DamagedParticleSystem1 = Bone:None RandomBone:No PSys:StructureTransitionMediumSmoke
ReallyDamagedParticleSystem1 = Bone:None RandomBone:No PSys:StructureTransitionMediumSmoke
ReallyDamagedParticleSystem2 = Bone:None RandomBone:No PSys:StructureTransitionMediumExplosion
ReallyDamagedParticleSystem3 = Bone:None RandomBone:No PSys:StructureTransitionMediumShockwave
End
Behavior = OCLSpecialPower ModuleTag_14
SpecialPowerTemplate = SuperweaponAWMArtilleryTowerStrike
OCL = OCL_AWMControlTowerArtilleryAttack
CreateLocation = CREATE_AT_EDGE_NEAR_SOURCE
OCLAdjustPositionToPassable = No ;Like RA2.... FUCK IT! just drop the mother fuckers! JESUS CHRIST THATS THE POINT!!! GOD FUCKING DAMN IT!!!
End
Behavior = ObjectCreationUpgrade ModuleTag_15
UpgradeObject = OCL_NekoArtilleryBarrage
TriggeredBy = Upgrade_NekoArtilleryBarrage
End
Geometry = BOX
GeometryMajorRadius = 10.0
GeometryMinorRadius = 31.0
GeometryHeight = 25.0
GeometryIsSmall = No
FactoryExitWidth = 25
Shadow = SHADOW_VOLUME
BuildCompletion = PLACED_BY_PLAYER
End
SpecialPowerDumbasses.ini
Code:
Object NekoArtilleryDumbass
Draw = W3DModelDraw ModuleTag_01
OkToChangeModelColor = No
DefaultConditionState
Model = None
End
End
DisplayName = OBJECT:BattleDrone
Side = Neko
EditorSorting = VEHICLE
TransportSlotCount = 0
ArmorSet
Conditions = None
Armor = TankArmor
DamageFX = SmallTankDamageFX
End
BuildCost = 0
BuildTime = 5.0
VisionRange = 0
ShroudClearingRange = 0
ExperienceValue = 0 0 0 0
IsTrainable = No
VoiceSelect = NoSound
VoiceMove = NoSound
VoiceAttack = NoSound
SoundMoveStart = NoSound
RadarPriority = UNIT
KindOf = PRELOAD CAN_CAST_REFLECTIONS VEHICLE DRONE NO_SELECT
Body = ActiveBody ModuleTag_03
MaxHealth = 98989898.0
InitialHealth = 98989898.0
End
Behavior = AIUpdateInterface ModuleTag_04
Turret
TurretTurnRate = 360 // turn rate, in degrees per sec
TurretPitchRate = 360
MinPhysicalPitch = -75 ; If allows pitch, the lowest I can dip down to shoot. defaults to 0 (horizontal)
AllowsPitch = Yes
ControlledWeaponSlots = PRIMARY
End
AutoAcquireEnemiesWhenIdle = Yes
End
Locomotor = SET_NORMAL FakeDroneSpecialPowerLocomotor
Behavior = PhysicsBehavior ModuleTag_05
Mass = 50.0
KillWhenRestingOnGround = Yes
AllowBouncing = No
End
Behavior = SlavedUpdate ModuleTag_07
GuardMaxRange = 99999 ;How far away from master I'm allowed when master is idle (doesn't wander)
GuardWanderRange = 99999 ;How far away I'm allowed to wander from master while guarding.
AttackRange = 99999 ;How far away from master I'm allowed when master is attacking a target.
AttackWanderRange = 99999 ;How far I'm allowed to wander from target.
ScoutRange = 99999 ;How far away from master I'm allowed when master is moving.
ScoutWanderRange = 99999 ;How far I'm allowed to wander from scout point.
StayOnSameLayerAsMaster = Yes
End
Behavior = DestroyDie ModuleTag_08
DeathTypes = ALL
End
Behavior = TransitionDamageFX ModuleTag_10
ReallyDamagedParticleSystem1 = Bone:Smoke RandomBone:Yes PSys:SmokeSmallContinuous01
ReallyDamagedFXList1 = Loc: X:0 Y:0 Z:0 FXList:FX_BattleDroneDamageTransitionSmall
End
Behavior = GrantScienceUpgrade ModuleTag_15
GrantScience = SCIENCE_Artillery
TriggeredBy = Upgrade_NekoArtilleryBarrage
End
Behavior = FlammableUpdate ModuleTag_21
AflameDuration = 5000 ; If I catch fire, I'll burn for this long...
AflameDamageAmount = 3 ; taking this much damage...
AflameDamageDelay = 500 ; this often.
End
Geometry = CYLINDER
GeometryMajorRadius = 5
GeometryMinorRadius = 5
GeometryHeight = 10.0
GeometryIsSmall = Yes
Shadow = SHADOW_VOLUME
ShadowSizeX = 89 ; minimum elevation angle above horizon. Used to limit shadow length
End