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_goodfaction_units_elven_gwaihir.ini < prev    next >
Text File  |  2006-01-31  |  12KB  |  450 lines

  1. ;-----------------------------------------------------------------------------
  2. ;
  3. ;    Gwaihir.ini
  4. ;
  5. ;-----------------------------------------------------------------------------
  6.  
  7. ; aka Gwaihir, Giant Eagle, GiantEagle
  8. Object GondorGwaihir  
  9.  
  10.     ShockwaveResistance = SHOCKWAVE_RESISTANCE_ALWAYS
  11.  
  12.     Scale = 0.8
  13.                        
  14.     ; *** ART Parameters ***
  15.  
  16.     SelectPortrait         = HPGwahir
  17.     ButtonImage        = HIGwahir
  18.  
  19.     Draw = W3DScriptedModelDraw ModuleTag_01
  20.           
  21.           OkToChangeModelColor = Yes
  22.           
  23.           StaticModelLODMode = yes ; Will append M or L to the skin name depending on GameLOD
  24.  
  25.         ExtraPublicBone = B_Passenger
  26.     
  27.         DefaultModelConditionState
  28.             Model               = GUGwaihir_SKN
  29.             Skeleton            = GUGwaihir_SKL
  30.         End
  31.  
  32.         ModelConditionState        =    USER_3
  33.             Model               = GUGwaihir_SKN
  34.             Texture                = GUGwaihir.tga GUGwaihir_White.tga
  35.         End
  36.         
  37.         IdleAnimationState
  38.             StateName = Idle
  39.             Animation           = FlyB
  40.                 AnimationName     = GUGwaihir_HVRA
  41.                 AnimationMode     = LOOP
  42.                 AnimationBlendTime = 10
  43.                 
  44.             End
  45.         End
  46.  
  47.  
  48.  
  49.         AnimationState  STUNNED SPECIAL_DAMAGED
  50.             StateName =  STUNNED
  51.             Animation = HitB
  52.                 AnimationName = GUGwaihir_HITB
  53.                 AnimationMode = ONCE
  54.                 AnimationBlendTime = 6
  55.             End
  56.         End
  57.         AnimationState  STUNNED
  58.             Animation = HitB
  59.                 AnimationName = GUGwaihir_HITA
  60.                 AnimationMode = ONCE
  61.                 AnimationBlendTime = 6
  62.             End
  63.         End
  64.  
  65.  
  66.          AnimationState    = BACKING_UP
  67.                StateName = backup
  68.                Animation = FlyB
  69.                    AnimationName = GUGwaihir_FLYB
  70.                    AnimationMode = LOOP
  71.                    AnimationBlendTime = 9
  72.                End
  73.            End
  74.  
  75.            AnimationState = DIVING
  76.                StateName = Diving
  77.                Animation = DiveA
  78.                    AnimationName = GUGwaihir_DIVA
  79.                    AnimationMode = LOOP
  80.                    AnimationBlendTime = 9
  81.                End
  82.            End
  83.  
  84.         AnimationState = ABOUT_TO_HIT                                ; clawing
  85.             StateName = Claw
  86.             Animation = Claw
  87.                 AnimationName = GUGwaihir_ATKB
  88.                 AnimationMode = LOOP
  89.                 AnimationBlendTime = 9
  90.             End
  91.         End
  92.  
  93.         ;--- HARD FLAPPING ------------------------
  94.         AnimationState = CLIMBING
  95.             StateName = Climbing
  96.             Animation = FlyB(climb)
  97.                 AnimationName = GUGwaihir_FLYB
  98.                 AnimationMode = LOOP
  99.                 AnimationBlendTime = 9
  100.                 AnimationSpeedFactorRange = 1.5 1.55
  101.             End
  102.         End
  103.         AnimationState = FREEFALL
  104.             StateName = Freefall
  105.             Animation = Freefall(ilde)
  106.                 AnimationName = GUGwaihir_IDLA
  107.                 AnimationMode = LOOP
  108.                 AnimationBlendTime = 9
  109.                 AnimationSpeedFactorRange = 0.7 0.75
  110.             End
  111.         End
  112.     
  113.  
  114.         AnimationState = MOVING
  115.             StateName = Moving
  116.             Animation           = FLYA
  117.                 AnimationName     = GUGwaihir_FLYA
  118.                 AnimationMode     = LOOP
  119.                 AnimationBlendTime  = 12
  120.             End
  121.  
  122.             BeginScript
  123.                  Prev = CurDrawablePrevAnimationState()
  124.                  if Prev == "Idle"    then CurDrawableSetTransitionAnimState("Trans_Begin_Moving") return end
  125.              EndScript
  126.         End
  127.            TransitionState = Trans_Begin_Moving
  128.                Animation = Transition
  129.                    AnimationName = GUGwaihir_HVRC
  130.                    AnimationMode = ONCE
  131.                    AnimationBlendTime = 4
  132.                End  
  133.            End            
  134.  
  135.         TransitionState = Trans_Dying
  136.             Animation = Transition
  137.                 AnimationName = GUGwaihir_DIED
  138.                 AnimationMode = ONCE
  139.                 AnimationBlendTime = 9
  140.             End  
  141.         End            
  142.  
  143.  
  144.         AnimationState = DYING DEATH_1
  145.             StateName = DYING
  146.             Animation = DyingA
  147.                 AnimationName = GUGwaihir_DIEE
  148.                 AnimationMode = LOOP
  149.                 AnimationBlendTime = 9
  150.             End
  151.             BeginScript
  152.                 Prev = CurDrawablePrevAnimationState()
  153.                 if Prev == "Idle"    then CurDrawableSetTransitionAnimState("Trans_Dying") return end
  154.                 if Prev == "Moving"    then CurDrawableSetTransitionAnimState("Trans_Dying") return end
  155.             EndScript
  156.         End
  157.  
  158.         AnimationState = DYING DEATH_2
  159.             StateName = DYING
  160.             Animation = DyingA
  161.                 AnimationName = GUGwaihir_HVRA
  162.                 AnimationMode = LOOP
  163.                 AnimationBlendTime = 9
  164.             End
  165.         End
  166.  
  167.  
  168.  
  169.  
  170.     End
  171.     
  172.     ; ***DESIGN parameters ***
  173.     Side                = Elves
  174.     EditorSorting        = UNIT
  175.     ThreatLevel            = GWAIHIR_THREAT_LEVEL
  176.     ThingClass            = LARGE_MONSTER
  177.     TransportSlotCount    = TRANSPORTSLOTCOUNT_NOT_TRANSPORTABLE
  178.   
  179.     WeaponSet
  180.         Conditions        = None
  181.         Weapon              = PRIMARY        EagleGrabAttack
  182.         PreferredAgainst    = PRIMARY        INFANTRY THROWN_OBJECT CAVALRY
  183.  
  184.         Weapon                = SECONDARY        EagleClawAttack
  185.         OnlyAgainst            = SECONDARY        MONSTER
  186.  
  187.         Weapon              = TERTIARY        EaglePlowAttack
  188.         PreferredAgainst    = TERTIARY        STRUCTURE MACHINE HORDE    
  189.         
  190.         Weapon                = QUATERNARY    EagleClawWyrmAttack
  191.         PreferredAgainst    = QUATERNARY    CLEANUP_HAZARD                ; Used as a user defined kindof, only the wyrm uses it.
  192.     End
  193.  
  194.     ArmorSet
  195.         Conditions      = None
  196.         Armor           = EagleArmor
  197.         DamageFX        = GwaihirDamageFX
  198.     End    
  199.     
  200.     VisionRange = VISION_FLIER
  201.     ShroudClearingRange = SHROUD_CLEAR_FLIER
  202.  
  203.     BountyValue = GONDOR_GWAIHIR_BOUNTY_VALUE
  204.     DisplayName = OBJECT:GondorGwiegher
  205.     ;//DisplayMeleeDamage = EAGLE_PLOW_DAMAGE_INNER
  206.  
  207.     CrusherLevel           = 3  ;What can I crush?: 1 = infantry, 2 = trees, 3 = vehicles
  208.     RamPower = 30;
  209.     RamZMult = 0.5;
  210.     CommandSet = GwaihirCommandSet
  211.     CommandPoints = 50
  212.     
  213.  
  214.     ; *** AUDIO Parameters ***;
  215.  
  216.     VoiceAttack            = EagleVoiceAttack
  217.     VoiceMove            = EagleVoiceMove
  218.     VoicePriority            = 60
  219.     VoiceSelect            = EagleVoiceSelect
  220.     VoiceGuard            = EagleVoiceMove
  221.  
  222.     SoundAmbient            = EagleAmbienceVoice
  223.     SoundImpact            = ImpactHorse
  224.  
  225.     
  226.     ;UnitSpecificSounds
  227.     ;End
  228.  
  229.     #include "..\..\..\includes\StandardUnitEvaEvents.inc"
  230.  
  231.     ClientBehavior = AnimationSoundClientBehavior ModuleTag_AnimAudioBehavior
  232.         MaxUpdateRangeCap = 800
  233.         AnimationSound = Sound: EagleWingFlaps        Animation:GUGwaihir_SKL.GUGWAIHIR_FLYA Frames: 2
  234.         AnimationSound = Sound: EagleWingFlaps        Animation:GUGwaihir_SKL.GUGWAIHIR_FLYB Frames: 2 
  235.         AnimationSound = Sound: EagleWingFlaps        Animation:GUGwaihir_SKL.GUGWAIHIR_FLYC Frames: 2 63
  236.         ;AnimationSound = Sound: EagleWingFlaps        Animation:GUGwaihir_SKL.GUGWAIHIR_FLYC Frames: 4 34 
  237.  
  238.         AnimationSound = Sound: EagleWingFlaps        Animation:GUGwaihir_SKL.GUGWAIHIR_HVRA Frames: 4
  239.         AnimationSound = Sound: EagleWingFlaps        Animation:GUGwaihir_SKL.GUGWAIHIR_HVRC Frames: 4
  240.  
  241.         AnimationSound = Sound: EagleWingFlaps        Animation:GUGwaihir_SKL.GUGWAIHIR_HITA Frames: 0
  242.         AnimationSound = Sound: EagleWingFlaps        Animation:GUGwaihir_SKL.GUGWAIHIR_HITB Frames: 0
  243.  
  244.         AnimationSound = Sound: EagleHurt        Animation:GUGwaihir_SKL.GUGWAIHIR_HITA Frames: 1
  245.         AnimationSound = Sound: EagleHurt        Animation:GUGwaihir_SKL.GUGWAIHIR_HITB Frames: 1
  246.         AnimationSound = Sound: EagleHurt        Animation:GUGwaihir_SKL.GUGWAIHIR_DIED Frames: 1
  247.  
  248.         AnimationSound = Sound: EagleWingFlaps        Animation:GUGwaihir_SKL.GUGWAIHIR_ATKB Frames: 0
  249.         AnimationSound = Sound: EagleWingFlaps        Animation:GUGwaihir_SKL.GUGWAIHIR_GRBB Frames: 0
  250.  
  251.         AnimationSound = Sound: EagleAttack        Animation:GUGwaihir_SKL.GUGWAIHIR_ATKB Frames: 1
  252.         AnimationSound = Sound: EagleAttack        Animation:GUGwaihir_SKL.GUGWAIHIR_GRBB Frames: 1
  253.  
  254.         AnimationSound = Sound: EagleWingFlaps        Animation:GUGwaihir_SKL.GUGWAIHIR_DIED Frames: 0
  255.         AnimationSound = Sound: TrollBodyfall        Animation:GUGwaihir_SKL.GUGWAIHIR_DIEF Frames: 2
  256.         AnimationSound = Sound: EagleWingFlaps        Animation:GUGwaihir_SKL.GUGWAIHIR_DIEF Frames: 0
  257.     End
  258.  
  259.     ; Tie into LargeGroupAudio system
  260.     ; No, we never do anything with this unit
  261.     ;Behavior = LargeGroupAudioUpdate ModuleTag_LGAU
  262.     ;    Key = Eagle Unit Flyer
  263.     ;End
  264.  
  265.  
  266.     ; *** ENGINEERING Parameters ***
  267.     RadarPriority        = UNIT
  268.     KindOf                = PRELOAD HERO SELECTABLE CAN_CAST_REFLECTIONS SCORE NO_FREEWILL_ENTER MONSTER SCARY CANNOT_RETALIATE
  269.     
  270.  
  271.     
  272.     Body = ActiveBody ModuleTag_02
  273.         CheerRadius       = EMOTION_CHEER_RADIUS
  274.         MaxHealth         = GIANT_EAGLE_HEALTH    ;BALANCE Gwaihir Health
  275. ;        MaxHealthDamaged  = 500
  276. ;        RecoveryTime      = 5000
  277.  
  278.         HealingBuffFx = None
  279.     End
  280.  
  281.     Behavior = AutoHealBehavior ModuleTag_GwaihirHealing
  282.         StartsActive = Yes
  283.         HealingAmount = HERO_HEAL_AMOUNT
  284.         HealingDelay = 1000
  285.         StartHealingDelay = 15000
  286.         HealOnlyIfNotInCombat = Yes
  287.     End
  288.     
  289.     Behavior = GiantBirdAIUpdate ModuleTag_GiantBirdAI
  290.         AutoAcquireEnemiesWhenIdle    =    Yes ATTACK_BUILDINGS
  291.         MoodAttackCheckRate            =    500
  292.         AILuaEventsList                =    GwaihirFunctions    
  293.         
  294.         FollowThroughDistance        =    160
  295.         FollowThroughCheckStep        =    50
  296.         FollowThroughGradient        =    1.0
  297.         
  298.         GrabTossTimeTrigger            =    3.0
  299.         GrabTossHeightTrigger        =   80.0
  300.         TossFX                = FX_DiebyFalling
  301.         SpecialContactPoints        = Swoop
  302.         
  303.         AttackPriority = AttackPriority_Eagle
  304.     End
  305.  
  306.     Behavior = ModelConditionUpgrade ModuleTag_All_FactionUpgrade
  307.         TriggeredBy                = Upgrade_AllFactionUpgrade
  308.         AddConditionFlags        = USER_3
  309.         Permanent                = Yes
  310.     End
  311.     
  312.     LocomotorSet
  313.         Locomotor = FellBeastLocomotor ;BALANCE Gwaihir
  314.         Condition = SET_NORMAL 
  315.         Speed     = 88
  316.     End
  317.     LocomotorSet
  318.         Locomotor = FellBeastLocomotor ;BALANCE Gwaihir
  319.         Condition = SET_SUPERSONIC 
  320.         Speed     = 114
  321.     End
  322.     LocomotorSet
  323.         Locomotor = FellBeastLocomotor ; BALANCE Gwaihir
  324.         Condition = SET_WANDER 
  325.         Speed     = 78
  326.     End
  327.  
  328.     
  329.     Behavior = PhysicsBehavior ModuleTag_04
  330.     End
  331.     
  332.     Behavior = NotifyTargetsOfImminentProbableCrushingUpdate ModuleTag_NotifyCrushScan
  333.     End
  334.  
  335.     
  336.     Behavior = TransportContain TransportContainModuleTag
  337.         ObjectStatusOfContained = UNSELECTABLE UNATTACKABLE
  338.         PassengerFilter = ANY +INFANTRY +HULK +CAVALRY +GRAB_AND_DROP -HERO -PORTER
  339.         Slots = 1
  340.         ShowPips = No
  341.         CanGrabStructure = Yes
  342.         AllowEnemiesInside = Yes
  343.         AllowNeutralInside = Yes
  344.         AllowAlliesInside  = No
  345.         DamagePercentToUnits = 100%
  346.         KillPassengersOnDeath = Yes
  347.         PassengerBonePrefix = PassengerBone:B_Passenger       KindOf:GRAB_AND_DROP
  348.         GrabWeapon = FellbeastGrabWeapon        ; fire this weapon when eagle grabs a victim
  349.         FireGrabWeaponOnVictim = No
  350.         
  351.         ReleaseSnappyness = 0.05 ; 1.0 is very snappy, 0.0 is very loose
  352.  
  353.     End
  354.     
  355.     Behavior = SquishCollide ModuleTag_06
  356.         ;nothing
  357.     End
  358.     
  359. ;    Behavior = GiantBirdSlowDeathBehavior ModuleTag_GiantBirdSlowDeath
  360. ;        DeathTypes = ALL ;-KNOCKBACK
  361. ;        SinkDelay = 8000
  362. ;        SinkRate = 1.6     ; in Dist/Sec
  363. ;        DestructionDelay = 15000
  364. ;        
  365. ;        Sound    = INITIAL    EagleVoiceDie            ;FellBeastDie
  366. ;        Weapon    = HIT_GROUND    GondorTrebuchetRockWarhead
  367. ;        FX = INITIAL FX_FellBeastSpell
  368. ;        Sound    = HIT_GROUND    FellBeastDieImpact
  369. ;
  370. ;        CrashAvoidKindOfs = STRUCTURE
  371. ;        CrashAvoidRadius  = 800
  372. ;        CrashAvoidStrength = 0.2
  373. ;        NeedToMaintainFlailingHeight = No
  374. ;                                    
  375. ;    End
  376.  
  377.     Behavior = SlowDeathBehavior ModuleTag_SlowDeath
  378.         DeathTypes = ALL -FADED
  379.         DestructionDelay = 1000
  380.         ShadowWhenDead = No
  381.         FX = INITIAL FX_GwaihirDeath
  382.         Sound = INITIAL EagleVoiceDie
  383.             DeathFlags = DEATH_1
  384.     End
  385.     
  386.       Behavior = SlowDeathBehavior ModuleTag_FadeDeath
  387.         DeathTypes = NONE +FADED
  388.         FadeDelay = 0
  389.         FadeTime = 2500
  390.         DestructionDelay = 2500
  391.         ;Sound = INITIAL EagleVoiceDie    
  392.             DeathFlags = DEATH_2
  393.     End
  394.   
  395.     Behavior = DualWeaponBehavior ModuleTag_10
  396.         SwitchWeaponOnCloseRangeDistance = 24
  397.     End
  398.     
  399.     FormationPreviewDecal 
  400.             Texture = FPflyingUnitDecal
  401.             Width = 128
  402.             Height = 128
  403.         End
  404.  
  405.     Geometry                = CYLINDER
  406.     GeometryMajorRadius     = 30.0
  407.     GeometryMinorRadius     = 30.0
  408.     GeometryHeight            = 16.0
  409.     GeometryIsSmall            = No
  410.     
  411.     HealthBoxScale            = 3.0
  412.     HealthBoxHeightOffset    = 25.0    
  413.     
  414.     Shadow = SHADOW_VOLUME_NON_SELF_3    // volumetric shadow that doesn't cast onto all objects using SHADOW_VOLUME_NON_SELF_3
  415.     ShadowSunAngle = 89                    // clamp the angle so shadow casts straight down.
  416. End
  417.  
  418. //---------------------------------------------------------------------
  419. ChildObject GondorGwaihir_Summoned GondorGwaihir
  420.     IsTrainable = No
  421.     CommandPoints = 0
  422.  
  423.     KindOf = PRELOAD HERO SELECTABLE CAN_CAST_REFLECTIONS SCORE NO_FREEWILL_ENTER MONSTER SCARY CANNOT_RETALIATE SUMMONED
  424.     
  425.     Behavior = LifetimeUpdate ModuleTag_LifetimeUpdate
  426.         MinLifetime        = 120000
  427.         MaxLifetime        = 120000
  428.         DeathType        = FADED
  429.     End    
  430.  
  431.       Behavior = SlowDeathBehavior ModuleTag_FadeDeath
  432.         DeathTypes = NONE +FADED
  433.         FadeDelay = 0
  434.         FadeTime = 2500
  435.         DestructionDelay = 2500
  436.         Sound = INITIAL SpellGenericUnsummonFasterMS
  437.             DeathFlags = DEATH_2
  438.     End
  439. End
  440.  
  441. //---------------------------------------------------------------------
  442. ChildObject ElvenFortressEagle GondorGwaihir
  443.     ; this unit should cost 0 because the user is charged for the upgrade that creates it
  444.     BuildCost = 0 
  445.  
  446.     CommandPoints = 0
  447. End
  448.  
  449.  
  450.