Modderecke > Tutorials

Turins Einheiten Tutorial: Vom Nichts zur fertigen Einheit

<< < (75/87) > >>

Radagast der Musikalische:
Poste am besten mal deine kompletten Codes, dann kann man eher helfen! Wenn du möchtest kannst du mir auch eine PM schreiben und ich schaue dann mal drüber! ;)

MfG Radagast

Zemdreg:
Hier sind mal die ganzen Codes:
-commandbutton.ini CommandButton Command_ConstructGondorP ikemanHorde
   Command            = UNIT_BUILD
   Object            = GondorPikemanHorde
   Options               =CANCELABLE
   TextLabel         = CONTROLBAR:ConstructGondorShieldGua rdHorde
   ButtonImage         = BGBarracks_TowerGuard
   ButtonBorderType          = BUILD
   DescriptLabel             = CONTROLBAR:ToolTipBuildGondorShield GuardHorde
   Radial            = Yes
   InPalantir         = Yes
   ShowProductionCount      = Yes     
End
-commandset.ini CommandSet GondorBarracksCommandSet
     1   = Command_ConstructGondorF ighterHorde
   2    = Command_ConstructRohanSp earmenHorde
   3   = Command_ConstructGondorP ikemanHorde
     4   = Command_ConstructGondorT owerShieldGuardHorde
     5    = Command_PurchaseUpgradeG ondorBarracksLevel2
     6   = Command_Sell
