-----------------------------------------------------------------------------
--  File     : /units/XEL0305/XEL0305_unit.bp
--
--  Author(s): EbolaSoup, Resin Smoker, Optimus Prime, Vissroid 
--
--  Summary  : UEF Armored Assault Bot (With Hiro Beam Cannon)
--
--  Copyright © 2011 4DC_V0.8  All rights reserved.
-----------------------------------------------------------------------------
UnitBlueprint {
    AI = {
        TargetBones = {
            'Turret',
            'Torso',
        },
    },
    Audio = {
        AmbientMove = Sound {
            Bank = 'XEL',
            Cue = 'XEL0305_Move_Loop',
            LodCutoff = 'UnitMove_LodCutoff',
        },
        Killed = Sound {
            Bank = 'UELDestroy',
            Cue = 'UEL_Destroy_Huge',
            LodCutoff = 'UnitMove_LodCutoff',
        },
        ShieldOff = Sound {
            Bank = 'UEL',
            Cue = 'UEL0303_Shield_Activate',
            LodCutoff = 'UnitMove_LodCutoff',
        },
        ShieldOn = Sound {
            Bank = 'UEL',
            Cue = 'UEL0303_Shield_Activate',
            LodCutoff = 'UnitMove_LodCutoff',
        },
        StartMove = Sound {
            Bank = 'XEL',
            Cue = 'XEL0305_Move_Start',
            LodCutoff = 'UnitMove_LodCutoff',
        },
        StopMove = Sound {
            Bank = 'XEL',
            Cue = 'XEL0305_Move_Stop',
            LodCutoff = 'UnitMove_LodCutoff',
        },
        UISelection = Sound {
            Bank = 'Interface',
            Cue = 'UEF_Select_Bot',
            LodCutoff = 'UnitMove_LodCutoff',
        },
    },
    Buffs = {
        Regen = {
            Level1 = 3,
            Level2 = 6,
            Level3 = 9,
            Level4 = 12,
            Level5 = 15,
        },
    },
    BuildIconSortPriority = 30,
    Categories = {
        'PRODUCTFA',
        'SELECTABLE',
        'BUILTBYTIER3FACTORY',
        'UEF',
        'MOBILE',
        'LAND',
        'TECH3',
        'DIRECTFIRE',
        'VISIBLETORECON',
        'RECLAIMABLE',
        'BOT',
        'OVERLAYDIRECTFIRE',
    },
    Defense = {
        AirThreatLevel = 0,
        ArmorType = 'Normal',
        EconomyThreatLevel = 0,
        Health = 9300,
        MaxHealth = 9300,
        RegenRate = 0,
        SubThreatLevel = 0,
        SurfaceThreatLevel = 27,
    },
    Description = '<LOC xel0305_desc>Armored Assault Bot',
    Display = {
        Abilities = {
            '<LOC ability_amphibious>Amphibious',
            'Customizable',
        },
        AnimationDeath = {     
            {
                Animation = '/units/xel0305/xel0305_adeath.sca',
                Weight = 33,
            },
            {
                Animation = '/units/xel0305/xel0305_adeath02.sca',
                Weight = 33,
            },
            {
                Animation = '/units/xel0305/xel0305_adeath03.sca',
                Weight = 33,
            },
        },
        AnimationWalk = '/mods/4DC_V0.8/hook/units/XEL0305/xel0305_awalk_4dc.sca',      
        AnimationWalkRate = 2,
        Mesh = {
            IconFadeInZoom = 130,
            LODs = {               
                {  
                    MeshName = '/mods/4DC_V0.8/hook/units/xel0305/xel0305_lod0.scm',
	                AlbedoName = '/units/xel0305/xel0305_Albedo.dds',
	                NormalsName = '/units/xel0305/xel0305_normalsTS.dds',
	                SpecularName = '/units/xel0305/xel0305_SpecTeam.dds',
	                LODCutoff = 130,
	                Scrolling = true,
	                ShaderName = 'Unit',	                
                },
                {
         	        MeshName = '/units/xel0305/xel0305_lod1.scm',
         	        AlbedoName = '/units/xel0305/xel0305_lod1_albedo.dds',
         	        NormalsName = '/units/xel0305/xel0305_lod1_normalsTS.dds',
         	        SpecularName = '/units/xel0305/xel0305_lod1_specteam.dds',
         	        LODCutoff = 215,
         	        ShaderName = 'Unit',         	        
                },                                            
            },           
        },        
        MovementEffects = {
            Land = {
                Effects = {
                    {
                        Bones = {
                            'B01_R_Leg',
                            'B01_L_Leg',
                        },
                        Type = 'GroundKickup01',
                    },
                },
            },
        },
        PlaceholderMeshName = 'UXL0001',
        SpawnRandomRotation = false,
        TransportAnimation = {
            {    
                Animation = '/mods/4DC_V0.8/hook/units/XEL0305/XEL0305_Afold_4dc.sca',
                Weight = 100,
            },
        },
        UniformScale = 0.063,
    },
    Economy = {
        BuildCostEnergy = 14000,
        BuildCostMass = 1280,
        BuildTime = 4800,
        TeleportEnergyMod = 0.15,
        TeleportMassMod = 1,
        TeleportTimeMod = 0.01,
    },
    General = {
        Category = 'Direct Fire',
        Classification = 'RULEUC_MilitaryVehicle',
        CommandCaps = {
            RULEUCC_Attack = true,
            RULEUCC_CallTransport = true,
            RULEUCC_Capture = false,
            RULEUCC_Guard = true,
            RULEUCC_Move = true,
            RULEUCC_Nuke = false,
            RULEUCC_Patrol = true,
            RULEUCC_Pause = false,
            RULEUCC_Reclaim = false,
            RULEUCC_Repair = false,
            RULEUCC_RetaliateToggle = true,
            RULEUCC_Stop = true,
            RULEUCC_Transport = false,
        },
        FactionName = 'UEF',
        Icon = 'amph',
        TechLevel = 'RULEUTL_Secret',
        UnitName = '<LOC xel0305_name>Percival',
        UnitWeight = 1,
    },
    Intel = {
        VisionRadius = 26,
        WaterVisionRadius = 26,
    },
    Interface = {
        HelpText = '<LOC xel0305_help>Armored Assault Bot',
    },
    LifeBarHeight = 0.075,
    LifeBarOffset = 0.35,
    LifeBarSize = 1,
    Physics = {
        BankingSlope = 0,
        BuildOnLayerCaps = {
            LAYER_Air = false,
            LAYER_Land = true,
            LAYER_Orbit = false,
            LAYER_Seabed = true,
            LAYER_Sub = false,
            LAYER_Water = false,
        },
        DragCoefficient = 0.2,
        MaxAcceleration = 2,
        MaxBrake = 2,
        MaxSpeed = 2,
        MaxSpeedReverse = 0,
        MaxSteerForce = 10,
        MeshExtentsX = 1.1,
        MeshExtentsY = 1.5,
        MeshExtentsZ = 2.4,
        MinSpeedPercent = 0,
        MotionType = 'RULEUMT_Amphibious',
        RotateOnSpot = false,
        StandUpright = true,
        TurnRadius = 5,
        TurnRate = 60,
    },
    SelectionSizeX = 0.55,
    SelectionSizeZ = 0.5,
    SelectionThickness = 0.7,
    SizeX = 0.8,
    SizeY = 1.6,
    SizeZ = 0.8,
    StrategicIconName = 'icon_bot3_directfire',
    ModIconName = '4dc',      
    StrategicIconSortPriority = 115,
    Transport = {
        CanFireFromTransport = false,
        TransportClass = 3,
    },
    Veteran = {
        Level1 = 9,
        Level2 = 18,
        Level3 = 27,
        Level4 = 36,
        Level5 = 45,
    },
	
	Enhancements = {
		Slots = {
			Offence = {
				name = '<LOC _Offence>',
				x = 5,
				y = 10,
			},
		},
		
		PlasmaLance = {
			BuildCostEnergy = 1000,
			BuildCostMass = 100,
			BuildTime = 30,			
			Icon = 'acu',
			Name = 'Plasma Lance',
			Slot = 'Offence',								
			UpgradeUnitAmbientBones = {
				'Muzzle_Beam',
			},
		},
		
		PlasmaLanceRemove = {
			BuildCostEnergy = 1,
			BuildCostMass = 1,
			BuildTime = 0.1,
			Icon = 'acu',
			Name = 'Remove Plasma Lance',
			Prerequisite = 'PlasmaLance',
			RemoveEnhancements = {
				'PlasmaLance',
				'PlasmaLanceRemove',
			},
			Slot = 'Offence',
		},
    },    
	
    Weapon = {
        {
            AboveWaterFireOnly = true,
            AboveWaterTargetsOnly = true,
            Audio = {
                Fire = Sound {
                    Bank = 'XEL_Weapons',
                    Cue = 'XEL0305_Plasma_Cannon',
                    LodCutoff = 'Weapon_LodCutoff',
                },
            },
            BallisticArc = 'RULEUBA_LowArc',
            CollideFriendly = false,
            Damage = 1600,
            DamageRadius = 0,
            DamageType = 'Normal',
            DisplayName = 'Ionized Plasma Cannon',
            FireTargetLayerCapsTable = {
                Land = 'Land|Water|Seabed',
                Seabed = 'Land|Water|Seabed',
                Water = 'Land|Water|Seabed',
            },
            FiringTolerance = 2,
            Label = 'PlasmaCannon01',
            MaxRadius = 35,
            MuzzleSalvoDelay = 0,
            MuzzleSalvoSize = 1,
            MuzzleVelocity = 35,
            NoPause = true,
            ProjectileId = '/projectiles/TDFIonizedPlasmaGatlingCannon01/TDFIonizedPlasmaGatlingCannon01_proj.bp',
            ProjectileLifetimeUsesMultiplier = 1.15,
            ProjectilesPerOnFire = 1,
            RackBones = {
                {
                    MuzzleBones = {
                        'Muzzle',
                    },
                    RackBone = 'Turret_Barrel',
                },
            },
            RackFireTogether = false,
            RackRecoilDistance = -2,
            RackReloadTimeout = 0,
            RackSalvoChargeTime = 0,
            RackSalvoReloadTime = 0,
            RackSalvoSize = 1,
            RackSlavedToTurret = false,
            RangeCategory = 'UWRC_DirectFire',
            RateOfFire = 0.25,
            TargetCheckInterval = 0.25,
            TargetPriorities = {
                'SPECIALHIGHPRI',
                'TECH3 MOBILE',
                'TECH2 MOBILE',
                'TECH1 MOBILE',
                'STRUCTURE DEFENSE',
                'SPECIALLOWPRI',
                'ALLUNITS',
            },
            TargetRestrictDisallow = 'UNTARGETABLE',
            TurretBoneMuzzle = 'Muzzle',
            TurretBonePitch = 'Turret_Barrel',
            TurretBoneYaw = 'Turret',
            TurretDualManipulators = false,
            TurretPitch = 10,
            TurretPitchRange = 90,
            TurretPitchSpeed = 30,
            TurretYaw = 0,
            TurretYawRange = 180,
            TurretYawSpeed = 60,
            Turreted = true,
            UseFiringSolutionInsteadOfAimBone = true,
            WeaponCategory = 'Direct Fire',
            WeaponRepackTimeout = 0,
            WeaponUnpacks = false,
        },
        {
            AboveWaterTargetsOnly = true,
            AimsStraightOnDisable = true,
            Audio = {
                Fire = Sound {
                    Bank = 'XES_Weapons',
                    Cue = 'XES0307_Plasma_Cannon',
                    LodCutoff = 'Weapon_LodCutoff',
                },
            },
            AutoInitiateAttackCommand = false,
            BallisticArc = 'RULEUBA_None',
            BeamCollisionDelay = 0.1,
            BeamLifetime = 0.5,
            CollideFriendly = false,
            Damage = 150,
            DamageRadius = 0.25,
            DamageType = 'Normal',
            DisplayName = 'Hiro Plasma Cannon',
            FireTargetLayerCapsTable = {
                Land = 'Land|Water|Seabed',
                Seabed = 'Land|Water|Seabed',
                Water = 'Land|Water|Seabed',
            },
            FiringTolerance = 2,
            Label = 'PlasmaLance',
            MaxRadius = 20,
            MuzzleChargeDelay = 0,
            MuzzleSalvoDelay = 0.75,
            MuzzleSalvoSize = 3,
            NeedPrep = true,
            NotExclusive = true,
            PrefersPrimaryWeaponTarget = false,              
            RackBones = {
                {
                    MuzzleBones = {
                        'Muzzle_Beam',
                    },
                    RackBone = 'Muzzle_Beam',
                },
            },
            RackFireTogether = true,
            RackRecoilDistance = 0,
            RackReloadTimeout = 0,
            RackSalvoChargeTime = 0,
            RackSalvoReloadTime = 0,
            RackSalvoSize = 1,
            RackSlavedToTurret = false,
            RangeCategory = 'UWRC_DirectFire',
            RateOfFire = 0.25,
            SlavedToBody = true,
            SlavedToBodyArcRange = 135,
            TargetCheckInterval = 1,
            TargetPriorities = {
                'SPECIALHIGHPRI',
                'NAVAL MOBILE',
                'SPECIALLOWPRI',
                'ALLUNITS',
            },
            TargetRestrictDisallow = 'UNTARGETABLE',
            TrackingRadius = 1.125,
            TurretBoneMuzzle = 'Muzzle_Beam',
            TurretBonePitch = 'Muzzle_Beam',
            TurretBoneYaw = 'Muzzle_Beam',
            TurretDualManipulators = false,
            TurretPitch = 0,
            TurretPitchRange = 20,
            TurretPitchSpeed = 30,
            TurretYaw = 0,
            TurretYawRange = 20,
            TurretYawSpeed = 30,
            Turreted = true,
            WeaponCategory = 'Direct Fire',
            WeaponRepackTimeout = 0,
            WeaponUnpacks = false,
        },        
    },
    Wreckage = {
        Blueprint = '/props/DefaultWreckage/DefaultWreckage_prop.bp',
        EnergyMult = 0,
        HealthMult = 0.9,
        MassMult = 0.9,
        ReclaimTimeMultiplier = 1,
        WreckageLayers = {
            Air = false,
            Land = true,
            Seabed = false,
            Sub = false,
            Water = false,
        },
    },
}