View Single Post
Old 02-03-2005, 04:12 PM   #7 (permalink)
AntiSocialKindaGuy
Senior Member
 
Join Date: Jul 2004
Location: London, UK
Posts: 376
Send a message via MSN to AntiSocialKindaGuy
Default

Right, the code:

Object GermanHeavyTank
Code:
Object GermanHeavyTank

  ; *** ART Parameters ***
  SelectPortrait         = SNBattlemaster_L
  ButtonImage            = SNBattlemaster
  
  ;UpgradeCameo1 = Upgrade_Nationalism
  ;UpgradeCameo2 = Upgrade_ChinaUraniumShells
  ;UpgradeCameo3 = Upgrade_ChinaNuclearTanks
  ;UpgradeCameo4 = NONE
  ;UpgradeCameo5 = NONE
  
  Draw = W3DOverlordTankDraw ModuleTag_01
    OkToChangeModelColor = Yes
    ExtraPublicBone = fireport1
    ExtraPublicBone = fireport2
    ExtraPublicBone = fireport3
    ExtraPublicBone = fireport4
    ExtraPublicBone = fireport5
    ExtraPublicBone = fireport6

    DefaultConditionState
      Model               = A7V_nofireport_
      Turret              = Turret01
      WeaponFireFXBone    = PRIMARY Muzzle
      WeaponRecoilBone    = PRIMARY Barrel
      WeaponMuzzleFlash   = PRIMARY MuzzleFX
      WeaponLaunchBone    = PRIMARY Muzzle
    End
    ConditionState = REALLYDAMAGED
      Model               = NVBtMstr_D
      Turret              = Turret01
      WeaponFireFXBone    = PRIMARY Muzzle
      WeaponRecoilBone    = PRIMARY Barrel
      WeaponMuzzleFlash   = PRIMARY MuzzleFX
      WeaponLaunchBone    = PRIMARY Muzzle
    End
    ConditionState = RUBBLE
      Model               = NVBtMstr_D
      Turret              = Turret01
    End
     
    ConditionState = MOVING
      Model               = A7V_nofireport
      Turret              = Turret01
      WeaponFireFXBone    = PRIMARY Muzzle
      WeaponRecoilBone    = PRIMARY Barrel
      WeaponMuzzleFlash   = PRIMARY MuzzleFX
      WeaponLaunchBone    = PRIMARY Muzzle
    End

    TrackMarks              = EXTnkTrack.tga
  End

  ; ***DESIGN parameters ***
  DisplayName         = OBJECT:Overlord
  Side                = China
  EditorSorting       = VEHICLE
  TransportSlotCount  = 3                 ;how many "slots" we take in a transport (0 == not transportable)
  WeaponSet
    Conditions        = None 
    Weapon            = PRIMARY GermanTankGun
  End

  ArmorSet
    Conditions        = None
    Armor             = TankArmor
    DamageFX          = TankDamageFX
  End
  BuildCost       = 2000
  BuildTime       = 1.0          ;in seconds    
  VisionRange     = 150
  ShroudClearingRange = 200
  Prerequisites
  End

  ExperienceValue = 200 200 400 600   ;Experience point value at each level
  ExperienceRequired = 0 400 600 1200  ;Experience points needed to gain each level
  IsTrainable = Yes             ;Can gain experience
  CrusherLevel           = 3  ;What can I crush?: 1 = infantry, 2 = trees, 3 = vehicles
  CrushableLevel         = 3  ;What am I?:        0 = for infantry, 1 = for trees, 2 = general vehicles
  CommandSet = ChinaTankOverlordDefaultCommandSet

  ; *** AUDIO Parameters ***
  VoiceSelect = OverlordTankVoiceSelect
  SoundMoveStart = OverlordTankMoveStart
  SoundMoveStartDamaged = OverlordTankMoveStart
  VoiceMove = OverlordTankVoiceMove
  VoiceGuard = OverlordTankVoiceMove
  VoiceAttack = OverlordTankVoiceAttack

  UnitSpecificSounds
    ; These have the syntax of SomeNameSomewhereInCode = SomeNameSomewhereInLookupINIs
    VoiceCreate          = OverlordTankVoiceCreate
    TurretMoveStart = NoSound
    TurretMoveLoop = OverlordTankTurretMoveLoop
    VoiceCrush = OverlordTankVoiceCrush
    VoiceEnter = OverlordTankVoiceMove
    VoiceUnload     = OverlordTankVoiceUnload
  End

  ; *** ENGINEERING Parameters ***
  RadarPriority = UNIT
  KindOf = PRELOAD SELECTABLE CAN_ATTACK ATTACK_NEEDS_LINE_OF_SIGHT CAN_CAST_REFLECTIONS VEHICLE SCORE HUGE_VEHICLE
  
  Body = ActiveBody ModuleTag_02
    MaxHealth       = 1100.0
    InitialHealth   = 1100.0

    ; Subdual damage "Subdues" you (reaction defined by BodyModule) when it passes your max health.
    ; The cap limits how extra-subdued you can be, and the other numbers detemine how fast it drains away on its 