End
-menhordes.ini Object GondorPikemanHorde

   // This is required for garrisoned objects - please put in all objects.
   ButtonImage      = WOR_GondorTowerGuard
   SelectPortrait   = UPGondor_TowerGuard

   Draw = W3DScriptedModelDraw ModuleTag_W3DModelDraw
       DependencySharedModelFla gs = EMOTION_ALERT EMOTION_MORALE_HIGH EMOTION_MORALE_LOW EMOTION_AFRAID EMOTION_COWER SELECTED EMOTION_TERROR EMOTION_LOOK_TO_SKY
      DefaultModelConditionSta te
         Model = None //InvisHrdeTmp5x2
      End
      ModelConditionState = HORDE_EMPTY
         Model = None
      End      
      
      ModelConditionState = WORLD_BUILDER
         Model = HordeMarkGUTow
      End
   End
   
   Side = Men
   EditorSorting = UNIT
   EmotionRange = 240
   DisplayName = OBJECT:GondorPikemanHorde
   DisplayNameStrategic = CONTROLBAR:LW_Unit_GondorPikemanHor de
   DescriptionStrategic = CONTROLBAR:LW_ToolTip_GondorPikeman Horde
   
   WeaponSet
      Conditions = None
      Weapon = PRIMARY    TowerGuardHordeRangefind er
   End

   // *** AUDIO Parameters ***//
   // Note: Don't put voice parameters here -- they will be ignored. Voice play requests
   // are always passed through to members


   BuildCost          = GONDOR_TOWERGUARD_BUILDC OST
   BuildTime          = GONDOR_TOWERGUARD_BUILDT IME
   VisionRange          = GONDOR_TOWERGUARD_HORDE_ VISION_RANGE
   ShroudClearingRange       = GONDOR_TOWERGUARD_HORDE_ SHROUD_RANGE
   VisionSide          = 50%
   VisionRear          = 25%
   MaxVisionBonusPercent       = 300%
   VisionBonusTestRadius       = 200
   VisionBonusPercentPerFoo t    = 1.0%
   CommandPoints          = 75         ; originally 60
   
   CommandSet = GondorTowerShieldGuardCo mmandSet
      
   FormationWidth = 2 // Width it occupies in formations. Current choices are 1 or 2.
   FormationDepth = 1 // Depth it occupies in formations. Current choices are 1 or 2.
   
    CrushableLevel = 0  //What am I?:        0 = for infantry, 1 = for trees, 2 = general vehicles
   CrusherLevel = 0
 
    TransportSlotCount = TRANSPORTSLOTCOUNT_SMALL _HORDE
   KindOf = SELECTABLE CAN_ATTACK ATTACK_NEEDS_LINE_OF_SIG HT INFANTRY HORDE ARMY_SUMMARY MELEE_HORDE PIKE LARGE_RECTANGLE_PATHFIND
   #include "..\..\..\includes\StandardHordeEvaEvents.inc"
   
   Body = ImmortalBody ModuleTag_ImmortalBody
      MaxHealth = 1
   End

   ThreatLevel = GONDOR_TOWERSHIELDGUARD_ HORDE_THREAT
   ThreatBreakdown GondorTowerShieldGuardHo rde_DetailedThreat
      AIKindOf = PIKEMAN
   End
   
   #include "..\..\..\includes\CaptureBuilding.inc"
   
   Behavior = StancesBehavior ModuleTag_StancesBehavio r
        StanceTemplate = PikeHorde
    End
      
   Behavior = HordeAIUpdate ModuleTag_HordeAIUpdate
      AutoAcquireEnemiesWhenId le   =   Yes ATTACK_BUILDINGS
      MoodAttackCheckRate      =   500
      MaxCowerTime         =   5000
      MinCowerTime         =   3000
      AILuaEventsList         =   InfantryFunctions
      AttackPriority         =    AttackPriority_Spearman
   End
   
   Behavior = HordeContain ModuleTag_HordeContain
      FrontAngle       = 180
      FlankedDelay       = 4000
      ObjectStatusOfContained =
      InitialPayload       = GondorPikemanHorde GOOD_MEN_GIANT_HORDE_SIZ E
      Slots          = 15
      PassengerFilter      = NONE +INFANTRY
      ShowPips       = No
      ThisFormationIsTheMainFo rmation = Yes   //Used to determine which armorset to use (and anything else we want!)
      RandomOffset      = X:0 Y:0
      MeleeBehavior = Amoeba
         FacingBonus   = 30.0
         AngleLimitCos   = -0.17
         InnerRange   = 30
         OuterRange   = 80
         OuterRangeBuildings   = 140
      End

      // Banner Carrier info      
      BannerCarriersAllowed   = GondorInfantryBanner                              // types of units that are allowed as banner carriers
      BannerCarrierPosition   = UnitType:GondorFighter   Pos:X:70.0 Y:0.0      // (DEFAULT) position of banner carrier
      
      RankInfo = RankNumber:1 UnitType:GondorPikemanHorde Position:X:50 Y:0      Position:X:50 Y:20      Position:X:50 Y:-20      Position:X:50 Y:40      Position:X:50 Y:-40
      RankInfo = RankNumber:2 UnitType:GondorPikemanHorde Position:X:30 Y:0 Leader 1 0   Position:X:30 Y:20 Leader 1 1   Position:X:30 Y:-20 Leader 1 2   Position:X:30 Y:40 Leader 1 3   Position:X:30 Y:-40 Leader 1 4
      RankInfo = RankNumber:3 UnitType:GondorPikemanHorde Position:X:10 Y:0 Leader 2 0   Position:X:10 Y:20 Leader 2 1   Position:X:10 Y:-20 Leader 2 2   Position:X:10 Y:40 Leader 2 3   Position:X:10 Y:-40 Leader 2 4
      
      RanksToReleaseWhenAttack ing = 1

             
      BackUpMinDelayTime       = 1   //The minimum amount of   time to   delay before backing up
      BackUpMaxDelayTime       = 3000   //The maximum amount of   time to   delay before backing up
      BackUpMinDistance       = 1   //The minimum number of   cells to backup
      BackUpMaxDistance       = 3   //The maximum number of   cells to backup
      BackupPercentage       = 80%   //The amount of   chance that   a unit will   back up.
   End

   Behavior = PhysicsBehavior ModuleTag_PhysicsBehavio r
      GravityMult = 1.0
   End
   
      Behavior = EmotionTrackerUpdate   Module_EmotionTracker
      TauntAndPointDistance      =   INFANTRY_TAUNT_POINT_RAD IUS      // max distance to taunted/pointed objet
      TauntAndPointUpdateDelay   =   1000   // how often scan (milliseconds)
      TauntAndPointExcluded      =   NONE
       AfraidOf               =   EMOTION_AFRAIDOF_OBJECTF ILTER
      AlwaysAfraidOf            =   EMOTION_ALWAYS_AFRAIDOF_ OBJECTFILTER
       PointAt                  =   EMOTION_POINTAT_OBJECTFI LTER
      HeroScanDistance         =   150
      FearScanDistance         =   INFANTRY_FEAR_SCAN_RADIU S

      AddEmotion         =   Terror_Base
      AddEmotion         =   Doom_Base
      //   AddEmotion         =   BraceForBeingCrushed_Bas e      // Pikemen don't fear getting crushed
      AddEmotion         =   UncontrollableFear_Base
      AddEmotion         =   FearIdle_Base
      AddEmotion         =   FearBusy_Base
      AddEmotion         =   Point_Base
      
      AddEmotion         =   OVERRIDE Taunt_Base   
       //   AttributeModifier   =   GondorFighterTaunt
       End      
       
      AddEmotion   =   CheerIdle_Base
      AddEmotion   =   CheerBusy_Base
      AddEmotion   =   HeroCheerIdle_Base
      AddEmotion   =   HeroCheerBusy_Base
      AddEmotion   =   Alert_Base
   End
   
   Behavior = PickupStuffUpdate ModuleTag_PickupStuffUpd ate
      SkirmishAIOnly = Yes
      StuffToPickUp = NONE +CRATE
      ScanRange = 200
      ScanIntervalSeconds = 0.5
   End

   LocomotorSet
      Locomotor     = NormalMeleeHordeLocomoto r
      Condition     = SET_NORMAL
      Speed         = NORMAL_FOOT_SLOW_HORDE_S PEED
   End

   Behavior = ProductionUpdate ProductionUpdateModuleTa g
      GiveNoXP = Yes
   End

   Behavior = LevelUpUpgrade ModuleTag_BasicTraining
      TriggeredBy = Upgrade_GondorBasicTrain ing
      LevelsToGain = 1
      LevelCap = 2
   End
   
   Behavior = StatusBitsUpgrade ModuleTag_ProductionLega lity
      TriggeredBy = Upgrade_GondorForgedBlad es
   End
   
   Behavior = StatusBitsUpgrade ModuleTag_ProductionLega lity2
      TriggeredBy = Upgrade_GondorHeavyArmor
   End
   
   /////////////////////
   // AISpecialPowers
   /////////////////////
   
   Behavior = AISpecialPowerUpdate GondorTowerShieldGuardHo rdeCaptureBuildingAI
      CommandButtonName = Command_CaptureBuilding
      SpecialPowerAIType = AI_SPECIAL_POWER_CAPTURE _BUILDING
   End
   
   Behavior = AISpecialPowerUpdate GondorFighterHordeStance Battle
      CommandButtonName = Command_SetStanceBattle
      SpecialPowerAIType = AI_SPECIAL_POWER_STANCEB ATTLE
   End

   Behavior = AISpecialPowerUpdate GondorFighterHordeStance Aggressive
      CommandButtonName = Command_SetStanceAggress ive
      SpecialPowerAIType = AI_SPECIAL_POWER_STANCEA GGRESSIVE
   End

   Behavior = AISpecialPowerUpdate GondorFighterHordeHoldGr ound
      CommandButtonName = Command_SetStanceHoldGro und
      SpecialPowerAIType = AI_SPECIAL_POWER_STANCEH OLDGROUND
   End

   
   Geometry = BOX
   GeometryMajorRadius = 30.0
   GeometryMinorRadius = 45.0
   GeometryHeight = 20.0
   GeometryIsSmall = No
   
   
   // *** AUTO RESOLVE DATA ***
   AutoResolveUnitType = AutoResolveUnit_Pikemen
   AutoResolveCombatChain = AutoResolve_PikemenComba tChain
   
   AutoResolveBody = AutoResolve_GondorTowerG uardHordeBody
   
   AutoResolveArmor
      RequiredUpgrades = Upgrade_GondorHeavyArmor
      Armor = AutoResolve_GondorTowerG uardHeavyArmor
   End

   AutoResolveArmor
      ExcludedUpgrades = Upgrade_GondorHeavyArmor
      Armor = AutoResolve_GondorTowerG uardArmor
   End

   AutoResolveWeapon
      RequiredUpgrades = Upgrade_GondorForgedBlad es
      Weapon = AutoResolve_GondorTowerG uardUpgradedWeapon
   End

   AutoResolveWeapon
      ExcludedUpgrades = Upgrade_GondorForgedBlad es
      Weapon = AutoResolve_GondorTowerG uardWeapon
   End
   
   WorldMapArmoryUpgradesAl lowed = Upgrade_GondorBasicTrain ing Upgrade_GondorForgedBlad es Upgrade_GondorHeavyArmor   
