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

  1. ;//////////////////////////////////////////////////////////////////////////////
  2. ;FILE: Crate.ini (SYSTEM) ////////////////////////////////////////////////////
  3. ;//////////////////////////////////////////////////////////////////////////////
  4.  
  5. ; This file holds both the CrateData structures that define the conditions
  6. ; for creating a crate and the Objects that represent Crates in the game world
  7. ; which are simply Objects with CrateCollide modules.
  8.  
  9. ; A CrateData name is what a CrateDie module will reference in its DieData.
  10. ; A Crate is an Object referenced by a CrateData in the CrateObject field to get created on success.
  11. ; CreationChance is the only Condition that is mandatory, since it defaults to zero.
  12.  
  13. ; Below the definitions of CrateData are the actual Crate Objects.  The only important parts there are the
  14. ; name of the model, the type of Collide module, and the data to that module.
  15.  
  16. ; Also included is a sample Die module that must be added to the object in Faction*.ini.
  17. ; The CrateData entry is what connects the crate listings here to the objects that make them.
  18.  
  19. ; Multiple CrateData entries mean AND, multiple CrateObject entries mean OR.   
  20. ; Remember that, it will make total sense in a minute.
  21.  
  22. ; -=-=-=-=-=-=- EXAMPLE -=-=-=-=-=-=-
  23. ; ***Give this Die Module to whomever you want to produce a crate on death
  24.  
  25. ;Behavior = CreateCrateDie
  26. ;; CrateData = TestCrate    ; These listings are not guarantees, the Conditions are in the CrateData
  27. ; CrateData = TestCrate2  ; These independent listings can each produce at most one Crate
  28. ;End                
  29.                   
  30.  
  31. ; ***Now define the CrateData you mentioned in the Die modules
  32.  
  33. ; The CreationChance is the only required field, the other two are optional.  1.0 for Chance means always
  34. ;CrateData TestCrate
  35. ;  CreationChance = 0.75  ; Between 0 and 1, this adds a random condition to this entire CrateData
  36. ;  VeterancyLevel = ELITE  ; REGULAR, VETERAN, ELITE, or HEROIC: This describes the victim holding the CrateDie
  37. ;  KilledByType = SALVAGER  ; This is the KINDOF that needs to be the killer to make the crate.  This should be on the Missile as well as the Missile firing unit
  38. ;
  39. ;  CrateObject = CrateTemplate 0.4  ; If all Conditions suceed, then this Object is created
  40. ;  CrateObject = CrateTemplate2 0.6 ; The percent here should add up to 1.0, and allows multiple choices within the one CrateData
  41. ;
  42. ;  Utility Flags:
  43. ;  OwnedByMaker = Yes, to have the Crate assigned to the default team of the dead guy's player for scripting.
  44. ;End
  45.  
  46. ; ***Now add one of the following CollideModules to the CrateTemplate below.
  47.  
  48. ; ForbidOwnerPlayer = Yes  Works with OwnedByMaker (or by explicit ownership script) to prevent a certain 
  49. ; player from picking up the crate.  It can be used in any CrateCollide.
  50.  
  51. ; BuildingPickup = Yes lets the crate be picked up by a building, for plane drops.  It can be used in any CrateCollide.
  52.  
  53. ; HumanOnly = Yes let's the crate only be picked up by Humans, mostly for scripted stuff
  54.  
  55. ; PickupScience   Forces the player owning the unit trying to get the crate to have a certain science.
  56.  
  57. ; Only some of these have CollideData.
  58. ;Behavior = HealCrateCollide ; A crate that heals everything you own, no Data
  59.     ;;nothing
  60. ;End ; 
  61.  
  62. ;Behavior = MoneyCrateCollide ; A crate that gives x dollars
  63. ;;  MoneyProvided = 2000
  64. ;End
  65.  
  66. ;Behavior = SalvageCrateCollide
  67. ;    WeaponChance = 100%           ; If we are WeaponSalvager, this is the chance we get a WeaponSet upgrade if not fully upgraded
  68. ;    LevelChance = 25%             ; Either we are just a regular Salvager, or we are fully upgraded.  This is the chance we gain a level
  69. ;    MoneyChance = 75%             ; And this is the chance we get money.  Level + Money = 100%.  Weapon is an idependant FirstChance
  70. ;    MinMoney = 25                 ; If we get money, this is how much we get.  Make them different to get a random range.
  71. ;    MaxMoney = 75
  72. ;End ; A crate specific to the SALVAGER type units
  73.  
  74. ;Behavior = ShroudCrateCollide ; A crate that reveals the whole shroud on the map, no Data
  75.  
  76. ;Behavior = UnitCrateCollide ; A crate that provides n units of type x
  77. ;;  UnitCount = 1
  78. ;  UnitName = AmericaTankCrusader
  79. ;End
  80.  
  81. ;Behavior = VeterancyCrateCollide ; A crate that gives everyone within n distance a level if they are trainable
  82. ;;  EffectRange = 20
  83. ;End
  84.  
  85. ; ***Here is a default crate that just needs its Model filled out, and one appropriate Collide module plugged in
  86.  
  87. ;Object CrateTemplate
  88. ;  ; *** ART Parameters ***
  89. ;  Draw = W3DScriptedModelDraw ModuleTag_01
  90. ;    DefaultModelConditionState
  91. ;      Model = BigCrate        ;***Plug model here
  92. ;    End
  93. ;  End
  94. ;
  95. ;  ; ***DESIGN parameters ***
  96. ;  EditorSorting   = MISC_MAN_MADE
  97. ;  MaxHealth       = 1.0
  98. ;
  99. ;  ; *** ENGINEERING Parameters ***  
  100. ;  KindOf = CRATE
  101. ;  Behavior = MoneyCrateCollide      ;***Replace Collide module (and data if needed) here
  102. ;;    MoneyProvided = 2000
  103. ;  End
  104. ;  Geometry = BOX
  105. ;  GeometryMajorRadius = 4.0
  106. ;  GeometryMinorRadius = 4.0
  107. ;  GeometryHeight = 4.0     
  108. ;  GeometryIsSmall = Yes    
  109. ;
  110. ;End
  111.  
  112. ; -=-=-=-=-=-=-=-=- END EXAMPLE -=-=-=-=-=-=-=-=-
  113.  
  114.  
  115. ; ----------------------------------------------- Crate Data --------------------------------------
  116.  
  117.  
  118. CrateData SalvageCrateData
  119.   CreationChance = 1.0
  120.   KilledByType = SALVAGER
  121. ;  KillerScience = SCIENCE_GLA ; Killed by a salvager unit owned by a GLA player
  122.  
  123.   CrateObject = SalvageCrate 1.0
  124. End
  125.  
  126. CrateData EliteTankCrateData
  127.   CreationChance = .75
  128.   VeterancyLevel = ELITE
  129.  
  130.   CrateObject = 1000DollarCrate .75
  131.   CrateObject = SmallLevelUpCrate .25
  132. End
  133.  
  134. CrateData HeroicTankCrateData
  135.   CreationChance = 1.0
  136.   VeterancyLevel = HEROIC
  137.  
  138.   CrateObject = 2500DollarCrate .50
  139.   CrateObject = MediumLevelUpCrate .25
  140.   CrateObject = 2FreeCrusadersCrate .25
  141. End
  142.  
  143.  
  144. ;------------------------------------------------- Map specific CrateData 
  145. ;------------------------------------------- GLA02
  146. CrateData GLA02_Always100DollarCrate
  147.   CreationChance = 1.0
  148.   CrateObject = 100DollarCrate 1.0
  149.   OwnedByMaker = Yes
  150. End
  151.  
  152. CrateData GLA02_Always200DollarCrate
  153.   CreationChance = 1.0
  154.   CrateObject = 200DollarCrate 1.0
  155.   OwnedByMaker = Yes
  156. End
  157.  
  158. CrateData GLA02_Always1000DollarCrate
  159.   CreationChance = 1.0
  160.   CrateObject = 1000DollarCrate 1.0
  161.   OwnedByMaker = Yes
  162. End
  163.  
  164. CrateData GLA02_Always1500DollarCrate
  165.   CreationChance = 1.0
  166.   CrateObject = 1500DollarCrate 1.0
  167.   OwnedByMaker = Yes
  168. End
  169.  
  170. CrateData GLA02_Always2500DollarCrate
  171.   CreationChance = 1.0
  172.   CrateObject = 2500DollarCrate 1.0
  173.   OwnedByMaker = Yes
  174. End
  175.  
  176. ;CrateData MEEdoras_Always100DollarCrate
  177. ;  CreationChance = 1.0
  178. ;  CrateObject = TreasureChestMEEd 1.0
  179. ;  OwnedByMaker = Yes
  180. ;End
  181.  
  182. ;------------------------------------------------    Crate Objects -----------------------------------
  183.  
  184. ; -----------------------------------------------------------------------------
  185. Object SalvageCrate
  186.   ; *** ART Parameters *** (Any art changes made to this Object, please copy over to SalvageCrate_Final below)
  187.   Draw = W3DScriptedModelDraw ModuleTag_01
  188.     DefaultModelConditionState
  189.       Model = PchestTreasure
  190.       ParticleSysBone NONE GoldChestGlimmer
  191.       ParticleSysBone NONE GoldChestGlimmer02
  192.       ParticleSysBone NONE GoldChestRedGlimmer
  193.       ParticleSysBone NONE GoldChestGreenGlimmer
  194.       ParticleSysBone NONE GoldChestAura
  195.     End
  196.   End
  197.  
  198.   ; ***DESIGN parameters ***
  199.   EditorSorting   = MISC_MAN_MADE
  200.   DisplayName        = OBJECT:TreasureChest
  201.     Side             = Civilian
  202.   ; *** ENGINEERING Parameters ***  
  203.   KindOf = SELECTABLE PARACHUTABLE IMMOBILE NOT_AUTOACQUIRABLE UNATTACKABLE CRATE;Only Salvage crates are marked Selectable so the Mouse can interact with them and give Salvage voices.  Being dead makes them not actually selectable
  204.  
  205.   ThreatLevel = 0.0
  206.   
  207.   Body = HighlanderBody ModuleTag_04 ;Can take damage, but won't die.  Can only die from ::kill() or other unresistable damage
  208.     MaxHealth      = 1.0
  209.   End
  210.     
  211.   Behavior = SalvageCrateCollide ModuleTag_02
  212.     ForbiddenKindOf = PROJECTILE ENVIRONMENT IGNORED_IN_GUI
  213. ;    PickupScience = SCIENCE_GLA   ; Only GLA players can pick this up (Draw module makes it so only they can see it)
  214.     ExecuteFX = FX_GoldChestPickup    ; FXList to play when sucessfully picked up
  215.  
  216.     BannerChance = 10%            ;   
  217.     LevelUpChance = 100%        ; This is the chance we gain a level
  218.     LevelUpRadius = 100.0        ;
  219.     ResourceChance = 20%             ; And this is the chance we get money.  Level + Money = 100%.  Weapon is an idependant FirstChance
  220.     MinResource = 25                 ; If we get money, this is how much we get.  Make them different to get a random range.
  221.     MaxResource = 75
  222.     AllowAIPickup = No
  223.   End    
  224.  
  225.   Behavior = DeletionUpdate ModuleTag_03 ; Not LifetimeUpdate, since I can't die.  This will DestroyObject me. 
  226.     MinLifetime = 30000   
  227.     MaxLifetime = 35000   
  228.   End
  229.  
  230.   Geometry = BOX
  231.   GeometryMajorRadius = 12.0
  232.   GeometryMinorRadius = 12.0
  233.   GeometryHeight = 12.0     
  234.   GeometryIsSmall = Yes    
  235.   Shadow          = SHADOW_VOLUME
  236.  
  237. End
  238.  
  239. ChildObject TreasureChest SalvageCrate
  240.     Behavior = SalvageCrateCollide ModuleTag_02
  241.         ForbiddenKindOf = PROJECTILE ENVIRONMENT IGNORED_IN_GUI
  242.            BannerChance = 10%            ;   
  243.         LevelUpChance = 100%        ; This is the chance we gain a level
  244.         LevelUpRadius = 100.0        ;
  245.         ResourceChance = 20%             ; And this is the chance we get money.  Level + Money = 100%.  Weapon is an idependant FirstChance
  246.         MinResource = 25                 ; If we get money, this is how much we get.  Make them different to get a random range.
  247.         MaxResource = 75
  248.         AllowAIPickup = Yes
  249.         ExecuteFX = FX_GoldChestPickup    ; FXList to play when sucessfully picked up
  250.       End      
  251.       Behavior = DeletionUpdate ModuleTag_03 ; Not LifetimeUpdate, since I can't die.  This will DestroyObject me. 
  252.         MinLifetime = -1
  253.         MaxLifetime = -1
  254.       End
  255. End
  256.  
  257. ChildObject TreasureChest1 SalvageCrate
  258.   Behavior = SalvageCrateCollide ModuleTag_02
  259.         ForbiddenKindOf = PROJECTILE ENVIRONMENT IGNORED_IN_GUI
  260.            BannerChance = 10%            ;   
  261.         LevelUpChance = 0%        ; This is the chance we gain a level
  262.         LevelUpRadius = 100.0        ;
  263.         ResourceChance = 100%             ; And this is the chance we get money.  Level + Money = 100%.  Weapon is an idependant FirstChance
  264.         MinResource = 50                 ; If we get money, this is how much we get.  Make them different to get a random range.
  265.         MaxResource = 100 ;150
  266.         AllowAIPickup = Yes
  267.         ExecuteFX = FX_GoldChestPickup    ; FXList to play when sucessfully picked up
  268.       End      
  269.       Behavior = DeletionUpdate ModuleTag_03 ; Not LifetimeUpdate, since I can't die.  This will DestroyObject me. 
  270.         MinLifetime = -1
  271.         MaxLifetime = -1  
  272.       End
  273. End
  274.  
  275. ChildObject TreasureChest2 SalvageCrate
  276.   Behavior = SalvageCrateCollide ModuleTag_02
  277.         ForbiddenKindOf = PROJECTILE ENVIRONMENT IGNORED_IN_GUI
  278.            BannerChance = 10%            ;   
  279.         LevelUpChance = 100%        ; This is the chance we gain a level
  280.         LevelUpRadius = 100.0        ;
  281.         ResourceChance = 20%             ; And this is the chance we get money.  Level + Money = 100%.  Weapon is an idependant FirstChance
  282.         MinResource = 25                 ; If we get money, this is how much we get.  Make them different to get a random range.
  283.         MaxResource = 75
  284.         AllowAIPickup = Yes
  285.         ExecuteFX = FX_GoldChestPickup    ; FXList to play when sucessfully picked up
  286.       End      
  287.       Behavior = DeletionUpdate ModuleTag_03 ; Not LifetimeUpdate, since I can't die.  This will DestroyObject me. 
  288.         MinLifetime = -1
  289.         MaxLifetime = -1  
  290.       End   
  291. End
  292.  
  293. ChildObject TreasureChest1000 SalvageCrate
  294.       Behavior = SalvageCrateCollide ModuleTag_02
  295.         ForbiddenKindOf = PROJECTILE ENVIRONMENT IGNORED_IN_GUI
  296.            BannerChance = 0%            ;   
  297.         LevelUpChance = 0%        ; This is the chance we gain a level
  298.         LevelUpRadius = 0.0        ;
  299.         ResourceChance = 100%             ; And this is the chance we get money.  Level + Money = 100%.  Weapon is an idependant FirstChance
  300.         MinResource = 1000                 ; If we get money, this is how much we get.  Make them different to get a random range.
  301.         MaxResource = 1000
  302.         AllowAIPickup = Yes
  303.         ExecuteFX = FX_GoldChestPickup    ; FXList to play when sucessfully picked up
  304.       End      
  305.       Behavior = DeletionUpdate ModuleTag_03 ; Not LifetimeUpdate, since I can't die.  This will DestroyObject me. 
  306.         MinLifetime = -1
  307.         MaxLifetime = -1
  308.       End
  309. End
  310.  
  311. ChildObject TreasureChest5000 SalvageCrate
  312.     Behavior = SalvageCrateCollide ModuleTag_02
  313.         ForbiddenKindOf = PROJECTILE ENVIRONMENT IGNORED_IN_GUI
  314.            BannerChance = 0%            ;   
  315.         LevelUpChance = 0%        ; This is the chance we gain a level
  316.         LevelUpRadius = 0.0        ;
  317.         ResourceChance = 100%             ; And this is the chance we get money.  Level + Money = 100%.  Weapon is an idependant FirstChance
  318.         MinResource = 5000                 ; If we get money, this is how much we get.  Make them different to get a random range.
  319.         MaxResource = 5000
  320.         AllowAIPickup = Yes
  321.         ExecuteFX = FX_GoldChestPickup    ; FXList to play when sucessfully picked up
  322.       End      
  323.       Behavior = DeletionUpdate ModuleTag_03 ; Not LifetimeUpdate, since I can't die.  This will DestroyObject me. 
  324.         MinLifetime = -1
  325.         MaxLifetime = -1
  326.       End
  327. End
  328.  
  329.  
  330. ;; -----------------------------------------------------------------------------
  331.  
  332. Object SalvageCrate_Final
  333.   ; *** ART Parameters ***
  334.   Draw = W3DScriptedModelDraw ModuleTag_01
  335.     DefaultModelConditionState
  336.       Model = PchestTreasure
  337.       ParticleSysBone NONE GoldChestGlimmer
  338.       ParticleSysBone NONE GoldChestGlimmer02
  339.       ParticleSysBone NONE GoldChestRedGlimmer
  340.       ParticleSysBone NONE GoldChestGreenGlimmer
  341.       ParticleSysBone NONE GoldChestAura
  342.     End
  343.   End
  344.  
  345.   ; ***DESIGN parameters ***
  346.   EditorSorting   = MISC_MAN_MADE
  347.   DisplayName        = OBJECT:TreasureChest
  348.  
  349.   ; *** ENGINEERING Parameters ***  
  350.   KindOf = PARACHUTABLE SELECTABLE IMMOBILE NOT_AUTOACQUIRABLE UNATTACKABLE;Only Salvage crates are marked Selectable so the Mouse can interact with them and give Salvage voices.  Being dead makes them not actually selectable
  351.   
  352.   Body = HighlanderBody ModuleTag_04 ;Can take damage, but won't die.  Can only die from ::kill() or other unresistable damage
  353.     MaxHealth      = 1.0
  354.   End
  355.  
  356.   Behavior = SalvageCrateCollide ModuleTag_02
  357.     ForbiddenKindOf = PROJECTILE ENVIRONMENT IGNORED_IN_GUI
  358. ;    PickupScience = SCIENCE_GLA   ; Only GLA players can pick this up (Draw module makes it so only they can see it)
  359.      ExecuteFX = FX_GoldChestPickup    ; FXList to play when sucessfully picked up
  360.  
  361.     BannerChance = 10%            ;   
  362.     LevelUpChance = 100%        ; This is the chance we gain a level
  363.     LevelUpRadius = 100.0        ;
  364.     ResourceChance = 20%             ; And this is the chance we get money.  Level + Money = 100%.  Weapon is an idependant FirstChance
  365.     MinResource = 25                 ; If we get money, this is how much we get.  Make them different to get a random range.
  366.     MaxResource = 75
  367.     AllowAIPickup = No
  368.   End      
  369.  
  370.   Geometry = BOX
  371.   GeometryMajorRadius = 12.0
  372.   GeometryMinorRadius = 12.0
  373.   GeometryHeight = 12.0     
  374.   GeometryIsSmall = Yes    
  375.   Shadow          = SHADOW_VOLUME
  376.  
  377. End
  378.  
  379. ChildObject TreasureChest500 SalvageCrate_Final
  380.     Behavior = SalvageCrateCollide ModuleTag_02
  381.         ForbiddenKindOf = PROJECTILE ENVIRONMENT IGNORED_IN_GUI
  382.            BannerChance = 0%            ;   
  383.         LevelUpChance = 0%        ; This is the chance we gain a level
  384.         LevelUpRadius = 0.0        ;
  385.         ResourceChance = 100%             ; And this is the chance we get money.  Level + Money = 100%.  Weapon is an idependant FirstChance
  386.         MinResource = 500                 ; If we get money, this is how much we get.  Make them different to get a random range.
  387.         MaxResource = 500
  388.         AllowAIPickup = Yes
  389.         ExecuteFX = FX_GoldChestPickup    ; FXList to play when sucessfully picked up
  390.       End      
  391. End
  392.  
  393. ChildObject TreasureChest100 SalvageCrate_Final
  394.     Behavior = SalvageCrateCollide ModuleTag_02
  395.         ForbiddenKindOf = PROJECTILE ENVIRONMENT IGNORED_IN_GUI
  396.            BannerChance = 0%            ;   
  397.         LevelUpChance = 0%        ; This is the chance we gain a level
  398.         LevelUpRadius = 0.0        ;
  399.         ResourceChance = 100%             ; And this is the chance we get money.  Level + Money = 100%.  Weapon is an idependant FirstChance
  400.         MinResource = 100                 ; If we get money, this is how much we get.  Make them different to get a random range.
  401.         MaxResource = 100
  402.         AllowAIPickup = Yes
  403.         ExecuteFX = FX_GoldChestPickup    ; FXList to play when sucessfully picked up
  404.       End      
  405. End
  406.  
  407. ChildObject TreasureChest50 SalvageCrate_Final
  408.     Behavior = SalvageCrateCollide ModuleTag_02
  409.         ForbiddenKindOf = PROJECTILE ENVIRONMENT IGNORED_IN_GUI
  410.            BannerChance = 0%            ;   
  411.         LevelUpChance = 0%        ; This is the chance we gain a level
  412.         LevelUpRadius = 0.0        ;
  413.         ResourceChance = 100%             ; And this is the chance we get money.  Level + Money = 100%.  Weapon is an idependant FirstChance
  414.         MinResource = 50                 ; If we get money, this is how much we get.  Make them different to get a random range.
  415.         MaxResource = 50
  416.         AllowAIPickup = Yes
  417.         ExecuteFX = FX_GoldChestPickup    ; FXList to play when sucessfully picked up
  418.       End      
  419. End
  420.  
  421. ;ChildObject TreasureChestlevelUp SalvageCrate_Final
  422. ;    Draw = W3DScriptedModelDraw ModuleTag_01
  423. ;        DefaultModelConditionState
  424. ;            Model = MpExpBonus
  425. ;            ParticleSysBone = partBone ExpBonus
  426. ;        End
  427. ;    End
  428.  
  429. ;    Behavior = SalvageCrateCollide ModuleTag_02
  430. ;        ForbiddenKindOf = PROJECTILE ENVIRONMENT CREEP 
  431. ;           BannerChance = 0%            ;   
  432. ;        LevelUpChance = 100%        ; This is the chance we gain a level
  433. ;        LevelUpRadius = 0.0        ;
  434. ;        ResourceChance = 0%             ; And this is the chance we get money.  Level + Money = 100%.  Weapon is an idependant FirstChance
  435. ;        MinResource = 50                 ; If we get money, this is how much we get.  Make them different to get a random range.
  436. ;        MaxResource = 50
  437. ;        AllowAIPickup = Yes
  438. ;        ExecuteFX = FX_GoldChestPickup    ; FXList to play when sucessfully picked up
  439. ;      End      
  440. ;End
  441.  
  442. ;; -----------------------------------------------------------------------------
  443. ;;
  444. ;Object 1000DollarCrate
  445. ;  ; *** ART Parameters ***
  446. ;  Draw = W3DScriptedModelDraw ModuleTag_01
  447. ;    DefaultModelConditionState
  448. ;      Model = Pchest2
  449. ;    End
  450. ;  End
  451. ;
  452. ;  ; ***DESIGN parameters ***
  453. ;  DisplayName      = OBJECT:Crate
  454. ;  EditorSorting   = MISC_MAN_MADE
  455. ;  TransportSlotCount = 1                 
  456. ;
  457. ;  ; *** ENGINEERING Parameters ***  
  458. ;  KindOf = PARACHUTABLE CRATE 
  459. ;  Behavior = MoneyCrateCollide      ModuleTag_ForbiddenChanges
  460. ;    ForbiddenKindOf = PROJECTILE
  461. ;    MoneyProvided = 1000
  462. ;    ;ExecuteFX = FX_CratePickup
  463. ;    ExecuteAnimation       = MoneyPickUp
  464. ;    ExecuteAnimationTime   = 4.0    ; In seconds
  465. ;    ExecuteAnimationZRise  = 15.0   ; Z world units per second to rise
  466. ;    ExecuteAnimationFades  = Yes    ; Animation does/doesn't fade out        
  467. ;  End
  468. ;
  469. ;  Behavior = SquishCollide ModuleTag_03
  470. ;    ;nothing
  471. ;  End
  472. ;
  473. ;  Behavior = PhysicsBehavior ModuleTag_04
  474. ;    Mass = 75.0
  475. ;  End
  476. ;  
  477. ;  Shadow              = SHADOW_VOLUME
  478. ;  Geometry = BOX
  479. ;  GeometryMajorRadius = 12.0
  480. ;  GeometryMinorRadius = 12.0
  481. ;  GeometryHeight = 12.0     
  482. ;  GeometryIsSmall = Yes    
  483. ;
  484. ;End
  485. ;
  486. ;; -----------------------------------------------------------------------------
  487. ;Object 2500DollarCrate
  488. ;  ; *** ART Parameters ***
  489. ;  Draw = W3DScriptedModelDraw ModuleTag_01
  490. ;    DefaultModelConditionState
  491. ;      Model = Pchest2
  492. ;    End
  493. ;  End
  494. ;
  495. ;  ; ***DESIGN parameters ***
  496. ;  DisplayName      = OBJECT:Crate
  497. ;  EditorSorting   = MISC_MAN_MADE
  498. ;  TransportSlotCount = 1                 
  499. ;
  500. ;  ; *** ENGINEERING Parameters ***  
  501. ;  KindOf = PARACHUTABLE CRATE 
  502. ;  Behavior = MoneyCrateCollide     ModuleTag_ForbiddenChanges 
  503. ;    ForbiddenKindOf = PROJECTILE
  504. ;    MoneyProvided = 2500
  505. ;    ;ExecuteFX = FX_CratePickup
  506. ;    ExecuteAnimation       = MoneyPickUp
  507. ;    ExecuteAnimationTime   = 4.0    ; In seconds
  508. ;    ExecuteAnimationZRise  = 15.0   ; Z world units per second to rise
  509. ;    ExecuteAnimationFades  = Yes    ; Animation does/doesn't fade out           
  510. ;  End
  511. ;
  512. ;  Behavior = SquishCollide ModuleTag_03
  513. ;    ;nothing
  514. ;  End
  515. ;  Shadow              = SHADOW_VOLUME
  516. ;  Geometry = BOX
  517. ;  GeometryMajorRadius = 12.0
  518. ;  GeometryMinorRadius = 12.0
  519. ;  GeometryHeight = 12.0     
  520. ;  GeometryIsSmall = Yes    
  521. ;
  522. ;End
  523. ;
  524. ;; -----------------------------------------------------------------------------
  525. ;Object SmallLevelUpCrate
  526. ;  ; *** ART Parameters ***
  527. ;  Draw = W3DScriptedModelDraw ModuleTag_01
  528. ;    DefaultModelConditionState
  529. ;      Model = Pchest2
  530. ;    End
  531. ;  End
  532. ;
  533. ;  ; ***DESIGN parameters ***
  534. ;  DisplayName      = OBJECT:Crate
  535. ;  EditorSorting   = MISC_MAN_MADE
  536. ;
  537. ;  ; *** ENGINEERING Parameters ***  
  538. ;  KindOf = PARACHUTABLE CRATE 
  539. ;  Behavior = VeterancyCrateCollide       ModuleTag_02
  540. ;    ForbiddenKindOf = PROJECTILE
  541. ;    EffectRange = 100
  542. ;    ;ExecuteFX = FX_CratePickup
  543. ;  End
  544. ;  Geometry = BOX
  545. ;  GeometryMajorRadius = 4.0
  546. ;  GeometryMinorRadius = 4.0
  547. ;  GeometryHeight = 4.0     
  548. ;  GeometryIsSmall = Yes    
  549. ;  Shadow              = SHADOW_VOLUME
  550. ;End
  551. ;
  552. ;; -----------------------------------------------------------------------------
  553. Object TreasureChestLevelUpMedium
  554.   ; *** ART Parameters ***
  555.   Draw = W3DScriptedModelDraw ModuleTag_01
  556.       DefaultModelConditionState
  557.         Model = MpExpBonus
  558.         ParticleSysBone = partBone ExpBonus
  559.     End
  560.   End
  561.  
  562.   ; ***DESIGN parameters ***
  563.   EditorSorting  = MISC_MAN_MADE
  564.   DisplayName      = OBJECT:TreasureChest
  565.   Side                = Civilian
  566.  
  567.   ; *** ENGINEERING Parameters ***  
  568.   KindOf = SELECTABLE PARACHUTABLE CRATE IMMOBILE NOT_AUTOACQUIRABLE UNATTACKABLE
  569.   Behavior = VeterancyCrateCollide       ModuleTag_02
  570.     ForbiddenKindOf = PROJECTILE ENVIRONMENT IGNORED_IN_GUI
  571.     ExecuteFX = FX_GoldChestPickup   ; FXList to play when sucessfully picked up
  572.     ;AllowAIPickup = No
  573.   End
  574.   Body = HighlanderBody ModuleTag_04 ;Can take damage, but won't die.  Can only die from ::kill() or other unresistable damage
  575.     MaxHealth      = 1.0
  576.   End
  577.   Geometry = BOX
  578.   GeometryMajorRadius = 12.0
  579.   GeometryMinorRadius = 12.0
  580.   GeometryHeight = 12.0     
  581.   GeometryIsSmall = Yes    
  582.   Shadow              = SHADOW_VOLUME
  583. End
  584.  
  585. ;; -----------------------------------------------------------------------------
  586. ChildObject TreasureChestLevelUpMoria TreasureChestLevelUpMedium
  587.   DisplayName = OBJECT:VeterancyUpgrade
  588.   Behavior = VeterancyCrateCollide       ModuleTag_02
  589.     ForbiddenKindOf = PROJECTILE ENVIRONMENT IGNORED_IN_GUI
  590.     ExecuteFX = FX_GoldChestPickup   ; FXList to play when sucessfully picked up
  591.     ;AllowAIPickup = No
  592.     AffectsUpToLevel = 2
  593.   End
  594. End
  595.  
  596. ;; -----------------------------------------------------------------------------
  597. ;Object 2FreeCrusadersCrate
  598. ;  ; *** ART Parameters ***
  599. ;  Draw = W3DScriptedModelDraw ModuleTag_01
  600. ;    DefaultModelConditionState
  601. ;      Model = Pchest2
  602. ;    End
  603. ;  End
  604. ;
  605. ;  ; ***DESIGN parameters ***
  606. ;  DisplayName      = OBJECT:Crate
  607. ;  EditorSorting   = MISC_MAN_MADE
  608. ;
  609. ;
  610. ;  ; *** ENGINEERING Parameters ***  
  611. ;  KindOf = PARACHUTABLE CRATE 
  612. ;  Behavior = UnitCrateCollide ModuleTag_02
  613. ;    ForbiddenKindOf = PROJECTILE
  614. ;    ;ExecuteFX = FX_CratePickup
  615. ;    UnitCount = 2
  616. ;    UnitName = AmericaTankCrusader
  617. ;  End
  618. ;  Shadow              = SHADOW_VOLUME
  619. ;  Geometry = BOX
  620. ;  GeometryMajorRadius = 4.0
  621. ;  GeometryMinorRadius = 4.0
  622. ;  GeometryHeight = 4.0     
  623. ;  GeometryIsSmall = Yes    
  624. ;
  625. ;End
  626. ;
  627. ;; -----------------------------------------------------------------------------
  628. ;;RTO Look Here
  629. ;; -----------------------------------------------------------------------------
  630. ;
  631. ;; -----------------------------------------------------------------------------
  632. ;Object 100DollarCrate
  633. ;  ; *** ART Parameters ***
  634. ;  Draw = W3DScriptedModelDraw ModuleTag_01
  635. ;    DefaultModelConditionState
  636. ;      Model = Pchest2
  637. ;    End
  638. ;  End
  639. ;
  640. ;  ; ***DESIGN parameters ***
  641. ;  DisplayName      = OBJECT:Crate
  642. ;  EditorSorting   = MISC_MAN_MADE
  643. ;  TransportSlotCount = 1                 
  644. ;
  645. ;  ; *** ENGINEERING Parameters ***  
  646. ;  KindOf = PARACHUTABLE CRATE 
  647. ;  Behavior = MoneyCrateCollide      ModuleTag_ForbiddenChanges
  648. ;    ForbiddenKindOf = PROJECTILE
  649. ;    MoneyProvided = 100
  650. ;    ;ExecuteFX = FX_CratePickup
  651. ;    ExecuteAnimation       = MoneyPickUp
  652. ;    ExecuteAnimationTime   = 4.0    ; In seconds
  653. ;    ExecuteAnimationZRise  = 15.0   ; Z world units per second to rise
  654. ;    ExecuteAnimationFades  = Yes    ; Animation does/doesn't fade out            
  655. ;  End
  656. ;
  657. ;  Behavior = SquishCollide ModuleTag_03
  658. ;    ;nothing
  659. ;  End
  660. ;
  661. ;  Behavior = PhysicsBehavior ModuleTag_04
  662. ;    Mass = 75.0
  663. ;  End
  664. ;  Shadow              = SHADOW_VOLUME
  665. ;  Geometry = BOX
  666. ;  GeometryMajorRadius = 12.0
  667. ;  GeometryMinorRadius = 12.0
  668. ;  GeometryHeight = 12.0     
  669. ;  GeometryIsSmall = Yes    
  670. ;
  671. ;End
  672. ;
  673. ;; -----------------------------------------------------------------------------
  674. ;
  675. ;Object 200DollarCrate
  676. ;  ; *** ART Parameters ***
  677. ;  Draw = W3DScriptedModelDraw ModuleTag_01
  678. ;    DefaultModelConditionState
  679. ;      Model = Pchest2
  680. ;    End
  681. ;  End
  682. ;
  683. ;  ; ***DESIGN parameters ***
  684. ;  DisplayName      = OBJECT:Crate
  685. ;  EditorSorting   = MISC_MAN_MADE
  686. ;  TransportSlotCount = 1                 
  687. ;
  688. ;  ; *** ENGINEERING Parameters ***  
  689. ;  KindOf = PARACHUTABLE CRATE 
  690. ;  Behavior = MoneyCrateCollide      ModuleTag_ForbiddenChanges
  691. ;    ForbiddenKindOf = PROJECTILE
  692. ;    MoneyProvided = 200
  693. ;    ;ExecuteFX = FX_CratePickup
  694. ;    ExecuteAnimation       = MoneyPickUp
  695. ;    ExecuteAnimationTime   = 4.0    ; In seconds
  696. ;    ExecuteAnimationZRise  = 15.0   ; Z world units per second to rise
  697. ;    ExecuteAnimationFades  = Yes    ; Animation does/doesn't fade out            
  698. ;  End
  699. ;
  700. ;  Behavior = SquishCollide ModuleTag_03
  701. ;    ;nothing
  702. ;  End
  703. ;
  704. ;  Behavior = PhysicsBehavior ModuleTag_04
  705. ;    Mass = 75.0
  706. ;  End
  707. ;
  708. ;  Geometry = BOX
  709. ;  GeometryMajorRadius = 12.0
  710. ;  GeometryMinorRadius = 12.0
  711. ;  GeometryHeight = 12.0     
  712. ;  GeometryIsSmall = Yes    
  713. ;  Shadow              = SHADOW_VOLUME
  714. ;End
  715. ;
  716. ;; -----------------------------------------------------------------------------
  717. ;Object 100DollarCrateForBuildings
  718. ;  ; *** ART Parameters ***
  719. ;  Draw = W3DScriptedModelDraw ModuleTag_01
  720. ;    DefaultModelConditionState
  721. ;      Model = Pchest2
  722. ;    End
  723. ;  End
  724. ;
  725. ;  ; ***DESIGN parameters ***
  726. ;  DisplayName      = OBJECT:Crate
  727. ;  EditorSorting   = MISC_MAN_MADE
  728. ;  TransportSlotCount = 1                 
  729. ;
  730. ;  ; *** ENGINEERING Parameters ***  
  731. ;  KindOf = PARACHUTABLE CRATE 
  732. ;  Behavior = MoneyCrateCollide      ModuleTag_ForbiddenChanges
  733. ;    ForbiddenKindOf = PROJECTILE
  734. ;    MoneyProvided = 100
  735. ;    BuildingPickup = Yes
  736. ;    ;ExecuteFX = FX_CratePickup
  737. ;    ExecuteAnimation       = MoneyPickUp
  738. ;    ExecuteAnimationTime   = 4.0    ; In seconds
  739. ;    ExecuteAnimationZRise  = 15.0   ; Z world units per second to rise
  740. ;    ExecuteAnimationFades  = Yes    ; Animation does/doesn't fade out            
  741. ;  End
  742. ;
  743. ;  Behavior = SquishCollide ModuleTag_03
  744. ;    ;nothing
  745. ;  End
  746. ;
  747. ;  Behavior = PhysicsBehavior ModuleTag_04
  748. ;    Mass = 75.0
  749. ;  End
  750. ;
  751. ;  Geometry = BOX
  752. ;  GeometryMajorRadius = 12.0
  753. ;  GeometryMinorRadius = 12.0
  754. ;  GeometryHeight = 12.0     
  755. ;  GeometryIsSmall = Yes    
  756. ;  Shadow              = SHADOW_VOLUME
  757. ;End
  758. ;
  759. ;; -----------------------------------------------------------------------------
  760. ;Object SupplyDropZoneCrate 
  761. ;  ; *** ART Parameters ***
  762. ;  Draw = W3DScriptedModelDraw ModuleTag_01
  763. ;    DefaultModelConditionState
  764. ;      Model = Pchest2
  765. ;    End
  766. ;  End
  767. ;
  768. ;  ; ***DESIGN parameters ***
  769. ;  DisplayName      = OBJECT:Crate
  770. ;  EditorSorting   = MISC_MAN_MADE
  771. ;  TransportSlotCount = 1                 
  772. ;
  773. ;  ; *** ENGINEERING Parameters ***  
  774. ;  KindOf = PARACHUTABLE CRATE 
  775. ;  Behavior = MoneyCrateCollide      ModuleTag_ForbiddenChanges
  776. ;    ForbiddenKindOf = PROJECTILE
  777. ;    MoneyProvided = 250
  778. ;    UpgradedBoost = UpgradeType:Upgrade_AmericaSupplyLines  Boost:25
  779. ;    BuildingPickup = Yes
  780. ;    ;ExecuteFX = FX_CratePickup
  781. ;    ExecuteAnimation       = MoneyPickUp
  782. ;    ExecuteAnimationTime   = 4.0    ; In seconds
  783. ;    ExecuteAnimationZRise  = 15.0   ; Z world units per second to rise
  784. ;    ExecuteAnimationFades  = Yes    ; Animation does/doesn't fade out            
  785. ;  End
  786. ;
  787. ;  Behavior = SquishCollide ModuleTag_03
  788. ;    ;nothing
  789. ;  End
  790. ;
  791. ;  Behavior = PhysicsBehavior ModuleTag_04
  792. ;    Mass = 75.0
  793. ;  End
  794. ;
  795. ;  Geometry = BOX
  796. ;  GeometryMajorRadius = 12.0
  797. ;  GeometryMinorRadius = 12.0
  798. ;  GeometryHeight = 12.0     
  799. ;  GeometryIsSmall = Yes    
  800. ;  Shadow              = SHADOW_VOLUME
  801. ;End
  802. ;
  803. ;; -----------------------------------------------------------------------------
  804. ;Object 1500DollarCrate
  805. ;  ; *** ART Parameters ***
  806. ;  Draw = W3DScriptedModelDraw ModuleTag_01
  807. ;    DefaultModelConditionState
  808. ;      Model = Pchest2
  809. ;    End
  810. ;  End
  811. ;
  812. ;  ; ***DESIGN parameters ***
  813. ;  DisplayName      = OBJECT:Crate
  814. ;  EditorSorting   = MISC_MAN_MADE
  815. ;  TransportSlotCount = 1                 
  816. ;
  817. ;  ; *** ENGINEERING Parameters ***  
  818. ;  KindOf = PARACHUTABLE CRATE 
  819. ;  Behavior = MoneyCrateCollide      ModuleTag_ForbiddenChanges
  820. ;    ForbiddenKindOf = PROJECTILE
  821. ;    MoneyProvided = 1500
  822. ;    ;ExecuteFX = FX_CratePickup
  823. ;    ExecuteAnimation       = MoneyPickUp
  824. ;    ExecuteAnimationTime   = 4.0    ; In seconds
  825. ;    ExecuteAnimationZRise  = 15.0   ; Z world units per second to rise
  826. ;    ExecuteAnimationFades  = Yes    ; Animation does/doesn't fade out            
  827. ;  End
  828. ;
  829. ;  Behavior = SquishCollide ModuleTag_03
  830. ;    ;nothing
  831. ;  End
  832. ;
  833. ;  Behavior = PhysicsBehavior ModuleTag_04
  834. ;    Mass = 75.0
  835. ;  End
  836. ;
  837. ;  Geometry = BOX
  838. ;  GeometryMajorRadius = 12.0
  839. ;
  840. ;  GeometryMinorRadius = 12.0
  841. ;  GeometryHeight = 12.0     
  842. ;  GeometryIsSmall = Yes    
  843. ;  Shadow              = SHADOW_VOLUME
  844. ;End
  845. ;
  846. ;
  847. ;
  848.  
  849. Object TreasureChestMEEd ;Special Treasure Just for MAP EVIL Edoras
  850.  
  851. ; *** ART Parameters ***
  852.   Draw = W3DScriptedModelDraw ModuleTag_01
  853.     DefaultModelConditionState
  854.       Model = PchestTreasure
  855.       ParticleSysBone NONE GoldChestGlimmer
  856.       ParticleSysBone NONE GoldChestGlimmer02
  857.       ParticleSysBone NONE GoldChestRedGlimmer
  858.       ParticleSysBone NONE GoldChestGreenGlimmer
  859.       ParticleSysBone NONE GoldChestAura
  860.     End
  861.   End
  862.  
  863. ; ***DESIGN parameters ***
  864.   EditorSorting   = MISC_MAN_MADE
  865.  
  866. ; *** ENGINEERING Parameters ***  
  867.   KindOf = PARACHUTABLE SELECTABLE IMMOBILE NOT_AUTOACQUIRABLE UNATTACKABLE
  868.   
  869.   Body = HighlanderBody ModuleTag_04 ;Can take damage, but won't die.  Can only die from ::kill() or other unresistable damage
  870.     MaxHealth      = 1.0
  871.   End
  872.     
  873.   Behavior = SalvageCrateCollide ModuleTag_02
  874.     ForbiddenKindOf = PROJECTILE ENVIRONMENT IGNORED_IN_GUI
  875.     ExecuteFX = FX_GoldChestPickup              ; FXList to play when sucessfully picked up
  876.  
  877.     BannerChance   =   0%  
  878.     LevelUpChance  =   0%                       ; This is the chance we gain a level
  879.     LevelUpRadius  =   0        
  880.     ResourceChance = 100%                       ; And this is the chance we get money.  Level + Money = 100%.  Weapon is an idependant FirstChance
  881.     MinResource    = 100                        ; If we get money, this is how much we get.  Make them different to get a random range.
  882.     MaxResource    = 100
  883.     AllowAIPickup  =  No
  884.   End     
  885.  
  886.   Geometry            = BOX
  887.   GeometryMajorRadius = 12.0
  888.   GeometryMinorRadius = 12.0
  889.   GeometryHeight      = 12.0     
  890.   GeometryIsSmall     = Yes    
  891. ;  Shadow              = SHADOW_VOLUME
  892.   Shadow              = NONE
  893.  
  894. END
  895.  
  896. ;------------------------------------ Ring ------------------------------------------------
  897.  
  898. Object TheDroppedRing
  899.  
  900.     Draw = W3DScriptedModelDraw ModuleTag_01
  901.         DefaultModelConditionState
  902.             Model = TheRing
  903.             ParticleSysBone NONE OneRing
  904.             ;ParticleSysBone NONE OneRingAura
  905.             Shadow            = SHADOW_ADDITIVE_DECAL
  906.             ShadowSizeX        = 200
  907.             ShadowSizeY        = 200
  908.             ShadowTexture    = MUCatapultFP02
  909.             ShadowMaxHeight   = 200
  910.             ShadowOverrideLODVisibility = yes
  911.         End
  912.         IdleAnimationState
  913.             Animation
  914.                 AnimationName = THERING.THERING
  915.                 AnimationMode = LOOP
  916.             End
  917.         End
  918.     End
  919.  
  920.     EditorSorting        = MISC_MAN_MADE
  921.     DisplayName            = OBJECT:TheOneRing
  922.     Side                 = Civilian
  923.     KindOf                = SELECTABLE IMMOBILE NOT_AUTOACQUIRABLE UNATTACKABLE REVEAL_TO_ALL    CRATE ONE_RING        ; Only Salvage crates are marked Selectable so the Mouse can interact with them and give Salvage voices.  Being dead makes them not actually selectable
  924.     ThreatLevel            = 0.0
  925.     ShroudClearingRange    = 100
  926.  
  927.     Body = HighlanderBody ModuleTag_Body ;Can take damage, but won't die.  Can only die from ::kill() or other unresistable damage
  928.         MaxHealth      = 1.0
  929.     End
  930.  
  931.     ; *** AUDIO Parameters ***;
  932.  
  933.     EvaEnemyObjectSightedEvent    = DiscoveredRing            ; This is so that we get the DiscoveredRing event if it is unstealthed when we first see it
  934.  
  935.     ClientUpdate = EvaAnnounceClientCreate ModuleTag_AnnounceCreate
  936.         ; And this covers the case where the Ring spawns in while in sight of the player's troops
  937.         AnnouncementEventEnemy = DiscoveredRing
  938.         AnnouncementEventAlly = DiscoveredRing
  939.         AnnouncementEventOwner = DiscoveredRing
  940.  
  941.         OnlyIfVisible = Yes                        ; Don't announce if hidden in the shroud
  942.         UseObjectsPosition = Yes                ; Play from the Ring's position
  943.         CreateFakeRadarEvent = Yes                ; Allow player to jump to the Ring after hearing annoucement
  944.  
  945.         DelayBeforeAnnouncementMS = 1000        ; Allow 1 second before announcing. This is mostly so that if someone is right on top of the ring, we can use the pickup event to block the discovered event
  946.                                                 ; and not get two announcements
  947.  
  948.         ; CountAsFirstSightedAnnoucement = Yes    ; Doesn't matter since this unit doesn't use EvaOnFirstSightingEventEnemy/NonEnemy
  949.     End
  950.     
  951.     ClientUpdate = RadarMarkerClientUpdate ModuleTag_RadarMarker
  952.         MarkerType = PingOneRing
  953.     End
  954.  
  955.     ;---------------------------
  956.  
  957.     Behavior = AttachUpdate ModuleTag_Attach
  958.         ObjectFilter            = ANY +INFANTRY +CAVALRY +HERO +MONSTER +MACHINE -WORKING_PASSENGER -NO_COLLIDE -INERT -IGNORED_IN_GUI -PROJECTILE -NEUTRALGOLLUM -NOT_AUTOACQUIRABLE -WildSpiderling_Slaved -IsengardExplosiveMine -Wyrm -WargSentry NOT_FLYING_UNITS
  959.         ScanRange                = 10
  960.         ParentStatus            = HOLDING_THE_RING
  961.         AlwaysTeleport            = No
  962.         AnchorToTopOfGeometry    = Yes
  963.         
  964.         // Eva events to play when the Ring is picked up by the local player / an ally / an enemy
  965.         ParentOwnerAttachmentEvaEvent = RingPickedUpLocal
  966.         ;ParentAllyAttachmentEvaEvent =   Nothing for now! (Are we sure???)
  967.         ParentEnemyAttachmentEvaEvent = RingPickedUpEnemy
  968.         
  969.         ParentOwnerDiedEvaEvent = LocalPlayerLosesRing ; E.g. the unit carrying the ring died, so we lost it.
  970.         ;ParentAllyDiedEvaEvent =  Nothing (for now)
  971.         ;ParentEnemyDiedEvaEvent = Nothing (for now)
  972.         
  973.     End
  974.  
  975.     ; Remove the ring hero upgrade from which ever player created us. This is to remove the ability to build
  976.     ; the ring heroes when out fortress holding the ring has been nuked.
  977.     Behavior = RemoveUpgradeUpgrade ModuleTag_RemoveRingFromPlayer
  978.         TriggeredBy                    = Upgrade_IsengardFaction Upgrade_MordorFaction Upgrade_WildFaction Upgrade_MenFaction Upgrade_ElfFaction Upgrade_DwarfFaction
  979.         UpgradeToRemove                = Upgrade_RingHero
  980.         SuppressEvaEventForRemoval    = Yes
  981.     End
  982.  
  983.     Behavior = DestroyDie ModuleTag_Die
  984.     End
  985.     
  986.     Behavior = CreateObjectDie ModuleTag_DropTheRing
  987.         CreationList = OCL_TheOneRing
  988.     End
  989.     
  990.     Geometry            = CYLINDER
  991.     GeometryMajorRadius = 10.0
  992.     GeometryHeight        = 10.0
  993.     GeometryIsSmall        = Yes
  994.     //Shadow                = SHADOW_VOLUME
  995.     Shadow = SHADOW_DECAL
  996.  
  997. End
  998.  
  999.  
  1000.  
  1001.  
  1002.  
  1003.  
  1004.  
  1005.