own.
    SubdualDamageCap = 2200
    SubdualDamageHealRate = 500
    SubdualDamageHealAmount = 50
  End

  Behavior = OverlordContain ModuleTag_OvC
    Slots                       = 6
    DamagePercentToUnits        = 100%
    AllowInsideKindOf           = PORTABLE_STRUCTURE
    PassengersAllowedToFire     = Yes
    PassengersInTurret          = No ; My passengers ride in my turret, that's where the Firepoint bones are
    ExperienceSinkForRider      = Yes ; I get the Exp for things my turret friend kills
  End

  Behavior = AIUpdateInterface ModuleTag_AIUp
    Turret
      TurretTurnRate = 0   ; turn rate, in degrees per sec
      ControlledWeaponSlots = PRIMARY
    End
    AutoAcquireEnemiesWhenIdle = No
  End

  Locomotor = SET_NORMAL OverlordLocomotor

  Behavior = PhysicsBehavior ModuleTag_14
    Mass = 50.0
  End

  Behavior = TransitionDamageFX ModuleTag_18
    ReallyDamagedParticleSystem1 = Bone:Smoke RandomBone:Yes PSys:SmokeSmallContinuous01
    ReallyDamagedFXList1 = Loc: X:0 Y:0 Z:0 FXList:FX_OverlordDamageTransition
  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

  Behavior = GrantUpgradeCreate ModuleTag_Grant01
    UpgradeToGrant = Upgrade_A7VGuns
  End

  Behavior = ObjectCreationUpgrade ObjUp01
    TriggeredBy = Upgrade_A7VGuns
    UpgradeObject = OCL_A7VGuns
  End

  Geometry = BOX
  GeometryMajorRadius = 32.0
  GeometryMinorRadius = 13.0
  GeometryHeight = 15.0     
  GeometryIsSmall = No
  Shadow = SHADOW_VOLUME     
  ShadowSizeX = 45  ; minimum elevation angle above horizon. Used to limit shadow length

End
A7VMGun01 (All MGuns are the same with different fireports).
Code:
Object A7VMGun01

  ; *** ART Parameters ***
  SelectPortrait         = SNGatTower_L
  ButtonImage            = SNGatTower
  
  ;UpgradeCameo1 = Upgrade_Nationalism
  ;UpgradeCameo1 = Upgrade_ChinaUraniumShells
  ;UpgradeCameo2 = Upgrade_ChinaNuclearTanks
  ;UpgradeCameo4 = NONE
  ;UpgradeCameo5 = Upgrade_ChinaOverlordGattlingCannon
  
  
  Draw                    = W3DDependencyModelDraw  ModuleTag_01
    OkToChangeModelColor  = Yes
    AttachToBoneInContainer  = fireport1

    DefaultConditionState
      Model = A7V_fireport1
      Turret              = MuzzleFX02
      WeaponFireFXBone    = PRIMARY MuzzleFX02
      WeaponRecoilBone    = PRIMARY MuzzleFX02
      WeaponMuzzleFlash   = PRIMARY MuzzleFX02
      WeaponLaunchBone    = PRIMARY MuzzleFX02
    End
 End

  ; ***DESIGN parameters ***
  Side             = Germany
  EditorSorting    = SYSTEM
  TransportSlotCount = 1
  WeaponSet
    Conditions          = None 
    Weapon              = PRIMARY   A7VMGun
  End
  
  ArmorSet
    Conditions     = None
    Armor          = InvulnerableAllArmor ; We can't be hurt on the field.  We share damage from the Overlord with his damage module
  End
  VisionRange     = 200

  ; *** AUDIO Parameters ***
  UnitSpecificSounds
    TurretMoveStart = NoSound
    TurretMoveLoop  = NoSound ;TurretMoveLoop
    VoiceRapidFire  = NoSound
  End

  ; *** ENGINEERING Parameters ***
  KindOf            = PRELOAD PORTABLE_STRUCTURE CAN_ATTACK ATTACK_NEEDS_LINE_OF_SIGHT CLICK_THROUGH IGNORED_IN_GUI
    Body            = StructureBody ModuleTag_02
    MaxHealth       = 100.0
    InitialHealth   = 100.0
  End

  Behavior = AIUpdateInterface ModuleTag_03
    Turret
      ControlledWeaponSlots = PRIMARY
      TurretTurnRate      = 20   // turn rate, in degrees per sec
      TurretPitchRate     = 0
      AllowsPitch         = No
    End
    AutoAcquireEnemiesWhenIdle = Yes 
  End

  Behavior             = DestroyDie ModuleTag_04
    ;nothing
  End

  Behavior = StealthDetectorUpdate ModuleTag_06
    DetectionRate   = 500   ; how often to rescan for stealthed things in my sight (msec)
    ;DetectionRange = ??? ;   Defaults to VisionRange
    CanDetectWhileContained   = Yes
  End

  Geometry            = BOX
  GeometryMajorRadius = 0.0
  GeometryMinorRadius = 0.0
  GeometryHeight      = 0.0
  GeometryIsSmall     = Yes
  Shadow              = SHADOW_VOLUME
  ShadowSizeX = 45  ; minimum elevation angle above horizon. Used to limit shadow length

End
ObjectCreationList
Code:
ObjectCreationList OCL_A7VGuns
  CreateObject
    ObjectNames       = A7VMGun02
    Count             = 1
    ContainInsideSourceObject = Yes
  End
  CreateObject
    ObjectNames       = A7VMGun01
    Count             = 1
    ContainInsideSourceObject = Yes
  End
  CreateObject
    ObjectNames       = A7VMGun03
    Count             = 1
    ContainInsideSourceObject = Yes
  End
  CreateObject
    ObjectNames       = A7VMGun04
    Count             = 1
    ContainInsideSourceObject = Yes
  End
  CreateObject
    ObjectNames       = A7VMGun05
    Count             = 1
    ContainInsideSourceObject = Yes
  End
  CreateObject
    ObjectNames       = A7VMGun06
    Count             = 1
    ContainInsideSourceObject = Yes
  End
End
AntiSocialKindaGuy is offline   Reply With Quote