End
         
ChildObject GondorPikemanHorde_Summo ned GondorPikemanHorde
   IsTrainable   =   No
   CommandPoints    =   0
   CommandSet   =   GondorTowerShieldGuardCo mmandSet_Summoned
   EquivalentTo     =   GondorTowerShieldGuardHo rde

   KindOf = SUMMONED SELECTABLE CAN_ATTACK ATTACK_NEEDS_LINE_OF_SIG HT INFANTRY HORDE ARMY_SUMMARY MELEE_HORDE PIKE LARGE_RECTANGLE_PATHFIND

   DisplayName    = OBJECT:HordeGondorTowerGuard
   
   Behavior    = HordeContain ModuleTag_HordeContain
      FrontAngle    = 180
      FlankedDelay    = 4000
      ObjectStatusOfContained =
      InitialPayload    = GondorTowerShieldGuard_S ummoned GOOD_MEN_GIANT_HORDE_SIZ E
      Slots       = 15
      PassengerFilter   = NONE +INFANTRY
      ShowPips    = No
      ThisFormationIsTheMainFo rmation = Yes         //Used to determine which armorset to use (and anything else we want!)
      RandomOffset   = X:0 Y:0
      MeleeBehavior    = Amoeba
         FacingBonus      =   30.0
         AngleLimitCos      =   -0.17
         InnerRange      =   30
         OuterRange      =   80
         OuterRangeBuildings   =   140
      End

      RankInfo = RankNumber:1 UnitType:GondorTowerShieldGuard_S ummoned Position:X:50 Y:0      Position:X:50 Y:20      Position:X:50 Y:-20      Position:X:50 Y:40      Position:X:50 Y:-40
      RankInfo = RankNumber:2 UnitType:GondorTowerShieldGuard_S ummoned Position:X:30 Y:0 Leader 1 0   Position:X:30 Y:20 Leader 1 1   Position:X:30 Y:-20 Leader 1 2   Position:X:30 Y:40 Leader 1 3   Position:X:30 Y:-40 Leader 1 4
      RankInfo = RankNumber:3 UnitType:GondorTowerShieldGuard_S ummoned Position:X:10 Y:0 Leader 2 0   Position:X:10 Y:20 Leader 2 1   Position:X:10 Y:-20 Leader 2 2   Position:X:10 Y:40 Leader 2 3   Position:X:10 Y:-40 Leader 2 4
      
      RanksToReleaseWhenAttack ing = 1

      AlternateFormation = GondorTowerShieldGuardHo rdePorcupine
      MeleeAttackLeashDistance    = 1      //How far the hordes   can   move from the center of   the   horde when melee attacking.             
      BackUpMinDelayTime      = 1   //The minimum amount of   time to   delay before backing up
      BackUpMaxDelayTime      = 3000   //The maximum amount of   time to   delay before backing up
      BackUpMinDistance      = 1   //The minimum number of   cells to backup
      BackUpMaxDistance      = 3   //The maximum number of   cells to backup
      BackupPercentage      = 80%   //The amount of   chance that   a unit will   back up.
   End
   
   Behavior = LifetimeUpdate ModuleTag_LifetimeUpdate
   // This one displays the timer, but the one in the uint does the work
      MinLifetime      = CREATE_A_HERO_REINFORCEM ENT_LIFETIME
      MaxLifetime      = CREATE_A_HERO_REINFORCEM ENT_LIFETIME
      DeathType      = FADED
   End   
End

ChildObject GondorPikemanHordePorcup ine GondorPikemanHorde

   // Note - for alternate formations, all info outside of the Contain Behavior module is ignored.
   // Any modifications need to be done via the Attribute Modifiers in the contain module.
   Behavior = HordeContain ModuleTag_HordeContain
      FrontAngle = 360   //   Can't be flanked
      FlankedDelay = 2000
      ObjectStatusOfContained =
      InitialPayload               = GondorTowerShieldGuard GOOD_MEN_HORDE_SIZE
      Slots                     = 15
      PassengerFilter               = NONE +INFANTRY
      ShowPips                  = No
      ThisFormationIsTheMainFo rmation = No   //Used to determine which armorset to use (and anything else we want!)
      RandomOffset               = X:2 Y:1
      RanksToReleaseWhenAttack ing      = 0
      RanksToJustFreeWhenAttac king   = 0
      AttributeModifiers            = GondorTowerShieldGuardHo rdePorcupine
      IsPorcupineFormation         = Yes
      MinimumHordeSize            = 5

      AlternateFormation            = GondorTowerShieldGuardHo rde
      VisionRearOverride            = 100%
      VisionSideOverride            = 100%
      NotComboFormation            = Yes // this formation is not suitable for combo, so it will switch out of this when combo-ing

      // Banner Carrier info      
      BannerCarriersAllowed         = GondorInfantryBanner                                    // types of units that are allowed as banner carriers
      BannerCarrierPosition         = UnitType:GondorTowerShieldGuard   Pos:X:0.0 Y:0.0      // (DEFAULT) position of banner carrier
      
      RankInfo   = RankNumber:1 UnitType:GondorTowerShieldGuard Position:X:20 Y:0   Position:X:-16.18 Y:11.76      Position:X:6.18 Y:-19.02   Position:X:6.18 Y:19.02   Position:X:-16.18 Y:-11.76   Position:X:36.54 Y:16.27   Position:X:-39.13 Y:8.32   Position:X:26.77 Y:-29.73   Position:X:-4.18 Y:39.78   Position:X:-20 Y:-34.64   Position:X:26.77 Y:29.73   Position:X:-39.13 Y:-8.32   Position:X:36.54 Y:-16.27   Position:X:-20 Y:34.64   Position:X:-4.18 Y:-39.78
   End
