home *** CD-ROM | disk | FTP | other *** search
/ GameStar 2006 April / Gamestar_83_2006-04_dvd.iso / Dema / lotrbfme2_demo.exe / INI.big / data_ini_object_evilfaction_units_wild_mountaingiant.ini < prev    next >
Text File  |  2006-01-31  |  33KB  |  1,076 lines

  1. ;------------------------------------------------------------------------------; 
  2. Object WildMountainGiant
  3.     ; *** ART Parameters ***
  4.     
  5.     ButtonImage        = BWFissure_Giant
  6.     SelectPortrait    = UPWild_Giant
  7.     
  8.     Draw = W3DScriptedModelDraw ModuleTag_01
  9.     
  10.         WadingParticleSys        = EntRipples
  11.         WadingParticleSys        = EntSplash
  12.  
  13.         OkToChangeModelColor    = Yes
  14.         StaticModelLODMode        = Yes                ; Will append M or L to the skin name depending on GameLOD
  15.  
  16.         ExtraPublicBone = B_HANDR
  17.         ExtraPublicBone = B_PASSENGER01
  18.         
  19.         DefaultModelConditionState
  20.             Model               = WUMntGnt_SKN
  21.             WeaponLaunchBone    = PRIMARY ROCK
  22.             WeaponLaunchBone    = SECONDARY ROCK
  23.         End
  24.  
  25.         IdleAnimationState
  26.             StateName = Idle
  27.             AllowRepeatInRandomPick = Yes
  28.             Flags = RESTART_ANIM_WHEN_COMPLETE        
  29.  
  30.             Animation = stand
  31.                 AnimationName        = WUMntGnt_SKL.WUMntGnt_IDLB
  32.                 AnimationMode        = ONCE
  33.                 AnimationPriority    = 60
  34.             End
  35.             Animation = tugarmour
  36.                 AnimationName        = WUMntGnt_SKL.WUMntGnt_IDLD
  37.                 AnimationMode        = ONCE
  38.                 AnimationPriority    = 10
  39.             End
  40.             Animation = scratchbutt
  41.                 AnimationName        = WUMntGnt_SKL.WUMntGnt_IDLC
  42.                 AnimationMode        = ONCE
  43.                 AnimationPriority    = 5
  44.             End
  45.             Animation = bugstep
  46.                 AnimationName        = WUMntGnt_SKL.WUMntGnt_IDLE
  47.                 AnimationMode        = ONCE
  48.                 AnimationPriority    = 5
  49.             End
  50.             BeginScript
  51.                 Prev = CurDrawablePrevAnimationState()
  52.                 if Prev == "STATE_Selected"
  53.                     then CurDrawableSetTransitionAnimState("TRANS_SelectedToBored")
  54.                 elseif Prev == "STATE_Tied"
  55.                     then CurDrawableSetTransitionAnimState("TRANS_SelectedFromTied")
  56.                 end
  57.             EndScript            
  58.         End
  59.         
  60.         AnimationState = STUNNED_STANDING_UP WEAPONSET_TOGGLE_1
  61.             StateName              = STATE_StandingUpWithRock
  62.             Animation
  63.                 AnimationName     = WUMntGnt_SKL.WUMntGnt_RGRBA
  64.                 AnimationMode     = ONCE
  65.                 AnimationSpeedFactorRange    = 1.67 1.67
  66.             End
  67.             LuaEvent = Frame:20 Data: show_rock
  68.             FXEvent    = Frame:22    Name: FX_GiantRockGrab
  69.             FXEvent    = Frame:38    Name: FX_GiantRockYank
  70.             BeginScript
  71.                 Prev = CurDrawablePrevAnimationState()
  72.                 if Prev ~= "STATE_StandingUpWithRock" and Prev ~= "TRANS_GetUpWithRock"
  73.                     then CurDrawableSetTransitionAnimState("TRANS_GetUpWithRock") end
  74.             EndScript
  75.             
  76.         End
  77.         
  78.         AnimationState = STUNNED_STANDING_UP
  79.             Animation
  80.                 AnimationName     = WUMntGnt_SKL.WUMntGnt_GTPA
  81.                 AnimationMode     = ONCE
  82.             End
  83.         End
  84.  
  85.         AnimationState            = USER_4                ; This is a special for being tied up.
  86.             StateName            = STATE_Tied
  87.             Animation
  88.                 AnimationName   = WUMntGnt_SKL.WUMntGnt_SPCA
  89.                 AnimationMode   = LOOP
  90.             End
  91. ;            BeginScript
  92. ;                CurDrawableHideSubObjectPermanently("ROCK")
  93. ;            EndScript
  94.         End
  95.  
  96.         AnimationState            = STUNNED_FLAILING
  97.             Animation           = StunFlail
  98.                 AnimationName   = WUMntGnt_SKL.WUMntGnt_FLYA
  99.                 AnimationMode   = LOOP
  100.             End
  101.             Flags = MAINTAIN_FRAME_ACROSS_STATES2
  102.         End
  103.  
  104.         AnimationState = STUNNED
  105.             Animation
  106.                 AnimationName     = WUMntGnt_SKL.WUMntGnt_LNDA
  107.                 AnimationMode     = ONCE
  108.             End
  109.         End
  110.         
  111.         AnimationState = DYING DEATH_3
  112.             Animation
  113.                 AnimationName = WUMntGnt_SKL.WUMntGnt_IDLA
  114.                 AnimationMode = LOOP
  115.             End
  116.         End
  117.  
  118.  
  119.         ModelConditionState = DYING SPLATTED DECAY DEATH_1
  120.             Model                = WUMntGnt_DISA
  121.             RetainSubObjects    = Yes
  122.         End
  123.  
  124.         AnimationState = DYING SPLATTED DECAY DEATH_1
  125.             Animation
  126.                 AnimationName      = WUMntGnt_DISA.WUMntGnt_DISA
  127.                 AnimationMode      = ONCE
  128.             End
  129.             BeginScript
  130.                 CurDrawableHideSubObjectPermanently("ROCK")
  131.             EndScript
  132.         End
  133.         
  134.         AnimationState = DYING SPLATTED DEATH_1
  135.             Animation
  136.                 AnimationName      = WUMntGnt_SKL.WuMntGnt_LNDA
  137.                 AnimationMode      = ONCE
  138.             End
  139.             BeginScript
  140.                 CurDrawableHideSubObjectPermanently("ROCK")
  141.             EndScript
  142.         End
  143.  
  144.         ModelConditionState = DYING DECAY DEATH_1
  145.             Model                = WUMntGnt_DISA
  146.             RetainSubObjects    = Yes
  147.         End
  148.  
  149.         AnimationState = DYING DECAY DEATH_1 WEAPONSET_TOGGLE_1
  150.             Animation = dead1
  151.                 AnimationName    = WUMntGnt_DISA.WUMntGnt_DISA
  152.                 AnimationMode    = ONCE
  153.             End
  154.         End
  155.  
  156.         AnimationState = DYING DECAY DEATH_1
  157.             Animation = dead1
  158.                 AnimationName    = WUMntGnt_DISA.WUMntGnt_DISA
  159.                 AnimationMode    = ONCE
  160.             End
  161.             BeginScript
  162.                 CurDrawableHideSubObjectPermanently("ROCK")
  163.             EndScript
  164.         End
  165.  
  166.         AnimationState = DYING WEAPONSET_TOGGLE_1
  167.             Animation
  168.                 AnimationName     = WUMntGnt_SKL.WUMntGnt_RDIEA
  169.                 AnimationMode     = ONCE
  170.             End
  171.         End
  172.  
  173.         AnimationState = DYING
  174.             Animation
  175.                 AnimationName     = WUMntGnt_SKL.WUMntGnt_DIEA
  176.                 AnimationMode     = ONCE
  177.             End
  178.             
  179.             // DIEB falls forward and cannot be used until there is an equivalent RDIEB so that the DeathWeapon can match properly
  180.             //Animation
  181.             //    AnimationName     = WUMntGnt_SKL.WUMntGnt_DIEB
  182.             //    AnimationMode     = ONCE
  183.             //End
  184.         End        
  185.         
  186.         AnimationState                        = PARALYZED
  187.             Animation
  188.                 AnimationName                = WUMntGnt_SKL.WUMntGnt_IDLB
  189.                 AnimationMode                = LOOP
  190.             End
  191.         End
  192.  
  193.         AnimationState = SPECIAL_WEAPON_ONE
  194.             FrameForPristineBonePositions = 64
  195.             Animation
  196.                 AnimationName = WUMntGnt_SKL.WUMntGnt_UGRBB
  197.                 AnimationMode = ONCE
  198.             End
  199.         End
  200.  
  201.         AnimationState = SPECIAL_WEAPON_TWO
  202.             Animation
  203.                 AnimationName        = WUMntGnt_SKL.WUMntGnt_ATKF
  204.                 AnimationMode        = ONCE
  205.             End
  206.         End
  207.  
  208.         AnimationState = RELOADING_A WEAPONSET_TOGGLE_1            ; Pull rock out of the ground.
  209.             Animation
  210.                 AnimationName        = WUMntGnt_SKL.WUMntGnt_RGRBA
  211.                 AnimationMode        = ONCE
  212.             End
  213.  
  214.             FXEvent    = Frame:22    Name: FX_GiantRockGrab
  215.             FXEvent    = Frame:38    Name: FX_GiantRockYank
  216.             
  217.         End
  218.  
  219.         // Throw rock close range
  220.         AnimationState = FIRING_OR_PREATTACK_B WEAPONSET_TOGGLE_1
  221.             Animation
  222.                 AnimationName        = WUMntGnt_SKL.WUMntGnt_RTHRC
  223.                 AnimationMode        = ONCE
  224.                 AnimationBlendTime    = 10
  225.             End
  226.             FrameForPristineBonePositions = 37                            ; Just as the rock leaves his hands.
  227.         End
  228.  
  229.         // Throw rock
  230.         AnimationState = FIRING_OR_PREATTACK_A WEAPONSET_TOGGLE_1
  231.             Animation
  232.                 AnimationName        = WUMntGnt_SKL.WUMntGnt_RTHRA
  233.                 AnimationMode        = ONCE
  234.                 AnimationBlendTime    = 10
  235.             End
  236.             FrameForPristineBonePositions = 37                            ; Just as the rock leaves his hands.
  237.         End
  238.  
  239.         // ATKA - Left arm swat
  240.         AnimationState = FIRING_OR_PREATTACK_A
  241.             Animation
  242.                 AnimationName        = WUMntGnt_SKL.WUMntGnt_ATKA
  243.                 AnimationMode        = ONCE
  244.                 UseWeaponTiming        = Yes
  245.                 AnimationBlendTime    = 10
  246.             End
  247.         End
  248.         
  249.         // ATKB - Right backhand
  250.         AnimationState = FIRING_OR_PREATTACK_B
  251.             Animation
  252.                 AnimationName        = WUMntGnt_SKL.WUMntGnt_ATKB
  253.                 AnimationMode        = ONCE
  254.                 UseWeaponTiming        = Yes
  255.                 AnimationBlendTime    = 10
  256.             End
  257.         End
  258.  
  259.         // ATKD - Right football kick    
  260.         AnimationState = FIRING_OR_PREATTACK_C
  261.             Animation
  262.                 AnimationName        = WUMntGnt_SKL.WUMntGnt_ATKD
  263.                 AnimationMode        = ONCE
  264.                 UseWeaponTiming        = Yes
  265.                 AnimationBlendTime    = 10
  266.             End
  267.         End
  268.  
  269.         // ATKE - Left forward kick        
  270.         AnimationState = FIRING_OR_PREATTACK_D                            ; The anti-structure weapon
  271.             Animation
  272.                 AnimationName        = WUMntGnt_SKL.WUMntGnt_ATKE
  273.                 AnimationMode        = ONCE
  274.                 UseWeaponTiming        = Yes
  275.                 AnimationBlendTime    = 10
  276.             End
  277.         End
  278.  
  279.         // ATRA - Right backhand while moving
  280.         AnimationState = FIRING_OR_PREATTACK_E
  281.             Animation
  282.                 AnimationName        = WUMntGnt_SKL.WUMntGnt_ATRA
  283.                 AnimationMode        = ONCE
  284.                 UseWeaponTiming        = Yes
  285.                 AnimationBlendTime    = 10
  286.             End
  287.             FXEvent    = Frame:3 FireWhenSkipped Name:FX_GiantRightFootStep
  288.             FXEvent    = Frame:20 FireWhenSkipped Name:FX_GiantLeftFootStep
  289.         End
  290.  
  291.  
  292.         AnimationState = TURN_LEFT WEAPONSET_TOGGLE_1
  293.             Animation
  294.                 AnimationName        = WUMntGnt_SKL.WUMntGnt_RTRNL
  295.                 AnimationMode        = LOOP
  296.                 AnimationBlendTime    = 10 ;20
  297.             End
  298.         End
  299.         
  300.         AnimationState = TURN_RIGHT WEAPONSET_TOGGLE_1
  301.             Animation
  302.                 AnimationName        = WUMntGnt_SKL.WUMntGnt_RTRNR
  303.                 AnimationMode        = LOOP
  304.                 AnimationBlendTime    = 10 ;20
  305.             End
  306.         End
  307.  
  308.         AnimationState = MOVING WEAPONSET_TOGGLE_1
  309.             Animation
  310.                 AnimationName        = WUMntGnt_SKL.WUMntGnt_RWLKA
  311.                 AnimationMode        = LOOP
  312.                 Distance            = 175
  313.             End
  314.             FXEvent    = Frame:21 FireWhenSkipped Name:FX_GiantLeftFootStep
  315.             FXEvent    = Frame:43 FireWhenSkipped Name:FX_GiantRightFootStep
  316.             FXEvent    = Frame:63 FireWhenSkipped Name:FX_GiantLeftFootStep
  317.             FXEvent    = Frame:85 FireWhenSkipped Name:FX_GiantRightFootStep
  318.             FXEvent    = Frame:103 FireWhenSkipped Name:FX_GiantLeftFootStep
  319.             FXEvent    = Frame:127 FireWhenSkipped Name:FX_GiantRightFootStep
  320.         End
  321.  
  322.         AnimationState = ENGAGED WEAPONSET_TOGGLE_1                    ; 'Ready' pose with rock. This is to smooth out the reload/attacking anims.
  323.             Animation
  324.                 AnimationName    = WUMntGnt_SKL.WUMntGnt_RIDLA
  325.                 AnimationMode    = LOOP
  326.                 AnimationBlendTime    = 10
  327.             End
  328.             Flags = RANDOMSTART
  329.         End
  330.  
  331.         AnimationState = ATTACKING WEAPONSET_TOGGLE_1                    ; 'Ready' pose with rock. This is to smooth out the reload/attacking anims.
  332.             Animation
  333.                 AnimationName    = WUMntGnt_SKL.WUMntGnt_RIDLA
  334.                 AnimationMode    = LOOP
  335.                 AnimationBlendTime    = 10
  336.             End
  337.             Flags = RANDOMSTART
  338.         End
  339.  
  340.         ;AnimationState = MOVING ATTACKING 
  341.         ;    Animation
  342.         ;        AnimationName        = WUMntGnt_SKL.WUMntGnt_RUNA
  343.         ;        AnimationMode        = LOOP
  344.         ;        UseWeaponTiming        = Yes
  345.         ;    End
  346.         ;End
  347.  
  348.         AnimationState = TURN_LEFT
  349.             Animation
  350.                 AnimationName        = WUMntGnt_SKL.WUMntGnt_TRNL
  351.                 AnimationMode        = LOOP
  352.                 AnimationBlendTime    = 10
  353.             End
  354.         End
  355.  
  356.         AnimationState = TURN_RIGHT
  357.             Animation
  358.                 AnimationName        = WUMntGnt_SKL.WUMntGnt_TRNR 
  359.                 AnimationMode        = LOOP
  360.                 AnimationBlendTime    = 10
  361.             End
  362.         End
  363.                     
  364.         AnimationState                = MOVING PANICKING
  365.             Animation
  366.                 AnimationName                = WUMntGnt_SKL.WUMntGnt_MFDA
  367.                 AnimationMode                = LOOP
  368.                 AnimationSpeedFactorRange    = 0.55 0.55                        ; Feet slide a lot, so slow the anim down.
  369.             End
  370.             Flags                    = RANDOMSTART
  371.         End
  372.  
  373.         AnimationState = MOVING
  374.             Animation
  375.                 AnimationName        = WUMntGnt_SKL.WUMntGnt_WLKA
  376.                 AnimationMode        = LOOP
  377.                 AnimationBlendTime    = 10
  378.                 Distance            = 175
  379.             End
  380.             Flags = RANDOMSTART
  381.             FXEvent    = Frame:21 FireWhenSkipped Name:FX_GiantLeftFootStep
  382.             FXEvent    = Frame:43 FireWhenSkipped Name:FX_GiantRightFootStep
  383.             FXEvent    = Frame:63 FireWhenSkipped Name:FX_GiantLeftFootStep
  384.             FXEvent    = Frame:85 FireWhenSkipped Name:FX_GiantRightFootStep
  385.             FXEvent    = Frame:103 FireWhenSkipped Name:FX_GiantLeftFootStep
  386.             FXEvent    = Frame:127 FireWhenSkipped Name:FX_GiantRightFootStep
  387.         End
  388.  
  389.         AnimationState = SWAPPING_TO_WEAPONSET_1        ; This is required so we get a nice pose to blend from when reloading the rock.
  390.             Animation                                    ; must be before SELECTED
  391.                 AnimationName    = WUMntGnt_SKL.WUMntGnt_ATNB
  392.             End
  393.         End
  394.  
  395.  
  396.  
  397. ;;------------------ Selected with Rock
  398.  
  399.         AnimationState = SELECTED WEAPONSET_TOGGLE_1
  400.             StateName            = STATE_SelectedRock
  401.             Animation
  402.                 AnimationName    = WUMntGnt_SKL.WUMntGnt_RATNB
  403.                 AnimationMode    = LOOP
  404.             End
  405.             Flags = RANDOMSTART
  406.             BeginScript
  407.                 Prev = CurDrawablePrevAnimationState()
  408.                 if Prev ~= "STATE_SelectedRock" and Prev ~= "TRANS_IdleToSelectedRock"
  409.                     then CurDrawableSetTransitionAnimState("TRANS_IdleToSelectedRock") end
  410.             EndScript
  411.         End
  412.                     
  413. ;;------------------ Idle with Rock
  414.  
  415.         AnimationState = WEAPONSET_TOGGLE_1
  416.             StateName = STATE_RockIdle
  417.             Animation
  418.                 AnimationName    = WUMntGnt_SKL.WUMntGnt_RIDLB
  419.                 AnimationMode    = LOOP
  420.             End
  421.             Flags = RANDOMSTART
  422.             BeginScript
  423.                 Prev = CurDrawablePrevAnimationState()
  424.                 if Prev == "STATE_Tied" then
  425.                     CurDrawableSetTransitionAnimState("TRANS_SelectedFromTied")
  426.                 elseif Prev ~= "STATE_RockIdle" and Prev ~= "TRANS_SelectedRockToIdle" then
  427.                     CurDrawableSetTransitionAnimState("TRANS_SelectedRockToIdle")
  428.                 end
  429.             EndScript
  430.         End
  431.  
  432.  
  433.         
  434. ;;------------------ Attacking
  435.  
  436.         AnimationState = ATTACKING                                ; Between attacks we need to go to this idle since it's the base for the attack animations (needs to be before SELECTED)
  437.             Animation
  438.                 AnimationName    = WUMntGnt_SKL.WUMntGnt_IDLA
  439.                 AnimationMode    = LOOP
  440.                 AnimationBlendTime    = 10
  441.             End
  442.         End
  443.  
  444. ;;------------------ Selected
  445.             
  446.         AnimationState = SELECTED
  447.             StateName            = STATE_Selected
  448.             Animation
  449.                 AnimationName    = WUMntGnt_SKL.WUMntGnt_ATNB
  450.             End
  451.             BeginScript
  452.                 Prev = CurDrawablePrevAnimationState()
  453.                 if Prev == "Idle" then CurDrawableSetTransitionAnimState("TRANS_IdleToSelected") end
  454.             EndScript
  455.         End
  456.     
  457.         AnimationState = ENGAGED
  458.             Animation
  459.                 AnimationName    = WUMntGnt_SKL.WUMntGnt_IDLB
  460.                 AnimationMode    = LOOP
  461.             End
  462.         End
  463.         
  464. ;;------------------ Hit Reaction 
  465.  
  466.         AnimationState = HIT_REACTION
  467.             Animation
  468.                 AnimationName        = WUMntGnt_SKL.WUMntGnt_HITA
  469.                 AnimationMode        = ONCE
  470.             End
  471.         End
  472.         
  473. ;;------------------ Emotions
  474.  
  475.         // Emotions must be beneath WEAPONSET_TOGGLE_1 default idle because there are no
  476.         // emotions-with-rock animations
  477.  
  478.         AnimationState = EMOTION_TAUNTING
  479.             Animation
  480.                 AnimationName        = WUMntGnt_SKL.WUMntGnt_TNTA
  481.                 AnimationMode        = LOOP
  482.             End
  483.         End
  484.  
  485.         AnimationState = EMOTION_CELEBRATING
  486.             Animation
  487.                 AnimationName        = WUMntGnt_SKL.WUMntGnt_CHRA
  488.                 AnimationMode        = ONCE
  489.             End
  490.         End
  491.  
  492. ;;------------------ Transitions
  493.  
  494.         TransitionState = TRANS_GetUpWithRock
  495.             Animation
  496.                 AnimationName = WUMntGnt_SKL.WUMntGnt_GTPA
  497.                 AnimationMode = ONCE
  498.                 AnimationSpeedFactorRange    =    1.5 1.5
  499.             End        
  500.         End
  501.  
  502.         TransitionState = TRANS_IdleToSelectedRock
  503.             Animation
  504.                 AnimationName = WUMntGnt_SKL.WUMntGnt_RATNA
  505.                 AnimationMode = ONCE
  506.             End
  507.         End
  508.  
  509.         TransitionState = TRANS_SelectedRockToIdle
  510.             Animation
  511.                 AnimationName = WUMntGnt_SKL.WUMntGnt_RATNC
  512.                 AnimationMode = ONCE
  513.             End
  514.         End
  515.  
  516.         TransitionState = TRANS_IdleToSelected
  517.             Animation
  518.                 AnimationName = WUMntGnt_SKL.WUMntGnt_ATNA
  519.                 AnimationMode = ONCE
  520.             End
  521.         End
  522.  
  523.         TransitionState = TRANS_SelectedToBored
  524.             Animation 
  525.                 AnimationName = WUMntGnt_SKL.WUMntGnt_ATNC
  526.                 AnimationMode = ONCE
  527.             End
  528.         End
  529.  
  530.         TransitionState = TRANS_SelectedFromTied
  531.             Animation 
  532.                 AnimationName = WUMntGnt_SKL.WUMntGnt_GTPB
  533.                 AnimationMode = ONCE
  534.             End
  535.             ParticleSysBone = B_FOOTL GiantRopesBreak
  536.             ParticleSysBone = B_FOOTR GiantRopesBreak
  537.             ParticleSysBone = B_HANDL GiantRopesBreak
  538.             ParticleSysBone = B_HANDR GiantRopesBreak
  539.             ParticleSysBone = B_NECK01 GiantRopesBreak
  540.             
  541.             ParticleSysBone = B_FOOTL GiantRopesDust
  542.             ParticleSysBone = B_FOOTR GiantRopesDust
  543.             ParticleSysBone = B_HANDL GiantRopesDust
  544.             ParticleSysBone = B_HANDR GiantRopesDust
  545.             ParticleSysBone = B_NECK01 GiantRopesDust
  546.         End
  547.                 
  548.     End    ;Draw Module
  549.     
  550.  
  551.     
  552.     ;-----------------------------------------------------------------------------------------------------
  553.     Draw = W3DScriptedModelDraw ModuleTag_RopesDraw                        ; Special draw module just for the USER_4 tied up state.
  554.     
  555.         DefaultModelConditionState
  556.             Model               = None
  557.         End
  558.         
  559.         ModelConditionState = USER_4
  560.             Model               = WUMntGnt_Ropes
  561.         End
  562.         
  563.         AnimationState = USER_4
  564.             Animation
  565.                 AnimationName   = WUMntGnt_Ropes.WUMntGnt_Ropes
  566.                 AnimationMode   = LOOP
  567.             End
  568.         End
  569.     End    
  570.     
  571.     Draw = W3DScriptedModelDraw DustEffects
  572.         DefaultModelConditionState
  573.           Model = None
  574.         End
  575.         IdleAnimationState
  576.         End
  577.         AnimationState =  MOVING WADING
  578.             ParticleSysBone = None FootstepSlash
  579.         End
  580.         AnimationState = MOVING ACCELERATE
  581.             ParticleSysBone = None GenericSiegeTrailDust
  582.         End
  583.         AnimationState =  MOVING ACCELERATE
  584.             ParticleSysBone = None GenericSiegeTrailDust
  585.         End
  586.         AnimationState = MOUNTED MOVING
  587.         End
  588.     End
  589.     
  590.  
  591.     #include "..\..\..\includes\StunDrawModuleLarge.inc"
  592.  
  593.     ;-----------------------------------------------------------------------------------------------------
  594.     ; ***DESIGN parameters ***
  595.     Side                = Wild    
  596.     EditorSorting        = UNIT
  597.     
  598.     ThreatLevel            = MOUNTAIN_GIANT_THREAT_LEVEL
  599.     ThreatBreakdown MordorCatapult_DetailedThreat
  600.         AIKindOf = SIEGEWEAPON
  601.     End
  602.     
  603.     ThingClass            = MEDIUM_MONSTER
  604.     ShockwaveResistance = SHOCKWAVE_RESISTANCE_STRONG
  605.     TransportSlotCount    = TRANSPORTSLOTCOUNT_MONSTER
  606.  
  607.     WeaponSet
  608.         Conditions = None
  609.         DefaultWeaponChoiceCritera = SELECT_AT_RANDOM
  610.         ReadyStatusSharedWithinSet = Yes
  611.         
  612.         Weapon            = PRIMARY        WildMountainGiantPunch1        // ATKA - Left arm swat
  613.         Weapon            = SECONDARY        WildMountainGiantPunch2        // ATKB - Right backhand
  614.         Weapon            = TERTIARY        WildMountainGiantPunch3        // ATKD - Right football kick
  615.  
  616.         Weapon            = QUATERNARY    GiantBuildingTeardown        // ATKE - Left forward kick
  617.         OnlyAgainst        = QUATERNARY    MONSTER STRUCTURE BLOCKING_GATE
  618.         
  619.         Weapon            = QUINARY        WildMountainGiantMovingPunch    // ATRA - Right backhand while moving
  620.         OnlyInCondition    = QUINARY        MOVING
  621.     End
  622.  
  623.     WeaponSet
  624.         Conditions = WEAPONSET_TOGGLE_1
  625.         DefaultWeaponChoiceCritera = PREFER_LEAST_MOVEMENT
  626.         
  627.         Weapon            = PRIMARY GiantRockThrow
  628.         Weapon            = SECONDARY GiantRockThrowCloseRange
  629.     End
  630.  
  631.     ArmorSet
  632.         Conditions      = None
  633.         Armor           = MountainGiantArmor
  634.         DamageFX        = EntDamageFX
  635.     End
  636.     
  637.     VisionRange        = WILD_MOUNTAIN_GIANT_VISION_RADIUS
  638.     ShroudClearingRange    = WILD_MOUNTAIN_GIANT_SHROUD_RADIUS
  639.     
  640.     VisionSide = 35%
  641.     VisionRear = 25%
  642.     
  643.     MaxVisionBonusPercent = 300%
  644.     VisionBonusTestRadius = 200
  645.     VisionBonusPercentPerFoot = 2.0%
  646.                 
  647.     DisplayName            = OBJECT:WildMountainGiant
  648.     CrusherLevel        = 1    
  649.     UseCrushAttack        = No                            ; Don't attack using crush, just crush when you walk through. 
  650.     CommandSet            = WildMountainGiantCommandSet
  651.     CommandPoints        = 50    
  652.  
  653.     ; *** AUDIO Parameters ***;
  654.  
  655.     VoiceAttack                = MountainGiantVoxAttack
  656.     VoiceAttackCharge        = MountainGiantVoxAttack
  657.     VoiceAttackMachine        = MountainGiantVoxAttack
  658.     VoiceAttackStructure    = MountainGiantVoxAttack
  659.     VoiceCreated            = EVA:GiantCreated
  660.     VoiceCreated            = +SOUND:MountainGiantVoxCreated
  661.     VoiceFullyCreated        = EVA:GiantCreated
  662.     VoiceFullyCreated        = +SOUND:MountainGiantVoxCreated
  663.     VoiceGuard                = MountainGiantVoxMove
  664.     VoiceMove                = MountainGiantVoxMove
  665.     VoicePriority            = 35
  666.     VoiceSelect                = MountainGiantVoxSelectMS
  667.     VoiceSelectBattle        = MountainGiantVoxSelectMS
  668.     
  669.     SoundAmbient            = MountainGiantVoxAmbientLoop
  670.     SoundImpact                = ImpactHorse
  671.  
  672.     UnitSpecificSounds
  673.         VoiceEnterUnitEvilMenTransportShip    = MountainGiantVoxMove
  674.         VoiceEnterUnitMordorMumakil            = MountainGiantVoxMove
  675.         VoiceEnterUnitSlaughterHouse        = MountainGiantVoxMove
  676.         VoiceGarrison                        = MountainGiantVoxMove
  677.         VoiceInitiateCaptureBuilding        = MountainGiantVoxMove
  678.     End
  679.  
  680.     #include "..\..\..\includes\StandardUnitEvaEvents.inc"
  681.  
  682.     ;Behavior = LargeGroupAudioUpdate ModuleTag_LGAU        ; Tie into LargeGroupAudio system
  683.     ;    Key = Ent Unit Infantry
  684.     ;    UnitWeight = 2                        ; Ents count as 2 infantry when computing group size
  685.     ;End
  686.  
  687.     ClientBehavior = AnimationSoundClientBehavior ModuleTag_AnimAudioBehavior
  688.         MaxUpdateRangeCap = 800
  689.  
  690.         AnimationSound = Sound:MountainGiantFootstep    ExcludedMC:WADING    Animation:WUMNTGNT_SKL.WUMNTGNT_ATKF    Frames:40
  691.         AnimationSound = Sound:MountainGiantFootstep    ExcludedMC:WADING    Animation:WUMNTGNT_SKL.WUMNTGNT_ATRA    Frames:22 43
  692.         AnimationSound = Sound:MountainGiantFootstep    ExcludedMC:WADING    Animation:WUMNTGNT_SKL.WUMNTGNT_MFDA    Frames:14 28 39 54 66 79 90 103
  693.         AnimationSound = Sound:MountainGiantFootstep    ExcludedMC:WADING    Animation:WUMNTGNT_SKL.WUMNTGNT_BMBA    Frames:38
  694.         AnimationSound = Sound:MountainGiantFootstep    ExcludedMC:WADING    Animation:WUMNTGNT_SKL.WUMNTGNT_RTHRA    Frames:42
  695.         AnimationSound = Sound:MountainGiantFootstep    ExcludedMC:WADING    Animation:WUMNTGNT_SKL.WUMNTGNT_RTRNL    Frames:14 29
  696.         AnimationSound = Sound:MountainGiantFootstep    ExcludedMC:WADING    Animation:WUMNTGNT_SKL.WUMNTGNT_RTRNR    Frames:14 29
  697.         AnimationSound = Sound:MountainGiantFootstep    ExcludedMC:WADING    Animation:WUMntGnt_SKL.WUMntGnt_RUNA    Frames:15 30 45 61
  698.         AnimationSound = Sound:MountainGiantFootstep    ExcludedMC:WADING    Animation:WUMNTGNT_SKL.WUMNTGNT_RWLKA    Frames:20 42 65 87 108 129
  699.         AnimationSound = Sound:MountainGiantFootstep    ExcludedMC:WADING    Animation:WUMNTGNT_SKL.WUMNTGNT_TRNL    Frames:14 29
  700.         AnimationSound = Sound:MountainGiantFootstep    ExcludedMC:WADING    Animation:WUMNTGNT_SKL.WUMNTGNT_TRNR    Frames:14 29
  701.         AnimationSound = Sound:MountainGiantFootstep    ExcludedMC:WADING    Animation:WUMNTGNT_SKL.WUMNTGNT_WLKA    Frames:20 42 65 87 108 129
  702.  
  703.         AnimationSound = Sound:MountainGiantVoxCheer                        Animation:WUMntGnt_SKL.WUMntGnt_CHRA    Frames:51
  704.         AnimationSound = Sound:MountainGiantVoxCheer                        Animation:WUMntGnt_SKL.WUMntGnt_TNTA    Frames:25
  705.         AnimationSound = Sound:MountainGiantGenericChestBeatImpact            Animation:WUMntGnt_SKL.WUMntGnt_TNTA    Frames:44 59 73
  706.  
  707.         AnimationSound = Sound:MountainGiantBodyfall                        Animation:WUMntGnt_SKL.WUMntGnt_DIEA    Frames:104
  708.         AnimationSound = Sound:MountainGiantBodyfall                        Animation:WUMNTGNT_SKL.WUMNTGNT_DIEB    Frames:89
  709.         AnimationSound = Sound:MountainGiantBodyfall                        Animation:WUMNTGNT_SKL.WUMNTGNT_LNDA    Frames:6
  710.         AnimationSound = Sound:MountainGiantBodyfall                        Animation:WUMNTGNT_SKL.WUMNTGNT_RDIEA    Frames:104
  711.  
  712.         AnimationSound = Sound:MountainGiantBoulderImpacts                    Animation:WUMNTGNT_SKL.WUMNTGNT_RDIEA    Frames:6
  713.         AnimationSound = Sound:MountainGiantBoulderImpacts                    Animation:WUMNTGNT_SKL.WUMNTGNT_RTHRB    Frames:39
  714.  
  715.         ;----------- water footsteps below -------------
  716.  
  717.         AnimationSound = Sound:GiantFootstepWater        RequiredMC:WADING    Animation:WUMNTGNT_SKL.WUMNTGNT_ATKF    Frames:40
  718.         AnimationSound = Sound:GiantFootstepWater        RequiredMC:WADING    Animation:WUMNTGNT_SKL.WUMNTGNT_ATRA    Frames:22 43
  719.         AnimationSound = Sound:GiantFootstepWater        RequiredMC:WADING    Animation:WUMNTGNT_SKL.WUMNTGNT_MFDA    Frames:14 28 39 54 66 79 90 103
  720.         AnimationSound = Sound:GiantFootstepWater        RequiredMC:WADING    Animation:WUMNTGNT_SKL.WUMNTGNT_BMBA    Frames:38
  721.         AnimationSound = Sound:GiantFootstepWater        RequiredMC:WADING    Animation:WUMNTGNT_SKL.WUMNTGNT_RTHRA    Frames:42
  722.         AnimationSound = Sound:GiantFootstepWater        RequiredMC:WADING    Animation:WUMNTGNT_SKL.WUMNTGNT_RTRNL    Frames:14 29
  723.         AnimationSound = Sound:GiantFootstepWater        RequiredMC:WADING    Animation:WUMNTGNT_SKL.WUMNTGNT_RTRNR    Frames:14 29
  724.         AnimationSound = Sound:GiantFootstepWater        RequiredMC:WADING    Animation:WUMntGnt_SKL.WUMntGnt_RUNA    Frames:15 30 45 61
  725.         AnimationSound = Sound:GiantFootstepWater        RequiredMC:WADING    Animation:WUMNTGNT_SKL.WUMNTGNT_RWLKA    Frames:20 42 65 87 108 129
  726.         AnimationSound = Sound:GiantFootstepWater        RequiredMC:WADING    Animation:WUMNTGNT_SKL.WUMNTGNT_TRNL    Frames:14 29
  727.         AnimationSound = Sound:GiantFootstepWater        RequiredMC:WADING    Animation:WUMNTGNT_SKL.WUMNTGNT_TRNR    Frames:14 29
  728.         AnimationSound = Sound:GiantFootstepWater        RequiredMC:WADING    Animation:WUMNTGNT_SKL.WUMNTGNT_WLKA    Frames:20 42 65 87 108 129
  729.  
  730.         ; ----- tied up escape -----
  731.         AnimationSound = Sound:MountainGiantFreedMS                            Animation:WUMNTGNT_SKL.WUMNTGNT_GTPB    Frames:1
  732.  
  733.     End
  734.  
  735.  
  736.     ; *** ENGINEERING Parameters ***
  737.  
  738.     RadarPriority    = UNIT
  739.     KindOf            = PRELOAD SELECTABLE HEAVY_MELEE_HITTER CAN_CAST_REFLECTIONS MONSTER SCORE CAN_ATTACK ATTACK_NEEDS_LINE_OF_SIGHT PATH_THROUGH_INFANTRY CAN_ATTACK_WALLS SCARY BIG_MONSTER NO_FREEWILL_ENTER
  740.     BuildCost        = WILD_MOUNTAIN_GIANT_BUILDCOST                
  741.     BuildTime        = WILD_MOUNTAIN_GIANT_BUILDTIME        
  742.     BountyValue        = WILD_MOUNTAIN_GIANT_BOUNTYVALUE
  743.     
  744.     Body = ActiveBody ModuleTag_Body
  745.         CheerRadius        = EMOTION_CHEER_RADIUS
  746.         MaxHealth        = WILD_MOUNTAIN_GIANT_HEALTH
  747.         MaxHealthDamaged    = WILD_MOUNTAIN_GIANT_HEALTH_DAMAGED
  748.     End
  749.     
  750.     Behavior = StancesBehavior ModuleTag_StancesBehavior
  751.         StanceTemplate = Artillery
  752.     End
  753.  
  754.     Behavior = AIUpdateInterface ModuleTag_03
  755.         AutoAcquireEnemiesWhenIdle    = Yes ATTACK_BUILDINGS
  756.         AILuaEventsList                = MountainGiantFunctions
  757.     End
  758.  
  759.     Behavior = FireWeaponWhenDeadBehavior FireDeadTag
  760.         RequiredStatus    = DEATH_1
  761.         StartsActive    = Yes
  762.         DelayTime        = 3400
  763.         DeathWeapon        = MountainGiantDeath
  764.         WeaponOffset    = X:-68 Y:0 Z:0    ;Fire the death weapon right behind the object.
  765.     End    
  766.  
  767.     LocomotorSet
  768.         Locomotor = RohanTreeBeardLocomotor
  769.         Condition = SET_NORMAL 
  770.         Speed     = NORMAL_WILD_INFANTRY_MEMBER_SPEED
  771.     End
  772.  
  773.     Behavior = PhysicsBehavior ModuleTag_04
  774.         GravityMult = 1.0
  775.         ShockStandingTime =    3600    ; tuned to mountain giant's GTPA anim
  776.     End
  777.     
  778.     Behavior = SlowDeathBehavior ModuleTag_50
  779.         DeathTypes            = ALL -FADED
  780.         DestructionDelay    = 40000
  781.         DecayBeginTime        = 7000
  782.         SinkDelay            = 14000
  783.         SinkRate            = 1.3                            ; in Dist/Sec
  784.         Sound                = INITIAL MountainGiantVoxDie
  785.         DeathFlags            = DEATH_1                        ; Controls animation and weapon choice. Sets BOTH model condition and object status bits.
  786.     End
  787.  
  788.     Behavior = SquishCollide ModuleTag_06
  789.         ;nothing
  790.     End
  791.  
  792.     Behavior = NotifyTargetsOfImminentProbableCrushingUpdate ModuleTag_NotifyCrushScan
  793.     End
  794.  
  795.        Behavior = EmotionTrackerUpdate    Module_EmotionTracker            ; required for faramir's wounding arrow
  796.         TauntAndPointDistance        = 500
  797.         TauntAndPointUpdateDelay    = 1000
  798.         
  799.         AddEmotion            =    Terror_Base
  800.         AddEmotion            =    Doom_Base
  801.         //    AddEmotion            =   BraceForBeingCrushed_Base
  802.         //    AddEmotion            =    UncontrollableFear_Base
  803.         //    AddEmotion            =    FearIdle_Base
  804.         //    AddEmotion            =    FearBusy_Base
  805.         AddEmotion            =    Point_Base
  806.         AddEmotion            =    Taunt_Base
  807.          AddEmotion            =    CheerIdle_Base
  808.         AddEmotion            =    CheerBusy_Base
  809.         AddEmotion            =    HeroCheerIdle_Base
  810.         AddEmotion            =    HeroCheerBusy_Base
  811.         AddEmotion            =    Alert_Base
  812.         AddEmotion            =    CheerForAboutToCrush_Base
  813.     End
  814.  
  815.     ;----------------------------------------
  816.  
  817.      Behavior = HitReactionBehavior HitReactionBehaviorModuleTag
  818.          HitReactionLifeTimer1 = 2500 
  819.         HitReactionThreshold1 = 50.0 
  820.      End
  821.  
  822.       Behavior = AimWeaponBehavior AimWeaponModuleTag
  823.         AimNearDistance = 40.0    ; If target closer than this, give Near flag.  This and IsAimingWeapon combine to give extra model condition flags
  824.     End
  825.  
  826.  
  827.     ;;; STOMP SPECIAL ABILITY ;;;
  828.     Behavior = SpecialPowerModule ModuleTag_StompStarter       
  829.         SpecialPowerTemplate      = SpecialAbilityWildMountainGiantStomp
  830.         UpdateModuleStartsAttack  = Yes
  831.         StartsPaused                = No
  832.     End
  833.     Behavior = WeaponFireSpecialAbilityUpdate ModuleTag_StompWeaponFireUpdate   
  834.         SpecialPowerTemplate    = SpecialAbilityWildMountainGiantStomp
  835.         WhichSpecialWeapon        = 2        ; SPECIAL_WEAPON_TWO
  836.         SkipContinue            = Yes
  837.  
  838.         UnpackTime              = 1367        //Frames 1-41 (of 97)
  839.         PackTime                = 1867        //Remaining frames 41-97
  840.         ;FreezeAfterTriggerDuration = 2500 ; Hold AI for this long after we fire.
  841.         
  842.         AwardXPForTriggering    = 0        
  843.         StartAbilityRange        = 80.0
  844.         
  845.         SpecialWeapon            = WildMountainGiantStomp
  846.     End
  847.  
  848.     Behavior = AutoAbilityBehavior ModuleTag_AutoAbilityBehavior
  849.     End        
  850.  
  851.     //Toggle CommandSet Based on Weaponset condition flags
  852.     Behavior = MonitorConditionUpdate ModuleTag_CommandSetSwapper
  853.         ModelConditionFlags            = ATTACKING_POSITION
  854.         ModelConditionCommandSet    = WildMountainGiantRockCommandSetStopBombard
  855.         WeaponSetFlags                = WEAPONSET_TOGGLE_1
  856.         WeaponToggleCommandSet        = WildMountainGiantRockCommandSet
  857.     End
  858.     
  859.     // When created, automatically switch to rock-throwing
  860.     Behavior = DoCommandUpgrade Module_DoCommandUpgrade    
  861.         TriggeredBy = Upgrade_SwitchToRockThrowing
  862.         GetUpgradeCommandButtonName = Command_ToggleMountainGiantRockThrow
  863.     End
  864.     
  865.     ;///////////////////
  866.     ; AISpecialPowers
  867.     ;///////////////////
  868.     
  869.     Behavior = AISpecialPowerUpdate ToggleSiegeModeAI
  870.         CommandButtonName = Command_ToggleMountainGiantRockThrow
  871.         SpecialPowerAIType = AI_SPECIAL_POWER_TOGGLE_SIEGE
  872.     End
  873.     
  874.     Geometry            = CYLINDER
  875.     GeometryMajorRadius = 15
  876.     GeometryHeight        = 56.0
  877.     GeometryIsSmall        = No
  878.     Shadow                = SHADOW_VOLUME_NON_SELF_2; volumetric shadow that doesn't cast onto all objects using SHADOW_VOLUME_NON_SELF_2
  879.     ShadowSizeX            = 36; clamp the angle so shadow isn't as long.
  880.  
  881. End
  882.  
  883. ;---------------------------------------------------------------------------------------------------------------
  884. ;---------------------------------------------------------------------------------------------------------------
  885. ChildObject WildMountainGiantSentry WildMountainGiant
  886.  
  887.     Draw = W3DScriptedModelDraw ModuleTag_01
  888.     
  889.         StaticModelLODMode        = Yes
  890.  
  891.         OkToChangeModelColor    = Yes
  892.         ExtraPublicBone            = IMPACT
  893.         ExtraPublicBone            = ROCK        
  894.  
  895.         StaticModelLODMode        = yes ; Will append M or L to the skin name depending on GameLOD
  896.  
  897.         DefaultModelConditionState
  898.             Model               = WUMntGnt_SKN
  899.             Skeleton            = WUMntGnt_SKL
  900.             WeaponLaunchBone    = PRIMARY ROCK
  901.             WeaponLaunchBone    = SECONDARY ROCK
  902.         End
  903.         
  904.  
  905.         IdleAnimationState
  906.             StateName = Idle
  907.             Animation = Breathe
  908.                 AnimationName = WUMntGnt_FIDLA 
  909.                 AnimationMode = ONCE
  910.                 AnimationBlendTime = 10
  911.                 AnimationPriority = 40
  912.             End
  913.             Animation = BellyScratch
  914.                 AnimationName = WUMntGnt_FIDLB
  915.                 AnimationMode = ONCE
  916.                 AnimationBlendTime = 10
  917.                 AnimationPriority = 10
  918.             End            
  919.             Flags                        = RESTART_ANIM_WHEN_COMPLETE        
  920.             BeginScript
  921.                 CurDrawableHideSubObjectPermanently("ROCK")
  922.             EndScript
  923.         End
  924.         
  925.         AnimationState = DYING
  926.             Animation
  927.                 AnimationName     =  WUMntGnt_FDIEA
  928.                 AnimationMode     = ONCE
  929.             End
  930.         End        
  931.  
  932.         AnimationState = FIRING_OR_PREATTACK_A 
  933.             Animation
  934.                 AnimationName = WUMntGnt_FATKA
  935.                 AnimationMode = ONCE
  936.                 UseWeaponTiming = Yes
  937.                 AnimationBlendTime = 0
  938.             End
  939.             BeginScript
  940.                 CurDrawableShowSubObjectPermanently("ROCK")
  941.             EndScript
  942.             FrameForPristineBonePositions = 99
  943.             StateName = Throw
  944.         End        
  945.  
  946.         AnimationState = TURN_LEFT
  947.             Animation
  948.                 AnimationName = WUMntGnt_FTNL
  949.                 AnimationMode = LOOP                
  950.                 AnimationBlendTime = 10
  951.             End
  952.             BeginScript
  953.                 CurDrawableHideSubObjectPermanently("ROCK")
  954.             EndScript
  955.         End
  956.  
  957.         AnimationState = TURN_RIGHT
  958.             Animation
  959.                 AnimationName = WUMntGnt_FTNR
  960.                 AnimationMode = LOOP
  961.                 AnimationBlendTime = 10
  962.             End
  963.             BeginScript
  964.                 CurDrawableHideSubObjectPermanently("ROCK")
  965.             EndScript
  966.         End
  967.     End    ;//Draw Module
  968.  
  969.     ;// No command points for this as it's free.
  970.     CommandPoints            = 0
  971.  
  972.     ShockwaveResistance        = SHOCKWAVE_RESISTANCE_ALWAYS
  973.  
  974.     ;//Should be the same kindof as the Wild Mountain Giant except with IGNORE_SELECT_ALL
  975.     KindOf = PRELOAD SELECTABLE CAN_CAST_REFLECTIONS MONSTER SCORE CAN_ATTACK ATTACK_NEEDS_LINE_OF_SIGHT PATH_THROUGH_INFANTRY CAN_ATTACK_WALLS SCARY BIG_MONSTER IGNORES_SELECT_ALL NO_FREEWILL_ENTER
  976.  
  977.     ;// Needs a specialised command set without move based commands.
  978.     CommandSet = WildMountainGiantSentryCommandSet
  979.  
  980.     Behavior = MonitorConditionUpdate ModuleTag_CommandSetSwapper
  981.         ModelConditionFlags            = ATTACKING_POSITION
  982.         ModelConditionCommandSet    = WildMountainGiantSentryCommandSetStopBombard
  983.     End
  984.     
  985.     WeaponSet
  986.         Conditions          =  None
  987.         Weapon              =  PRIMARY    WildMountainGiantSentryRockThrow    
  988.         ;Weapon              =  PRIMARY    GondorArcherBow
  989.     End
  990.  
  991.     LocomotorSet
  992.         Locomotor = FloatingCatapultLocomotor
  993.         Condition = SET_NORMAL
  994.         Speed     = 0
  995.     End
  996.  
  997.     ; *** AUDIO Parameters ***;
  998.  
  999.     #include "..\..\..\includes\StandardUnitEvaEvents.inc"
  1000.  
  1001.     VoiceAttack                = MountainGiantVoxAttack
  1002.     VoiceAttackCharge        = MountainGiantVoxAttack
  1003.     VoiceAttackMachine        = MountainGiantVoxAttack
  1004.     VoiceAttackStructure    = MountainGiantVoxAttack
  1005.     VoiceCreated            = NoSound
  1006.     VoiceCreated            = +SOUND:MountainGiantVoxCreated
  1007.     VoiceFullyCreated        = NoSound
  1008.     VoiceFullyCreated        = +SOUND:MountainGiantVoxCreated
  1009.     VoiceGuard                = MountainGiantVoxMove
  1010.     VoiceMove                = MountainGiantVoxMove
  1011.     VoicePriority            = 30
  1012.     VoiceSelect                = MountainGiantVoxSelectMS
  1013.     VoiceSelectBattle        = MountainGiantVoxSelectMS
  1014.     
  1015.     SoundAmbient            = MountainGiantVoxAmbientLoop
  1016.     SoundImpact                = ImpactHorse
  1017.  
  1018.     UnitSpecificSounds
  1019.         VoiceEnterUnitEvilMenTransportShip    = NoSound
  1020.         VoiceEnterUnitMordorMumakil            = NoSound
  1021.         VoiceEnterUnitSlaughterHouse        = NoSound
  1022.         VoiceGarrison                        = NoSound
  1023.         VoiceInitiateCaptureBuilding        = NoSound
  1024.     End
  1025.  
  1026.     ;------------------------------
  1027.  
  1028.     Behavior = AIUpdateInterface ModuleTag_03
  1029.         AutoAcquireEnemiesWhenIdle    = No
  1030.     End
  1031.  
  1032.     //We should die when the expansion does!
  1033.     Behavior = SlavedUpdate ModuleTag_Slave
  1034.         DieOnMastersDeath    = Yes
  1035.         MarkUnselectable    = No
  1036.     End
  1037.  
  1038.     Behavior = SlowDeathBehavior ModuleTag_50
  1039.         DeathTypes            = ALL                            ;-KNOCKBACK -FADED
  1040.         DestructionDelay    = 1800        
  1041.         SinkDelay            = 0
  1042.         SinkRate            = 10.0                            ; in Dist/Sec
  1043.         Sound                = INITIAL MountainGiantVoxDie
  1044.         DeathFlags            = DEATH_1                        ; Controls animation and weapon choice. Sets BOTH model condition and object status bits.
  1045.     End
  1046.     
  1047.     Scale = .80
  1048.  
  1049.     Shadow = SHADOW_VOLUME
  1050. End
  1051.  
  1052. ;-----------------------------
  1053.  
  1054. ChildObject WildMountainGiant_Summoned WildMountainGiant
  1055.     IsTrainable      =    No
  1056.     CommandPoints =    0
  1057.     CommandSet      =    WildMountainGiantCommandSet
  1058.     EquivalentTo  =    WildMountainGiant
  1059.     
  1060.     Behavior = LifetimeUpdate ModuleTag_LifetimeUpdate
  1061.     // This one displays the timer, but the one in the uint does the work 
  1062.         MinLifetime        = CREATE_A_HERO_REINFORCEMENT_LIFETIME
  1063.         MaxLifetime        = CREATE_A_HERO_REINFORCEMENT_LIFETIME
  1064.         DeathType        = FADED
  1065.     End    
  1066.  
  1067.     Behavior = SlowDeathBehavior ModuleTag_FadeDeath
  1068.         DeathTypes            = NONE +FADED
  1069.         FadeDelay            = 0
  1070.         FadeTime            = 5000
  1071.         DestructionDelay    = 5000
  1072.         DeathFlags            = DEATH_3
  1073.         Sound = INITIAL SpellGenericUnsummonFasterMS
  1074.     End    
  1075.  
  1076. End