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_civilian_rivendellbuildings.ini < prev    next >
Text File  |  2006-01-31  |  90KB  |  3,332 lines

  1. ;------------------------------------------------------------------------------ 
  2. ;Rivendell Gate
  3. Object RivGate
  4.  
  5.     SelectPortrait = BPCRivendellGate
  6.  
  7.   ; *** ART Parameters ***
  8. ;  SelectPortrait         = SNReactor_L
  9. ;  ButtonImage            = SNReactor
  10.   ;day
  11.  
  12.   Draw = W3DScriptedModelDraw ModuleTag_Draw
  13.     OkToChangeModelColor  = Yes
  14.     UseStandardModelNames = Yes
  15.  
  16.     DefaultModelConditionState  
  17.       Model = RivGate
  18.     End
  19.  
  20. ;--------- damage states for the gate
  21.  
  22.         ModelConditionState   = DAMAGED
  23.             Model               = RivGate_D1
  24.         End
  25.         
  26. //        Having this AnimationState in results in a bug where an opened gate will switch 
  27. //        to closed when it becomes damaged!
  28. //        AnimationState = DAMAGED
  29. //            EnteringStateFX = FX_RDGateDamaged
  30. //        End
  31.         
  32.         
  33.                 
  34.         ModelConditionState   = REALLYDAMAGED
  35.             Model               = RivGate_D2
  36.         End
  37.         
  38. //        Having this AnimationState in results in a bug where an opened gate will switch 
  39. //        to closed when it becomes damaged!
  40. //        AnimationState = REALLYDAMAGED
  41. //            EnteringStateFX = FX_RDGateReallyDamaged
  42. //        End
  43.  
  44.  
  45.         ModelConditionState  = COLLAPSING DOOR_1_OPENING
  46.             Model         = RivGate_D3
  47.         End
  48.         AnimationState = COLLAPSING DOOR_1_OPENING
  49.               Animation                =    RubbleAnimation
  50.                 AnimationName        =     RivGate_D3.RivGate_D3
  51.                 AnimationMode        =    ONCE
  52.               End
  53.         End
  54.         
  55.         ModelConditionState  = COLLAPSING
  56.             Model         = RivGate_D4
  57.         End
  58.         AnimationState = COLLAPSING
  59.               Animation                =    RubbleAnimation
  60.                 AnimationName        =     RivGate_D4.RivGate_D4
  61.                 AnimationMode        =    ONCE
  62.               End
  63.               EnteringStateFX    = FX_BuildingSinkSound
  64.         End
  65.  
  66.         ModelConditionState  = RUBBLE
  67.             Model         = RivGate_D4  
  68.         End  
  69.         AnimationState = RUBBLE
  70.               Animation                =    RubbleAnimation
  71.                 AnimationName        =     RivGate_D4.RivGate_D4
  72.                 AnimationMode        =    ONCE
  73.               End
  74.               Flags                =    START_FRAME_LAST
  75.         End
  76.                 
  77.         ModelConditionState  = POST_RUBBLE
  78.             Model         = NONE
  79.         End
  80.         AnimationState = POST_RUBBLE
  81.         End
  82.  
  83.         ModelConditionState  = POST_COLLAPSE
  84.         Model         = None
  85.             ParticleSysBone NONE SmokeBuildingMediumRubble
  86.         End
  87.         AnimationState = POST_COLLAPSE
  88.             ParticleSysBone NONE SmokeBuildingMediumRubble
  89.         End 
  90.  
  91.                 
  92. ;------ Door Animations
  93.  
  94.         AnimationState = DOOR_1_OPENING 
  95.             Flags = START_FRAME_LAST
  96.             StateName = Door_Open
  97.             Animation                =    Death
  98.                 AnimationName        =    RivGate_SKL.RivGate_OP
  99.                 AnimationMode        =    ONCE
  100.             End
  101.             BeginScript
  102.                 Prev = CurDrawablePrevAnimationState()
  103.                 if Prev == "Door_Close" then CurDrawableSetTransitionAnimState("TRANS_Closed_To_Open") end
  104.             EndScript
  105.         End
  106.         TransitionState = TRANS_Closed_To_Open
  107.             Animation = Open 
  108.                 AnimationName    =    RivGate_SKL.RivGate_OPN
  109.                 AnimationMode    =    ONCE 
  110.             End
  111.         End
  112.     
  113.         AnimationState = DOOR_1_CLOSING 
  114.             Flags = START_FRAME_LAST
  115.             StateName = Door_Close
  116.             Animation                =    Death
  117.                 AnimationName        =    RivGate_SKL.RivGate_CL
  118.                 AnimationMode        =    ONCE
  119.             End
  120.             BeginScript
  121.                 Prev = CurDrawablePrevAnimationState()
  122.                 if Prev == "Door_Open" then CurDrawableSetTransitionAnimState("TRANS_Open_To_Closed") end
  123.             EndScript
  124.         End
  125.         TransitionState = TRANS_Open_To_Closed
  126.             Animation = Open 
  127.                 AnimationName    =    RivGate_SKL.RivGate_CLS
  128.                 AnimationMode    =    ONCE 
  129.             End
  130.         End
  131.         
  132.   End
  133.   
  134.     // ***DESIGN parameters ***
  135.     DisplayName        = OBJECT:RivendellGate
  136.     Side                = Civilian
  137.     EditorSorting        = STRUCTURE
  138.     Browser            = REGION Rivendell STRUCTURE
  139.     ThreatLevel        = 1.0
  140.         
  141.     CommandSet = CastleGateCommandSet
  142.      
  143.     BuildCost               = 500
  144.     BuildTime               = 15.0           ; in seconds
  145.     VisionRange             = 160.0          ; Shroud clearing distance
  146.     ShroudClearingRange     = 160
  147.     KeepSelectableWhenDead    = Yes
  148.  
  149.     ArmorSet
  150.         Conditions        = None
  151.         Armor             = RivGateArmor
  152.         DamageFX          = GateDamageFX
  153.     End
  154.  
  155.   ; *** AUDIO Parameters ***
  156.  
  157.     SoundOnDamaged        = BuildingLightDamageStone
  158.     SoundOnReallyDamaged    = BuildingHeavyDamageStone
  159.  
  160.     ;  VoiceSelect         = GondorBarracksSelect
  161.      
  162.     ;  UnitSpecificSounds
  163.     ;  UnderConstruction     = UnderConstructionLoop
  164.     ;  End
  165.  
  166.  
  167.     // *** ENGINEERING Parameters ***
  168.  
  169.     RadarPriority       = STRUCTURE
  170.     KindOf              = STRUCTURE IMMOBILE SELECTABLE BLOCKING_GATE MADE_OF_WOOD IGNORE_FOR_VICTORY
  171.     ;KindOf              = PRELOAD STRUCTURE IMMOBILE CHUNK_VENDOR  NOT_AUTOACQUIRABLE SELECTABLE BLOCKING_GATE ;WALK_ON_TOP_OF_WALL
  172.  
  173.     Body                        = ActiveBody ModuleTag_05
  174.         MaxHealth                = 7000.0
  175.         MaxHealthDamaged        = 3000.0
  176.         MaxHealthReallyDamaged  = 1000.0
  177.     End
  178.  
  179.     Behavior = KeepObjectDie ModuleTag_IWantRubble
  180.         ;CollapsingTime = 10000
  181.     End
  182.  
  183.     Behavior            = GettingBuiltBehavior GetBuiltBehaviorTag
  184.         SelfBuildingLoop            = BuildingConstructionLoop        ; Only played if we DON'T spawn a worker
  185.         SelfRepairFromDamageLoop    = NoSound                        ; This doesn't cause an animation, so don't bother playing a sound
  186.         SelfRepairFromRubbleLoop    = BuildingConstructionLoop
  187.         SpawnTimer                    = -1.0                            ; Negative means no 'autoheal'
  188.         RebuildTimeSeconds            = 40
  189.     End
  190.     
  191.     Behavior = GateOpenAndCloseBehavior ModuleTag_GATE
  192.         ResetTimeInMilliseconds            = 2000                ;important! this must be longer than the gates animation, ir it will twitch
  193.         OpenByDefault                    = No
  194.         PercentOpenForPathing            = 50
  195.         SoundOpeningGateLoop            = GateOpenStart
  196.         SoundClosingGateLoop            = GateCloseStart
  197.         SoundFinishedOpeningGate        = GateOpenEnd
  198.         SoundFinishedClosingGate        = GateCloseEnd
  199.         TimeBeforePlayingOpenSound        = 9500
  200.         TimeBeforePlayingClosedSound    = 9500
  201.     End    
  202.       
  203.     AttackContactPoint = X:-24 Y:-24 Z:92
  204.     
  205.     Geometry              = BOX
  206.     GeometryMajorRadius   = 45.0  
  207.     GeometryMinorRadius   = 40.0  
  208.     GeometryHeight        = 65.0
  209.     GeometryOffset        = X:0 Y:-80 Z:0
  210.     
  211.     AdditionalGeometry      = BOX
  212.     GeometryMajorRadius   = 45.0  
  213.     GeometryMinorRadius   = 40.0  
  214.     GeometryHeight        = 65.0
  215.     GeometryOffset        = X:0 Y:80 Z:0
  216.  
  217.     AdditionalGeometry      = BOX
  218.     GeometryName          = "Closed"
  219.     GeometryMajorRadius   = 5.0
  220.     GeometryMinorRadius   = 60.0
  221.     GeometryHeight        = 65.0
  222.     GeometryOffset        = X:30 Y:0 Z:0
  223.     
  224.     ; Left open
  225.     AdditionalGeometry    = BOX
  226.     GeometryName          = "OpenLeft"
  227.     GeometryMajorRadius   = 45.0  
  228.     GeometryMinorRadius   = 10.0  
  229.     GeometryHeight        = 65.0
  230.     GeometryOffset        = X:0 Y:-40 Z:0
  231.     
  232.     ; Right open
  233.     AdditionalGeometry    = BOX
  234.     GeometryName          = "OpenRight"
  235.     GeometryMajorRadius   = 45.0  
  236.     GeometryMinorRadius   = 10.0  
  237.     GeometryHeight        = 65.0
  238.     GeometryOffset        = X:0 Y:40 Z:0   
  239.     
  240.     
  241.     GeometryIsSmall       = No
  242.       
  243.     Shadow                = SHADOW_VOLUME
  244. End
  245.  
  246. ;------------------------------------------------------------------------------ 
  247. ;Rivendell Gate
  248. Object RivGateLeftSide
  249.  
  250. ;    SelectPortrait = BPRHelmsDeep
  251.  
  252.   ; *** ART Parameters ***
  253. ;  SelectPortrait         = SNReactor_L
  254. ;  ButtonImage            = SNReactor
  255.   ;day
  256.  
  257.   Draw = W3DScriptedModelDraw ModuleTag_Draw
  258.     OkToChangeModelColor  = Yes
  259.     UseStandardModelNames = Yes
  260.  
  261.     DefaultModelConditionState
  262.       Model = RivGateLS        
  263.     End
  264.     
  265.     ;WallBoundsMesh = P1
  266.     ;RampMesh1 = P2
  267.     ;RampMesh2 = P3   
  268.     
  269.   End
  270.  
  271.   ; ***DESIGN parameters ***
  272.   DisplayName         = OBJECT:Prop
  273.   Side                = Civilian
  274.   EditorSorting       = STRUCTURE
  275.   Browser = REGION Rivendell STRUCTURE
  276.   ThreatLevel = 1.0
  277.  
  278.   BuildCost           = 500
  279.   BuildTime           = 15.0           ; in seconds
  280.   VisionRange         = 160.0          ; Shroud clearing distance
  281.   ShroudClearingRange = 160
  282.  
  283.  
  284. ;  CommandSet          = GondorBarracksCommandSet
  285.  
  286.  
  287.   ; *** AUDIO Parameters ***
  288.  
  289.     SoundOnDamaged        = BuildingLightDamageStone
  290.     SoundOnReallyDamaged    = BuildingHeavyDamageStone
  291.  
  292.     ;  VoiceSelect         = GondorBarracksSelect
  293.      
  294.     ;  UnitSpecificSounds
  295.     ;  UnderConstruction     = UnderConstructionLoop
  296.     ;  End
  297.  
  298.  
  299.     ; *** ENGINEERING Parameters ***
  300.  
  301.     RadarPriority       = STRUCTURE
  302.     KindOf              = PRELOAD STRUCTURE IMMOBILE CHUNK_VENDOR  NOT_AUTOACQUIRABLE IGNORED_IN_GUI ;WALK_ON_TOP_OF_WALL SELECTABLE 
  303.  
  304.     Body                        = ActiveBody ModuleTag_05
  305.         MaxHealth                = 10000.0
  306.         MaxHealthDamaged        = 5000.0
  307.         MaxHealthReallyDamaged  = 1000.0
  308.     End
  309.  
  310.     ArmorSet
  311.         Conditions        = None
  312.         Armor             = StructureArmor
  313.         DamageFX          = GateDamageFX
  314.     End
  315.  
  316.     Behavior = ProductionUpdate ModuleTag_06
  317.         ; nothing
  318.     End
  319.   
  320.     Behavior                  = StructureCollapseUpdate ModuleTag_08
  321.         MinCollapseDelay        = 000
  322.         MaxCollapseDelay        = 000
  323.         CollapseDamping         = .5
  324.         MaxShudder              = 0.6
  325.         MinBurstDelay           = 250
  326.         MaxBurstDelay           = 800
  327.         BigBurstFrequency       = 4
  328.         FXList                  = INITIAL   FX_StructureMediumCollapse
  329.         FXList                  = ALMOST_FINAL  FX_StructureAlmostCollapse
  330.         DestroyObjectWhenDone    = Yes
  331.         CollapseHeight            = 155
  332.     End
  333.   
  334.     AttackContactPoint = X:-24 Y:-24 Z:92
  335.  
  336.     Geometry              = BOX
  337.     GeometryMajorRadius   = 46.0
  338.     GeometryMinorRadius   = 33.0
  339.     GeometryHeight        = 100.0
  340.     GeometryOffset        = X:0 Y:-86 Z:0
  341.     
  342.     GeometryIsSmall       = No
  343.       
  344.     Shadow                = SHADOW_VOLUME
  345. End
  346.  
  347.  
  348. ;------------------------------------------------------------------------------ 
  349. ;Rivendell Gate
  350. ObjectReskin RivGateLeftSide_Snow RivGateLeftSide
  351.  
  352. ;    SelectPortrait = BPRHelmsDeep
  353.  
  354.   ; *** ART Parameters ***
  355. ;  SelectPortrait         = SNReactor_L
  356. ;  ButtonImage            = SNReactor
  357.   ;day
  358.  
  359.   Draw = W3DScriptedModelDraw ModuleTag_Draw
  360.     OkToChangeModelColor  = Yes
  361.     UseStandardModelNames = Yes
  362.  
  363.     DefaultModelConditionState
  364.       Model = RivGateLS_S
  365.     End
  366.     
  367.     ;WallBoundsMesh = P1
  368.     ;RampMesh1 = P2
  369.     ;RampMesh2 = P3   
  370.     
  371.   End
  372. End
  373.  
  374. ;------------------------------------------------------------------------------ 
  375. ;Rivendell Gate
  376. Object RivGateRightSide
  377.  
  378. ;    SelectPortrait = BPRHelmsDeep
  379.  
  380.   ; *** ART Parameters ***
  381. ;  SelectPortrait         = SNReactor_L
  382. ;  ButtonImage            = SNReactor
  383.   ;day
  384.  
  385.   Draw = W3DScriptedModelDraw ModuleTag_Draw
  386.     OkToChangeModelColor  = Yes
  387.     UseStandardModelNames = Yes
  388.  
  389.     DefaultModelConditionState
  390.       Model = RivGateRS        
  391.     End
  392.     
  393.     ;WallBoundsMesh = P1
  394.     ;RampMesh1 = P2
  395.     ;RampMesh2 = P3   
  396.     
  397.   End
  398.  
  399.   ; ***DESIGN parameters ***
  400.   DisplayName         = OBJECT:Prop
  401.   Side                = Civilian
  402.   EditorSorting       = STRUCTURE
  403.   Browser = REGION Rivendell STRUCTURE
  404.   ThreatLevel = 1.0
  405.  
  406.   BuildCost           = 500
  407.   BuildTime           = 15.0           ; in seconds
  408.   VisionRange         = 160.0          ; Shroud clearing distance
  409.   ShroudClearingRange = 160
  410.  
  411.  
  412. ;  CommandSet          = GondorBarracksCommandSet
  413.  
  414.  
  415.   ; *** AUDIO Parameters ***
  416.  
  417.     SoundOnDamaged        = BuildingLightDamageStone
  418.     SoundOnReallyDamaged    = BuildingHeavyDamageStone
  419.  
  420.     ;  VoiceSelect         = GondorBarracksSelect
  421.      
  422.     ;  UnitSpecificSounds
  423.     ;  UnderConstruction     = UnderConstructionLoop
  424.     ;  End
  425.  
  426.  
  427.     ; *** ENGINEERING Parameters ***
  428.  
  429.     RadarPriority       = STRUCTURE
  430.     KindOf              = PRELOAD STRUCTURE IMMOBILE CHUNK_VENDOR  NOT_AUTOACQUIRABLE  IGNORED_IN_GUI  ;WALK_ON_TOP_OF_WALL SELECTABLE
  431.  
  432.     Body                        = ActiveBody ModuleTag_05
  433.         MaxHealth                = 10000.0
  434.         MaxHealthDamaged        = 5000.0
  435.         MaxHealthReallyDamaged  = 1000.0
  436.     End
  437.  
  438.     ArmorSet
  439.         Conditions        = None
  440.         Armor             = StructureArmor
  441.         DamageFX          = GateDamageFX
  442.     End
  443.  
  444.     Behavior = ProductionUpdate ModuleTag_06
  445.         ; nothing
  446.     End
  447.   
  448.     Behavior                  = StructureCollapseUpdate ModuleTag_08
  449.         MinCollapseDelay        = 000
  450.         MaxCollapseDelay        = 000
  451.         CollapseDamping         = .5
  452.         MaxShudder              = 0.6
  453.         MinBurstDelay           = 250
  454.         MaxBurstDelay           = 800
  455.         BigBurstFrequency       = 4
  456.         FXList                  = INITIAL   FX_StructureMediumCollapse
  457.         FXList                  = ALMOST_FINAL  FX_StructureAlmostCollapse
  458.         DestroyObjectWhenDone    = Yes
  459.         CollapseHeight            = 155
  460.     End
  461.   
  462.     AttackContactPoint = X:-24 Y:-24 Z:92
  463.  
  464.     Geometry              = BOX
  465.     GeometryMajorRadius   = 46.0
  466.     GeometryMinorRadius   = 33.0
  467.     GeometryHeight        = 100.0
  468.     GeometryOffset        = X:0 Y:86 Z:0
  469.     
  470.     
  471.     GeometryIsSmall       = No
  472.       
  473.     Shadow                = SHADOW_VOLUME
  474. End
  475.  
  476.  
  477. ;------------------------------------------------------------------------------ 
  478. ;Rivendell Gate
  479. ObjectReskin RivGateRightSide_Snow RivGateRightSide
  480.  
  481. ;    SelectPortrait = BPRHelmsDeep
  482.  
  483.   ; *** ART Parameters ***
  484. ;  SelectPortrait         = SNReactor_L
  485. ;  ButtonImage            = SNReactor
  486.   ;day
  487.  
  488.   Draw = W3DScriptedModelDraw ModuleTag_Draw
  489.     OkToChangeModelColor  = Yes
  490.     UseStandardModelNames = Yes
  491.  
  492.     DefaultModelConditionState
  493.       Model = RivGateRS_S    
  494.     End
  495.     
  496.     ;WallBoundsMesh = P1
  497.     ;RampMesh1 = P2
  498.     ;RampMesh2 = P3   
  499.     
  500.   End
  501. End
  502.  
  503. ;------------------------------------------------------------------------------
  504. ;Rivendell Walkway
  505. Object RivWalkway
  506.  
  507. ;    SelectPortrait = BPRHelmsDeep
  508.  
  509.   ; *** ART Parameters ***
  510. ;  SelectPortrait         = SNReactor_L
  511. ;  ButtonImage            = SNReactor
  512.   ;day
  513.  
  514.   Draw = W3DScriptedModelDraw ModuleTag_Draw
  515.     OkToChangeModelColor  = Yes
  516.     UseStandardModelNames = Yes
  517.     ExtraPublicBone = SIEGELADDER
  518.  
  519.     DefaultModelConditionState
  520.       Model = RivWalkway
  521.     End
  522.  
  523.     WallBoundsMesh = P1
  524.         
  525.   End
  526.   
  527.   PlacementViewAngle  = 0
  528.  
  529.   ; ***DESIGN parameters ***
  530.   DisplayName         = OBJECT:Prop
  531.   Side                = Civilian
  532.   EditorSorting       = STRUCTURE
  533.   Browser = REGION Rivendell STRUCTURE
  534.   ThreatLevel = 1.0
  535.  
  536.   BuildCost           = 1
  537.   BuildTime           = 5.0           ; in seconds
  538.   VisionRange         = 160.0          ; Shroud clearing distance
  539.   ShroudClearingRange = 160
  540.  
  541.  
  542.  
  543. ; For Testing Purposes
  544.  
  545.  
  546. ; *** AUDIO Parameters ***
  547.  
  548.     SoundOnDamaged            = BuildingLightDamageStone
  549.     SoundOnReallyDamaged        = BuildingHeavyDamageStone
  550.  
  551. ;  VoiceSelect         = NuclearReactorSelect
  552.  
  553. ;  UnitSpecificSounds
  554. ;  UnderConstruction     = UnderConstructionLoop
  555. ;  End
  556.  
  557.  
  558.   ; *** ENGINEERING Parameters ***
  559.  
  560.   RadarPriority       = NOT_ON_RADAR
  561.   KindOf              = STRUCTURE IMMOBILE WALK_ON_TOP_OF_WALL CHUNK_VENDOR  NOT_AUTOACQUIRABLE IGNORED_IN_GUI ;SELECTABLE;
  562.  
  563.     Behavior = SiegeDockingBehavior ModuleTag_SiegeDocking
  564.     End
  565.  
  566.   Body                  = ActiveBody ModuleTag_B_03
  567.     MaxHealth       = 6000.0
  568.     MaxHealthDamaged = 3000
  569.     MaxHealthReallyDamaged = 1000
  570.     
  571.     GrabObject = EntThrownBuildingRock
  572.     GrabFX = FX_WallGrab
  573.     GrabDamage = 490
  574.     GrabOffset = X:16 Y:0    
  575.   End
  576.   
  577.   ArmorSet
  578.     Conditions        = None
  579.     Armor             = HelmsDeepWalls
  580.     DamageFX          = None
  581.   End
  582.  
  583.     ; Note that structures with "RUBBLE" states should not use DestroyDie; such buildings are 
  584.     ; never truly destroyed, even when reduced to zero health. Also note that garrisonable
  585.     ; buildings automatically stick around because GarrisonContain has it's own DieModule
  586.     Behavior = KeepObjectDie ModuleTag_IWantRubble
  587.     End
  588.  
  589. ;  Behavior            = DestroyDie ModuleTag_07
  590. ;    ;nothing
  591. ;  End
  592.  
  593.       Behavior = AttributeModifierAuraUpdate ModuleTag_WallBonus
  594.         StartsActive    = Yes ;If no, requires upgrade to turn on.
  595.         BonusName        = HelmsDeepWallBonus
  596.         RefreshDelay    = 2000
  597.         ;Range            = 120        ; Range is overridden to affect people on us since we are a wall
  598.         ;TargetEnemy        = Yes    ; Alliances are ignored to affect people on us since we are a wall
  599.     End    
  600.  
  601. ;     Behavior = FireWeaponWhenDeadBehavior FireDeadTag1
  602. ;        DeathTypes        = ALL
  603. ;        StartsActive    = Yes
  604. ;        DeathWeapon        = WallDeath
  605. ;    End    
  606.  
  607.     Geometry              = BOX
  608.     GeometryMajorRadius   = 35.0
  609.     GeometryMinorRadius   = 35.0
  610.     GeometryHeight        = 50.0
  611.     GeometryOffset          = X:0 Y:0.0 Z:0
  612.     
  613.     AdditionalGeometry    = CYLINDER
  614.     GeometryMajorRadius   = 30.0
  615.     GeometryMinorRadius   = 30.0
  616.     GeometryHeight        = 50.0
  617.     GeometryOffset          = X:0.0 Y:0.0 Z:0.0
  618.     
  619.     GeometryIsSmall       = No
  620.     Shadow                = SHADOW_VOLUME
  621.   
  622.       GeometryContactPoint = X:-90  Y:70  Z:0 Grab
  623.     GeometryContactPoint = X:-90  Y:-40 Z:0 Grab
  624.     GeometryContactPoint = X:-90  Y:-30 Z:10 
  625.     GeometryContactPoint = X:-60  Y:-30 Z:60 
  626.     GeometryContactPoint = X:-30   Y:-30 Z:10 
  627.     GeometryContactPoint = X:0    Y:-30 Z:60
  628.     GeometryContactPoint = X:30   Y:-30 Z:10
  629.     GeometryContactPoint = X:60  Y:-30 Z:60
  630.     GeometryContactPoint = X:90  Y:-30 Z:10 
  631.     GeometryContactPoint = X:90 Y:-40 Z:0 Grab
  632.     GeometryContactPoint = X:90 Y:70  Z:0 Grab
  633. End
  634.  
  635.  
  636.  
  637. ;------------------------------------------------------------------------------
  638. ;Rivendell Walkway
  639. Object RivWalkwayT
  640.  
  641. SelectPortrait = BPRHelmsDeep
  642.  
  643.   ; *** ART Parameters ***
  644. ;  SelectPortrait         = SNReactor_L
  645. ;  ButtonImage            = SNReactor
  646.   ;day
  647.  
  648.   Draw = W3DScriptedModelDraw ModuleTag_Draw
  649.     OkToChangeModelColor  = Yes
  650.     UseStandardModelNames = Yes
  651.     ExtraPublicBone = SIEGELADDER
  652.  
  653.     DefaultModelConditionState
  654.       Model = RivWalkwayT
  655.     End
  656.  
  657. ;    WallBoundsMesh = P1
  658.  
  659. ;----- Damage States
  660.  
  661.         ModelConditionState  = COLLAPSING
  662.             Model         = RivWalkwayTD
  663.         End
  664.         AnimationState = COLLAPSING
  665.               Animation                =    RubbleAnimation
  666.                 AnimationName        =     RivWalkwayTD.RivWalkwayTD
  667.                 AnimationMode        =    ONCE
  668.               End
  669.         End
  670.  
  671.         ModelConditionState  = RUBBLE
  672.             Model         = None
  673.         End
  674.         AnimationState = RUBBLE
  675.         End
  676.  
  677.         ModelConditionState  = POST_RUBBLE
  678.             Model         = None
  679.         End
  680.         AnimationState = POST_RUBBLE
  681.         End
  682.         
  683.         ModelConditionState  = POST_COLLAPSE
  684.             Model         = None
  685.         End  
  686.         AnimationState = POST_COLLAPSE
  687.         End    
  688.         
  689.   End
  690.   
  691.   PlacementViewAngle  = 0
  692.  
  693.   ; ***DESIGN parameters ***
  694.   DisplayName         = OBJECT:Prop
  695.   Side                = Civilian
  696.   EditorSorting       = STRUCTURE
  697.   Browser = REGION Rivendell STRUCTURE
  698.   ThreatLevel = 1.0
  699.  
  700.   BuildCost           = 1
  701.   BuildTime           = 5.0           ; in seconds
  702.   VisionRange         = 160.0          ; Shroud clearing distance
  703.   ShroudClearingRange = 160
  704.  
  705.  
  706.  
  707. ; For Testing Purposes
  708.  
  709.  
  710. ; *** AUDIO Parameters ***
  711.  
  712.     SoundOnDamaged            = BuildingLightDamageStone
  713.     SoundOnReallyDamaged        = BuildingHeavyDamageStone
  714.  
  715. ;  VoiceSelect         = NuclearReactorSelect
  716.  
  717. ;  UnitSpecificSounds
  718. ;  UnderConstruction     = UnderConstructionLoop
  719. ;  End
  720.  
  721.  
  722.   ; *** ENGINEERING Parameters ***
  723.  
  724.   RadarPriority       = NOT_ON_RADAR
  725.   KindOf              = STRUCTURE IMMOBILE CHUNK_VENDOR  NOT_AUTOACQUIRABLE IGNORED_IN_GUI ;SELECTABLE WALK_ON_TOP_OF_WALL
  726.  
  727.     Behavior = SiegeDockingBehavior ModuleTag_SiegeDocking
  728.     End
  729.  
  730.   Body                  = ActiveBody ModuleTag_B_03
  731.     MaxHealth       = 1.0
  732.     MaxHealthDamaged = 1.0
  733.     MaxHealthReallyDamaged = 1.0
  734.     
  735.     GrabObject = EntThrownBuildingRock
  736.     GrabFX = FX_WallGrab
  737.     GrabDamage = 490
  738.     GrabOffset = X:16 Y:0    
  739.   End
  740.   
  741.   ArmorSet
  742.     Conditions        = None
  743.     Armor             = NoArmor
  744.     DamageFX          = None
  745.   End
  746.  
  747.     ; Note that structures with "RUBBLE" states should not use DestroyDie; such buildings are 
  748.     ; never truly destroyed, even when reduced to zero health. Also note that garrisonable
  749.     ; buildings automatically stick around because GarrisonContain has it's own DieModule
  750.     Behavior = KeepObjectDie ModuleTag_IWantRubble
  751.     End
  752.  
  753. ;  Behavior            = DestroyDie ModuleTag_07
  754. ;    ;nothing
  755. ;  End
  756.  
  757. ;      Behavior = AttributeModifierAuraUpdate ModuleTag_WallBonus
  758. ;        StartsActive    = Yes ;If no, requires upgrade to turn on.
  759. ;        BonusName        = HelmsDeepWallBonus
  760. ;        RefreshDelay    = 2000
  761. ;        ;Range            = 120        ; Range is overridden to affect people on us since we are a wall
  762. ;        ;TargetEnemy        = Yes    ; Alliances are ignored to affect people on us since we are a wall
  763. ;    End    
  764.  
  765. ;     Behavior = FireWeaponWhenDeadBehavior FireDeadTag1
  766. ;        DeathTypes        = ALL
  767. ;        StartsActive    = Yes
  768. ;        DeathWeapon        = WallDeath
  769. ;    End    
  770.  
  771.     Geometry              = BOX
  772.     GeometryMajorRadius   = 35.0
  773.     GeometryMinorRadius   = 35.0
  774.     GeometryHeight        = 50.0
  775.     GeometryOffset          = X:0 Y:0.0 Z:50
  776.     
  777.     AdditionalGeometry    = CYLINDER
  778.     GeometryMajorRadius   = 30.0
  779.     GeometryMinorRadius   = 30.0
  780.     GeometryHeight        = 50.0
  781.     GeometryOffset          = X:0.0 Y:0.0 Z:0.0
  782.     
  783.     GeometryIsSmall       = No
  784.     Shadow                = SHADOW_VOLUME
  785.   
  786.       GeometryContactPoint = X:-90  Y:70  Z:0 Grab
  787.     GeometryContactPoint = X:-90  Y:-40 Z:0 Grab
  788.     GeometryContactPoint = X:-90  Y:-30 Z:10 
  789.     GeometryContactPoint = X:-60  Y:-30 Z:60 
  790.     GeometryContactPoint = X:-30   Y:-30 Z:10 
  791.     GeometryContactPoint = X:0    Y:-30 Z:60
  792.     GeometryContactPoint = X:30   Y:-30 Z:10
  793.     GeometryContactPoint = X:60  Y:-30 Z:60
  794.     GeometryContactPoint = X:90  Y:-30 Z:10 
  795.     GeometryContactPoint = X:90 Y:-40 Z:0 Grab
  796.     GeometryContactPoint = X:90 Y:70  Z:0 Grab
  797. End
  798.  
  799.  
  800.  
  801. ;------------------------------------------------------------------------------
  802. ;Rivendell Walkway
  803. Object RivWalkwayT1
  804.  
  805. SelectPortrait = BPRHelmsDeep
  806.  
  807.   ; *** ART Parameters ***
  808. ;  SelectPortrait         = SNReactor_L
  809. ;  ButtonImage            = SNReactor
  810.   ;day
  811.  
  812.   Draw = W3DScriptedModelDraw ModuleTag_Draw
  813.     OkToChangeModelColor  = Yes
  814.     UseStandardModelNames = Yes
  815.     ExtraPublicBone = SIEGELADDER
  816.  
  817.     DefaultModelConditionState
  818.       Model = RivWalkwayT1
  819.     End
  820.  
  821. ;    WallBoundsMesh = P1
  822.  
  823.  
  824. ;----- Damage States
  825.  
  826.         ModelConditionState  = COLLAPSING
  827.             Model         = RivWalkwayT1D
  828.         End
  829.         AnimationState = COLLAPSING
  830.               Animation                =    RubbleAnimation
  831.                 AnimationName        =     RivWalkwayT1D.RivWalkwayT1D
  832.                 AnimationMode        =    ONCE
  833.               End
  834.         End
  835.  
  836.         ModelConditionState  = RUBBLE
  837.             Model         = None
  838.         End
  839.         AnimationState = RUBBLE
  840.         End
  841.  
  842.         ModelConditionState  = POST_RUBBLE
  843.             Model         = None
  844.         End
  845.         AnimationState = POST_RUBBLE
  846.         End
  847.         
  848.         ModelConditionState  = POST_COLLAPSE
  849.             Model         = None
  850.         End  
  851.         AnimationState = POST_COLLAPSE
  852.         End    
  853.         
  854.   End
  855.   
  856.   PlacementViewAngle  = 0
  857.  
  858.   ; ***DESIGN parameters ***
  859.   DisplayName         = OBJECT:Prop
  860.   Side                = Civilian
  861.   EditorSorting       = STRUCTURE
  862.   Browser = REGION Rivendell STRUCTURE
  863.   ThreatLevel = 1.0
  864.  
  865.   BuildCost           = 1
  866.   BuildTime           = 5.0           ; in seconds
  867.   VisionRange         = 160.0          ; Shroud clearing distance
  868.   ShroudClearingRange = 160
  869.  
  870.  
  871.  
  872. ; For Testing Purposes
  873.  
  874.  
  875. ; *** AUDIO Parameters ***
  876.  
  877.     SoundOnDamaged            = BuildingLightDamageStone
  878.     SoundOnReallyDamaged        = BuildingHeavyDamageStone
  879.  
  880. ;  VoiceSelect         = NuclearReactorSelect
  881.  
  882. ;  UnitSpecificSounds
  883. ;  UnderConstruction     = UnderConstructionLoop
  884. ;  End
  885.  
  886.  
  887.   ; *** ENGINEERING Parameters ***
  888.  
  889.   RadarPriority       = NOT_ON_RADAR
  890.   KindOf              = STRUCTURE IMMOBILE CHUNK_VENDOR  NOT_AUTOACQUIRABLE IGNORED_IN_GUI ;SELECTABLE WALK_ON_TOP_OF_WALL
  891.  
  892.     Behavior = SiegeDockingBehavior ModuleTag_SiegeDocking
  893.     End
  894.  
  895.   Body                  = ActiveBody ModuleTag_B_03
  896.     MaxHealth       = 1.0
  897.     MaxHealthDamaged = 1.0
  898.     MaxHealthReallyDamaged = 1.0
  899.     
  900.     GrabObject = EntThrownBuildingRock
  901.     GrabFX = FX_WallGrab
  902.     GrabDamage = 490
  903.     GrabOffset = X:16 Y:0    
  904.   End
  905.   
  906.   ArmorSet
  907.     Conditions        = None
  908.     Armor             = NoArmor 
  909.     DamageFX          = None
  910.   End
  911.  
  912.     ; Note that structures with "RUBBLE" states should not use DestroyDie; such buildings are 
  913.     ; never truly destroyed, even when reduced to zero health. Also note that garrisonable
  914.     ; buildings automatically stick around because GarrisonContain has it's own DieModule
  915.     Behavior = KeepObjectDie ModuleTag_IWantRubble
  916.     End
  917.  
  918. ;  Behavior            = DestroyDie ModuleTag_07
  919. ;    ;nothing
  920. ;  End
  921.  
  922. ;      Behavior = AttributeModifierAuraUpdate ModuleTag_WallBonus
  923. ;        StartsActive    = Yes ;If no, requires upgrade to turn on.
  924. ;        BonusName        = HelmsDeepWallBonus
  925. ;        RefreshDelay    = 2000
  926. ;        ;Range            = 120        ; Range is overridden to affect people on us since we are a wall
  927. ;        ;TargetEnemy        = Yes    ; Alliances are ignored to affect people on us since we are a wall
  928. ;    End    
  929.  
  930. ;     Behavior = FireWeaponWhenDeadBehavior FireDeadTag1
  931. ;        DeathTypes        = ALL
  932. ;        StartsActive    = Yes
  933. ;        DeathWeapon        = WallDeath
  934. ;    End    
  935.  
  936.     Geometry              = BOX
  937.     GeometryMajorRadius   = 35.0
  938.     GeometryMinorRadius   = 35.0
  939.     GeometryHeight        = 50.0
  940.     GeometryOffset          = X:0 Y:0.0 Z:50
  941.     
  942.     AdditionalGeometry    = CYLINDER
  943.     GeometryMajorRadius   = 30.0
  944.     GeometryMinorRadius   = 30.0
  945.     GeometryHeight        = 50.0
  946.     GeometryOffset          = X:0.0 Y:0.0 Z:0.0
  947.     
  948.     GeometryIsSmall       = No
  949.     Shadow                = SHADOW_VOLUME
  950.   
  951.       GeometryContactPoint = X:-90  Y:70  Z:0 Grab
  952.     GeometryContactPoint = X:-90  Y:-40 Z:0 Grab
  953.     GeometryContactPoint = X:-90  Y:-30 Z:10 
  954.     GeometryContactPoint = X:-60  Y:-30 Z:60 
  955.     GeometryContactPoint = X:-30   Y:-30 Z:10 
  956.     GeometryContactPoint = X:0    Y:-30 Z:60
  957.     GeometryContactPoint = X:30   Y:-30 Z:10
  958.     GeometryContactPoint = X:60  Y:-30 Z:60
  959.     GeometryContactPoint = X:90  Y:-30 Z:10 
  960.     GeometryContactPoint = X:90 Y:-40 Z:0 Grab
  961.     GeometryContactPoint = X:90 Y:70  Z:0 Grab
  962. End
  963.  
  964.  
  965.  
  966.  
  967. ;------------------------------------------------------------------------------
  968. ;Rivendell Walkway
  969. Object RivWalkway3
  970.  
  971. SelectPortrait = BPRHelmsDeep
  972.  
  973.   ; *** ART Parameters ***
  974. ;  SelectPortrait         = SNReactor_L
  975. ;  ButtonImage            = SNReactor
  976.   ;day
  977.  
  978.   Draw = W3DScriptedModelDraw ModuleTag_Draw
  979.     OkToChangeModelColor  = Yes
  980.     UseStandardModelNames = Yes
  981.     ExtraPublicBone = SIEGELADDER
  982.  
  983.     DefaultModelConditionState
  984.       Model = RivWalkway3
  985.     End
  986.  
  987.     WallBoundsMesh = P1
  988.         
  989.   End
  990.   
  991.   PlacementViewAngle  = 0
  992.  
  993.   ; ***DESIGN parameters ***
  994.   DisplayName         = OBJECT:Prop
  995.   Side                = Civilian
  996.   EditorSorting       = STRUCTURE
  997.   Browser = REGION Rivendell STRUCTURE
  998.   ThreatLevel = 1.0
  999.  
  1000.   BuildCost           = 1
  1001.   BuildTime           = 5.0           ; in seconds
  1002.   VisionRange         = 160.0          ; Shroud clearing distance
  1003.   ShroudClearingRange = 160
  1004.  
  1005.  
  1006.  
  1007. ; For Testing Purposes
  1008.  
  1009.  
  1010. ; *** AUDIO Parameters ***
  1011.  
  1012.     SoundOnDamaged            = BuildingLightDamageStone
  1013.     SoundOnReallyDamaged        = BuildingHeavyDamageStone
  1014.  
  1015. ;  VoiceSelect         = NuclearReactorSelect
  1016.  
  1017. ;  UnitSpecificSounds
  1018. ;  UnderConstruction     = UnderConstructionLoop
  1019. ;  End
  1020.  
  1021.  
  1022.   ; *** ENGINEERING Parameters ***
  1023.  
  1024.   RadarPriority       = NOT_ON_RADAR
  1025.   KindOf              = STRUCTURE IMMOBILE WALK_ON_TOP_OF_WALL CHUNK_VENDOR  NOT_AUTOACQUIRABLE IGNORED_IN_GUI ;SELECTABLE;
  1026.  
  1027.     Behavior = SiegeDockingBehavior ModuleTag_SiegeDocking
  1028.     End
  1029.  
  1030.   Body                  = ActiveBody ModuleTag_B_03
  1031.     MaxHealth       = 6000.0
  1032.     MaxHealthDamaged = 3000
  1033.     MaxHealthReallyDamaged = 1000
  1034.     
  1035.     GrabObject = EntThrownBuildingRock
  1036.     GrabFX = FX_WallGrab
  1037.     GrabDamage = 490
  1038.     GrabOffset = X:16 Y:0    
  1039.   End
  1040.   
  1041.   ArmorSet
  1042.     Conditions        = None
  1043.     Armor             = HelmsDeepWalls
  1044.     DamageFX          = None
  1045.   End
  1046.  
  1047.     ; Note that structures with "RUBBLE" states should not use DestroyDie; such buildings are 
  1048.     ; never truly destroyed, even when reduced to zero health. Also note that garrisonable
  1049.     ; buildings automatically stick around because GarrisonContain has it's own DieModule
  1050.     Behavior = KeepObjectDie ModuleTag_IWantRubble
  1051.     End
  1052.  
  1053. ;  Behavior            = DestroyDie ModuleTag_07
  1054. ;    ;nothing
  1055. ;  End
  1056.  
  1057.       Behavior = AttributeModifierAuraUpdate ModuleTag_WallBonus
  1058.         StartsActive    = Yes ;If no, requires upgrade to turn on.
  1059.         BonusName        = HelmsDeepWallBonus
  1060.         RefreshDelay    = 2000
  1061.         ;Range            = 120        ; Range is overridden to affect people on us since we are a wall
  1062.         ;TargetEnemy        = Yes    ; Alliances are ignored to affect people on us since we are a wall
  1063.     End    
  1064.  
  1065. ;     Behavior = FireWeaponWhenDeadBehavior FireDeadTag1
  1066. ;        DeathTypes        = ALL
  1067. ;        StartsActive    = Yes
  1068. ;        DeathWeapon        = WallDeath
  1069. ;    End    
  1070.  
  1071.     Geometry              = BOX
  1072.     GeometryMajorRadius   = 35.0
  1073.     GeometryMinorRadius   = 105.0
  1074.     GeometryHeight        = 50.0
  1075.     GeometryOffset          = X:0 Y:0.0 Z:0
  1076.     
  1077.     AdditionalGeometry    = CYLINDER
  1078.     GeometryMajorRadius   = 30.0
  1079.     GeometryMinorRadius   = 30.0
  1080.     GeometryHeight        = 50.0
  1081.     GeometryOffset          = X:0.0 Y:0.0 Z:0.0
  1082.     
  1083.     GeometryIsSmall       = No
  1084.     Shadow                = SHADOW_VOLUME
  1085.   
  1086.       GeometryContactPoint = X:-90  Y:70  Z:0 Grab
  1087.     GeometryContactPoint = X:-90  Y:-40 Z:0 Grab
  1088.     GeometryContactPoint = X:-90  Y:-30 Z:10 
  1089.     GeometryContactPoint = X:-60  Y:-30 Z:60 
  1090.     GeometryContactPoint = X:-30   Y:-30 Z:10 
  1091.     GeometryContactPoint = X:0    Y:-30 Z:60
  1092.     GeometryContactPoint = X:30   Y:-30 Z:10
  1093.     GeometryContactPoint = X:60  Y:-30 Z:60
  1094.     GeometryContactPoint = X:90  Y:-30 Z:10 
  1095.     GeometryContactPoint = X:90 Y:-40 Z:0 Grab
  1096.     GeometryContactPoint = X:90 Y:70  Z:0 Grab
  1097. End
  1098.  
  1099.  
  1100.  
  1101. ;------------------------------------------------------------------------------
  1102. ;Rivendell Walkway
  1103. Object RivWalkway3T
  1104.  
  1105. SelectPortrait = BPRHelmsDeep
  1106.  
  1107.   ; *** ART Parameters ***
  1108. ;  SelectPortrait         = SNReactor_L
  1109. ;  ButtonImage            = SNReactor
  1110.   ;day
  1111.  
  1112.   Draw = W3DScriptedModelDraw ModuleTag_Draw
  1113.     OkToChangeModelColor  = Yes
  1114.     UseStandardModelNames = Yes
  1115.     ExtraPublicBone = SIEGELADDER
  1116.  
  1117.     DefaultModelConditionState
  1118.       Model = RivWalkway3T
  1119.     End
  1120.  
  1121. ;    WallBoundsMesh = P1
  1122.  
  1123.  
  1124. ;----- Damage States
  1125.  
  1126.         ModelConditionState  = COLLAPSING
  1127.             Model         = RivWalkway3TD
  1128.         End
  1129.         AnimationState = COLLAPSING
  1130.               Animation                =    RubbleAnimation
  1131.                 AnimationName        =     RivWalkway3TD.RivWalkway3TD
  1132.                 AnimationMode        =    ONCE
  1133.               End
  1134.         End
  1135.  
  1136.         ModelConditionState  = RUBBLE
  1137.             Model         = None
  1138.         End
  1139.         AnimationState = RUBBLE
  1140.         End
  1141.  
  1142.         ModelConditionState  = POST_RUBBLE
  1143.             Model         = None
  1144.         End
  1145.         AnimationState = POST_RUBBLE
  1146.         End
  1147.         
  1148.         ModelConditionState  = POST_COLLAPSE
  1149.             Model         = None
  1150.         End  
  1151.         AnimationState = POST_COLLAPSE
  1152.         End    
  1153.                 
  1154.   End
  1155.   
  1156.   PlacementViewAngle  = 0
  1157.  
  1158.   ; ***DESIGN parameters ***
  1159.   DisplayName         = OBJECT:Prop
  1160.   Side                = Civilian
  1161.   EditorSorting       = STRUCTURE
  1162.   Browser = REGION Rivendell STRUCTURE
  1163.   ThreatLevel = 1.0
  1164.  
  1165.   BuildCost           = 1
  1166.   BuildTime           = 5.0           ; in seconds
  1167.   VisionRange         = 160.0          ; Shroud clearing distance
  1168.   ShroudClearingRange = 160
  1169.  
  1170. ; *** AUDIO Parameters ***
  1171.  
  1172.     SoundOnDamaged            = BuildingLightDamageStone
  1173.     SoundOnReallyDamaged        = BuildingHeavyDamageStone
  1174.  
  1175. ;  VoiceSelect         = NuclearReactorSelect
  1176.  
  1177. ;  UnitSpecificSounds
  1178. ;  UnderConstruction     = UnderConstructionLoop
  1179. ;  End
  1180.  
  1181.  
  1182.   ; *** ENGINEERING Parameters ***
  1183.  
  1184.   RadarPriority       = NOT_ON_RADAR
  1185.   KindOf              = STRUCTURE IMMOBILE CHUNK_VENDOR  NOT_AUTOACQUIRABLE IGNORED_IN_GUI ;SELECTABLE WALK_ON_TOP_OF_WALL
  1186.  
  1187.     Behavior = SiegeDockingBehavior ModuleTag_SiegeDocking
  1188.     End
  1189.  
  1190.   Body                  = ActiveBody ModuleTag_B_03
  1191.     MaxHealth       = 1.0
  1192.     MaxHealthDamaged = 1.0
  1193.     MaxHealthReallyDamaged = 1.0
  1194.     
  1195.     GrabObject = EntThrownBuildingRock
  1196.     GrabFX = FX_WallGrab
  1197.     GrabDamage = 490
  1198.     GrabOffset = X:16 Y:0    
  1199.   End
  1200.   
  1201.   ArmorSet
  1202.     Conditions        = None
  1203.     Armor             = NoArmor
  1204.     DamageFX          = None
  1205.   End
  1206.  
  1207.     ; Note that structures with "RUBBLE" states should not use DestroyDie; such buildings are 
  1208.     ; never truly destroyed, even when reduced to zero health. Also note that garrisonable
  1209.     ; buildings automatically stick around because GarrisonContain has it's own DieModule
  1210.     Behavior = KeepObjectDie ModuleTag_IWantRubble
  1211.     End
  1212.  
  1213. ;  Behavior            = DestroyDie ModuleTag_07
  1214. ;    ;nothing
  1215. ;  End
  1216.  
  1217. ;      Behavior = AttributeModifierAuraUpdate ModuleTag_WallBonus
  1218. ;        StartsActive    = Yes ;If no, requires upgrade to turn on.
  1219. ;        BonusName        = HelmsDeepWallBonus
  1220. ;        RefreshDelay    = 2000
  1221. ;        ;Range            = 120        ; Range is overridden to affect people on us since we are a wall
  1222. ;        ;TargetEnemy        = Yes    ; Alliances are ignored to affect people on us since we are a wall
  1223. ;    End    
  1224.  
  1225. ;     Behavior = FireWeaponWhenDeadBehavior FireDeadTag1
  1226. ;        DeathTypes        = ALL
  1227. ;        StartsActive    = Yes
  1228. ;        DeathWeapon        = WallDeath
  1229. ;    End    
  1230.  
  1231.     Geometry              = BOX
  1232.     GeometryMajorRadius   = 35.0
  1233.     GeometryMinorRadius   = 105.0
  1234.     GeometryHeight        = 50.0
  1235.     GeometryOffset          = X:0 Y:0.0 Z:50
  1236.     
  1237.     AdditionalGeometry    = CYLINDER
  1238.     GeometryMajorRadius   = 30.0
  1239.     GeometryMinorRadius   = 30.0
  1240.     GeometryHeight        = 50.0
  1241.     GeometryOffset          = X:0.0 Y:0.0 Z:0.0
  1242.     
  1243.     GeometryIsSmall       = No
  1244.     Shadow                = SHADOW_VOLUME
  1245.   
  1246.       GeometryContactPoint = X:-90  Y:70  Z:0 Grab
  1247.     GeometryContactPoint = X:-90  Y:-40 Z:0 Grab
  1248.     GeometryContactPoint = X:-90  Y:-30 Z:10 
  1249.     GeometryContactPoint = X:-60  Y:-30 Z:60 
  1250.     GeometryContactPoint = X:-30   Y:-30 Z:10 
  1251.     GeometryContactPoint = X:0    Y:-30 Z:60
  1252.     GeometryContactPoint = X:30   Y:-30 Z:10
  1253.     GeometryContactPoint = X:60  Y:-30 Z:60
  1254.     GeometryContactPoint = X:90  Y:-30 Z:10 
  1255.     GeometryContactPoint = X:90 Y:-40 Z:0 Grab
  1256.     GeometryContactPoint = X:90 Y:70  Z:0 Grab
  1257. End
  1258.  
  1259. ;------------------------------------------------------------------------------
  1260. ;Rivendell Walkway Curve
  1261. Object RivWalkCurv
  1262.  
  1263. SelectPortrait = BPRHelmsDeep
  1264.  
  1265.   ; *** ART Parameters ***
  1266. ;  SelectPortrait         = SNReactor_L
  1267. ;  ButtonImage            = SNReactor
  1268.   ;day
  1269.  
  1270.   Draw = W3DScriptedModelDraw ModuleTag_Draw
  1271.     OkToChangeModelColor  = Yes
  1272.     UseStandardModelNames = Yes
  1273.     ExtraPublicBone = SIEGELADDER
  1274.  
  1275.     DefaultModelConditionState
  1276.       Model = RivWalkCurv
  1277.     End
  1278.  
  1279.     WallBoundsMesh = P1
  1280.         
  1281.   End
  1282.   
  1283.   PlacementViewAngle  = 0
  1284.  
  1285.   ; ***DESIGN parameters ***
  1286.   DisplayName         = OBJECT:Prop
  1287.   Side                = Civilian
  1288.   EditorSorting       = STRUCTURE
  1289.   Browser = REGION Rivendell STRUCTURE
  1290.   ThreatLevel = 1.0
  1291.  
  1292.   BuildCost           = 1
  1293.   BuildTime           = 5.0           ; in seconds
  1294.   VisionRange         = 160.0          ; Shroud clearing distance
  1295.   ShroudClearingRange = 160
  1296.  
  1297.  
  1298.  
  1299. ; For Testing Purposes
  1300.  
  1301.  
  1302. ; *** AUDIO Parameters ***
  1303.  
  1304.     SoundOnDamaged            = BuildingLightDamageStone
  1305.     SoundOnReallyDamaged        = BuildingHeavyDamageStone
  1306.  
  1307. ;  VoiceSelect         = NuclearReactorSelect
  1308.  
  1309. ;  UnitSpecificSounds
  1310. ;  UnderConstruction     = UnderConstructionLoop
  1311. ;  End
  1312.  
  1313.  
  1314.   ; *** ENGINEERING Parameters ***
  1315.  
  1316.   RadarPriority       = NOT_ON_RADAR
  1317.   KindOf              = STRUCTURE IMMOBILE WALK_ON_TOP_OF_WALL CHUNK_VENDOR  NOT_AUTOACQUIRABLE IGNORED_IN_GUI ;SELECTABLE
  1318.  
  1319.     Behavior = SiegeDockingBehavior ModuleTag_SiegeDocking
  1320.     End
  1321.  
  1322.   Body                  = ActiveBody ModuleTag_B_03
  1323.     MaxHealth       = 6000.0
  1324.     MaxHealthDamaged = 3000
  1325.     MaxHealthReallyDamaged = 1000
  1326.     
  1327.     GrabObject = EntThrownBuildingRock
  1328.     GrabFX = FX_WallGrab
  1329.     GrabDamage = 490
  1330.     GrabOffset = X:16 Y:0    
  1331.   End
  1332.   
  1333.   ArmorSet
  1334.     Conditions        = None
  1335.     Armor             = HelmsDeepWalls
  1336.     DamageFX          = None
  1337.   End
  1338.  
  1339.     ; Note that structures with "RUBBLE" states should not use DestroyDie; such buildings are 
  1340.     ; never truly destroyed, even when reduced to zero health. Also note that garrisonable
  1341.     ; buildings automatically stick around because GarrisonContain has it's own DieModule
  1342.     Behavior = KeepObjectDie ModuleTag_IWantRubble
  1343.     End
  1344.  
  1345. ;  Behavior            = DestroyDie ModuleTag_07
  1346. ;    ;nothing
  1347. ;  End
  1348.  
  1349.       Behavior = AttributeModifierAuraUpdate ModuleTag_WallBonus
  1350.         StartsActive    = Yes ;If no, requires upgrade to turn on.
  1351.         BonusName        = HelmsDeepWallBonus
  1352.         RefreshDelay    = 2000
  1353.         ;Range            = 120        ; Range is overridden to affect people on us since we are a wall
  1354.         ;TargetEnemy        = Yes    ; Alliances are ignored to affect people on us since we are a wall
  1355.     End    
  1356.  
  1357. ;     Behavior = FireWeaponWhenDeadBehavior FireDeadTag1
  1358. ;        DeathTypes        = ALL
  1359. ;        StartsActive    = Yes
  1360. ;        DeathWeapon        = WallDeath
  1361. ;    End    
  1362.  
  1363.     Geometry              = BOX
  1364.     GeometryMajorRadius   = 50.0
  1365.     GeometryMinorRadius   = 55.0
  1366.     GeometryHeight        = 50.0
  1367.     GeometryOffset          = X:0 Y:0.0 Z:0
  1368.     
  1369.     AdditionalGeometry    = CYLINDER
  1370.     GeometryMajorRadius   = 40.0
  1371.     GeometryMinorRadius   = 40.0
  1372.     GeometryHeight        = 60.0
  1373.     GeometryOffset          = X:0.0 Y:0.0 Z:0
  1374.     
  1375.     GeometryIsSmall       = No
  1376.     Shadow                = SHADOW_VOLUME
  1377.   
  1378.       GeometryContactPoint = X:-90  Y:70  Z:0 Grab
  1379.     GeometryContactPoint = X:-90  Y:-40 Z:0 Grab
  1380.     GeometryContactPoint = X:-90  Y:-30 Z:10 
  1381.     GeometryContactPoint = X:-60  Y:-30 Z:60 
  1382.     GeometryContactPoint = X:-30   Y:-30 Z:10 
  1383.     GeometryContactPoint = X:0    Y:-30 Z:60
  1384.     GeometryContactPoint = X:30   Y:-30 Z:10
  1385.     GeometryContactPoint = X:60  Y:-30 Z:60
  1386.     GeometryContactPoint = X:90  Y:-30 Z:10 
  1387.     GeometryContactPoint = X:90 Y:-40 Z:0 Grab
  1388.     GeometryContactPoint = X:90 Y:70  Z:0 Grab
  1389. End
  1390.  
  1391.  
  1392.  
  1393. ;------------------------------------------------------------------------------
  1394. ;Rivendell Walkway Curve
  1395. Object RivWalkCurvT
  1396.  
  1397. SelectPortrait = BPRHelmsDeep
  1398.  
  1399.   ; *** ART Parameters ***
  1400. ;  SelectPortrait         = SNReactor_L
  1401. ;  ButtonImage            = SNReactor
  1402.   ;day
  1403.  
  1404.   Draw = W3DScriptedModelDraw ModuleTag_Draw
  1405.     OkToChangeModelColor  = Yes
  1406.     UseStandardModelNames = Yes
  1407.     ExtraPublicBone = SIEGELADDER
  1408.  
  1409.     DefaultModelConditionState
  1410.       Model = RivWalkCurvT
  1411.     End
  1412.  
  1413. ;    WallBoundsMesh = P1
  1414.  
  1415.  
  1416. ;----- Damage States
  1417.  
  1418.         ModelConditionState  = COLLAPSING
  1419.             Model         = RivWalkCurvTD
  1420.         End
  1421.         AnimationState = COLLAPSING
  1422.               Animation                =    RubbleAnimation
  1423.                 AnimationName        =     RivWalkCurvTD.RivWalkCurvTD
  1424.                 AnimationMode        =    ONCE
  1425.               End
  1426.         End
  1427.  
  1428.         ModelConditionState  = RUBBLE
  1429.             Model         = None
  1430.         End
  1431.         AnimationState = RUBBLE
  1432.         End
  1433.  
  1434.         ModelConditionState  = POST_RUBBLE
  1435.             Model         = None
  1436.         End
  1437.         AnimationState = POST_RUBBLE
  1438.         End
  1439.         
  1440.         ModelConditionState  = POST_COLLAPSE
  1441.             Model         = None
  1442.         End  
  1443.         AnimationState = POST_COLLAPSE
  1444.         End    
  1445.         
  1446.   End
  1447.   
  1448.   PlacementViewAngle  = 0
  1449.  
  1450.   ; ***DESIGN parameters ***
  1451.   DisplayName         = OBJECT:Prop
  1452.   Side                = Civilian
  1453.   EditorSorting       = STRUCTURE
  1454.   Browser = REGION Rivendell STRUCTURE
  1455.   ThreatLevel = 1.0
  1456.  
  1457.   BuildCost           = 1
  1458.   BuildTime           = 5.0           ; in seconds
  1459.   VisionRange         = 160.0          ; Shroud clearing distance
  1460.   ShroudClearingRange = 160
  1461.  
  1462.  
  1463.  
  1464. ; For Testing Purposes
  1465.  
  1466.  
  1467. ; *** AUDIO Parameters ***
  1468.  
  1469.     SoundOnDamaged            = BuildingLightDamageStone
  1470.     SoundOnReallyDamaged        = BuildingHeavyDamageStone
  1471.  
  1472. ;  VoiceSelect         = NuclearReactorSelect
  1473.  
  1474. ;  UnitSpecificSounds
  1475. ;  UnderConstruction     = UnderConstructionLoop
  1476. ;  End
  1477.  
  1478.  
  1479.   ; *** ENGINEERING Parameters ***
  1480.  
  1481.   RadarPriority       = NOT_ON_RADAR
  1482.   KindOf              = STRUCTURE IMMOBILE CHUNK_VENDOR  NOT_AUTOACQUIRABLE IGNORED_IN_GUI ;SELECTABLE WALK_ON_TOP_OF_WALL
  1483.  
  1484.     Behavior = SiegeDockingBehavior ModuleTag_SiegeDocking
  1485.     End
  1486.  
  1487.   Body                  = ActiveBody ModuleTag_B_03
  1488.     MaxHealth       = 1.0
  1489.     MaxHealthDamaged = 1.0
  1490.     MaxHealthReallyDamaged = 1.0
  1491.     
  1492.     GrabObject = EntThrownBuildingRock
  1493.     GrabFX = FX_WallGrab
  1494.     GrabDamage = 490
  1495.     GrabOffset = X:16 Y:0    
  1496.   End
  1497.   
  1498.   ArmorSet
  1499.     Conditions        = None
  1500.     Armor             = NoArmor 
  1501.     DamageFX          = None
  1502.   End
  1503.  
  1504.     ; Note that structures with "RUBBLE" states should not use DestroyDie; such buildings are 
  1505.     ; never truly destroyed, even when reduced to zero health. Also note that garrisonable
  1506.     ; buildings automatically stick around because GarrisonContain has it's own DieModule
  1507.     Behavior = KeepObjectDie ModuleTag_IWantRubble
  1508.     End
  1509.  
  1510. ;  Behavior            = DestroyDie ModuleTag_07
  1511. ;    ;nothing
  1512. ;  End
  1513.  
  1514. ;      Behavior = AttributeModifierAuraUpdate ModuleTag_WallBonus
  1515. ;        StartsActive    = Yes ;If no, requires upgrade to turn on.
  1516. ;        BonusName        = HelmsDeepWallBonus
  1517. ;        RefreshDelay    = 2000
  1518. ;        ;Range            = 120        ; Range is overridden to affect people on us since we are a wall
  1519. ;        ;TargetEnemy        = Yes    ; Alliances are ignored to affect people on us since we are a wall
  1520. ;    End    
  1521.  
  1522. ;     Behavior = FireWeaponWhenDeadBehavior FireDeadTag1
  1523. ;        DeathTypes        = ALL
  1524. ;        StartsActive    = Yes
  1525. ;        DeathWeapon        = WallDeath
  1526. ;    End    
  1527.  
  1528.     Geometry              = BOX
  1529.     GeometryMajorRadius   = 50.0
  1530.     GeometryMinorRadius   = 55.0
  1531.     GeometryHeight        = 50.0
  1532.     GeometryOffset          = X:0 Y:0.0 Z:50.0
  1533.     
  1534.     AdditionalGeometry    = CYLINDER
  1535.     GeometryMajorRadius   = 40.0
  1536.     GeometryMinorRadius   = 40.0
  1537.     GeometryHeight        = 60.0
  1538.     GeometryOffset          = X:0.0 Y:0.0 Z:0
  1539.     
  1540.     GeometryIsSmall       = No
  1541.     Shadow                = SHADOW_VOLUME
  1542.   
  1543.       GeometryContactPoint = X:-90  Y:70  Z:0 Grab
  1544.     GeometryContactPoint = X:-90  Y:-40 Z:0 Grab
  1545.     GeometryContactPoint = X:-90  Y:-30 Z:10 
  1546.     GeometryContactPoint = X:-60  Y:-30 Z:60 
  1547.     GeometryContactPoint = X:-30   Y:-30 Z:10 
  1548.     GeometryContactPoint = X:0    Y:-30 Z:60
  1549.     GeometryContactPoint = X:30   Y:-30 Z:10
  1550.     GeometryContactPoint = X:60  Y:-30 Z:60
  1551.     GeometryContactPoint = X:90  Y:-30 Z:10 
  1552.     GeometryContactPoint = X:90 Y:-40 Z:0 Grab
  1553.     GeometryContactPoint = X:90 Y:70  Z:0 Grab
  1554. End
  1555.  
  1556.  
  1557.  
  1558. ;------------------------------------------------------------------------------
  1559. ;Rivendell Walkway Curve
  1560. Object RivWalkCurvT1
  1561.  
  1562. SelectPortrait = BPRHelmsDeep
  1563.  
  1564.   ; *** ART Parameters ***
  1565. ;  SelectPortrait         = SNReactor_L
  1566. ;  ButtonImage            = SNReactor
  1567.   ;day
  1568.  
  1569.   Draw = W3DScriptedModelDraw ModuleTag_Draw
  1570.     OkToChangeModelColor  = Yes
  1571.     UseStandardModelNames = Yes
  1572.     ExtraPublicBone = SIEGELADDER
  1573.  
  1574.     DefaultModelConditionState
  1575.       Model = RivWalkCurvT1
  1576.     End
  1577.  
  1578. ;    WallBoundsMesh = P1
  1579.  
  1580. ;----- Damage States
  1581.  
  1582.         ModelConditionState  = COLLAPSING
  1583.             Model         = RivWalkCurvT1D
  1584.         End
  1585.         AnimationState = COLLAPSING
  1586.               Animation                =    RubbleAnimation
  1587.                 AnimationName        =     RivWalkCurvT1D.RivWalkCurvT1D
  1588.                 AnimationMode        =    ONCE
  1589.               End
  1590.         End
  1591.  
  1592.         ModelConditionState  = RUBBLE
  1593.             Model         = None
  1594.         End
  1595.         AnimationState = RUBBLE
  1596.         End
  1597.         
  1598.         ModelConditionState  = POST_RUBBLE
  1599.             Model         = None
  1600.         End
  1601.         AnimationState = POST_RUBBLE
  1602.         End
  1603.         
  1604.         ModelConditionState  = POST_COLLAPSE
  1605.             Model         = None
  1606.         End  
  1607.         AnimationState = POST_COLLAPSE
  1608.         End    
  1609.                 
  1610.   End
  1611.   
  1612.   PlacementViewAngle  = 0
  1613.  
  1614.   ; ***DESIGN parameters ***
  1615.   DisplayName         = OBJECT:Prop
  1616.   Side                = Civilian
  1617.   EditorSorting       = STRUCTURE
  1618.   Browser = REGION Rivendell STRUCTURE
  1619.   ThreatLevel = 1.0
  1620.  
  1621.   BuildCost           = 1
  1622.   BuildTime           = 5.0           ; in seconds
  1623.   VisionRange         = 160.0          ; Shroud clearing distance
  1624.   ShroudClearingRange = 160
  1625.  
  1626.  
  1627.   ; *** AUDIO Parameters ***
  1628.  
  1629.     SoundOnDamaged        = BuildingLightDamageStone
  1630.     SoundOnReallyDamaged    = BuildingHeavyDamageStone
  1631.  
  1632.  
  1633.   ; *** ENGINEERING Parameters ***
  1634.  
  1635.   RadarPriority       = NOT_ON_RADAR
  1636.   KindOf              = STRUCTURE IMMOBILE  CHUNK_VENDOR  NOT_AUTOACQUIRABLE IGNORED_IN_GUI ;SELECTABLE WALK_ON_TOP_OF_WALL
  1637.  
  1638.     Behavior = SiegeDockingBehavior ModuleTag_SiegeDocking
  1639.     End
  1640.  
  1641.   Body                  = ActiveBody ModuleTag_B_03
  1642.     MaxHealth       = 1.0
  1643.     MaxHealthDamaged = 1.0
  1644.     MaxHealthReallyDamaged = 1.0
  1645.     
  1646.     GrabObject = EntThrownBuildingRock
  1647.     GrabFX = FX_WallGrab
  1648.     GrabDamage = 490
  1649.     GrabOffset = X:16 Y:0    
  1650.   End
  1651.   
  1652.   ArmorSet
  1653.     Conditions        = None
  1654.     Armor             = NoArmor 
  1655.     DamageFX          = None
  1656.   End
  1657.  
  1658.     ; Note that structures with "RUBBLE" states should not use DestroyDie; such buildings are 
  1659.     ; never truly destroyed, even when reduced to zero health. Also note that garrisonable
  1660.     ; buildings automatically stick around because GarrisonContain has it's own DieModule
  1661.     Behavior = KeepObjectDie ModuleTag_IWantRubble
  1662.     End
  1663.  
  1664. ;  Behavior            = DestroyDie ModuleTag_07
  1665. ;    ;nothing
  1666. ;  End
  1667.  
  1668. ;      Behavior = AttributeModifierAuraUpdate ModuleTag_WallBonus
  1669. ;        StartsActive    = Yes ;If no, requires upgrade to turn on.
  1670. ;        BonusName        = HelmsDeepWallBonus
  1671. ;        RefreshDelay    = 2000
  1672. ;        ;Range            = 120        ; Range is overridden to affect people on us since we are a wall
  1673. ;        ;TargetEnemy        = Yes    ; Alliances are ignored to affect people on us since we are a wall
  1674. ;    End    
  1675.  
  1676. ;     Behavior = FireWeaponWhenDeadBehavior FireDeadTag1
  1677. ;        DeathTypes        = ALL
  1678. ;        StartsActive    = Yes
  1679. ;        DeathWeapon        = WallDeath
  1680. ;    End    
  1681.  
  1682.     Geometry              = BOX
  1683.     GeometryMajorRadius   = 50.0
  1684.     GeometryMinorRadius   = 55.0
  1685.     GeometryHeight        = 50.0
  1686.     GeometryOffset          = X:0 Y:0.0 Z:50.0
  1687.     
  1688.     AdditionalGeometry    = CYLINDER
  1689.     GeometryMajorRadius   = 40.0
  1690.     GeometryMinorRadius   = 40.0
  1691.     GeometryHeight        = 60.0
  1692.     GeometryOffset          = X:0.0 Y:0.0 Z:0
  1693.     
  1694.     GeometryIsSmall       = No
  1695.     Shadow                = SHADOW_VOLUME
  1696.   
  1697.       GeometryContactPoint = X:-90  Y:70  Z:0 Grab
  1698.     GeometryContactPoint = X:-90  Y:-40 Z:0 Grab
  1699.     GeometryContactPoint = X:-90  Y:-30 Z:10 
  1700.     GeometryContactPoint = X:-60  Y:-30 Z:60 
  1701.     GeometryContactPoint = X:-30   Y:-30 Z:10 
  1702.     GeometryContactPoint = X:0    Y:-30 Z:60
  1703.     GeometryContactPoint = X:30   Y:-30 Z:10
  1704.     GeometryContactPoint = X:60  Y:-30 Z:60
  1705.     GeometryContactPoint = X:90  Y:-30 Z:10 
  1706.     GeometryContactPoint = X:90 Y:-40 Z:0 Grab
  1707.     GeometryContactPoint = X:90 Y:70  Z:0 Grab
  1708. End
  1709.  
  1710.  
  1711.  
  1712.  
  1713. ;------------------------------------------------------------------------------
  1714. ;Rivendell Walkway Curve
  1715. Object RivWalkCurvT2
  1716.  
  1717. SelectPortrait = BPRHelmsDeep
  1718.  
  1719.   ; *** ART Parameters ***
  1720. ;  SelectPortrait         = SNReactor_L
  1721. ;  ButtonImage            = SNReactor
  1722.   ;day
  1723.  
  1724.   Draw = W3DScriptedModelDraw ModuleTag_Draw
  1725.     OkToChangeModelColor  = Yes
  1726.     UseStandardModelNames = Yes
  1727.     ExtraPublicBone = SIEGELADDER
  1728.  
  1729.     DefaultModelConditionState
  1730.       Model = RivWalkCurvT2
  1731.     End
  1732.  
  1733. ;    WallBoundsMesh = P1
  1734.  
  1735. ;----- Damage States
  1736.  
  1737.         ModelConditionState  = COLLAPSING
  1738.             Model         = RivWalkCurvT2D
  1739.         End
  1740.         AnimationState = COLLAPSING
  1741.               Animation                =    RubbleAnimation
  1742.                 AnimationName        =     RivWalkCurvT2D.RivWalkCurvT2D
  1743.                 AnimationMode        =    ONCE
  1744.               End
  1745.         End
  1746.  
  1747.         ModelConditionState  = RUBBLE
  1748.             Model         = None
  1749.         End
  1750.         AnimationState = RUBBLE
  1751.         End
  1752.  
  1753.         ModelConditionState  = POST_RUBBLE
  1754.             Model         = None
  1755.         End
  1756.         AnimationState = POST_RUBBLE
  1757.         End
  1758.         
  1759.         ModelConditionState  = POST_COLLAPSE
  1760.             Model         = None
  1761.         End  
  1762.         AnimationState = POST_COLLAPSE
  1763.         End    
  1764.         
  1765.   End
  1766.   
  1767. ;  PlacementViewAngle  = 0
  1768.  
  1769.   ; ***DESIGN parameters ***
  1770.   DisplayName         = OBJECT:Prop
  1771.   Side                = Civilian
  1772.   EditorSorting       = STRUCTURE
  1773.   Browser = REGION Rivendell STRUCTURE
  1774.   ThreatLevel = 1.0
  1775.  
  1776.   BuildCost           = 1
  1777.   BuildTime           = 5.0           ; in seconds
  1778.   VisionRange         = 160.0          ; Shroud clearing distance
  1779.   ShroudClearingRange = 160
  1780.  
  1781.  
  1782.  
  1783. ; For Testing Purposes
  1784.  
  1785.  
  1786. ; *** AUDIO Parameters ***
  1787.  
  1788.     SoundOnDamaged            = BuildingLightDamageStone
  1789.     SoundOnReallyDamaged        = BuildingHeavyDamageStone
  1790.  
  1791. ;  VoiceSelect         = NuclearReactorSelect
  1792.  
  1793. ;  UnitSpecificSounds
  1794. ;  UnderConstruction     = UnderConstructionLoop
  1795. ;  End
  1796.  
  1797.  
  1798.   ; *** ENGINEERING Parameters ***
  1799.  
  1800.   RadarPriority       = NOT_ON_RADAR
  1801.   KindOf              = STRUCTURE IMMOBILE CHUNK_VENDOR  NOT_AUTOACQUIRABLE IGNORED_IN_GUI ;SELECTABLE WALK_ON_TOP_OF_WALL
  1802.  
  1803.     Behavior = SiegeDockingBehavior ModuleTag_SiegeDocking
  1804.     End
  1805.  
  1806.   Body                  = ActiveBody ModuleTag_B_03
  1807.     MaxHealth       = 1.0
  1808.     MaxHealthDamaged = 1.0
  1809.     MaxHealthReallyDamaged = 1.0
  1810.     
  1811.     GrabObject = EntThrownBuildingRock
  1812.     GrabFX = FX_WallGrab
  1813.     GrabDamage = 490
  1814.     GrabOffset = X:16 Y:0    
  1815.   End
  1816.   
  1817.   ArmorSet
  1818.     Conditions        = None
  1819.     Armor             = NoArmor ;HelmsDeepWalls
  1820.     DamageFX          = None
  1821.   End
  1822.  
  1823.     ; Note that structures with "RUBBLE" states should not use DestroyDie; such buildings are 
  1824.     ; never truly destroyed, even when reduced to zero health. Also note that garrisonable
  1825.     ; buildings automatically stick around because GarrisonContain has it's own DieModule
  1826.     Behavior = KeepObjectDie ModuleTag_IWantRubble
  1827.     End
  1828.  
  1829. ;  Behavior            = DestroyDie ModuleTag_07
  1830. ;    ;nothing
  1831. ;  End
  1832.  
  1833. ;      Behavior = AttributeModifierAuraUpdate ModuleTag_WallBonus
  1834. ;        StartsActive    = Yes ;If no, requires upgrade to turn on.
  1835. ;        BonusName        = HelmsDeepWallBonus
  1836. ;        RefreshDelay    = 2000
  1837. ;        ;Range            = 120        ; Range is overridden to affect people on us since we are a wall
  1838. ;        ;TargetEnemy        = Yes    ; Alliances are ignored to affect people on us since we are a wall
  1839. ;    End    
  1840.  
  1841. ;     Behavior = FireWeaponWhenDeadBehavior FireDeadTag1
  1842. ;        DeathTypes        = ALL
  1843. ;        StartsActive    = Yes
  1844. ;        DeathWeapon        = WallDeath
  1845. ;    End    
  1846.  
  1847.     Geometry              = BOX
  1848.     GeometryMajorRadius   = 50.0
  1849.     GeometryMinorRadius   = 55.0
  1850.     GeometryHeight        = 50.0
  1851.     GeometryOffset          = X:0 Y:0.0 Z:50.0
  1852.     
  1853.     AdditionalGeometry    = CYLINDER
  1854.     GeometryMajorRadius   = 40.0
  1855.     GeometryMinorRadius   = 40.0
  1856.     GeometryHeight        = 60.0
  1857.     GeometryOffset          = X:0.0 Y:0.0 Z:0
  1858.     
  1859.     GeometryIsSmall       = No
  1860.     Shadow                = SHADOW_VOLUME
  1861.   
  1862.       GeometryContactPoint = X:-90  Y:70  Z:0 Grab
  1863.     GeometryContactPoint = X:-90  Y:-40 Z:0 Grab
  1864.     GeometryContactPoint = X:-90  Y:-30 Z:10 
  1865.     GeometryContactPoint = X:-60  Y:-30 Z:60 
  1866.     GeometryContactPoint = X:-30   Y:-30 Z:10 
  1867.     GeometryContactPoint = X:0    Y:-30 Z:60
  1868.     GeometryContactPoint = X:30   Y:-30 Z:10
  1869.     GeometryContactPoint = X:60  Y:-30 Z:60
  1870.     GeometryContactPoint = X:90  Y:-30 Z:10 
  1871.     GeometryContactPoint = X:90 Y:-40 Z:0 Grab
  1872.     GeometryContactPoint = X:90 Y:70  Z:0 Grab
  1873. End
  1874.  
  1875.  
  1876.  
  1877. ;------------------------------------------------------------------------------
  1878. ;Rivendell Walkway Curve
  1879. Object RivWalkCurvT3
  1880.  
  1881. SelectPortrait = BPRHelmsDeep
  1882.  
  1883.   ; *** ART Parameters ***
  1884. ;  SelectPortrait         = SNReactor_L
  1885. ;  ButtonImage            = SNReactor
  1886.   ;day
  1887.  
  1888.   Draw = W3DScriptedModelDraw ModuleTag_Draw
  1889.     OkToChangeModelColor  = Yes
  1890.     UseStandardModelNames = Yes
  1891.     ExtraPublicBone = SIEGELADDER
  1892.  
  1893.     DefaultModelConditionState
  1894.       Model = RivWalkCurvT3
  1895.     End
  1896.  
  1897. ;    WallBoundsMesh = P1
  1898.  
  1899.  
  1900. ;----- Damage States
  1901.  
  1902.         ModelConditionState  = COLLAPSING
  1903.             Model         = RivWalkCurvT3D
  1904.         End
  1905.         AnimationState = COLLAPSING
  1906.               Animation                =    RubbleAnimation
  1907.                 AnimationName        =     RivWalkCurvT3D.RivWalkCurvT3D
  1908.                 AnimationMode        =    ONCE
  1909.               End
  1910.         End
  1911.  
  1912.         ModelConditionState  = RUBBLE
  1913.             Model         = None
  1914.         End
  1915.         AnimationState = RUBBLE
  1916.         End
  1917.  
  1918.         ModelConditionState  = POST_RUBBLE
  1919.             Model         = None
  1920.         End
  1921.         AnimationState = POST_RUBBLE
  1922.         End
  1923.         
  1924.         ModelConditionState  = POST_COLLAPSE
  1925.             Model         = None
  1926.         End  
  1927.         AnimationState = POST_COLLAPSE
  1928.         End    
  1929.         
  1930.   End
  1931.   
  1932. ;  PlacementViewAngle  = 0
  1933.  
  1934.   ; ***DESIGN parameters ***
  1935.   DisplayName         = OBJECT:Prop
  1936.   Side                = Civilian
  1937.   EditorSorting       = STRUCTURE
  1938.   Browser = REGION Rivendell STRUCTURE
  1939.   ThreatLevel = 1.0
  1940.  
  1941.   BuildCost           = 1
  1942.   BuildTime           = 5.0           ; in seconds
  1943.   VisionRange         = 160.0          ; Shroud clearing distance
  1944.   ShroudClearingRange = 160
  1945.  
  1946.  
  1947.  
  1948. ; For Testing Purposes
  1949.  
  1950.  
  1951. ; *** AUDIO Parameters ***
  1952.  
  1953.     SoundOnDamaged            = BuildingLightDamageStone
  1954.     SoundOnReallyDamaged        = BuildingHeavyDamageStone
  1955.  
  1956. ;  VoiceSelect         = NuclearReactorSelect
  1957.  
  1958. ;  UnitSpecificSounds
  1959. ;  UnderConstruction     = UnderConstructionLoop
  1960. ;  End
  1961.  
  1962.  
  1963.   ; *** ENGINEERING Parameters ***
  1964.  
  1965.   RadarPriority       = NOT_ON_RADAR
  1966.   KindOf              = STRUCTURE IMMOBILE CHUNK_VENDOR  NOT_AUTOACQUIRABLE IGNORED_IN_GUI ;SELECTABLE WALK_ON_TOP_OF_WALL
  1967.  
  1968.     Behavior = SiegeDockingBehavior ModuleTag_SiegeDocking
  1969.     End
  1970.  
  1971.   Body                  = ActiveBody ModuleTag_B_03
  1972.     MaxHealth       = 1.0
  1973.     MaxHealthDamaged = 1.0
  1974.     MaxHealthReallyDamaged = 1.0
  1975.     
  1976.     GrabObject = EntThrownBuildingRock
  1977.     GrabFX = FX_WallGrab
  1978.     GrabDamage = 490
  1979.     GrabOffset = X:16 Y:0    
  1980.   End
  1981.   
  1982.   ArmorSet
  1983.     Conditions        = None
  1984.     Armor             = NoArmor ;HelmsDeepWalls
  1985.     DamageFX          = None
  1986.   End
  1987.  
  1988.     ; Note that structures with "RUBBLE" states should not use DestroyDie; such buildings are 
  1989.     ; never truly destroyed, even when reduced to zero health. Also note that garrisonable
  1990.     ; buildings automatically stick around because GarrisonContain has it's own DieModule
  1991.     Behavior = KeepObjectDie ModuleTag_IWantRubble
  1992.     End
  1993.  
  1994. ;  Behavior            = DestroyDie ModuleTag_07
  1995. ;    ;nothing
  1996. ;  End
  1997.  
  1998. ;      Behavior = AttributeModifierAuraUpdate ModuleTag_WallBonus
  1999. ;        StartsActive    = Yes ;If no, requires upgrade to turn on.
  2000. ;        BonusName        = HelmsDeepWallBonus
  2001. ;        RefreshDelay    = 2000
  2002. ;        ;Range            = 120        ; Range is overridden to affect people on us since we are a wall
  2003. ;        ;TargetEnemy        = Yes    ; Alliances are ignored to affect people on us since we are a wall
  2004. ;    End    
  2005.  
  2006. ;     Behavior = FireWeaponWhenDeadBehavior FireDeadTag1
  2007. ;        DeathTypes        = ALL
  2008. ;        StartsActive    = Yes
  2009. ;        DeathWeapon        = WallDeath
  2010. ;    End    
  2011.  
  2012.     Geometry              = BOX
  2013.     GeometryMajorRadius   = 50.0
  2014.     GeometryMinorRadius   = 55.0
  2015.     GeometryHeight        = 50.0
  2016.     GeometryOffset          = X:0 Y:0.0 Z:50.0
  2017.     
  2018.     AdditionalGeometry    = CYLINDER
  2019.     GeometryMajorRadius   = 40.0
  2020.     GeometryMinorRadius   = 40.0
  2021.     GeometryHeight        = 60.0
  2022.     GeometryOffset          = X:0.0 Y:0.0 Z:0
  2023.     
  2024.     GeometryIsSmall       = No
  2025.     Shadow                = SHADOW_VOLUME
  2026.   
  2027.       GeometryContactPoint = X:-90  Y:70  Z:0 Grab
  2028.     GeometryContactPoint = X:-90  Y:-40 Z:0 Grab
  2029.     GeometryContactPoint = X:-90  Y:-30 Z:10 
  2030.     GeometryContactPoint = X:-60  Y:-30 Z:60 
  2031.     GeometryContactPoint = X:-30   Y:-30 Z:10 
  2032.     GeometryContactPoint = X:0    Y:-30 Z:60
  2033.     GeometryContactPoint = X:30   Y:-30 Z:10
  2034.     GeometryContactPoint = X:60  Y:-30 Z:60
  2035.     GeometryContactPoint = X:90  Y:-30 Z:10 
  2036.     GeometryContactPoint = X:90 Y:-40 Z:0 Grab
  2037.     GeometryContactPoint = X:90 Y:70  Z:0 Grab
  2038. End
  2039.  
  2040. ;------------------------------------------------------------------------------
  2041. ;Rivendell Walkway Ramp
  2042. Object RivWalkRamp
  2043.  
  2044. SelectPortrait = BPRHelmsDeep
  2045.  
  2046.   ; *** ART Parameters ***
  2047. ;  SelectPortrait         = SNReactor_L
  2048. ;  ButtonImage            = SNReactor
  2049.   ;day
  2050.  
  2051.   Draw = W3DScriptedModelDraw ModuleTag_Draw
  2052.     OkToChangeModelColor  = Yes
  2053.     UseStandardModelNames = Yes
  2054.     ExtraPublicBone = SIEGELADDER
  2055.  
  2056.     DefaultModelConditionState
  2057.       Model = RivWalkRamp
  2058.     End
  2059.  
  2060.     RampMesh1 = P1
  2061.         
  2062.   End
  2063.   
  2064.   PlacementViewAngle  = 0
  2065.  
  2066.   ; ***DESIGN parameters ***
  2067.   DisplayName         = OBJECT:Prop
  2068.   Side                = Civilian
  2069.   EditorSorting       = STRUCTURE
  2070.   Browser = REGION Rivendell STRUCTURE
  2071.   ThreatLevel = 1.0
  2072.  
  2073.   BuildCost           = 1
  2074.   BuildTime           = 5.0           ; in seconds
  2075.   VisionRange         = 160.0          ; Shroud clearing distance
  2076.   ShroudClearingRange = 160
  2077.  
  2078.  
  2079.  
  2080. ; For Testing Purposes
  2081.  
  2082.  
  2083. ; *** AUDIO Parameters ***
  2084.  
  2085.     SoundOnDamaged            = BuildingLightDamageStone
  2086.     SoundOnReallyDamaged        = BuildingHeavyDamageStone
  2087.  
  2088. ;  VoiceSelect         = NuclearReactorSelect
  2089.  
  2090. ;  UnitSpecificSounds
  2091. ;  UnderConstruction     = UnderConstructionLoop
  2092. ;  End
  2093.  
  2094.  
  2095.   ; *** ENGINEERING Parameters ***
  2096.  
  2097.   RadarPriority       = NOT_ON_RADAR
  2098.   KindOf              = STRUCTURE IMMOBILE WALK_ON_TOP_OF_WALL CHUNK_VENDOR  NOT_AUTOACQUIRABLE IGNORED_IN_GUI ;SELECTABLE
  2099.  
  2100.     Behavior = SiegeDockingBehavior ModuleTag_SiegeDocking
  2101.     End
  2102.  
  2103.   Body                  = ActiveBody ModuleTag_B_03
  2104.     MaxHealth       = 6000.0
  2105.     MaxHealthDamaged = 3000
  2106.     MaxHealthReallyDamaged = 1000
  2107.     
  2108.     GrabObject = EntThrownBuildingRock
  2109.     GrabFX = FX_WallGrab
  2110.     GrabDamage = 490
  2111.     GrabOffset = X:16 Y:0    
  2112.   End
  2113.   
  2114.   ArmorSet
  2115.     Conditions        = None
  2116.     Armor             = HelmsDeepWalls
  2117.     DamageFX          = None
  2118.   End
  2119.  
  2120.     ; Note that structures with "RUBBLE" states should not use DestroyDie; such buildings are 
  2121.     ; never truly destroyed, even when reduced to zero health. Also note that garrisonable
  2122.     ; buildings automatically stick around because GarrisonContain has it's own DieModule
  2123.     Behavior = KeepObjectDie ModuleTag_IWantRubble
  2124.     End
  2125.  
  2126. ;  Behavior            = DestroyDie ModuleTag_07
  2127. ;    ;nothing
  2128. ;  End
  2129.  
  2130.       Behavior = AttributeModifierAuraUpdate ModuleTag_WallBonus
  2131.         StartsActive    = Yes ;If no, requires upgrade to turn on.
  2132.         BonusName        = HelmsDeepWallBonus
  2133.         RefreshDelay    = 2000
  2134.         ;Range            = 120        ; Range is overridden to affect people on us since we are a wall
  2135.         ;TargetEnemy        = Yes    ; Alliances are ignored to affect people on us since we are a wall
  2136.     End    
  2137.  
  2138. ;     Behavior = FireWeaponWhenDeadBehavior FireDeadTag1
  2139. ;        DeathTypes        = ALL
  2140. ;        StartsActive    = Yes
  2141. ;        DeathWeapon        = WallDeath
  2142. ;    End    
  2143.  
  2144.     Geometry              = BOX
  2145.     GeometryMajorRadius   = 50.0
  2146.     GeometryMinorRadius   = 35.0
  2147.     GeometryHeight        = 52.0
  2148.     GeometryOffset          = X:0 Y:0.0 Z:0
  2149.     
  2150.     AdditionalGeometry    = CYLINDER
  2151.     GeometryMajorRadius   = 30.0
  2152.     GeometryMinorRadius   = 30.0
  2153.     GeometryHeight        = 50.0
  2154.     GeometryOffset          = X:0.0 Y:0.0 Z:0.0
  2155.     
  2156.     GeometryIsSmall       = No
  2157.     Shadow                = SHADOW_VOLUME
  2158.   
  2159.       GeometryContactPoint = X:-90  Y:70  Z:0 Grab
  2160.     GeometryContactPoint = X:-90  Y:-40 Z:0 Grab
  2161.     GeometryContactPoint = X:-90  Y:-30 Z:10 
  2162.     GeometryContactPoint = X:-60  Y:-30 Z:60 
  2163.     GeometryContactPoint = X:-30   Y:-30 Z:10 
  2164.     GeometryContactPoint = X:0    Y:-30 Z:60
  2165.     GeometryContactPoint = X:30   Y:-30 Z:10
  2166.     GeometryContactPoint = X:60  Y:-30 Z:60
  2167.     GeometryContactPoint = X:90  Y:-30 Z:10 
  2168.     GeometryContactPoint = X:90 Y:-40 Z:0 Grab
  2169.     GeometryContactPoint = X:90 Y:70  Z:0 Grab
  2170. End
  2171.  
  2172. ;---------------------------------------------------
  2173. ;Rivendell Main House
  2174. Object RivElHouse
  2175.  
  2176.     SelectPortrait  =  BPCElrondsHouse
  2177.  
  2178.     ; *** ART Parameters ***
  2179.     Draw = W3DScriptedModelDraw ModuleTag_Draw
  2180.         DefaultModelConditionState
  2181.             Model = RivElHouse
  2182.         End
  2183.         
  2184.         ;--damaged building
  2185.  
  2186.         ModelConditionState  = DAMAGED
  2187.         Model         = RivElHouse_D1
  2188.             ParticleSysBone FireSmall01 FireBuildingLarge
  2189.             ParticleSysBone FireSmall02 FireBuildingMedium
  2190.             ParticleSysBone FireSmall03 FireBuildingMedium
  2191.             ParticleSysBone FireSmall04 FireBuildingSmall
  2192.             ParticleSysBone FireSmall05 SmokeBuildingLarge
  2193.         End
  2194.         AnimationState = DAMAGED
  2195.             EnteringStateFX    = FX_BuildingDamaged
  2196.         End
  2197.  
  2198.         ModelConditionState  = REALLYDAMAGED
  2199.         Model         = RivElHouse_D2
  2200.             ParticleSysBone FireSmall01 FireBuildingLarge
  2201.             ParticleSysBone FireSmall02 FireBuildingLarge
  2202.             ParticleSysBone FireSmall03 FireBuildingMedium
  2203.             ParticleSysBone FireSmall04 SmokeBuildingLarge
  2204.             ParticleSysBone FireSmall05 SmokeBuildingLarge
  2205.         End
  2206.         AnimationState = REALLYDAMAGED
  2207.               Animation                =    RubbleAnimation
  2208.                 AnimationName        =    RivElHouse_D2.RivElHouse_D2
  2209.                 AnimationMode        =    ONCE
  2210.              End
  2211.             EnteringStateFX    = FX_BuildingReallyDamaged
  2212.         End
  2213.  
  2214.         ModelConditionState  = COLLAPSING
  2215.             Model         = RivElHouse_D3
  2216.         End
  2217.         AnimationState = COLLAPSING
  2218.               Animation                =    RubbleAnimation
  2219.                 AnimationName        =     RivElHouse_D3.RivElHouse_D3
  2220.                 AnimationMode        =    ONCE
  2221.               End
  2222.               EnteringStateFX    = FX_BuildingSinkSound
  2223.         End
  2224.         
  2225.         ModelConditionState  = RUBBLE
  2226.             Model         = RivElHouse_D3
  2227.         End
  2228.         AnimationState = RUBBLE
  2229.               Animation                =    RubbleAnimation
  2230.                 AnimationName        =    RivElHouse_D3.RivElHouse_D3
  2231.                 AnimationMode        =    ONCE
  2232.               End
  2233.               Flags                        = START_FRAME_LAST
  2234.         End
  2235.  
  2236.         ModelConditionState  = POST_RUBBLE
  2237.             Model         = None
  2238.         End
  2239.         AnimationState = POST_RUBBLE
  2240.         End
  2241.         
  2242.         ModelConditionState  = POST_COLLAPSE
  2243.             Model         = None
  2244.         End  
  2245.         AnimationState = POST_COLLAPSE
  2246.         End
  2247.  
  2248.     End
  2249.  
  2250.     ; ***DESIGN parameters ***
  2251.     DisplayName         = OBJECT:ElrondsHouse
  2252.     Side                = Civilian
  2253.     EditorSorting       = STRUCTURE SELECTABLE
  2254.     Browser = REGION Rivendell STRUCTURE
  2255.     ThreatLevel = 1.0
  2256.  
  2257.   ; *** AUDIO Parameters ***
  2258.  
  2259.     SoundOnDamaged        = BuildingLightDamageStone
  2260.     SoundOnReallyDamaged    = BuildingHeavyDamageStone
  2261.     VoiceSelect = ElfFortressSelect
  2262.  
  2263.     ; *** ENGINEERING Parameters ***
  2264.     RadarPriority       = STRUCTURE
  2265.     KindOf                = IMMOBILE STRUCTURE SELECTABLE FS_FACTORY DOZER_FACTORY COMMANDCENTER
  2266.     Body = ActiveBody ModuleTag_03
  2267.         MaxHealth = 10000.0
  2268.     End
  2269.     
  2270.  
  2271.     ArmorSet
  2272.         Conditions        = None
  2273.         Armor             = FortressArmor
  2274.         ;DamageFX          = StructureDamageFXNoShake
  2275.     End
  2276.     
  2277.     CommandSet = CommandSetHouseOfElrond
  2278.     
  2279.     Behavior = ProductionUpdate ProductionUpdateModuleTag        
  2280.     End
  2281.  
  2282.     Behavior = KeepObjectDie ModuleTag_IWantRubble
  2283.       End
  2284.       
  2285.     Behavior = QueueProductionExitUpdate QueueProductionModuleTag
  2286.         UnitCreatePoint            = X:-10.0 Y:0.00 Z:0.0
  2287.         NaturalRallyPoint        = X:85.0 Y:-0.1480 Z:0.0
  2288.         AllowAirborneCreation    = Yes
  2289.         ExitDelay                = 50
  2290.     End
  2291.     
  2292.     AttackContactPoint    = X:-28.0        Y:0.0            Z:185.0        Swoop
  2293.     AttackContactPoint    = X:37.0        Y:-126.0        Z:175.0        Swoop
  2294.     AttackContactPoint    = X:-106.0        Y:136.0            Z:156.0        Swoop
  2295.     AttackContactPoint    = X:38.0        Y:109.0            Z:125.0        Swoop
  2296.     
  2297.     Geometry = BOX
  2298.     GeometryMajorRadius = 116.0 
  2299.     GeometryMinorRadius = 94.0
  2300.     GeometryHeight = 171.0
  2301.     Shadow = SHADOW_VOLUME ; for demo purposes
  2302.     GeometryOffset        = X:-39 Y:145 Z:0
  2303.     
  2304.   AdditionalGeometry    = BOX
  2305.   GeometryMajorRadius   = 82.0
  2306.   GeometryMinorRadius   = 66.0
  2307.   GeometryHeight        = 198.0    
  2308.   GeometryOffset        = X:-68 Y:-6 Z:0
  2309.   
  2310.   AdditionalGeometry    = BOX
  2311.   GeometryMajorRadius   = 138.0
  2312.   GeometryMinorRadius   = 72.0
  2313.   GeometryHeight        = 194.0    
  2314.   GeometryOffset        = X:17 Y:-119 Z:0
  2315.   
  2316.   GeometryIsSmall = no
  2317. End
  2318.  
  2319. ;---------------------------------------------------
  2320. ;Rivendell Main House
  2321. Object WOR_RivElHouse
  2322.  
  2323.     SelectPortrait  =  BPCElrondsHouse
  2324.  
  2325. ; *** ART Parameters ***
  2326.     Draw = W3DScriptedModelDraw ModuleTag_Draw
  2327.         DefaultModelConditionState
  2328.             Model = RivElHouse
  2329.         End
  2330.         
  2331.         ;-------------build up
  2332.         ModelConditionState   = AWAITING_CONSTRUCTION
  2333.             Model               = RivElHouse_A
  2334.         End
  2335.         AnimationState        = AWAITING_CONSTRUCTION
  2336.             Animation
  2337.                 AnimationName    =RivElHouse_A.RivElHouse_A
  2338.                 AnimationMode    = MANUAL
  2339.             End
  2340.             Flags                = START_FRAME_FIRST
  2341.         End
  2342.         
  2343.         ModelConditionState        =    ACTIVELY_BEING_CONSTRUCTED
  2344.             Model                =    RivElHouse_A
  2345.         End;
  2346.         AnimationState        = ACTIVELY_BEING_CONSTRUCTED
  2347.             Animation
  2348.                 AnimationName     = RivElHouse_A.RivElHouse_A
  2349.                 AnimationMode     = MANUAL
  2350.             End
  2351.             Flags                = START_FRAME_FIRST
  2352.             StateName            = BeingConstructed
  2353.         End
  2354.         
  2355.  
  2356.         ;--damaged building
  2357.         ModelConditionState  = DAMAGED
  2358.         Model         = RivElHouse_D1
  2359.             ParticleSysBone FireSmall01 FireBuildingLarge
  2360.             ParticleSysBone FireSmall02 FireBuildingMedium
  2361.             ParticleSysBone FireSmall03 FireBuildingMedium
  2362.             ParticleSysBone FireSmall04 FireBuildingSmall
  2363.             ParticleSysBone FireSmall05 SmokeBuildingLarge
  2364.         End
  2365.         AnimationState = DAMAGED
  2366.             EnteringStateFX    = FX_BuildingDamaged
  2367.         End
  2368.  
  2369.         ModelConditionState  = REALLYDAMAGED
  2370.         Model         = RivElHouse_D2
  2371.             ParticleSysBone FireSmall01 FireBuildingLarge
  2372.             ParticleSysBone FireSmall02 FireBuildingLarge
  2373.             ParticleSysBone FireSmall03 FireBuildingMedium
  2374.             ParticleSysBone FireSmall04 SmokeBuildingLarge
  2375.             ParticleSysBone FireSmall05 SmokeBuildingLarge
  2376.         End
  2377.         AnimationState = REALLYDAMAGED
  2378.               Animation                =    RubbleAnimation
  2379.                 AnimationName        =    RivElHouse_D2.RivElHouse_D2
  2380.                 AnimationMode        =    ONCE
  2381.              End
  2382.             EnteringStateFX    = FX_BuildingReallyDamaged
  2383.         End
  2384.  
  2385.         ModelConditionState  = COLLAPSING
  2386.             Model         = RivElHouse_D3
  2387.         End
  2388.         AnimationState = COLLAPSING
  2389.               Animation                =    RubbleAnimation
  2390.                 AnimationName        =     RivElHouse_D3.RivElHouse_D3
  2391.                 AnimationMode        =    ONCE
  2392.               End
  2393.             EnteringStateFX    = FX_BuildingSinkSound
  2394.         End
  2395.         
  2396.         ModelConditionState  = RUBBLE
  2397.             Model         = RivElHouse_D3
  2398.         End
  2399.         AnimationState = RUBBLE
  2400.               Animation                =    RubbleAnimation
  2401.                 AnimationName        =    RivElHouse_D3.RivElHouse_D3
  2402.                 AnimationMode        =    ONCE
  2403.               End
  2404.               Flags                        = START_FRAME_LAST
  2405.         End
  2406.  
  2407.         ModelConditionState  = POST_RUBBLE
  2408.             Model         = None
  2409.         End
  2410.         AnimationState = POST_RUBBLE
  2411.         End
  2412.         
  2413.         ModelConditionState  = POST_COLLAPSE
  2414.             Model         = None
  2415.         End  
  2416.         AnimationState = POST_COLLAPSE
  2417.         End
  2418.     End
  2419.  
  2420.  
  2421. ; ***DESIGN parameters ***
  2422.     DisplayName        = OBJECT:ElrondsHouse
  2423.     Side            = WOR
  2424.     EditorSorting        = STRUCTURE
  2425.     ThreatLevel        = 1.0
  2426.     BuildCost        = 5000
  2427.     BuildTime        = 120.0        ; in seconds
  2428.     VisionRange        = 400        ; 160.0
  2429.     ShroudClearingRange    = 800        ; 161
  2430.  
  2431.     ArmorSet
  2432.         Conditions    = None
  2433.         Armor        = HouseofElrondArmor
  2434.         ;DamageFX    = StructureDamageFXNoShake
  2435.     End
  2436.     
  2437.     CommandSet        = CommandSetHouseOfElrondRebuild
  2438.  
  2439.     HealthBoxHeightOffset    = -200
  2440.  
  2441.  
  2442. ; *** AUDIO Parameters ***
  2443.  
  2444.     SoundOnDamaged        = BuildingLightDamageStone
  2445.     SoundOnReallyDamaged    = BuildingHeavyDamageStone
  2446.     VoiceSelect = ElfFortressSelect
  2447.  
  2448.  
  2449. ; *** ENGINEERING Parameters ***
  2450.     KindOf            = VITAL_FOR_BASE_SURVIVAL PRELOAD SELECTABLE STRUCTURE IMMOBILE SCORE CASTLE_KEEP MP_COUNT_FOR_VICTORY CAN_ATTACK FS_FACTORY AUTO_RALLYPOINT DOZER_FACTORY NEVER_CULL_FOR_MP COMMANDCENTER DONT_HIDE_IF_FOGGED
  2451.     RadarPriority        = STRUCTURE
  2452.     KeepSelectableWhenDead    = Yes
  2453.  
  2454.     //Commandset upgrades based on faction.  This is so the building will produce the proper units when necessary
  2455.     Behavior = CommandSetUpgrade ModuleTag_CommandSetMen
  2456.         TriggeredBy    = Upgrade_MenFaction
  2457.         CommandSet    = MenMonumentFortressRebuildCommandSet
  2458.     End
  2459.     Behavior = CommandSetUpgrade ModuleTag_CommandSetElven
  2460.         TriggeredBy    = Upgrade_ElfFaction
  2461.         CommandSet    = ElvenMonumentFortressRebuildCommandSet
  2462.     End
  2463.     Behavior = CommandSetUpgrade ModuleTag_CommandSetDwarven
  2464.         TriggeredBy    = Upgrade_DwarfFaction
  2465.         CommandSet    = DwarvenMonumentFortressRebuildCommandSet
  2466.     End
  2467.     Behavior = CommandSetUpgrade ModuleTag_CommandSetMordor
  2468.         TriggeredBy    = Upgrade_MordorFaction
  2469.         CommandSet    = MordorMonumentFortressRebuildCommandSet
  2470.     End
  2471.     Behavior = CommandSetUpgrade ModuleTag_CommandSetIsengard
  2472.         TriggeredBy    = Upgrade_IsengardFaction
  2473.         CommandSet    = IsengardMonumentFortressRebuildCommandSet
  2474.     End
  2475.     Behavior = CommandSetUpgrade ModuleTag_CommandSetWild
  2476.         TriggeredBy    = Upgrade_WildFaction
  2477.         CommandSet    = WildMonumentFortressRebuildCommandSet
  2478.     End
  2479.     //End Commandset upgrades
  2480.  
  2481.     Behavior = ProductionUpdate ProductionUpdateModuleTag        
  2482.     End
  2483.  
  2484.     Behavior = QueueProductionExitUpdate QueueProductionModuleTag
  2485.         UnitCreatePoint            = X:-10.0 Y:0.00 Z:0.0
  2486.         NaturalRallyPoint        = X:85.0 Y:-0.1480 Z:0.0
  2487.         ExitDelay            = 50
  2488.         AllowAirborneCreation        = Yes
  2489.     End
  2490.  
  2491.     Behavior = GettingBuiltBehavior GetBuiltBehaviorTag
  2492.         SelfBuildingLoop        = BuildingConstructionLoop        ; Only played if we DON'T spawn a worker
  2493.         SelfRepairFromDamageLoop    = NoSound                ; This doesn't cause an animation, so don't bother playing a sound
  2494.         SelfRepairFromRubbleLoop    = BuildingConstructionLoop
  2495.         SpawnTimer            = -1.0                    ; Negative means no 'autoheal'
  2496.         RebuildTimeSeconds        = 120
  2497.     End
  2498.  
  2499.     Body = ActiveBody ModuleTag_02
  2500.         MaxHealth            = MONUMENT_FORTRESS_HEALTH
  2501.         MaxHealthDamaged        = MONUMENT_FORTRESS_HEALTH_DAMAGED
  2502.         MaxHealthReallyDamaged        = MONUMENT_FORTRESS_HEALT_REALLY_DAMAGED
  2503.     End
  2504.     
  2505.     Behavior = KeepObjectDie ModuleTag_IWantRubble
  2506.       End
  2507.       
  2508.     //Money Maker
  2509.     Behavior = AutoDepositUpdate AutoDepositModuleTag
  2510.         DepositTiming               = GENERIC_KEEP_MONEY_TIME
  2511.         DepositAmount               = GENERIC_KEEP_MONEY_AMOUNT 
  2512.         InitialCaptureBonus         = 0    // no initial bonus
  2513.     End
  2514.  
  2515.     Behavior = TerrainResourceBehavior ModuleTag_NewMoneyDeadSpot
  2516.         Radius                = GENERIC_KEEP_MONEY_RANGE        ; How far we try to claim ground
  2517.         MaxIncome            = 0                    ; If we were to get all we wanted, how much we would earn.  Linear slope to 0 at 0% claim
  2518.         IncomeInterval            = 999999                ; How often (in msec) we give that much money
  2519.         HighPriority            = Yes                    ; A high priority claim gets to pretend it was there first.
  2520.     End
  2521.  
  2522.     Behavior = CitadelSlaughterHordeContain ModuleTag_SlaughterMe
  2523.         PassengerFilter            = GENERIC_FACTION_SLAUGHTERABLE
  2524.         ObjectStatusOfContained        = UNSELECTABLE ENCLOSED
  2525.         CashBackPercent            = 200%        
  2526.         ContainMax            = 99                    ; give it a huge capacity, just in case player sends his whole army in at once
  2527.         AllowEnemiesInside        = No
  2528.         AllowAlliesInside        = No
  2529.          AllowNeutralInside        = No
  2530.          AllowOwnPlayerInsideOverride    = Yes
  2531.         EnterSound            = MordorSlaughterhouseEnterSound
  2532.         EntryOffset            = X:85.0 Y:-10.0 Z:0.0
  2533.         EntryPosition            = X:0.0 Y:.0 Z:0.0
  2534.         
  2535.         ExitOffset            = X:115.0 Y:-10.0 Z:0.0
  2536.         StatusForRingEntry        = HOLDING_THE_RING
  2537.         UpgradeForRingEntry        = Upgrade_RingHero Upgrade_FortressRingHero
  2538.         ObjectToDestroyForRingEntry    = NONE +TheDroppedRing
  2539.         FXForRingEntry            = FX_OneRingFlare
  2540.     End
  2541.     
  2542.     #include "..\FortressRingFunc.inc"
  2543.     
  2544.     AttackContactPoint    = X:-28.0    Y:0.0        Z:185.0        Swoop
  2545.     AttackContactPoint    = X:37.0    Y:-126.0    Z:175.0        Swoop
  2546.     AttackContactPoint    = X:-106.0    Y:136.0        Z:156.0        Swoop
  2547.     AttackContactPoint    = X:38.0    Y:109.0        Z:125.0        Swoop
  2548.     
  2549.     Geometry        = BOX
  2550.     GeometryMajorRadius    = 116.0
  2551.     GeometryMinorRadius    = 94.0
  2552.     GeometryHeight        = 171.0
  2553.     
  2554.     Shadow            = SHADOW_VOLUME ; for demo purposes
  2555.     GeometryOffset        = X:-39 Y:145 Z:0
  2556.     
  2557.     AdditionalGeometry        = BOX
  2558.     GeometryMajorRadius       = 82.0
  2559.     GeometryMinorRadius       = 66.0
  2560.     GeometryHeight            = 198.0    
  2561.     GeometryOffset        = X:-68 Y:-6 Z:0
  2562.       
  2563.     AdditionalGeometry        = BOX
  2564.     GeometryMajorRadius       = 138.0
  2565.     GeometryMinorRadius       = 72.0
  2566.     GeometryHeight            = 194.0    
  2567.     GeometryOffset        = X:17 Y:-119 Z:0
  2568.       
  2569.     GeometryIsSmall        = no
  2570. End
  2571.  
  2572. ;---------------------------------------------------
  2573. ;Rivendell Gazebo
  2574. Object RivGazebo
  2575.  
  2576.     ; *** ART Parameters ***
  2577.     Draw = W3DScriptedModelDraw ModuleTag_Draw
  2578.         DefaultModelConditionState
  2579.             Model = RivGazebo
  2580.         End
  2581.     End
  2582.  
  2583.     ; ***DESIGN parameters ***
  2584.     DisplayName         = OBJECT:Prop
  2585.     Side                = Civilian
  2586.     EditorSorting       = STRUCTURE
  2587.     Browser = REGION Rivendell STRUCTURE
  2588.     ThreatLevel = 1.0
  2589.  
  2590.   ; *** AUDIO Parameters ***
  2591.  
  2592.     SoundOnDamaged        = BuildingLightDamageStone
  2593.     SoundOnReallyDamaged    = BuildingHeavyDamageStone
  2594.  
  2595.     ; *** ENGINEERING Parameters ***
  2596.     KindOf = IMMOBILE UNATTACKABLE STRUCTURE ;IGNORED_IN_GUI
  2597.  
  2598.     Body = ActiveBody ModuleTag_03
  2599.         MaxHealth = 99999.0
  2600.     End
  2601.  
  2602.     Geometry = BOX
  2603.     GeometryMajorRadius = 32.0
  2604.     GeometryMinorRadius = 20.0
  2605.     GeometryHeight = 75.0
  2606.     Shadow = SHADOW_VOLUME ; for demo purposes
  2607.     GeometryIsSmall = No
  2608. End
  2609.  
  2610.  
  2611. ;---------------------------------------------------
  2612. ;Rivendell Gazebo
  2613. ObjectReskin RivGazebo_S RivGazebo
  2614.  
  2615.     ; *** ART Parameters ***
  2616.     Draw = W3DScriptedModelDraw ModuleTag_Draw
  2617.         DefaultModelConditionState
  2618.             Model = RivGazebo_S
  2619.         End
  2620.     End
  2621. End
  2622. ;---------------------------------------------------
  2623. ;Rivendell CBTower
  2624. Object RivCBTower
  2625.  
  2626.     ; *** ART Parameters ***
  2627.     Draw = W3DScriptedModelDraw ModuleTag_Draw
  2628.         DefaultModelConditionState
  2629.             Model = RivCBTower
  2630.         End
  2631.         
  2632.               ;--damaged building
  2633.     
  2634.     ModelConditionState  = DAMAGED
  2635.       Model         = RivCBTower
  2636.       Texture = RivBuilding1.tga RivBuilding1_D1.tga
  2637.         ParticleSysBone FireSmall01 FireBuildingLarge
  2638.         ParticleSysBone FireSmall02 FireBuildingMedium
  2639.         ParticleSysBone FireSmall03 FireBuildingMedium
  2640.         ParticleSysBone FireSmall04 FireBuildingSmall
  2641.         ParticleSysBone FireSmall05 SmokeBuildingLarge
  2642.     End
  2643.     AnimationState = DAMAGED
  2644.     EnteringStateFX    = FX_BuildingDamaged
  2645.     End
  2646.  
  2647.     ModelConditionState  = REALLYDAMAGED
  2648.       Model         = RivCBTower
  2649.       Texture = RivBuilding1.tga RivBuilding1_D1.tga
  2650.         ParticleSysBone FireSmall01 FireBuildingLarge
  2651.         ParticleSysBone FireSmall02 FireBuildingLarge
  2652.         ParticleSysBone FireSmall03 FireBuildingMedium
  2653.         ParticleSysBone FireSmall04 SmokeBuildingLarge
  2654.         ParticleSysBone FireSmall05 SmokeBuildingLarge
  2655.     End
  2656.     AnimationState = REALLYDAMAGED
  2657.     EnteringStateFX    = FX_BuildingReallyDamaged
  2658.     End
  2659.  
  2660.     ModelConditionState  = RUBBLE
  2661.       Model         = RivCBTower
  2662.       Texture = RivBuilding1.tga RivBuilding1_D1.tga
  2663.       ParticleSysBone SmokeLarge01 SmokeBuildingLarge
  2664.     End
  2665.     
  2666.     AnimationState = RUBBLE
  2667.     EnteringStateFX    = FX_BuildingReallyDamaged
  2668.     End
  2669.         
  2670.     End
  2671.  
  2672.     ; ***DESIGN parameters ***
  2673.     DisplayName         = OBJECT:ElrondsHouse
  2674.     Side                = Civilian
  2675.     EditorSorting       = STRUCTURE
  2676.     Browser = REGION Rivendell STRUCTURE
  2677.     ThreatLevel = 1.0
  2678.  
  2679.  
  2680.   ; *** AUDIO Parameters ***
  2681.  
  2682.     SoundOnDamaged        = BuildingLightDamageStone
  2683.     SoundOnReallyDamaged    = BuildingHeavyDamageStone
  2684.  
  2685.  
  2686.     ; *** ENGINEERING Parameters ***
  2687.     KindOf = IMMOBILE STRUCTURE ;IGNORED_IN_GUI SELECTABLE
  2688.  
  2689.     Body = ActiveBody ModuleTag_03
  2690.     MaxHealth = 2000.0
  2691.     End
  2692.  
  2693.     Geometry = BOX
  2694.     GeometryMajorRadius = 26.0
  2695.     GeometryMinorRadius = 75.0
  2696.     GeometryHeight = 75.0
  2697.     Shadow = SHADOW_VOLUME ; for demo purposes
  2698.     GeometryIsSmall = Yes
  2699. End
  2700.  
  2701. ;---------------------------------------------------
  2702. ;Rivendell GTower
  2703. Object RivGTower
  2704.  
  2705.     ; *** ART Parameters ***
  2706.     Draw = W3DScriptedModelDraw ModuleTag_Draw
  2707.         DefaultModelConditionState
  2708.             Model = RivGTower
  2709.         End
  2710.     End
  2711.  
  2712.     ; ***DESIGN parameters ***
  2713.     DisplayName         = OBJECT:Prop
  2714.     Side                = Civilian
  2715.     EditorSorting       = STRUCTURE
  2716.     Browser = REGION Rivendell STRUCTURE
  2717.     ThreatLevel = 1.0
  2718.  
  2719.  
  2720.   ; *** AUDIO Parameters ***
  2721.  
  2722.     SoundOnDamaged        = BuildingLightDamageStone
  2723.     SoundOnReallyDamaged    = BuildingHeavyDamageStone
  2724.  
  2725.  
  2726.     ; *** ENGINEERING Parameters ***
  2727.     KindOf = IMMOBILE UNATTACKABLE IGNORED_IN_GUI
  2728.  
  2729.     Body = ActiveBody ModuleTag_03
  2730.     MaxHealth = 2000.0
  2731.     End
  2732.  
  2733.     Geometry = BOX
  2734.     GeometryMajorRadius = 26.0
  2735.     GeometryMinorRadius = 26.0
  2736.     GeometryHeight = 100.0
  2737.     Shadow = SHADOW_VOLUME ; for demo purposes
  2738.     GeometryIsSmall = Yes
  2739. End
  2740.  
  2741. ;---------------------------------------------------
  2742. ;Rivendell GTower
  2743. ObjectReskin RivGTower_Snow RivGTower
  2744.  
  2745.     ; *** ART Parameters ***
  2746.     Draw = W3DScriptedModelDraw ModuleTag_Draw
  2747.         DefaultModelConditionState
  2748.             Model = RivGTower_S
  2749.         End
  2750.     End
  2751. End
  2752.  
  2753.  
  2754.  
  2755. ;---------------------------------------------------
  2756. ;Rivendell OPWall
  2757. Object RivOPWall1
  2758.  
  2759.     ; *** ART Parameters ***
  2760.     Draw = W3DScriptedModelDraw ModuleTag_Draw
  2761.         DefaultModelConditionState
  2762.             Model = RivOPWall1
  2763.         End
  2764.     End
  2765.  
  2766.     ; ***DESIGN parameters ***
  2767.     DisplayName         = OBJECT:Prop
  2768.     Side                = Civilian
  2769.     EditorSorting       = STRUCTURE
  2770.     Browser = REGION Rivendell STRUCTURE
  2771.     ThreatLevel = 1.0
  2772.  
  2773.  
  2774.   ; *** AUDIO Parameters ***
  2775.  
  2776.     SoundOnDamaged        = BuildingLightDamageStone
  2777.     SoundOnReallyDamaged    = BuildingHeavyDamageStone
  2778.  
  2779.  
  2780.     ; *** ENGINEERING Parameters ***
  2781.     KindOf = IMMOBILE UNATTACKABLE IGNORED_IN_GUI
  2782.  
  2783.     Body = ActiveBody ModuleTag_03
  2784.     MaxHealth = 9000.0
  2785.     End
  2786.  
  2787.     Geometry = BOX
  2788.     GeometryMajorRadius = 3.0
  2789.     GeometryMinorRadius = 80.0
  2790.     GeometryHeight = 32.0
  2791.     Shadow = SHADOW_VOLUME ; for demo purposes
  2792.     GeometryIsSmall = Yes
  2793. End
  2794.  
  2795. ;---------------------------------------------------
  2796. ;Rivendell OPWall
  2797. Object RivOPWall2
  2798.  
  2799.     ; *** ART Parameters ***
  2800.     Draw = W3DScriptedModelDraw ModuleTag_Draw
  2801.         DefaultModelConditionState
  2802.             Model = RivOPWall2
  2803.         End
  2804.     End
  2805.  
  2806.     ; ***DESIGN parameters ***
  2807.     DisplayName         = OBJECT:Prop
  2808.     Side                = Civilian
  2809.     EditorSorting       = STRUCTURE
  2810.     Browser = REGION Rivendell STRUCTURE
  2811.     ThreatLevel = 1.0
  2812.  
  2813.   ; *** AUDIO Parameters ***
  2814.  
  2815.     SoundOnDamaged        = BuildingLightDamageStone
  2816.     SoundOnReallyDamaged    = BuildingHeavyDamageStone
  2817.  
  2818.  
  2819.  
  2820.     ; *** ENGINEERING Parameters ***
  2821.     KindOf = IMMOBILE UNATTACKABLE IGNORED_IN_GUI
  2822.  
  2823.     Body = ActiveBody ModuleTag_03
  2824.     MaxHealth = 9000.0
  2825.     End
  2826.  
  2827.     Geometry = BOX
  2828.     GeometryMajorRadius = 3.0
  2829.     GeometryMinorRadius = 60.0
  2830.     GeometryHeight = 32.0
  2831.     Shadow = SHADOW_VOLUME ; for demo purposes
  2832.     GeometryIsSmall = Yes
  2833. End
  2834.  
  2835. ;---------------------------------------------------
  2836. ;Rivendell OPWall
  2837. Object RivOPWall3
  2838.  
  2839.     ; *** ART Parameters ***
  2840.     Draw = W3DScriptedModelDraw ModuleTag_Draw
  2841.         DefaultModelConditionState
  2842.             Model = RivOPWall3
  2843.         End
  2844.     End
  2845.  
  2846.     ; ***DESIGN parameters ***
  2847.     DisplayName         = OBJECT:Prop
  2848.     Side                = Civilian
  2849.     EditorSorting       = STRUCTURE
  2850.     Browser = REGION Rivendell STRUCTURE
  2851.     ThreatLevel = 1.0
  2852.  
  2853.  
  2854.   ; *** AUDIO Parameters ***
  2855.  
  2856.     SoundOnDamaged        = BuildingLightDamageStone
  2857.     SoundOnReallyDamaged    = BuildingHeavyDamageStone
  2858.  
  2859.  
  2860.     ; *** ENGINEERING Parameters ***
  2861.     KindOf = IMMOBILE UNATTACKABLE IGNORED_IN_GUI
  2862.  
  2863.     Body = ActiveBody ModuleTag_03
  2864.     MaxHealth = 9000.0
  2865.     End
  2866.  
  2867.     Geometry = BOX
  2868.     GeometryMajorRadius = 3.0
  2869.     GeometryMinorRadius = 80.0
  2870.     GeometryHeight = 32.0
  2871.     Shadow = SHADOW_VOLUME ; for demo purposes
  2872.     GeometryIsSmall = Yes
  2873. End
  2874.  
  2875. ;---------------------------------------------------
  2876. ;Rivendell OPWall
  2877. ObjectReskin RivOPWall3_Snow RivOPWall3
  2878.  
  2879.     ; *** ART Parameters ***
  2880.     Draw = W3DScriptedModelDraw ModuleTag_Draw
  2881.         DefaultModelConditionState
  2882.             Model = RivOPWall3_S
  2883.         End
  2884.     End
  2885. End
  2886.     
  2887. ;---------------------------------------------------
  2888. ;Rivendell OPWall
  2889. Object RivOPWall4
  2890.  
  2891.     ; *** ART Parameters ***
  2892.     Draw = W3DScriptedModelDraw ModuleTag_Draw
  2893.         DefaultModelConditionState
  2894.             Model = RivOPWall4
  2895.         End
  2896.     End
  2897.  
  2898.     ; ***DESIGN parameters ***
  2899.     DisplayName         = OBJECT:Prop
  2900.     Side                = Civilian
  2901.     EditorSorting       = STRUCTURE
  2902.     Browser = REGION Rivendell STRUCTURE
  2903.     ThreatLevel = 1.0
  2904.  
  2905.  
  2906.   ; *** AUDIO Parameters ***
  2907.  
  2908.     SoundOnDamaged        = BuildingLightDamageStone
  2909.     SoundOnReallyDamaged    = BuildingHeavyDamageStone
  2910.  
  2911.  
  2912.     ; *** ENGINEERING Parameters ***
  2913.     KindOf = IMMOBILE UNATTACKABLE IGNORED_IN_GUI
  2914.  
  2915.     Body = ActiveBody ModuleTag_03
  2916.     MaxHealth = 9000.0
  2917.     End
  2918.  
  2919.     Geometry = BOX
  2920.     GeometryMajorRadius = 3.0
  2921.     GeometryMinorRadius = 60.0
  2922.     GeometryHeight = 32.0
  2923.     Shadow = SHADOW_VOLUME ; for demo purposes
  2924.     GeometryIsSmall = Yes
  2925. End
  2926.  
  2927. ;---------------------------------------------------
  2928. ;Rivendell RHall
  2929. Object RivRHall
  2930.  
  2931.     ; *** ART Parameters ***
  2932.     Draw = W3DScriptedModelDraw ModuleTag_Draw
  2933.         DefaultModelConditionState
  2934.             Model = RivRHall
  2935.         End
  2936.     End
  2937.  
  2938.     ; ***DESIGN parameters ***
  2939.     DisplayName         = OBJECT:Prop
  2940.     Side                = Civilian
  2941.     EditorSorting       = STRUCTURE
  2942.     Browser = REGION Rivendell STRUCTURE
  2943.     ThreatLevel = 1.0
  2944.  
  2945.   ; *** AUDIO Parameters ***
  2946.  
  2947.     SoundOnDamaged        = BuildingLightDamageStone
  2948.     SoundOnReallyDamaged    = BuildingHeavyDamageStone
  2949.  
  2950.  
  2951.  
  2952.     ; *** ENGINEERING Parameters ***
  2953.     KindOf = IMMOBILE UNATTACKABLE IGNORED_IN_GUI
  2954.  
  2955.     Body = ActiveBody ModuleTag_03
  2956.     MaxHealth = 9000.0
  2957.     End
  2958.  
  2959.     Geometry = BOX
  2960.     GeometryMajorRadius = 50.0
  2961.     GeometryMinorRadius = 110.0
  2962.     GeometryHeight = 100.0
  2963.     Shadow = SHADOW_VOLUME ; for demo purposes
  2964.     GeometryIsSmall = Yes
  2965. End
  2966.  
  2967. ;---------------------------------------------------
  2968. ;Rivendell RTower
  2969. Object RivRTower
  2970.  
  2971.     SelectPortrait  =  BPCRivendallBattleTower
  2972.  
  2973.     ; *** ART Parameters ***
  2974.     Draw = W3DScriptedModelDraw ModuleTag_Draw
  2975.  
  2976.         ExtraPublicBone = ARROW_01
  2977.         ExtraPublicBone = ARROW_02
  2978.         ExtraPublicBone = ARROW_03
  2979.         ExtraPublicBone = ARROW_04
  2980.         ExtraPublicBone = ARROW_05
  2981.         ExtraPublicBone = ARROW_06
  2982.         ExtraPublicBone = ARROW_07
  2983.         ExtraPublicBone = ARROW_08
  2984.         ExtraPublicBone = ARROW_09
  2985.         ExtraPublicBone = ARROW_10
  2986.         ExtraPublicBone = ARROW_11
  2987.         ExtraPublicBone = ARROW_12
  2988.  
  2989.         DefaultModelConditionState
  2990.             Model = RivRTower
  2991.             WeaponLaunchBone = PRIMARY ARROW_
  2992.         End
  2993.         
  2994.         
  2995.         ;--damaged building
  2996.  
  2997.         ModelConditionState  = DAMAGED
  2998.         Model         = RivRTower_D1
  2999.             ParticleSysBone FireSmall01 FireBuildingLarge
  3000.             ParticleSysBone FireSmall02 FireBuildingMedium
  3001.             ParticleSysBone FireSmall03 FireBuildingMedium
  3002.             ParticleSysBone FireSmall04 FireBuildingSmall
  3003.             ParticleSysBone FireSmall05 SmokeBuildingLarge
  3004.         End
  3005.         AnimationState = DAMAGED
  3006.             EnteringStateFX    = FX_BuildingDamaged
  3007.         End
  3008.  
  3009.         ModelConditionState  = REALLYDAMAGED
  3010.         Model         = RivRTower_D2
  3011.             ParticleSysBone FireSmall01 FireBuildingLarge
  3012.             ParticleSysBone FireSmall02 FireBuildingLarge
  3013.             ParticleSysBone FireSmall03 FireBuildingMedium
  3014.             ParticleSysBone FireSmall04 SmokeBuildingLarge
  3015.             ParticleSysBone FireSmall05 SmokeBuildingLarge
  3016.         End
  3017.         AnimationState = REALLYDAMAGED
  3018.               Animation                =    RubbleAnimation
  3019.                 AnimationName        =    RivRTower_D2.RivRTower_D2
  3020.                 AnimationMode        =    ONCE
  3021.               End
  3022.             EnteringStateFX    = FX_BuildingReallyDamaged
  3023.         End
  3024.  
  3025.         ModelConditionState  = RUBBLE
  3026.         Model         = RivRTower_D3
  3027.         ParticleSysBone SmokeLarge01 SmokeBuildingLarge
  3028.         End
  3029.         
  3030.         AnimationState = RUBBLE
  3031.               Animation                =    RubbleAnimation
  3032.                 AnimationName        =    RivRTower_D3.RivRTower_D3
  3033.                 AnimationMode        =    ONCE
  3034.               End
  3035.         EnteringStateFX    = FX_BuildingReallyDamaged
  3036.         End
  3037.  
  3038.         ModelConditionState  = POST_RUBBLE
  3039.         Model         = None
  3040.             ParticleSysBone NONE SmokeBuildingMediumRubble
  3041.         End
  3042.  
  3043.         ModelConditionState  = POST_COLLAPSE
  3044.         Model         = None
  3045.             ParticleSysBone NONE SmokeBuildingMediumRubble
  3046.         End  
  3047.  
  3048.     End
  3049.  
  3050.     // ***DESIGN parameters ***
  3051.     DisplayName         = OBJECT:RivendellBattleTower
  3052.     Side                = Civilian
  3053.     EditorSorting       = STRUCTURE
  3054.     Browser                = REGION Rivendell STRUCTURE
  3055.     ThreatLevel            = 1.0
  3056.      CommandSet            = NeutralBattleTowerCommandSet
  3057.     VisionRange         = VISION_BASE_DEFENSE
  3058.      ShroudClearingRange = SHROUD_CLEAR_BASE_DEFENSE
  3059.     BountyValue         = GONDOR_KEEP_BOUNTY_VALUE
  3060.  
  3061.     ArmorSet
  3062.         Conditions        = None
  3063.         Armor             = StructureArmor        
  3064.     End
  3065.  
  3066.  
  3067.   ; *** AUDIO Parameters ***
  3068.  
  3069.     SoundOnDamaged        = BuildingLightDamageStone
  3070.     SoundOnReallyDamaged    = BuildingHeavyDamageStone
  3071.  
  3072.  
  3073.     ; *** ENGINEERING Parameters ***
  3074.     RadarPriority       = STRUCTURE
  3075.     //KindOf                = PRELOAD STRUCTURE SELECTABLE IMMOBILE SCORE GARRISON CAN_ATTACK    
  3076.     KindOf              = PRELOAD STRUCTURE SELECTABLE IMMOBILE SCORE NEED_BASE_FOUNDATION GARRISON CAN_ATTACK GARRISONABLE_UNTIL_DESTROYED MADE_OF_STONE CHUNK_VENDOR ALWAYS_SHOW_HOUSE_COLOR GARRISONABLE_UNTIL_DESTROYED IGNORE_FOR_VICTORY
  3077.  
  3078.     Body = StructureBody ModuleTag_03
  3079.         MaxHealth                = 2000.0
  3080.         MaxHealthDamaged        = 1000.0
  3081.         MaxHealthReallyDamaged    = 500.0
  3082.     End
  3083.  
  3084.     Behavior = HordeGarrisonContain ModuleTag_hordeGarrison
  3085.          ObjectStatusOfContained            = UNSELECTABLE CAN_ATTACK ENCLOSED
  3086.          ContainMax                      = 1
  3087.          DamagePercentToUnits            = 0%
  3088.          PassengerFilter                    = ANY +INFANTRY +BANNER -CAVALRY -SUMMONED -WildSpiderling -WildSpiderlingHorde -COMBO_HORDE
  3089.          AllowEnemiesInside              = No        
  3090.          AllowNeutralInside              = Yes    ; Cause this structure is normally neutral.
  3091.         AllowOwnPlayerInsideOverride    = Yes
  3092.          NumberOfExitPaths               = 1        ; Defaults to 1.  Set 0 to not use ExitStart/ExitEnd, set higher than 1 to use ExitStart01-nn/ExitEnd01-nn
  3093.          PassengerBonePrefix             = PassengerBone:ARROW_ KindOf:INFANTRY
  3094.          EntryPosition                    = X:0.0 Y:0.0 Z:0.0
  3095.         EntryOffset                        = X:0.0 Y:-55.0 Z:0.0
  3096.         ExitOffset                        = X:0.0 Y:-55.0 Z:0.0
  3097.         EnterSound                        = RuinedTowerEnterSound
  3098.         ShowPips                        = No
  3099.     End
  3100.  
  3101.     Behavior                  = StructureCollapseUpdate ModuleTag_06
  3102.         MinCollapseDelay        = 000
  3103.         MaxCollapseDelay        = 000
  3104.         CollapseDamping         = .5
  3105.         MaxShudder              = 0.6
  3106.         MinBurstDelay           = 250
  3107.         MaxBurstDelay           = 800
  3108.         BigBurstFrequency       = 4
  3109.         FXList                  = INITIAL   FX_StructureMediumCollapse
  3110.         FXList                  = ALMOST_FINAL  FX_StructureAlmostCollapse
  3111.         ;DestroyObjectWhenDone    = Yes
  3112.         CollapseHeight            = 150
  3113.     End
  3114.  
  3115.     GeometryIsSmall        = No
  3116.     
  3117.     Geometry            = BOX
  3118.     GeometryMajorRadius = 35.0
  3119.     GeometryMinorRadius = 20.0
  3120.     GeometryHeight        = 80.0
  3121.     GeometryOffset        = X:0 Y:10 Z:0
  3122.     
  3123.     AdditionalGeometry    = BOX
  3124.     GeometryMajorRadius = 20.0
  3125.     GeometryMinorRadius = 35.0
  3126.     GeometryHeight        = 80.0
  3127.     GeometryOffset        = X:0 Y:10 Z:0
  3128.     
  3129.     Shadow = SHADOW_VOLUME ; for demo purposes
  3130. End
  3131.  
  3132.  
  3133. ;---------------------------------------------------
  3134. ;Rivendell RTower
  3135. ObjectReskin RivRTower_Snow RivRTower
  3136.  
  3137.     ; *** ART Parameters ***
  3138.     Draw = W3DScriptedModelDraw ModuleTag_Draw
  3139.         DefaultModelConditionState
  3140.             Model = RivRTower_Snow
  3141.         End
  3142.     End
  3143.  
  3144. End
  3145.  
  3146. ;---------------------------------------------------
  3147. ;Rivendell Bridge
  3148. Object RivBridge
  3149.  
  3150.     ; *** ART Parameters ***
  3151.     Draw = W3DScriptedModelDraw ModuleTag_Draw
  3152.     
  3153.     WallBoundsMesh = P1
  3154.     RampMesh1 = P2
  3155.     RampMesh2 = P3
  3156.         
  3157.         DefaultModelConditionState
  3158.             Model = RivBridge
  3159.         End
  3160.     End
  3161.  
  3162.     ; ***DESIGN parameters ***
  3163.     DisplayName         = OBJECT:Prop
  3164.     Side                = Civilian
  3165.     EditorSorting       = STRUCTURE
  3166.     Browser = REGION Rivendell STRUCTURE
  3167.     ThreatLevel = 1.0
  3168.  
  3169.  
  3170.   ; *** AUDIO Parameters ***
  3171.  
  3172.     SoundOnDamaged        = BuildingLightDamageStone
  3173.     SoundOnReallyDamaged    = BuildingHeavyDamageStone
  3174.  
  3175.  
  3176.     ; *** ENGINEERING Parameters ***
  3177.     KindOf = IMMOBILE UNATTACKABLE WALK_ON_TOP_OF_WALL STRUCTURE IGNORED_IN_GUI
  3178.  
  3179.     Body = ActiveBody ModuleTag_03
  3180.     MaxHealth = 99999.0
  3181.     End
  3182.  
  3183.     Geometry            = BOX
  3184.     GeometryMajorRadius = 120.0
  3185.     GeometryMinorRadius = 235.0
  3186.     GeometryHeight        = 100.0
  3187.     Shadow                = SHADOW_VOLUME ; for demo purposes
  3188.     GeometryIsSmall        = No
  3189. End
  3190.  
  3191.  
  3192.  
  3193. ;---------------------------------------------------
  3194. ;Rivendell Bell Tower
  3195. Object RivBellTower
  3196.  
  3197.     ; *** ART Parameters ***
  3198.     Draw = W3DScriptedModelDraw ModuleTag_Draw
  3199.         DefaultModelConditionState
  3200.             Model = RivBTower
  3201.         End
  3202.  
  3203.             ;--damaged building
  3204.         ModelConditionState  = DAMAGED
  3205.         Model         = RivBTower_D1
  3206.               ParticleSysBone FireSmall01 FireBuildingLarge
  3207.             ParticleSysBone FireSmall02 FireBuildingMedium
  3208.             ParticleSysBone FireSmall03 FireBuildingMedium
  3209.             ParticleSysBone FireSmall04 SmokeBuildingLarge
  3210.             ParticleSysBone FireSmall05 FireBuildingMedium       
  3211.         End
  3212.         AnimationState = DAMAGED
  3213.         EnteringStateFX    = FX_BuildingDamaged
  3214.         End
  3215.  
  3216.         ModelConditionState  = REALLYDAMAGED
  3217.         Model         = RivBTower_D2  
  3218.               ParticleSysBone FireSmall01 FireBuildingLarge
  3219.             ParticleSysBone FireSmall02 FireBuildingLarge
  3220.             ParticleSysBone FireSmall03 FireBuildingMedium
  3221.             ParticleSysBone FireSmall04 SmokeBuildingLarge
  3222.             ParticleSysBone FireSmall05 FireBuildingMedium     
  3223.         End
  3224.         AnimationState = REALLYDAMAGED
  3225.              EnteringStateFX    = FX_BuildingDamaged
  3226.             Animation                =    RubbleAnimation
  3227.                     AnimationName        =    RivBTower_D2.RivBTower_D2
  3228.                     AnimationMode        =    ONCE
  3229.               End
  3230.         End
  3231.  
  3232.         ModelConditionState  = RUBBLE
  3233.         Model         = RivBTower_D3
  3234.         ParticleSysBone SmokeLarge01 SmokeBuildingLarge
  3235.         End
  3236.         
  3237.         AnimationState = RUBBLE
  3238.             Animation                =    RubbleAnimation
  3239.                     AnimationName        =    RivBTower_D3.RivBTower_D3
  3240.                     AnimationMode        =    ONCE
  3241.               End
  3242.               EnteringStateFX    = FX_BuildingSinkSound
  3243.         End
  3244.  
  3245.         ModelConditionState  = POST_RUBBLE
  3246.             Model         = None
  3247.             ParticleSysBone NONE SmokeBuildingMediumRubble
  3248.         End
  3249.  
  3250.         ModelConditionState  = POST_COLLAPSE
  3251.             Model         = None
  3252.             ParticleSysBone NONE SmokeBuildingMediumRubble
  3253.         End
  3254.         
  3255.     End
  3256.  
  3257.     ; ***DESIGN parameters ***
  3258.     DisplayName         = OBJECT:Prop
  3259.     Side                = Civilian
  3260.     EditorSorting       = STRUCTURE
  3261.     Browser                = REGION Rivendell STRUCTURE
  3262.     ThreatLevel            = 1.0
  3263.     VisionRange         = VISION_BASE_DEFENSE
  3264.      ShroudClearingRange = SHROUD_CLEAR_BASE_DEFENSE
  3265.  
  3266.     ArmorSet
  3267.         Conditions        = None
  3268.         Armor             = StructureArmor
  3269.     End
  3270.  
  3271.     WeaponSet
  3272.         Weapon                = PRIMARY GoodStructureBow
  3273.         AutoChooseSources    = PRIMARY FROM_PLAYER FROM_SCRIPT FROM_AI
  3274.     End 
  3275.  
  3276.  
  3277.   ; *** AUDIO Parameters ***
  3278.  
  3279.     SoundOnDamaged            = BuildingLightDamageStone
  3280.     SoundOnReallyDamaged    = BuildingHeavyDamageStone
  3281.  
  3282.  
  3283.     ; *** ENGINEERING Parameters ***
  3284.     KindOf    = PRELOAD STRUCTURE SELECTABLE IMMOBILE SCORE NEED_BASE_FOUNDATION CAN_ATTACK FS_BASE_DEFENSE
  3285.     //KindOf = IMMOBILE STRUCTURE IGNORED_IN_GUI ;SELECTABLE 
  3286.  
  3287.     Body = StructureBody ModuleTag_03
  3288.         MaxHealth                = 9000.0
  3289.         MaxHealthDamaged        = 4500.0
  3290.         MaxHealthReallyDamaged    = 2250.0
  3291.     End
  3292.     
  3293.     Behavior                  = StructureCollapseUpdate ModuleTag_StructureCollapseUpdate 
  3294.         MinCollapseDelay        = 000
  3295.         MaxCollapseDelay        = 000
  3296.         CollapseDamping         = .5
  3297.         MaxShudder              = 0.6
  3298.         MinBurstDelay           = 250
  3299.         MaxBurstDelay           = 800
  3300.         BigBurstFrequency       = 4
  3301.         FXList                  = INITIAL   FX_StructureMediumCollapseNoSound
  3302.         FXList                  = ALMOST_FINAL  FX_StructureAlmostCollapse
  3303.         DestroyObjectWhenDone    = Yes
  3304.         CollapseHeight            = 89
  3305.     End
  3306.  
  3307.     Behavior = AIUpdateInterface ModuleTag_SoWeCanUseWeapon
  3308.         AutoAcquireEnemiesWhenIdle    = Yes
  3309.         MoodAttackCheckRate            = 250
  3310.     End
  3311.     
  3312.     Geometry            = BOX
  3313.     GeometryMajorRadius = 26.0
  3314.     GeometryMinorRadius = 26.0
  3315.     GeometryHeight        = 200.0
  3316.     Shadow                = SHADOW_VOLUME ; for demo purposes
  3317.     GeometryIsSmall        = No
  3318. End
  3319.  
  3320.  
  3321. ;---------------------------------------------------
  3322. ;Rivendell Bell Tower
  3323. ObjectReskin RivBellTower_Snow RivBellTower
  3324.  
  3325.     ; *** ART Parameters ***
  3326.     Draw = W3DScriptedModelDraw ModuleTag_Draw
  3327.         DefaultModelConditionState
  3328.             Model = RivBTower_S
  3329.         End
  3330.     End
  3331. End
  3332.