End-einheit.ini // Moved from MenInfantry.INI Aug 24 2005

//------------------------------------------------------------------------------
// aka GondorTowerGuard TowerShieldGuard GuardTowerShield
Object GondorPikeman
   // *** ART Parameters ***

   SelectPortrait         = UPGondor_TowerGuard
   ButtonImage            = WOR_GondorTowerGuard

   Draw = W3DHordeModelDraw ModuleTag_01
      OkToChangeModelColor = Yes

      StaticModelLODMode = Yes
      
      // specify options for static LODs
      LodOptions   = LOW
         AllowMultipleModels      =   ALLOW_MULTIPLE_MODELS_LO W
         MaxRandomTextures      =   MAX_RANDOM_TEXTURES_LOW
         MaxRandomAnimations      =   MAX_RANDOM_ANIMATIONS_LO W
         MaxAnimFrameDelta      =   MAX_ANIM_FRAME_DELTA_LOW
      End
      
      LodOptions   = MEDIUM
         AllowMultipleModels      =   ALLOW_MULTIPLE_MODELS_ME D
         MaxRandomTextures      =   MAX_RANDOM_TEXTURES_MED
         MaxRandomAnimations      =   MAX_RANDOM_ANIMATIONS_ME D
         MaxAnimFrameDelta      =   MAX_ANIM_FRAME_DELTA_MED
      End
      
      LodOptions   = HIGH
         AllowMultipleModels      =   ALLOW_MULTIPLE_MODELS_HI GH
         MaxRandomTextures      =   MAX_RANDOM_TEXTURES_HIGH
         MaxRandomAnimations      =   MAX_RANDOM_ANIMATIONS_HI GH
         MaxAnimFrameDelta      =   MAX_ANIM_FRAME_DELTA_HIG H
      End

      DefaultModelConditionSta te
         Model               = Test_skn
         Skeleton            = GUTwrGrd_SKL
      End

      ModelConditionState WEAPONSET_PLAYER_UPGRADE
         Model               = Test_skn
         Skeleton            = GUTwrGrd_SKL
      End
      
      AnimationState        = THROWN_PROJECTILE
         Animation           = FLYA
            AnimationName     = GUTwrGrd_FLYA
            AnimationMode     = LOOP
         End
      End

      AnimationState                     = PASSENGER FREEFALL
         Animation                     = Grabbed
            AnimationName               = GUTwrGrd_FLLA
            AnimationMode               = LOOP
         End
      End
      
      AnimationState                     = FREEFALL
         Animation                     = Falling
            AnimationName               = GUTwrGrd_FLYA
            AnimationMode               = LOOP
            AnimationBlendTime            = 10
         End
      End

      
      AnimationState                  = PARALYZED
         Animation
            AnimationName            = GUTwrGrd_IDLA
            AnimationMode            = LOOP
         End
      End

      AnimationState            = DYING BURNINGDEATH
         Animation            = DIEA
            AnimationName        = GUTwrGrd_DIEA
            AnimationMode        = ONCE
            AnimationBlendTime   = 10
         End
         Animation            = DIEA
            AnimationName        = GUTwrGrd_DIEB
            AnimationMode        = ONCE
            AnimationBlendTime   = 10
         End
         Animation            = DIEA
            AnimationName        = GUTwrGrd_DIEC
            AnimationMode        = ONCE
            AnimationBlendTime   = 10
         End
      End

      AnimationState        = DYING SPLATTED
         Animation           = LNDA
            AnimationName     = GUTwrGrd_LNDA
            AnimationMode     = ONCE
         End
      End
      
      AnimationState        = DYING
         Animation           = DIEA
            AnimationName     = GUTwrGrd_DIEA
            AnimationMode     = ONCE
            AnimationSpeedFactorRang e = 0.8 1.2
         End
         Animation           = DIEA
            AnimationName     = GUTwrGrd_DIEB
            AnimationMode     = ONCE
            AnimationSpeedFactorRang e = 0.8 1.2
         End
         Animation           = DIEA
            AnimationName     = GUTwrGrd_DIEC
            AnimationMode     = ONCE
            AnimationSpeedFactorRang e = 0.8 1.2
         End
      End
      

      AnimationState                  = BURNINGDEATH
         Animation
            AnimationName            = GUTwrGrd_MFDA
            AnimationMode            = LOOP
            Distance               = 60
         End
      End
      
      
      AnimationState        = MOVING FIRING_OR_PREATTACK_A
         ShareAnimation      = Yes
         Animation           = RunAndFire
            AnimationName       = GUTwrGrd_ATRA
            AnimationMode       = LOOP
         End
         Flags               = RANDOMSTART 
      End

//=======TERROR
      AnimationState               = MOVING EMOTION_TERROR EMOTION_LOOK_TO_SKY
         ShareAnimation            = Yes
         Animation               = TerrorFromTheSky
            AnimationName         = GUTwrGrd_RUNE
            AnimationMode         = LOOP
         End
      End
      AnimationState               = MOVING EMOTION_TERROR
         ShareAnimation            = Yes
         Animation               = Terror
            AnimationName         = GUTwrGrd_RUNE
            AnimationMode         = LOOP
         End
      End
//----------------
//=======BACK UP
      AnimationState            =   MOVING BACKING_UP
         ShareAnimation = Yes
         Animation            =   BackingUp
            AnimationName      =   GUTwrGrd_BAKA
            AnimationMode      =   LOOP
         End
         Animation            =   BackingUp
            AnimationName      =   GUTwrGrd_BAKB
            AnimationMode      =   LOOP
         End         
         Flags               =   RANDOMSTART
      End
