[ Index ] WAROFGENERALS

PHP Cross Reference of WAROFGENERALS MODS SOURCES

title

Body

[close]

/Command and conquer Heure H/Light of five stars/INI/Object/ -> ChinaAir.ini (source)

   1  ;----------------------------------------------------------------------------------------------------------
   2  Object ChinaVehicleHelix
   3  
   4    ; *** ART Parameters ***
   5    SelectPortrait         = SNHelix_L
   6    ButtonImage            = SNHelix
   7    
   8    UpgradeCameo3 = Upgrade_ChinaHelixGattlingCannon
   9    UpgradeCameo4 = Upgrade_ChinaHelixPropagandaTower
  10    UpgradeCameo5 = Upgrade_ChinaHelixBattleBunker
  11  
  12      Draw = W3DOverlordAircraftDraw  ModuleTag_01; Works with the dependencyModelDraw of the upgrade portable structures 
  13  
  14        ParticlesAttachedToAnimatedBones = Yes
  15  
  16      DefaultConditionState
  17        Model = NVHELIX
  18        Animation = NVHELIX.NVHELIX
  19        AnimationMode = LOOP
  20        WeaponFireFXBone    = PRIMARY Muzzle03
  21        WeaponMuzzleFlash   = PRIMARY TurretFX03
  22        HideSubObject       = BombWing
  23      End
  24  
  25      ConditionState = MOVING
  26        ParticleSysBone = SMOKE01 HelixExhaust
  27        ParticleSysBone = SMOKE02 HelixExhaust
  28      End
  29  
  30      ConditionState = REALLYDAMAGED
  31        Model = NVHELIX_d
  32        Animation = NVHELIX_d.NVHELIX_d
  33        AnimationMode = LOOP
  34      End
  35      ConditionState = REALLYDAMAGED MOVING
  36        Model = NVHELIX_d
  37        Animation = NVHELIX_d.NVHELIX_d
  38        AnimationMode = LOOP
  39        ParticleSysBone = SMOKE01 HelixExhaust
  40        ParticleSysBone = SMOKE02 HelixExhaust
  41      End
  42  
  43      ConditionState = RUBBLE
  44        Model = NVHELIX_d
  45        Animation = NVHELIX_d.NVHELIX_d
  46        AnimationMode = LOOP
  47      End
  48      ConditionState = RUBBLE MOVING
  49        Model = NVHELIX_d
  50        Animation = NVHELIX_d.NVHELIX_d
  51        AnimationMode = LOOP
  52        ParticleSysBone = SMOKE01 HelixExhaust
  53        ParticleSysBone = SMOKE02 HelixExhaust
  54      End
  55  
  56      ConditionState = RUBBLE SPECIAL_DAMAGED
  57        Model = NVHELIX_d 
  58      End
  59  
  60      OkToChangeModelColor = Yes
  61    End
  62  
  63  
  64    ; ***DESIGN parameters ***
  65    DisplayName         = OBJECT:Helix
  66    EditorSorting       = VEHICLE
  67    Side                = China
  68    TransportSlotCount  = 0                 ;how many "slots" we take in a transport (0 == not transportable)
  69    VisionRange         = 200.0 
  70    ShroudClearingRange = 600
  71    BuildCost           = 1500
  72    BuildTime           = 20.0          ;in seconds  
  73    Prerequisites
  74      Object = ChinaAirfield
  75    End
  76    ExperienceValue     = 50 100 150 200 ;Experience point value at each level
  77    ExperienceRequired  = 0 100 200 400  ;Experience points needed to gain each level
  78    IsTrainable         = Yes  
  79    CommandSet          = ChinaVehicleHelixCommandSet
  80  
  81  
  82    ArmorSet
  83      Conditions      = None
  84      Armor           = ChinookArmor
  85      DamageFX        = None
  86    End
  87  
  88  
  89    WeaponSet
  90      Conditions          = None 
  91      ;----------------------------
  92      Weapon              = PRIMARY     HelixMinigunWeapon
  93      PreferredAgainst    = PRIMARY     INFANTRY
  94      AutoChooseSources   = PRIMARY     FROM_PLAYER FROM_SCRIPT FROM_AI
  95      ;----------------------------
  96    End
  97  
  98    WeaponSet
  99      Conditions          = PLAYER_UPGRADE 
 100      ;----------------------------
 101      Weapon              = PRIMARY     HelixMinigunWeapon
 102      PreferredAgainst    = PRIMARY     INFANTRY
 103      AutoChooseSources   = PRIMARY     FROM_PLAYER FROM_SCRIPT FROM_AI
 104      ;----------------------------
 105    End
 106  
 107  
 108  
 109    ; *** AUDIO Parameters ***
 110    VoiceSelect     = HelixVoiceSelect
 111    VoiceMove       = HelixVoiceMove
 112    VoiceAttack     = HelixVoiceAttack
 113    SoundAmbient    = HelixAmbientLoop
 114    SoundEnter      = HumveeEnter
 115    SoundExit       = HumveeExit
 116    UnitSpecificSounds
 117      VoiceCreate         = HelixVoiceCreate
 118      VoiceUnload         = HelixVoiceUnload
 119      VoiceGarrison       = HelixVoiceMove
 120    End
 121  
 122  
 123  
 124    ; *** ENGINEERING Parameters ***
 125    RadarPriority   = UNIT
 126    KindOf = PRELOAD CAN_CAST_REFLECTIONS SELECTABLE VEHICLE HUGE_VEHICLE TRANSPORT AIRCRAFT SCORE PRODUCED_AT_HELIPAD CAN_ATTACK 
 127  
 128    Body = ActiveBody ModuleTag_03
 129      MaxHealth       = 300.0
 130      InitialHealth   = 300.0
 131    End
 132  
 133    Behavior = FXListDie ModuleTag_05
 134      DeathFX = FX_HelicopterStartDeath
 135    End
 136  
 137    Behavior                       = TransitionDamageFX ModuleTag_06
 138      ReallyDamagedParticleSystem1 = Bone:Smoke RandomBone:Yes PSys:SmokeSmallContinuousDown
 139      ReallyDamagedFXList1         = Loc: X:0 Y:0 Z:0 FXList:FX_ComancheDamageTransition
 140    End
 141  
 142    Behavior = ChinookAIUpdate ModuleTag_07
 143       AutoAcquireEnemiesWhenIdle = Yes 
 144       RotorWashParticleSystem = HelixRotorWashRing
 145    End
 146    Locomotor = SET_NORMAL    HelixLocomotor
 147    Locomotor = SET_TAXIING   BasicHelicopterTaxiLocomotor
 148  
 149  
 150    Behavior = PhysicsBehavior ModuleTag_09
 151      Mass = 50.0
 152    End
 153  
 154    Behavior = HelicopterSlowDeathBehavior ModuleTag_10
 155      DestructionDelay                = 99999999        ; the destruction delay
 156      SpiralOrbitTurnRate             = 80.0           ; in degrees per second, bigger # = tighter spiral
 157      SpiralOrbitForwardSpeed         = 110.0           ; bigger # = larger spiral
 158      SpiralOrbitForwardSpeedDamping  = .9999           ; smaller #'s = slow down faster
 159      MaxBraking                      = 210   ; max braking we can use during death spiral (lower num = wilder spiral)    
 160      SoundDeathLoop                  = HelixDamagedLoop
 161      MinSelfSpin                     = 40                     ; in degrees per second
 162      MaxSelfSpin                     = 120                     ; in degrees per second
 163      SelfSpinUpdateDelay             = 300                     ; in milliseconds
 164      SelfSpinUpdateAmount            = 5                      ; in degrees   
 165      FallHowFast                     = 8.0%                   ; fraction of gravity, lower = take longer to fall
 166      MinBladeFlyOffDelay             = 1000                    ; in milliseconds
 167      MaxBladeFlyOffDelay             = 1000                    ; in milliseconds
 168      AttachParticle                  = SootySmokeTrail
 169      AttachParticleBone              = Propeller02
 170      BladeObjectName                 = HelixBlades
 171      BladeBoneName                   = Propeller01    
 172      FXBlade                         = FX_HelicopterBladeExplosion
 173      OCLBlade                        = OCL_HelicopterBladeExplosion
 174      FXHitGround                     = FX_HelicopterHitGround
 175      OCLHitGround                    = OCL_HelicopterHitGround
 176      FXFinalBlowUp                   = FX_HelixHelicopterBlowUpBig
 177      OCLFinalBlowUp                  = OCL_HelixBlades
 178      DelayFromGroundToFinalDeath     = 30
 179      FinalRubbleObject               = HelixRubbleHull
 180    End
 181  
 182    Behavior = FlammableUpdate ModuleTag_21
 183      AflameDuration = 5000         ; If I catch fire, I'll burn for this long...
 184      AflameDamageAmount = 3        ; taking this much damage...
 185      AflameDamageDelay = 500       ; this often.
 186    End
 187  
 188  
 189  
 190    Behavior = ProductionUpdate ModuleTag_25
 191      MaxQueueEntries = 1; So you can't build multiple upgrades in the same frame
 192    End
 193  
 194  
 195  
 196  
 197  
 198    ;--------------------------
 199    Behavior = ObjectCreationUpgrade ModuleTag_22
 200      UpgradeObject = OCL_HelixGattlingCannon
 201      TriggeredBy   = Upgrade_ChinaHelixGattlingCannon
 202      ConflictsWith = Upgrade_ChinaHelixPropagandaTower Upgrade_ChinaHelixBattleBunker
 203    End
 204    Behavior = CommandSetUpgrade ModuleTag_26
 205      CommandSet = ChinaHelixGattlingCannonCommandSet
 206      TriggeredBy   = Upgrade_ChinaHelixGattlingCannon
 207      ConflictsWith = Upgrade_ChinaHelixPropagandaTower Upgrade_ChinaHelixBattleBunker
 208    End
 209    Behavior = WeaponSetUpgrade ModuleTag_35
 210      TriggeredBy = Upgrade_ChinaHelixGattlingCannon
 211    End
 212  ; lorenzen commented out 8/4... the helix now keeps its minigun, even when upgraded to gattling
 213  ;  Behavior = SubObjectsUpgrade ModuleTag_36
 214  ;    TriggeredBy    = Upgrade_ChinaHelixGattlingCannon 
 215  ;    ConflictsWith  = Upgrade_ChinaHelixPropagandaTower Upgrade_ChinaHelixBattleBunker
 216  ;    HideSubObjects = MINIGUN 
 217  ;  End
 218    ;--------------------------
 219    Behavior = ObjectCreationUpgrade ModuleTag_23
 220      UpgradeObject = OCL_HelixPropagandaTower
 221      TriggeredBy   = Upgrade_ChinaHelixPropagandaTower
 222      ConflictsWith = Upgrade_ChinaHelixGattlingCannon Upgrade_ChinaHelixBattleBunker
 223    End
 224    Behavior = CommandSetUpgrade ModuleTag_27
 225      CommandSet = ChinaHelixPropagandaTowerCommandSet
 226      TriggeredBy   = Upgrade_ChinaHelixPropagandaTower
 227      ConflictsWith = Upgrade_ChinaHelixGattlingCannon Upgrade_ChinaHelixBattleBunker
 228    End
 229    ;--------------------------
 230    Behavior = ObjectCreationUpgrade ModuleTag_24
 231      UpgradeObject = OCL_HelixBattleBunker
 232      TriggeredBy   = Upgrade_ChinaHelixBattleBunker
 233      ConflictsWith = Upgrade_ChinaHelixGattlingCannon Upgrade_ChinaHelixPropagandaTower
 234    End
 235    Behavior = CommandSetUpgrade ModuleTag_28
 236      CommandSet = ChinaHelixBattleBunkerCommandSet
 237      TriggeredBy   = Upgrade_ChinaHelixBattleBunker
 238      ConflictsWith = Upgrade_ChinaHelixGattlingCannon Upgrade_ChinaHelixPropagandaTower
 239    End
 240    Behavior = PassengersFireUpgrade ModuleTag_34
 241      TriggeredBy   = Upgrade_ChinaHelixBattleBunker
 242    End
 243    ;--------------------------
 244  
 245    Behavior = HelixContain ModuleTag_29
 246      Slots                   = 5
 247      DamagePercentToUnits    = 100%
 248      AllowInsideKindOf       = INFANTRY VEHICLE PORTABLE_STRUCTURE
 249      ForbidInsideKindOf      = AIRCRAFT 
 250      ExitDelay               = 100
 251      NumberOfExitPaths       = 1
 252      PassengersAllowedToFire = No 
 253    End
 254  
 255  
 256    Behavior = WeaponSetUpgrade ModuleTag_30
 257      TriggeredBy = Upgrade_ChinaBlackNapalm
 258    End
 259  
 260  
 261    Behavior = SpecialAbility ModuleTag_32
 262      SpecialPowerTemplate = SpecialAbilityHelixNapalmBomb
 263      UpdateModuleStartsAttack = Yes
 264      StartsPaused              = Yes; so the UnpauseSpecialPowerUpgrade, below can turn it on
 265      InitiateSound             = HelixVoiceAttack
 266    End
 267    Behavior = SpecialAbilityUpdate ModuleTag_33
 268      SpecialPowerTemplate = SpecialAbilityHelixNapalmBomb
 269      StartAbilityRange = 3.0
 270      PreparationTime = 0
 271      SpecialObject = NapalmBomb
 272      MaxSpecialObjects = 1
 273      SpecialObjectsPersistWhenOwnerDies = Yes 
 274      SpecialObjectsPersistent = Yes          ;Charges are persistent till lifetime expires or owner detonates them.
 275      UniqueSpecialObjectTargets = No        ;This would prevent multiple charges placed on the same object.
 276      UnpackTime              = 500     ;slight delay to drop bomb
 277      FlipOwnerAfterUnpacking = No
 278      FleeRangeAfterCompletion = 0.0         ;DOes not run away after finishing ability
 279      UnpackSound               = NoSound
 280      LoseStealthOnTrigger      = No
 281      ApproachRequiresLOS       = No ; we are a helicopter, we can see everything
 282      NeedToFaceTarget          = No ; can drop the bomb at any angle to target
 283  
 284      PersistentPrepTime        = 100
 285      PersistenceRequiresRecharge = Yes
 286  
 287    End
 288    Behavior = UnpauseSpecialPowerUpgrade ModuleTag_38
 289      SpecialPowerTemplate = SpecialAbilityHelixNapalmBomb
 290      TriggeredBy = Upgrade_HelixNapalmBomb
 291    End
 292    Behavior = SubObjectsUpgrade ModuleTag_39
 293      TriggeredBy    = Upgrade_HelixNapalmBomb 
 294      ShowSubObjects = BombWing 
 295    End
 296  
 297  
 298  
 299  
 300  
 301    Geometry              = CYLINDER
 302    GeometryMajorRadius   = 35.0
 303    GeometryHeight        = 30.0     
 304    GeometryIsSmall       = No
 305    Shadow                = SHADOW_VOLUME    
 306    ShadowSizeX           = 89  ; minimum elevation angle above horizon. Used to limit shadow length
 307  
 308  End
 309  
 310  
 311  
 312  
 313  
 314  
 315  
 316  ;------------------------------------------------------------------------------
 317  Object ChinaHelixGattlingCannon
 318  
 319    ; *** ART Parameters ***
 320    SelectPortrait         = SNGatTower_L
 321    ButtonImage            = SNGatTower
 322    
 323    
 324    
 325    Draw                    = W3DDependencyModelDraw ModuleTag_01
 326      OkToChangeModelColor  = Yes
 327      AttachToBoneInContainer = CHASSISBONE
 328  
 329      DefaultConditionState
 330        Model               = NVHelix_G
 331        Turret              = TURRET01
 332        TurretPitch         = TURRETEL
 333        WeaponFireFXBone    = PRIMARY Muzzle
 334        WeaponMuzzleFlash   = PRIMARY MuzzleFX
 335      End
 336      ConditionState        = CONTINUOUS_FIRE_SLOW
 337        Model               = NVHelix_G
 338        Animation           = NVHelix_G.NVHelix_G
 339        AnimationMode       = LOOP
 340        AnimationSpeedFactorRange = 0.1 0.1 ;set this state to animate  s l o w l y
 341      End
 342       ConditionState       = CONTINUOUS_FIRE_MEAN
 343        Model               = NVHelix_G
 344        Animation           = NVHelix_G.NVHelix_G
 345        AnimationMode       = LOOP
 346        AnimationSpeedFactorRange = 0.2 0.2 ;set this state to animate  medium-fast
 347      End
 348      ConditionState        = CONTINUOUS_FIRE_FAST
 349        Model               = NVHelix_G
 350        Animation           = NVHelix_G.NVHelix_G
 351        AnimationMode       = LOOP
 352        AnimationSpeedFactorRange = 0.3 0.3 ;set this state to animate  vryfst
 353        ParticleSysBone    = Muzzle01 GattlingMuzzleSmoke
 354        ParticleSysBone    = Muzzle02 GattlingMuzzleSmoke
 355      End
 356  
 357      ConditionState        = REALLYDAMAGED 
 358        Model               = NVHelix_GD
 359        Turret              = TURRET01
 360        TurretPitch         = TURRETEL
 361        WeaponFireFXBone    = PRIMARY Muzzle
 362        WeaponMuzzleFlash   = PRIMARY MuzzleFX
 363        ParticleSysBone     = Smoke01 SmokeFactionMedium
 364        ParticleSysBone     = Smoke02 SmokeFactionMedium
 365        ParticleSysBone     = Smoke03 SmokeFactionMedium
 366        ParticleSysBone     = SparkM01 SparksMedium
 367        ParticleSysBone     = SparkM02 SparksMedium
 368      End
 369      ConditionState        = CONTINUOUS_FIRE_SLOW REALLYDAMAGED 
 370        Model               = NVHelix_GD
 371        Animation           = NVHelix_GD.NVHelix_GD
 372        AnimationMode       = LOOP
 373        AnimationSpeedFactorRange = 0.1 0.1 ;set this state to animate  s l o w l y
 374      End
 375       ConditionState       = CONTINUOUS_FIRE_MEAN REALLYDAMAGED 
 376        Model               = NVHelix_GD
 377        Animation           = NVHelix_GD.NVHelix_GD
 378        AnimationMode       = LOOP
 379        AnimationSpeedFactorRange = 0.2 0.2 ;set this state to animate  medium-fast
 380      End
 381      ConditionState        = CONTINUOUS_FIRE_FAST REALLYDAMAGED 
 382        Model               = NVHelix_GD
 383        Animation           = NVHelix_GD.NVHelix_GD
 384        AnimationMode       = LOOP
 385        AnimationSpeedFactorRange = 0.3 0.3 ;set this state to animate  vryfst
 386        ParticleSysBone    = Muzzle01 GattlingMuzzleSmoke
 387        ParticleSysBone    = Muzzle02 GattlingMuzzleSmoke
 388      End
 389  
 390    End
 391  
 392    ; ***DESIGN parameters ***
 393    Side             = China
 394    EditorSorting    = SYSTEM
 395    TransportSlotCount = 1
 396    WeaponSet
 397      Conditions          = None 
 398      Weapon              = PRIMARY   GattlingBuildingGun
 399      PreferredAgainst    = PRIMARY INFANTRY
 400      Weapon              = SECONDARY GattlingBuildingGunAir
 401      PreferredAgainst    = SECONDARY BALLISTIC_MISSILE AIRCRAFT
 402    End
 403    
 404    ArmorSet
 405      Conditions     = None
 406      Armor          = InvulnerableAllArmor ; We can't be hurt on the field.  We share damage from the Overlord with his damage module
 407    End
 408    VisionRange     = 200
 409  
 410    ; *** AUDIO Parameters ***
 411    UnitSpecificSounds
 412      TurretMoveStart = NoSound
 413      TurretMoveLoop  = NoSound ;TurretMoveLoop
 414      VoiceRapidFire  = NoSound
 415    End
 416  
 417    ; *** ENGINEERING Parameters ***
 418    KindOf            = PRELOAD PORTABLE_STRUCTURE CAN_ATTACK CLICK_THROUGH IGNORED_IN_GUI
 419    
 420    Body            = StructureBody ModuleTag_02
 421      MaxHealth       = 100.0
 422      InitialHealth   = 100.0
 423    End
 424  
 425    Behavior = StealthDetectorUpdate ModuleTag_SDU
 426      DetectionRate     = 1500   ; how often to rescan for stealthed things in my sight (msec)
 427      DetectionRange   = 200    
 428      CanDetectWhileGarrisoned  = No ;Garrisoned means being in a structure that you units can shoot out of.
 429      CanDetectWhileContained   = Yes ;Contained means being in a transport or tunnel network.
 430    End
 431  
 432  
 433    Behavior = AIUpdateInterface ModuleTag_03
 434      Turret
 435        ControlledWeaponSlots = PRIMARY 
 436        TurretTurnRate      = 60   // turn rate, in degrees per sec
 437        TurretPitchRate     = 60
 438        AllowsPitch         = Yes
 439      End
 440      AutoAcquireEnemiesWhenIdle = Yes 
 441    End
 442  
 443    Behavior             = DestroyDie ModuleTag_04
 444      ;nothing
 445    End
 446  
 447    Behavior = WeaponBonusUpgrade ModuleTag_05
 448      TriggeredBy = Upgrade_ChinaChainGuns
 449    End
 450  
 451  
 452    Geometry            = BOX
 453    GeometryMajorRadius = 8.0
 454    GeometryMinorRadius = 8.0
 455    GeometryHeight      = 9.0
 456    GeometryIsSmall     = No      
 457    Shadow              = SHADOW_VOLUME
 458    ShadowSizeX = 89  ; minimum elevation angle above horizon. Used to limit shadow length
 459  
 460  End
 461  
 462  ;------------------------------------------------------------------------------
 463  Object ChinaHelixPropagandaTower
 464  
 465    ; *** ART Parameters ***
 466    SelectPortrait         = SNPropSpeaker_L
 467    ButtonImage            = SNPropSpeaker
 468    
 469    
 470    Draw                    = W3DDependencyModelDraw ModuleTag_01
 471      OkToChangeModelColor  = Yes
 472      AttachToBoneInContainer = CHASSISBONE
 473  
 474      ConditionState = NONE
 475        Model         = NVHELIX_S
 476        Animation     = NVHELIX_S.NVHELIX_S
 477        AnimationMode = LOOP
 478      End
 479      ConditionState = REALLYDAMAGED
 480        Model         = NVHELIX_SD
 481        ParticleSysBone = Smoke01 SmolderingSmoke
 482        ParticleSysBone = Smoke02 SmolderingSmoke
 483        ParticleSysBone = Flame01 SmolderingFire
 484        ParticleSysBone = Flame01 SmolderingFlameCore
 485        ParticleSysBone = Spark01 LiveWireSparks
 486      End
 487      ; night
 488      ConditionState = NIGHT
 489        Model         = NVHELIX_S
 490        Animation     = NVHELIX_S.NVHELIX_S
 491        AnimationMode = LOOP
 492      End 
 493    End
 494  
 495    PlacementViewAngle = -45
 496  
 497    ; ***DESIGN parameters ***
 498    Side             = China
 499    EditorSorting    = SYSTEM
 500    TransportSlotCount = 1
 501    
 502    ArmorSet
 503      Conditions     = None
 504      Armor          = InvulnerableAllArmor ; We can't be hurt on the field.  We share damage from the Overlord with his damage module
 505    End
 506    VisionRange     = 200
 507  
 508    ; *** AUDIO Parameters ***
 509    UnitSpecificSounds
 510     TurretMoveStart = NoSound
 511      TurretMoveLoop  = NoSound ;TurretMoveLoop
 512    End
 513  
 514    ; *** ENGINEERING Parameters ***
 515    KindOf            = PRELOAD PORTABLE_STRUCTURE CAN_ATTACK CLICK_THROUGH IGNORED_IN_GUI
 516      Body            = StructureBody ModuleTag_02
 517      MaxHealth       = 100.0
 518      InitialHealth   = 100.0
 519    End
 520  
 521    Behavior = AIUpdateInterface ModuleTag_03
 522      ;<No Data>
 523    End
 524    
 525    Behavior        = PropagandaTowerBehavior ModuleTag_04
 526      Radius                = 150.0
 527      DelayBetweenUpdates   = 2000 ; in milliseconds
 528      HealPercentEachSecond = 1%   ; get this % of max health every second 
 529      PulseFX               = FX_HelixPropagandaTowerPropagandaPulse ;plays as often as DelayBetweenUpdates
 530      UpgradeRequired       = Upgrade_ChinaSubliminalMessaging
 531      UpgradedHealPercentEachSecond = 2%   ; get this % of max health every second 
 532      UpgradedPulseFX       = FX_HelixPropagandaTowerSubliminalPulse ;plays as often as DelayBetweenUpdates
 533  
 534    End
 535  
 536    Behavior             = DestroyDie ModuleTag_05
 537      ;<No Data>
 538    End
 539  
 540    Geometry            = BOX
 541    GeometryMajorRadius = 6.0
 542    GeometryMinorRadius = 6.0
 543    GeometryHeight      = 10.0
 544    GeometryIsSmall     = No      
 545    Shadow              = SHADOW_VOLUME
 546    ShadowSizeX = 89  ; minimum elevation angle above horizon. Used to limit shadow length
 547  
 548  End
 549  
 550  ;------------------------------------------------------------------------------
 551  Object ChinaHelixBattleBunker
 552  
 553    ; *** ART Parameters ***
 554    SelectPortrait         = SNBunker_L
 555    ButtonImage            = SNBunker
 556    
 557    
 558    Draw                    = W3DDependencyModelDraw ModuleTag_01
 559      OkToChangeModelColor  = Yes
 560      AttachToBoneInContainer = CHASSISBONE
 561  
 562      ConditionState = NONE
 563        Model         = NVHELIX_B
 564      End
 565      ConditionState = REALLYDAMAGED
 566        Model         = NVHELIX_BD
 567        ParticleSysBone = Smoke01 SmolderingSmoke
 568        ParticleSysBone = Smoke02 SmolderingSmoke
 569        ParticleSysBone = Flame01 SmolderingFire
 570        ParticleSysBone = Flame01 SmolderingFlameCore
 571        ParticleSysBone = Spark01 LiveWireSparks
 572      End
 573      ; night
 574      ConditionState = NIGHT
 575        Model         = NVHELIX_B
 576      End 
 577      ConditionState = NIGHT REALLYDAMAGED
 578        Model         = NVHELIX_BD
 579        ParticleSysBone = Smoke01 SmolderingSmoke
 580        ParticleSysBone = Smoke02 SmolderingSmoke
 581        ParticleSysBone = Flame01 SmolderingFire
 582        ParticleSysBone = Flame01 SmolderingFlameCore
 583        ParticleSysBone = Spark01 LiveWireSparks
 584      End
 585    End
 586  
 587    PlacementViewAngle = -45
 588  
 589    ; ***DESIGN parameters ***
 590    Side             = China
 591    EditorSorting    = SYSTEM
 592    TransportSlotCount = 1
 593    
 594    ArmorSet
 595      Conditions     = None
 596      Armor          = InvulnerableAllArmor ; We can't be hurt on the field.  We share damage from the Overlord with his damage module
 597    End
 598    VisionRange     = 200
 599  
 600    ; *** AUDIO Parameters ***
 601    UnitSpecificSounds
 602      TurretMoveStart = NoSound
 603      TurretMoveLoop  = NoSound ;TurretMoveLoop
 604      VoiceUnload     = OverlordTankVoiceUnload
 605    End
 606  
 607    ; *** ENGINEERING Parameters ***
 608    KindOf            = PRELOAD PORTABLE_STRUCTURE CLICK_THROUGH IGNORED_IN_GUI
 609      Body            = StructureBody ModuleTag_02
 610      MaxHealth       = 100.0
 611      InitialHealth   = 100.0
 612    End
 613  
 614  
 615    Behavior             = DestroyDie ModuleTag_04
 616      ;nothing
 617    End
 618  
 619    Geometry            = BOX
 620    GeometryMajorRadius = 6.0
 621    GeometryMinorRadius = 6.0
 622    GeometryHeight      = 10.0
 623    GeometryIsSmall     = No      
 624    Shadow              = SHADOW_VOLUME
 625    ShadowSizeX = 89  ; minimum elevation angle above horizon. Used to limit shadow length
 626  
 627  End
 628  
 629  
 630  
 631  
 632  
 633  
 634  ;------------------------------------------------------------------------------
 635  Object ChinaJetMIG
 636  
 637    ; *** ART Parameters ***
 638    SelectPortrait         = T12
 639    ButtonImage            = T12
 640    
 641    UpgradeCameo1 = Upgrade_ChinaAircraftArmor
 642    UpgradeCameo2 = Upgrade_ChinaBlackNapalm
 643    ;UpgradeCameo3 = NONE
 644    ;UpgradeCameo4 = NONE
 645    ;UpgradeCameo5 = NONE
 646    
 647    Draw = W3DModelDraw ModuleTag_01
 648  
 649      OkToChangeModelColor = Yes
 650  
 651      DefaultConditionState
 652        Model               = NVMIG
 653        HideSubObject       = BurnerFX01 BurnerFX02
 654        WeaponLaunchBone    = PRIMARY WeaponA
 655      End
 656  
 657      ConditionState        = JETEXHAUST
 658        ParticleSysBone     = Wingtip01 JetContrail
 659        ParticleSysBone     = Wingtip02 JetContrail
 660      End
 661  
 662      ConditionState       = JETEXHAUST JETAFTERBURNER
 663        ShowSubObject      = BurnerFX01 BurnerFX02
 664        ParticleSysBone     = Exhaust01 JetExhaust
 665        ParticleSysBone     = Exhaust02 JetExhaust
 666        ParticleSysBone     = Wingtip01 JetContrail
 667        ParticleSysBone     = Wingtip02 JetContrail
 668      End
 669  
 670      ConditionState        = REALLYDAMAGED
 671        Model               = NVMIG
 672        ParticleSysBone     = Wingtip01 JetContrail
 673        ParticleSysBone     = Wingtip02 JetContrail
 674      End
 675  
 676      ConditionState        = RUBBLE
 677        Model               = NVMIG
 678      End
 679  
 680      ConditionState        = REALLYDAMAGED JETEXHAUST
 681        Model               = NVMIG
 682        ParticleSysBone     = Wingtip01 JetContrail
 683        ParticleSysBone     = Wingtip02 JetContrail
 684      End
 685  
 686      ConditionState        = REALLYDAMAGED JETEXHAUST JETAFTERBURNER
 687        Model               = NVMIG
 688        ShowSubObject       = BurnerFX01 BurnerFX02
 689        ParticleSysBone     = Engine01 JetExhaust
 690        ParticleSysBone     = Engine02 JetExhaust
 691        ParticleSysBone     = Wingtip01 JetContrail
 692        ParticleSysBone     = Wingtip02 JetContrail
 693      End
 694  
 695      ConditionState        = RUBBLE JETEXHAUST JETAFTERBURNER
 696        ; @todo srj -- model missing
 697        ;Model              = NVMIG
 698        Model               = NVMIG
 699        ;HideSubObject is needed cause there're inherited from default condition state      
 700        HideSubObject       = None 
 701        ShowSubObject       = None
 702        ParticleSysBone     = Engine01 JetExhaust
 703        ParticleSysBone     = Engine02 JetExhaust
 704        ParticleSysBone     = Wingtip01 JetContrail
 705        ParticleSysBone     = Wingtip02 JetContrail
 706      End
 707  
 708    End
 709  
 710    ; ***DESIGN parameters ***
 711    DisplayName             = OBJECT:MIG
 712    EditorSorting           = VEHICLE
 713    Side                    = China
 714    TransportSlotCount      = 0          ;how many "slots" we take in a transport (0 == not transportable)
 715    VisionRange             = 200.0 
 716    ShroudClearingRange     = 300.0
 717  
 718    Prerequisites
 719      Object                = ChinaAirfield
 720    End
 721  
 722    WeaponSet
 723      Conditions        = None 
 724      Weapon            = PRIMARY     NapalmMissileWeapon
 725  ;    AutoChooseSources = PRIMARY     NONE
 726    End
 727    WeaponSet
 728      Conditions = PLAYER_UPGRADE 
 729      Weapon            = PRIMARY     BlackNapalmMissileWeapon
 730  ;    AutoChooseSources = PRIMARY     NONE
 731    End
 732  
 733    ArmorSet
 734      Conditions           = None
 735      Armor                = AirplaneArmor
 736      DamageFX             = None
 737    End
 738  
 739    BuildCost               = 1200
 740    BuildTime               = 10   
 741    ExperienceValue         = 50 50 100 150   ;Experience point value at each level
 742    ExperienceRequired      = 0 100 200 400  ;Experience points needed to gain each level
 743    IsTrainable = Yes             ;Can gain experience
 744    CrusherLevel           = 1  ;What can I crush?: 1 = infantry, 2 = trees, 3 = vehicles
 745    CrushableLevel         = 2  ;What am I?:        0 = for infantry, 1 = for trees, 2 = general vehicles
 746    CommandSet             = ChinaJetMIGCommandSet
 747  
 748    ; *** AUDIO Parameters ***
 749    VoiceSelect             = MigVoiceSelect
 750    VoiceMove               = MigVoiceMove
 751    VoiceAttack             = MigVoiceAttack
 752    VoiceAttackAir          = MigVoiceAttackAir
 753    VoiceGuard              = MigVoiceAirPatrol
 754    SoundAmbient            = MigAmbientLoop
 755    UnitSpecificSounds
 756      VoiceCreate           = MigVoiceCreate
 757      Afterburner           = RaptorAfterburner
 758      VoiceGarrison         = MigVoiceMove
 759    End
 760  
 761    ; *** ENGINEERING Parameters ***
 762    RadarPriority          = UNIT
 763    KindOf                 = PRELOAD CAN_CAST_REFLECTIONS CAN_ATTACK SELECTABLE VEHICLE SCORE AIRCRAFT
 764    Body                   = ActiveBody ModuleTag_02
 765      MaxHealth            = 160.0
 766      InitialHealth        = 160.0
 767    End
 768  
 769    Behavior                          = JetSlowDeathBehavior ModuleTag_03
 770      FXOnGroundDeath                 = FX_JetOnGroundDeath
 771      OCLOnGroundDeath                = OCL_MIGDeathFinalBlowUp
 772      DestructionDelay                = 99999999  ; destruction will happen when we
 773      RollRate                        = 0.2
 774      RollRateDelta                   = 100%      ;each frame, rollrate = rollrate * rollrateDelta
 775      PitchRate                       = 0.0
 776      FallHowFast                     = 110.0%    ;Bigger is faster (can be over 100%,it's a fraction of gravity)
 777      FXInitialDeath                  = FX_MigDeathInitial
 778      OCLInitialDeath                 = OCL_MIGDeathInitial
 779      DelaySecondaryFromInitialDeath  = 500       ; in milliseconds
 780      FXSecondary                     = FX_JetDeathSecondary
 781      OCLSecondary                    = OCL_MIGDeathSecondary
 782      FXHitGround                     = FX_JetDeathHitGround
 783      OCLHitGround                    = OCL_MIGDeathHitGround
 784      DelayFinalBlowUpFromHitGround   = 200       ; in milliseconds
 785      FXFinalBlowUp                   = FX_JetDeathFinalBlowUp
 786      OCLFinalBlowUp                  = OCL_MIGDeathFinalBlowUp
 787    End
 788  
 789    Behavior = WeaponSetUpgrade ModuleTag_04
 790      TriggeredBy = Upgrade_ChinaBlackNapalm
 791    End
 792  
 793    Behavior = PhysicsBehavior ModuleTag_05
 794      Mass = 500.0
 795    End
 796  
 797    Behavior = JetAIUpdate ModuleTag_06
 798      OutOfAmmoDamagePerSecond  = 10%     ; amount of damage to take per SEC (not per frame) when out of ammo
 799                                          ; note that it's expressed as a percent of max health, not an absolute
 800      TakeoffDistForMaxLift     = 0%   ; larger numbers give more lift sooner when taking off
 801      TakeoffPause              = 500
 802      MinHeight                 = 5
 803      ReturnToBaseIdleTime      = 10000         ; if idle for this long, return to base, even if not out of ammo
 804    End
 805  
 806    Locomotor = SET_NORMAL MIGLocomotor
 807    Locomotor = SET_TAXIING BasicJetTaxiLocomotor
 808  
 809  
 810    Behavior = FlammableUpdate ModuleTag_08
 811      AflameDuration = 5000        ; If I catch fire, I'll burn for this long...
 812      AflameDamageAmount = 3       ; taking this much damage...
 813      AflameDamageDelay = 500      ; this often.
 814    End
 815  
 816    Behavior                       = TransitionDamageFX ModuleTag_09
 817      ReallyDamagedParticleSystem1 = Bone:Smoke RandomBone:Yes Psys:SmokeSmallContinuous01
 818      ReallyDamagedFXList1         = Loc: X:0 Y:0 Z:0 FXList:FX_MIGDamageTransition
 819    End
 820  
 821    Behavior        = MaxHealthUpgrade ModuleTag_10
 822      TriggeredBy   = Upgrade_ChinaAircraftArmor
 823      AddMaxHealth  = 40.0
 824      ChangeType    = ADD_CURRENT_HEALTH_TOO   ;Choices are PRESERVE_RATIO, ADD_CURRENT_HEALTH_TOO, and SAME_CURRENTHEALTH
 825    End
 826  
 827  
 828  
 829    Geometry                 = Box
 830    GeometryIsSmall          = Yes
 831    GeometryMajorRadius      = 14.0
 832    GeometryMinorRadius      = 7.0
 833    GeometryHeight           = 5.0
 834    Shadow                   = SHADOW_VOLUME
 835    
 836    Shadow = SHADOW_VOLUME
 837    ShadowSizeX = 89  ; minimum elevation angle above horizon. Used to limit shadow length
 838  
 839  End
 840  
 841  
 842  
 843  
 844  ;------------------------------------------------------------------------------
 845  Object ChinaJetCargoPlane
 846  
 847    ; *** ART Parameters ***
 848    Draw = W3DModelDraw ModuleTag_01
 849      DefaultConditionState
 850        Model           = NVCargoPln
 851        Animation       = NVCargoPln.NVCargoPln
 852        AnimationMode   = LOOP
 853        ParticleSysBone = Propeller01 JetBlackTrailThin
 854        ParticleSysBone = Propeller02 JetBlackTrailThin
 855        ParticleSysBone = Propeller03 JetBlackTrailThin
 856        ParticleSysBone = Propeller04 JetBlackTrailThin
 857        ParticleSysBone = WingTip01 JetContrailThin
 858        ParticleSysBone = WingTip02 JetContrailThin
 859      End
 860      ConditionState = DAMAGED
 861        Model           = NVCargoPln_D
 862        Animation       = NVCargoPln_D.NVCargoPln_D
 863        AnimationMode   = MANUAL
 864        Flags           = START_FRAME_FIRST
 865        ParticleSysBone = Smoke01 JetFireLarge
 866        ParticleSysBone = Smoke03 JetFireLarge
 867        ParticleSysBone = Propeller01 JetBlackTrailThin
 868        ParticleSysBone = Propeller02 JetBlackTrailThin
 869        ParticleSysBone = Propeller03 JetBlackTrailThin
 870        ParticleSysBone = Propeller04 JetBlackTrailThin
 871        ParticleSysBone = Smoke01 JetSmokeLarge
 872        ParticleSysBone = Smoke03 JetSmokeLarge
 873        ParticleSysBone = WingTip01 JetContrailThin
 874        ParticleSysBone = WingTip02 JetContrailThin
 875      End
 876      ConditionState = REALLYDAMAGED
 877        Model           = NVCargoPln_D
 878        Animation       = NVCargoPln_D.NVCargoPln_D
 879        AnimationMode   = MANUAL
 880        Flags           = START_FRAME_FIRST
 881        ParticleSysBone = Smoke01 JetFireLarge
 882        ParticleSysBone = Smoke03 JetFireLarge
 883        ParticleSysBone = Smoke04 JetFireLarge
 884        ParticleSysBone = Propeller03 JetBlackTrailThin
 885        ParticleSysBone = Propeller04 JetBlackTrailThin
 886        ParticleSysBone = Smoke01 JetSmokeLarge
 887        ParticleSysBone = Smoke03 JetSmokeLarge
 888        ParticleSysBone = Smoke04 JetSmokeLarge
 889        ParticleSysBone = WingTip01 JetContrailThin
 890        ParticleSysBone = WingTip02 JetContrailThin
 891      End
 892      ConditionState = RUBBLE
 893        Model           = NVCargoPln_D1
 894        ParticleSysBone = Smoke01 JetFireLarge
 895        ParticleSysBone = Smoke06 JetFireLarge
 896        ParticleSysBone = Smoke03 JetFireLarge
 897        ParticleSysBone = Smoke04 JetFireLarge
 898        ParticleSysBone = Smoke01 JetSmokeLarge
 899        ParticleSysBone = Smoke06 JetSmokeLarge
 900        ParticleSysBone = Smoke03 JetSmokeLarge
 901        ParticleSysBone = Smoke04 JetSmokeLarge
 902      End
 903      
 904      OkToChangeModelColor = Yes
 905        ParticlesAttachedToAnimatedBones = Yes 
 906  
 907    End
 908  
 909    Draw = W3DModelDraw ModuleTag_02
 910      DefaultConditionState
 911        Model           = NVCargoPln_A2
 912        Animation       = NVCargoPln_A2.NVCargoPln_A2
 913        AnimationMode   = MANUAL
 914        Flags           = START_FRAME_FIRST
 915      End
 916      ConditionState = DOOR_1_OPENING
 917        Model           = NVCargoPln_A2
 918        Animation       = NVCargoPln_A2.NVCargoPln_A2
 919        AnimationMode   = ONCE
 920        Flags           = START_FRAME_FIRST
 921      End
 922      ConditionState = DOOR_1_CLOSING
 923        Model           = NVCargoPln_A2
 924        Animation       = NVCargoPln_A2.NVCargoPln_A2
 925        AnimationMode   = ONCE_BACKWARDS
 926        Flags           = START_FRAME_LAST
 927      End
 928    End
 929  
 930    
 931    ; ***DESIGN parameters ***
 932    DisplayName         = OBJECT:CargoPlane
 933    EditorSorting       = VEHICLE
 934    Side                = China
 935    TransportSlotCount  = 0                 ;how many "slots" we take in a transport (0 == not transportable)
 936    VisionRange         = 0.0 
 937    ArmorSet
 938      Conditions      = None
 939      Armor           = AirplaneArmor
 940      DamageFX        = None
 941    End
 942    CommandSet        = Command_ScriptedTransportDrops
 943  
 944    ; *** AUDIO Parameters ***
 945    SoundAmbient = C130AmbientLoop
 946    SoundAmbientRubble    = NoSound
 947  
 948    ; *** ENGINEERING Parameters ***
 949    RadarPriority = UNIT
 950    KindOf = PRELOAD CAN_CAST_REFLECTIONS VEHICLE TRANSPORT AIRCRAFT SCORE FORCEATTACKABLE IGNORED_IN_GUI CAN_ATTACK EMP_HARDENED
 951    Body = ActiveBody ModuleTag_03
 952      MaxHealth       = 1000.0
 953      InitialHealth   = 1000.0
 954    End
 955  
 956    ExperienceValue     = 40 40 40 40  ; Experience point value at each level
 957   
 958    Behavior = PhysicsBehavior ModuleTag_04
 959      Mass = 500.0
 960    End
 961  
 962    Behavior = DeliverPayloadAIUpdate ModuleTag_05
 963      DoorDelay = 500
 964      MaxAttempts = 4
 965      DropOffset = X:0 Y:0 Z:-10
 966      DropDelay = 300 ;500 ; time in between each item dropped (if more than one)
 967      PutInContainer = AmericaParachute
 968      DeliveryDistance = 150
 969    End
 970    Locomotor = SET_NORMAL B52Locomotor
 971  
 972    Behavior = TransportContain ModuleTag_06
 973      Slots = 100                     ; hey, it's a BIG transport
 974      ScatterNearbyOnExit = No
 975      OrientLikeContainerOnExit = Yes
 976      KeepContainerVelocityOnExit = Yes
 977      ExitPitchRate = 30
 978      ExitBone = WeaponA01
 979      AllowInsideKindOf  = INFANTRY VEHICLE PROJECTILE DOZER PARACHUTABLE
 980      DoorOpenTime = 0                ; this prevents the Contain module from messing with the doors, since we want DeliverPayload to handle 'em
 981      NumberOfExitPaths = 0
 982      DestroyRidersWhoAreNotFreeToExit = Yes  ; 'destroy' as opposed to 'kill'
 983    End
 984  
 985    ;SCRIPTED SUPPORT: These special powers are triggered directly 
 986    ;from the transport without creating a transport. This is done 
 987    ;via new code support and CreateLocation USE_OWNER_OBJECT -- 
 988    ;which also prevents creating the payload transport.
 989    Behavior    = OCLSpecialPower ModuleTag_07
 990      SpecialPowerTemplate = SuperweaponDaisyCutter ;@@KRIS@@
 991      OCL                  = SUPERWEAPON_DaisyCutter
 992      CreateLocation       = USE_OWNER_OBJECT
 993      ScriptedSpecialPowerOnly = Yes
 994    End
 995    Behavior    = OCLSpecialPower ModuleTag_08
 996      SpecialPowerTemplate = SuperweaponParadropAmerica
 997      UpgradeOCL           = SCIENCE_Paradrop3 SUPERWEAPON_Paradrop3
 998      UpgradeOCL           = SCIENCE_Paradrop2 SUPERWEAPON_Paradrop2
 999      OCL                  = SUPERWEAPON_Paradrop1
1000      CreateLocation       = USE_OWNER_OBJECT
1001      ScriptedSpecialPowerOnly = Yes
1002    End 
1003    Behavior    = OCLSpecialPower ModuleTag_09
1004      SpecialPowerTemplate = SuperweaponCarpetBomb
1005      OCL                  = SUPERWEAPON_CarpetBomb
1006      CreateLocation       = USE_OWNER_OBJECT
1007      ScriptedSpecialPowerOnly = Yes
1008    End 
1009    Behavior    = OCLSpecialPower ModuleTag_10
1010      SpecialPowerTemplate = SuperweaponClusterMines
1011      OCL                  = SUPERWEAPON_ClusterMines
1012      CreateLocation       = USE_OWNER_OBJECT
1013      ScriptedSpecialPowerOnly = Yes
1014    End 
1015    Behavior    = OCLSpecialPower ModuleTag_11
1016      SpecialPowerTemplate = SuperweaponEMPPulse
1017      OCL                  = SUPERWEAPON_EMPPulse
1018      CreateLocation       = USE_OWNER_OBJECT
1019      ScriptedSpecialPowerOnly = Yes
1020    End 
1021      
1022    Behavior                          = JetSlowDeathBehavior ModuleTag_12
1023      DestructionDelay                = 2000 
1024      RollRate                        = 0.0
1025      RollRateDelta                   = 100%      ;each frame, rollrate = rollrate * rollrateDelta
1026      PitchRate                       = 0
1027      FallHowFast                     = 25.0%    ;Bigger is faster (can be over 100%,it's a fraction of gravity)
1028      FXInitialDeath                  = FX_JetBigDeathInitial
1029      OCLInitialDeath                 = OCL_AmericaJetCargoDeathStart
1030      DelaySecondaryFromInitialDeath  = 2000       ; in milliseconds     This guy won't hit the ground, so this time equals the above time
1031      OCLSecondary                    = OCL_AmericaJetCargoHulkDeath
1032      FXSecondary                     = FX_BigPlaneDeath
1033    End
1034  
1035  ;;;;;;;;  ClientUpdate         = AnimatedParticleSysBoneClientUpdate ModuleTag_13
1036  ;;;;;;;;  End
1037  
1038    Behavior = TransitionDamageFX ModuleTag_14
1039      DamagedFXList1 = Loc: X:0 Y:0 Z:0 FXList:FX_JetBigDamageTransition
1040      ReallyDamagedFXList1 = Loc: X:0 Y:0 Z:0 FXList:FX_JetBigDamageTransition
1041    End
1042  
1043    Geometry = Box
1044    GeometryIsSmall = No
1045    GeometryMajorRadius = 40.0
1046    GeometryMinorRadius = 10.0
1047    GeometryHeight = 10.0
1048    Shadow = SHADOW_VOLUME
1049    ShadowSizeX = 89  ; minimum elevation angle above horizon. Used to limit shadow length
1050  
1051  End


Generated: Sat Mar 28 08:18:23 2009 Cross-referenced by PHPXref 0.7