//--------------------
      
      AnimationState        = MOVING ALTERNATE_FORMATION
         //ShareAnimation = Yes
         StateName         = STATE_EnrouteToPorcupine
         Animation
            AnimationName     = GUTwrGrd_RUNA
            AnimationMode     = LOOP
         End
         Animation
            AnimationName     = GUTwrGrd_RUNB
            AnimationMode     = LOOP
         End
         Flags               = RANDOMSTART
         //ParticleSysBone     = None InfantryDustTrails
      End

      AnimationState        = MOVING
         ShareAnimation = Yes
         Animation           = RUNA
            AnimationName     = GUTwrGrd_RUNA
            AnimationMode     = LOOP
         End
         Animation
            AnimationName     = GUTwrGrd_RUNB
            AnimationMode     = LOOP
         End
         Flags               = RANDOMSTART
         //ParticleSysBone     = None InfantryDustTrails
      End

      AnimationState        =  FIRING_OR_PREATTACK_A
         Animation           = ATKA
            AnimationName     = GUTwrGrd_ATKA
            AnimationMode     = ONCE
            UseWeaponTiming      = Yes
         End
         Animation           = ATKA
            AnimationName     = GUTwrGrd_ATKB
            AnimationMode     = ONCE
            UseWeaponTiming      = Yes
         End
         //ParticleSysBone     = None MeleeDust
      End


      AnimationState        = STUNNED_FLAILING
         Animation           = FLYA
            AnimationName     = GUTwrGrd_FLYA
            AnimationMode     = LOOP
         End
         Flags               = RANDOMSTART
      End

      AnimationState        = STUNNED_STANDING_UP
         Animation           = GTPA
            AnimationName     = GUTwrGrd_GTPA
            AnimationMode     = ONCE
            AnimationSpeedFactorRang e = 1.5 1.5
         End
      End

      AnimationState        = STUNNED
         Animation           = LNDA
            AnimationName     = GUTwrGrd_LNDA
            AnimationMode     = ONCE
         End
      End

      TransitionState       = TRANS_Plant
         Animation           = PLTA
            AnimationName     = GUTwrGrd_PLTA
            AnimationMode     = ONCE
            AnimationSpeedFactorRang e = 0.8 1.2
         End
      End

      TransitionState       = TRANS_Unplant
         Animation           = PLTB
            AnimationName     = GUTwrGrd_PLTC
            AnimationMode     = ONCE
            AnimationSpeedFactorRang e = 0.5 1.2
         End
      End
//------------------ Hit Reaction ---------------------------------------
      AnimationState                  = HIT_REACTION
         Animation                  = HIT REACTION
            AnimationName            = GUTwrGrd_HITA
            AnimationMode            = ONCE
         End
      End
//------------------ EMOTIONS -------------------------------------------
//======= APPREHENSIVE
      AnimationState               = EMOTION_ALERT EMOTION_AFRAID
         ShareAnimation            = Yes
         Animation               = Apprehensive
            AnimationName         = GUTwrGrd_FERA
            AnimationMode         = LOOP   //Change this to ONCE if adding additional anims
         End
         Flags                  = RANDOMSTART
      End

//======= AFRAID

      AnimationState               = EMOTION_AFRAID
         ShareAnimation            = Yes
         Animation               = FERA
            AnimationName         = GUTwrGrd_FERA
            AnimationMode         = LOOP
         End
         Flags                  = RANDOMSTART
      End

//======= TAUNTING

      AnimationState               = EMOTION_TAUNTING ALTERNATE_FORMATION
         Animation               = TNTA
            AnimationName         = GUTwrGrd_TNTA
            AnimationMode         = LOOP
         End
         Animation               = TNTA
            AnimationName         = GUTwrGrd_TNTB
            AnimationMode         = LOOP
         End
      End
      AnimationState               = EMOTION_TAUNTING
         Animation               = Taunting
            AnimationName         = GUTwrGrd_TNTA
            AnimationMode         = ONCE
         End
         Animation               = Taunting2
            AnimationName         = GUTwrGrd_TNTB
            AnimationMode         = ONCE
         End
         Flags                  = RESTART_ANIM_WHEN_COMPLE TE
      End

//======= POINTING

      AnimationState               = EMOTION_POINTING
         Animation               = Pointing1
            AnimationName         = GUTwrGrd_PNTA
            AnimationMode         = LOOP
         End
         Animation               = Pointing1
            AnimationName         = GUTwrGrd_PNTB
            AnimationMode         = LOOP
         End
         Flags                  = RANDOMSTART
      End

//======= CELEBRATING

      AnimationState               = EMOTION_CELEBRATING
         Animation               = CHRA
            AnimationName         = GUTwrGrd_CHRA
            AnimationMode         = LOOP
         End
         Animation               = CHRA
            AnimationName         = GUTwrGrd_CHRB
            AnimationMode         = LOOP
         End
         Animation               = CHRA
            AnimationName         = GUTwrGrd_CHRC
            AnimationMode         = LOOP
         End
      End
//-------------- ALERT STATE ------------------------------------------------------------

      AnimationState               = EMOTION_ALERT
         Animation               = CHRA
            AnimationName         = GUTwrGrd_IDLA
            AnimationMode         = LOOP
         End
      End
      
//-------------- SELECTED & IDLE --------------------------------------------------------
//======== SELECTED

      AnimationState               = SELECTED ALTERNATE_FORMATION PORCUPINE
         //ShareAnimation            = Yes
         StateName               = STATE_SelectedAlternateF ormation
         Animation
            AnimationName         = GUTwrGrd_PLTB
            AnimationMode         = LOOP
         End
         BeginScript
            Prev = CurDrawablePrevAnimation State()
            if Prev ~= "STATE_SelectedAlternateF ormation" and Prev ~= "STATE_Planted" and Prev ~= "TRANS_Plant" then CurDrawableSetTransition AnimState("TRANS_Plant") end
         EndScript
      End
      AnimationState               = SELECTED ALTERNATE_FORMATION
         //ShareAnimation            = Yes
         StateName               = STATE_SelectedAlternateF ormation
         Animation
            AnimationName         = GUTwrGrd_ATNB
            AnimationMode         = LOOP
         End
      End

      AnimationState               = RAISING_FLAG
         Animation               = CHRA
            AnimationName         = GUTwrGrd_CHRA
            AnimationMode         = ONCE
            AnimationSpeedFactorRang e = 0.9 1.1
         End
         Animation               = CHRA
            AnimationName         = GUTwrGrd_CHRB
            AnimationMode         = ONCE
            AnimationSpeedFactorRang e = 0.9 1.1
         End
         Animation               = CHRA
            AnimationName         = GUTwrGrd_CHRC
            AnimationMode         = ONCE
            AnimationSpeedFactorRang e = 0.9 1.1
         End
         Flags                  = RESTART_ANIM_WHEN_COMPLE TE
      End
      
      AnimationState               = SELECTED
         StateName               = STATE_Selected
         
         ShareAnimation            = Yes
         Animation               = ATNB
            AnimationName         = GUTwrGrd_ATNB
            AnimationMode         = LOOP
         End
         BeginScript
            Prev = CurDrawablePrevAnimation State()
            if Prev == "STATE_Planted" then CurDrawableSetTransition AnimState("TRANS_Unplant") end
         EndScript
      End

//======== IDLE

      AnimationState               = ALTERNATE_FORMATION PORCUPINE   //   aka Porcupine formation
         StateName               = STATE_Planted
         
         //ShareAnimation            = Yes
         Animation               = IDLB
            AnimationName         = GUTwrGrd_PLTB
            AnimationMode         = LOOP
         End
         BeginScript
            Prev = CurDrawablePrevAnimation State()
            if Prev ~= "STATE_SelectedAlternateF ormation" and Prev ~= "STATE_Planted" and Prev ~= "TRANS_Plant" then CurDrawableSetTransition AnimState("TRANS_Plant") end
         EndScript
      End
      IdleAnimationState
         StateName               = STATE_Idle
         Animation               = IDLB
            AnimationName         = GUTwrGrd_IDLB
            AnimationMode         = ONCE
            AnimationBlendTime      = 15
            AnimationSpeedFactorRang e = 0.8 1.2
         End
         Animation               = IDLC
            AnimationName         = GUTwrGrd_IDLC
            AnimationMode         = ONCE
            AnimationBlendTime      = 9
            AnimationSpeedFactorRang e = 0.8 1.2
         End
         Animation               = IDLD
            AnimationName         = GUTwrGrd_IDLD
            AnimationMode         = ONCE
            AnimationBlendTime      = 9
            AnimationSpeedFactorRang e = 0.8 1.2
         End
         Animation               = IDLE
            AnimationName         = GUTwrGrd_IDLE
            AnimationMode         = ONCE
            AnimationBlendTime      = 9
            AnimationSpeedFactorRang e = 0.8 1.2
         End
         BeginScript
            Prev = CurDrawablePrevAnimation State()
            if Prev == "STATE_Planted" then CurDrawableSetTransition AnimState("TRANS_Unplant") end
         EndScript
      End
      
//-------------------------------------------------------------------------------------------------------------
   End
   
    #include "..\..\..\includes\StunDrawModuleSmall.inc"

   // ***DESIGN parameters ***
   Side       = Men
   EditorSorting    = UNIT
   ThreatLevel    = 1.0
   ThingClass    = HORDE_UNIT
   CommandPoints    = 5      ; originally 4
   BountyValue    = GONDOR_TOWERGUARD_BOUNTY _VALUE

   TransportSlotCount = TRANSPORTSLOTCOUNT_UNIT
   WeaponSet
      Conditions = None
      Weapon = PRIMARY    GondorTowerShieldGuardSw ord
      AutoChooseSources = PRIMARY FROM_PLAYER FROM_SCRIPT FROM_AI
   End
//   WeaponSet
//      Conditions = PLAYER_UPGRADE
//      Weapon = PRIMARY   GondorTowerShieldGuardSw ordUpgraded
//      AutoChooseSources = PRIMARY FROM_PLAYER FROM_SCRIPT FROM_AI
//   End
   
   
   ArmorSet
      Conditions      = None
      Armor           = TowerGuardArmor
      DamageFX        = NormalDamageFX
   End
   
   ArmorSet
      Conditions   = PLAYER_UPGRADE
      Armor      = TowerGuardHeavyArmor
      DamageFX   = NormalDamageFX
   End
   
   VisionRange = GONDOR_TOWERGUARD_VISION _RANGE
   ShroudClearingRange = SHROUD_CLEAR_STANDARD
   
   VisionSide = 35%
   VisionRear = 25%
   
   MaxVisionBonusPercent = 300%
   VisionBonusTestRadius = 200
   VisionBonusPercentPerFoo t = 2.0%

   DisplayName = OBJECT:GondorTowerShieldGuard
   CrushableLevel = 0  //What am I?:        0 = for infantry, 1 = for trees, 2 = general vehicles

   CrushRevengeWeapon = SuperInfantryCrushReveng e
   
   CommandSet = GondorTowerShieldGuardCo mmandSet


   // *** AUDIO Parameters ***//

   ;VoiceAmbushed            =   TowerGuardVoiceAmbushed     OBSOLETE VOICE
   VoiceAttack            =   TowerGuardVoiceAttack
   VoiceAttackCharge         =   TowerGuardVoiceAttackCha rge
   VoiceAttackMachine         =   TowerGuardVoiceAttack
   VoiceAttackStructure         =   TowerGuardVoiceAttackBui lding
   VoiceEnterStateAttack         =   TowerGuardVoiceEnterStat eAttack
   VoiceEnterStateAttackCha rge      =   TowerGuardVoiceEnterStat eAttackCharge
   VoiceEnterStateAttackMac hine      =   TowerGuardVoiceEnterStat eAttackBuilding
   VoiceEnterStateAttackStr ucture      =   TowerGuardVoiceEnterStat eAttackBuilding
   VoiceCreated            =   TowerGuardVoiceSalute      //GondorSoldierVoiceCreated
   VoiceFullyCreated         =   TowerGuardVoiceSalute
   VoiceMove            =   TowerGuardVoiceMove
   VoiceMoveToCamp            =   TowerGuardVoiceMoveCamp
   VoiceMoveWhileAttacking         =   TowerGuardVoiceDisengage
   VoiceEnterStateMove         =   TowerGuardVoiceEnterStat eMove
   VoiceEnterStateMoveToCam p      =   TowerGuardVoiceEnterStat eMoveCamp
   VoiceEnterStateMoveWhile Attacking   =   TowerGuardVoiceEnterStat eDisengage
   VoicePriority            =    56
   VoiceRetreatToCastle         =   TowerGuardVoiceRetreat
   VoiceEnterStateRetreatTo Castle      =   TowerGuardVoiceEnterStat eRetreat
   VoiceSelect            =   TowerGuardVoiceSelectMS
   VoiceSelectBattle         =   TowerGuardVoiceSelectBat tle   //GondorSoldierVoiceSelect    //GondorSoldierVoiceSelectBattle
   VoiceGuard         = TowerGuardVoiceMove

   SoundImpact            =   ImpactHorse

   CrowdResponseKey = GoodMen

   UnitSpecificSounds
      VoiceGarrison         =    TowerGuardVoiceGarrison
      VoiceEnterUnitElvenTrans portShip   = TowerGuardVoiceMove
      VoiceInitiateCaptureBuil ding      = TowerGuardVoiceMove
   End

    #include "..\..\..\includes\StandardUnitEvaEvents.inc"

   ClientBehavior = ModelConditionAudioLoopC lientBehavior ModuleTag_foo
      ModelCondition = Required:RAISING_FLAG         Excluded:DYING ENGAGED   Sound:EmotionMenGoodCompilatio nBFME1and2VoxTauntSingle sLoop
   End

   // Tie into LargeGroupAudio system
   Behavior = LargeGroupAudioUpdate ModuleTag_LGAU
      Key = Humanoid_Male Man Man_Male Unit Infantry Gondor_Guard
   End

   ClientBehavior = AnimationSoundClientBeha vior ModuleTag_AnimAudioBehav ior
      MaxUpdateRangeCap = 800
      AnimationSound = Sound:TauntHitShieldPitchShift ed   Animation:GUTwrGrd_SKL.GUTwrGrd_TN TB   Frames: 23 43
      AnimationSound = Sound:BodyFallGeneric1      Animation:GUTWRGRD_SKL.GUTWRGRD_DI EA   Frames:30 51
      AnimationSound = Sound:BodyFallGeneric1      Animation:GUTWRGRD_SKL.GUTWRGRD_DI EB   Frames:57
      AnimationSound = Sound:BodyFallGeneric1      Animation:GUTWRGRD_SKL.GUTWRGRD_DI EC   Frames:38
      AnimationSound = Sound:BodyFallSoldier      Animation:GUTWRGRD_SKL.GUTWRGRD_LN DA   Frames:4
      AnimationSound = Sound:BodyFallSoldier      Animation:GUTwrGrd_SKL.GUTwrGrd_LN DB   Frames:2
   End

   // *** ENGINEERING Parameters ***
   RadarPriority = UNIT
   KindOf = PRELOAD SELECTABLE CAN_CAST_REFLECTIONS INFANTRY PATH_THROUGH_EACH_OTHER SCORE THROWN_OBJECT GRAB_AND_DROP
   
   Body = ActiveBody ModuleTag_02
      CheerRadius      = EMOTION_CHEER_RADIUS
      MaxHealth         = GONDOR_TOWERGUARD_HEALTH             
      MaxHealthDamaged  = GONDOR_TOWERGUARD_HEALTH _DAMAGED
      BurningDeathBehavior = Yes
      BurningDeathFX       = FX_InfantryBurningFlame
   End

   Behavior = WeaponSetUpgrade WeaponSetUpgradeModuleTa g
      TriggeredBy = Upgrade_GondorForgedBlad es
   End

   Behavior = ArmorUpgrade ArmorUpgradeModuleTag
      TriggeredBy = Upgrade_GondorHeavyArmor
       //KillArmorUpgrade = Yes //This cancels any previous armor upgrade.
       ArmorSetFlag         = PLAYER_UPGRADE
   End
   
   //-----------------------------------------------------------------------
   //
   //   Sub objects
   //
   Behavior = SubObjectsUpgrade Armor_Upgrade
      TriggeredBy      = Upgrade_GondorHeavyArmor
      UpgradeTexture   = GUTowrGrd.tga 0 GUTowrGrd_HA.tga
      UpgradeTexture   = GUTowrGrd_L.tga 0 GUTowrGrd_HA.tga
      RecolorHouse   = Yes
      ExcludeSubobjects = Forged_Blade
   End
   
   Behavior = SubObjectsUpgrade ForgedBlade_Upgrade
      TriggeredBy      = Upgrade_GondorForgedBlad es
      ShowSubObjects   = Forged_Blade
   End      
   //-----------------------------------------------------------------------
   
   Behavior = AIUpdateInterface ModuleTag_03
      AutoAcquireEnemiesWhenId le   = Yes ATTACK_BUILDINGS
      MoodAttackCheckRate         = 500
      AILuaEventsList            = GondorFighterFunctions
      AttackPriority            =    AttackPriority_Spearman
      BurningDeathTime         =   BURNINGDEATH_DURATION_IN FANTRY
   End

   LocomotorSet
      Locomotor = GondorTowerShieldGuardLo comotor
      Condition = SET_NORMAL
      Speed     = NORMAL_FOOT_SLOW_MEMBER_ SPEED   
   End

   LocomotorSet
      Locomotor = GondorTowerShieldGuardDe ployedLocomotor
      Condition = SET_NORMAL_UPGRADED
      Speed     = NORMAL_FOOT_SLOW_MEMBER_ SPEED   
   End
   
   LocomotorSet
      Locomotor = GondorTowerShieldGuardLo comotor
      Condition = SET_COMBO
      Speed     = NORMAL_FOOT_SLOW_MEMBER_ SPEED
   End
   
   LocomotorSet
      Locomotor = BurningDeathLocomotorInf antry
      Condition = SET_BURNINGDEATH
      Speed     = BURNINGDEATH_WANDERSPEED _INFANTRY
   End

   Behavior = PhysicsBehavior ModuleTag_04
      GravityMult = 1.0
      ShockStunnedTimeLow      = 1400   //msec
      ShockStunnedTimeHigh   = 2400   //msec
      ShockStandingTime      = 1333   //msec
   End
   
   Behavior = SlowDeathBehavior ModuleTag_05
      DeathTypes = ALL -KNOCKBACK -FADED
      SinkDelay = 3000
      SinkRate = 0.40     // in Dist/Sec
      DestructionDelay = 8000
      Sound = INITIAL HumanVoiceDie// TowerGuardVoiceDie
   End
   
   Behavior = SlowDeathBehavior ModuleTag_FadeDeath
      DeathTypes = NONE +FADED
      SinkDelay = 3000
      SinkRate = 0.40     // in Dist/Sec
      DestructionDelay = 8000
      Sound = INITIAL SpellGenericUnsummonFast erMS
   End

   Behavior = SquishCollide ModuleTag_06
      //nothing
   End
   
   Behavior = HordeMemberCollide ModuleTag_HMC
      //nothing
   End
   
   Behavior = SlowDeathBehavior ModuleTag_07
      // Same as normal death, but no sound (sound already played by SoundImpact = ... )
      DeathTypes = NONE +KNOCKBACK
      SinkDelay = 3000
      SinkRate = 0.40     // in Dist/Sec
      DestructionDelay = 8000
   End

   Behavior = BezierProjectileBehavior ModuleTag_08 // Module starts asleep, and wakes up when thrown.
      // To tweak a Bezier path
      FirstHeight = 24  // Height of Bezier control points above highest intervening terrain
      SecondHeight = 24
      FirstPercentIndent = 30% // Percentage of shot distance control points are placed
      SecondPercentIndent = 70%
      TumbleRandomly = Yes

      CrushStyle = Yes // I don't detonate, I just hit
      DieOnImpact = Yes
      BounceCount = 1   // When I hit the ground, I'll arc again
      BounceDistance = 40 // this far
      BounceFirstHeight = 24  // Height of Bezier control points above highest intervening terrain
      BounceSecondHeight = 24
      BounceFirstPercentIndent = 20% // Percentage of shot distance control points are placed
      BounceSecondPercentInden t = 80%

      GroundHitFX       = FX_ThrownRockGroundHit
      GroundBounceFX    = FX_ThrownRockBounceHit
   End

   // The below is a good start to the actual implementation of the unit,
   // if someone wants to revert back to the exact state
   
   //Normal mode (shield is raised and unit is able to move normally)
//  Behavior = GrantUpgradeCreate ModuleTag_09
//    UpgradeToGrant = Upgrade_RaiseShield
//  End
//  Behavior = ModelConditionUpgrade ModuleTag_10
//    TriggeredBy = Upgrade_RaiseShield
//    RemovesUpgrades = Upgrade_PlantShield
//    RemoveConditionFlags = DEPLOYED
//  End
//  Behavior = LocomotorSetUpgrade ModuleTag_11
//    TriggeredBy = Upgrade_RaiseShield
//    RemovesUpgrades = Upgrade_PlantShield
//    KillLocomotorUpgrade = Yes //Removes the PlantShield locomotor.
//  End
//  Behavior = ArmorUpgrade ModuleTag_12
//    TriggeredBy = Upgrade_RaiseShield
//    RemovesUpgrades = Upgrade_PlantShield
//    KillArmorUpgrade = Yes //This cancels any previous armor upgrade.
//  End
//
//  //Defensive mode (shield is planted -- the unit can move but much more slowly)
//  Behavior = ModelConditionUpgrade ModuleTag_13
//    TriggeredBy = Upgrade_PlantShield
//    RemovesUpgrades = Upgrade_RaiseShield
//    AddConditionFlags = DEPLOYED
//  End
//  Behavior = LocomotorSetUpgrade ModuleTag_14
//    TriggeredBy = Upgrade_PlantShield
//    RemovesUpgrades = Upgrade_RaiseShield
//  End
//  Behavior = ArmorUpgrade ModuleTag_15
//    TriggeredBy = Upgrade_PlantShield
//    RemovesUpgrades = Upgrade_RaiseShield
//  End

   Geometry = CYLINDER
   GeometryMajorRadius = 8.0
   GeometryMinorRadius = 8.0
   GeometryHeight = 19.2
   GeometryIsSmall = Yes

    Shadow = SHADOW_DECAL
    ShadowSizeX = 19//
    ShadowSizeY = 19//
    ShadowTexture = ShadowI//
End

//------------------------------------------------------------------------------



thepinking:
Es ist völlig klar das in der Beschreibung "Gondor Turmwache" steht, wenn du den Text noch nicht geändert hast.
Desweiteren ist der Fehler warum keine Einheit kommt, der selbe den "Hexenprinz von Angmar" auf der vorseite begannen hat, weswegen ich einfach nochmal meine Antwort von damals Poste (mit einer kleinen korektur in Grün) :


--- Zitat von: thepinking am 25. Sep 2011, 20:45 ---Sieht soweit gut aus, bis auf einen Fehler:
Der InitialPayload!
Der bestimmt welche Einheiten und wieviele in der Horde sind. Bei dir ist es das Object MorgulSoldier GondorPikemanHorde . Was fällt dir auf? Die Horde steckt 15 mal sich selbst rein. Jede einzelne dieser 15 Horden beinhaltet danach wieder 15 mal sich selbst usw. Also eine Endlosschleife.

--- Ende Zitat ---

Besser also das aus und es müsste funktionieren.
Übrigens hab ich grad im Einheiten Tutorial nachgeguckt, da steht es richtig drinnen.

Zemdreg:
Ok, der Speerträger ist jetzt im Spiel, nur der Speer ist unsichtbar. Wo finde ich die Textur vom Turmwachenspeer?

Zemdreg:
Jetzt funktioniert alles, ich musste nur ein Leerzeichen löschen. Danke an alle für die Hilfe.

Navigation

[0] Themen-Index

[#] Nächste Seite

[*] Vorherige Sete

Zur normalen Ansicht wechseln