示例#1
0
 public override object Remove(Type compCls)
 {
     if (compCls == typeof(AreaTriggerComponent))
     {
         this.AreaTriggerComp = null;
     }
     else if (compCls == typeof(ArmoryComponent))
     {
         this.ArmoryComp = null;
     }
     else if (compCls == typeof(AssetComponent))
     {
         this.AssetComp = null;
     }
     else if (compCls == typeof(AttackerComponent))
     {
         this.AttackerComp = null;
     }
     else if (compCls == typeof(BarracksComponent))
     {
         this.BarracksComp = null;
     }
     else if (compCls == typeof(BoardItemComponent))
     {
         this.BoardItemComp = null;
     }
     else if (compCls == typeof(BuildingAnimationComponent))
     {
         this.BuildingAnimationComp = null;
     }
     else if (compCls == typeof(BuildingComponent))
     {
         this.BuildingComp = null;
     }
     else if (compCls == typeof(CantinaComponent))
     {
         this.CantinaComp = null;
     }
     else if (compCls == typeof(ChampionComponent))
     {
         this.ChampionComp = null;
     }
     else if (compCls == typeof(CivilianComponent))
     {
         this.CivilianComp = null;
     }
     else if (compCls == typeof(ClearableComponent))
     {
         this.ClearableComp = null;
     }
     else if (compCls == typeof(DamageableComponent))
     {
         this.DamageableComp = null;
     }
     else if (compCls == typeof(DefenderComponent))
     {
         this.DefenderComp = null;
     }
     else if (compCls == typeof(DefenseLabComponent))
     {
         this.DefenseLabComp = null;
     }
     else if (compCls == typeof(DroidComponent))
     {
         this.DroidComp = null;
     }
     else if (compCls == typeof(DroidHutComponent))
     {
         this.DroidHutComp = null;
     }
     else if (compCls == typeof(SquadBuildingComponent))
     {
         this.SquadBuildingComp = null;
     }
     else if (compCls == typeof(NavigationCenterComponent))
     {
         this.NavigationCenterComp = null;
     }
     else if (compCls == typeof(FactoryComponent))
     {
         this.FactoryComp = null;
     }
     else if (compCls == typeof(FleetCommandComponent))
     {
         this.FleetCommandComp = null;
     }
     else if (compCls == typeof(FollowerComponent))
     {
         this.FollowerComp = null;
     }
     else if (compCls == typeof(GameObjectViewComponent))
     {
         this.GameObjectViewComp = null;
     }
     else if (compCls == typeof(GeneratorComponent))
     {
         this.GeneratorComp = null;
     }
     else if (compCls == typeof(GeneratorViewComponent))
     {
         this.GeneratorViewComp = null;
     }
     else if (compCls == typeof(HealerComponent))
     {
         this.HealerComp = null;
     }
     else if (compCls == typeof(HealthComponent))
     {
         this.HealthComp = null;
     }
     else if (compCls == typeof(TroopShieldComponent))
     {
         this.TroopShieldComp = null;
     }
     else if (compCls == typeof(TroopShieldViewComponent))
     {
         this.TroopShieldViewComp = null;
     }
     else if (compCls == typeof(TroopShieldHealthComponent))
     {
         this.TroopShieldHealthComp = null;
     }
     else if (compCls == typeof(HealthViewComponent))
     {
         this.HealthViewComp = null;
     }
     else if (compCls == typeof(HQComponent))
     {
         this.HQComp = null;
     }
     else if (compCls == typeof(KillerComponent))
     {
         this.KillerComp = null;
     }
     else if (compCls == typeof(LootComponent))
     {
         this.LootComp = null;
     }
     else if (compCls == typeof(MeterShaderComponent))
     {
         this.MeterShaderComp = null;
     }
     else if (compCls == typeof(OffenseLabComponent))
     {
         this.OffenseLabComp = null;
     }
     else if (compCls == typeof(PathingComponent))
     {
         this.PathingComp = null;
     }
     else if (compCls == typeof(SecondaryTargetsComponent))
     {
         this.SecondaryTargetsComp = null;
     }
     else if (compCls == typeof(ShieldBorderComponent))
     {
         this.ShieldBorderComp = null;
     }
     else if (compCls == typeof(ShieldGeneratorComponent))
     {
         this.ShieldGeneratorComp = null;
     }
     else if (compCls == typeof(SizeComponent))
     {
         this.SizeComp = null;
     }
     else if (compCls == typeof(ShooterComponent))
     {
         this.ShooterComp = null;
     }
     else if (compCls == typeof(StarportComponent))
     {
         this.StarportComp = null;
     }
     else if (compCls == typeof(StateComponent))
     {
         this.StateComp = null;
     }
     else if (compCls == typeof(StorageComponent))
     {
         this.StorageComp = null;
     }
     else if (compCls == typeof(SupportComponent))
     {
         this.SupportComp = null;
     }
     else if (compCls == typeof(SupportViewComponent))
     {
         this.SupportViewComp = null;
     }
     else if (compCls == typeof(TacticalCommandComponent))
     {
         this.TacticalCommandComp = null;
     }
     else if (compCls == typeof(ChampionPlatformComponent))
     {
         this.ChampionPlatformComp = null;
     }
     else if (compCls == typeof(TeamComponent))
     {
         this.TeamComp = null;
     }
     else if (compCls == typeof(TrackingComponent))
     {
         this.TrackingComp = null;
     }
     else if (compCls == typeof(TrackingGameObjectViewComponent))
     {
         this.TrackingGameObjectViewComp = null;
     }
     else if (compCls == typeof(TransformComponent))
     {
         this.TransformComp = null;
     }
     else if (compCls == typeof(TransportComponent))
     {
         this.TransportComp = null;
     }
     else if (compCls == typeof(TroopComponent))
     {
         this.TroopComp = null;
     }
     else if (compCls == typeof(TurretBuildingComponent))
     {
         this.TurretBuildingComp = null;
     }
     else if (compCls == typeof(TurretShooterComponent))
     {
         this.TurretShooterComp = null;
     }
     else if (compCls == typeof(WalkerComponent))
     {
         this.WalkerComp = null;
     }
     else if (compCls == typeof(WallComponent))
     {
         this.WallComp = null;
     }
     else if (compCls == typeof(BuffComponent))
     {
         this.BuffComp = null;
     }
     else if (compCls == typeof(TrapComponent))
     {
         this.TrapComp = null;
     }
     else if (compCls == typeof(TrapViewComponent))
     {
         this.TrapViewComp = null;
     }
     else if (compCls == typeof(HousingComponent))
     {
         this.HousingComp = null;
     }
     else if (compCls == typeof(SpawnComponent))
     {
         this.SpawnComp = null;
     }
     return(base.Remove(compCls));
 }
示例#2
0
        protected override Entity AddComponentAndDispatchAddEvent(ComponentBase comp, Type compCls)
        {
            bool flag = false;

            if (comp is AreaTriggerComponent)
            {
                this.AreaTriggerComp = (AreaTriggerComponent)comp;
                flag = true;
            }
            if (comp is ArmoryComponent)
            {
                this.ArmoryComp = (ArmoryComponent)comp;
                flag            = true;
            }
            if (comp is AssetComponent)
            {
                this.AssetComp = (AssetComponent)comp;
                flag           = true;
            }
            if (comp is AttackerComponent)
            {
                this.AttackerComp = (AttackerComponent)comp;
                flag = true;
            }
            if (comp is BarracksComponent)
            {
                this.BarracksComp = (BarracksComponent)comp;
                flag = true;
            }
            if (comp is BoardItemComponent)
            {
                this.BoardItemComp = (BoardItemComponent)comp;
                flag = true;
            }
            if (comp is BuildingAnimationComponent)
            {
                this.BuildingAnimationComp = (BuildingAnimationComponent)comp;
                flag = true;
            }
            if (comp is BuildingComponent)
            {
                this.BuildingComp = (BuildingComponent)comp;
                flag = true;
            }
            if (comp is ChampionComponent)
            {
                this.ChampionComp = (ChampionComponent)comp;
                flag = true;
            }
            if (comp is CivilianComponent)
            {
                this.CivilianComp = (CivilianComponent)comp;
                flag = true;
            }
            if (comp is ClearableComponent)
            {
                this.ClearableComp = (ClearableComponent)comp;
                flag = true;
            }
            if (comp is DamageableComponent)
            {
                this.DamageableComp = (DamageableComponent)comp;
                flag = true;
            }
            if (comp is DefenderComponent)
            {
                this.DefenderComp = (DefenderComponent)comp;
                flag = true;
            }
            if (comp is DefenseLabComponent)
            {
                this.DefenseLabComp = (DefenseLabComponent)comp;
                flag = true;
            }
            if (comp is DroidComponent)
            {
                this.DroidComp = (DroidComponent)comp;
                flag           = true;
            }
            if (comp is DroidHutComponent)
            {
                this.DroidHutComp = (DroidHutComponent)comp;
                flag = true;
            }
            if (comp is SquadBuildingComponent)
            {
                this.SquadBuildingComp = (SquadBuildingComponent)comp;
                flag = true;
            }
            if (comp is NavigationCenterComponent)
            {
                this.NavigationCenterComp = (NavigationCenterComponent)comp;
                flag = true;
            }
            if (comp is FactoryComponent)
            {
                this.FactoryComp = (FactoryComponent)comp;
                flag             = true;
            }
            if (comp is CantinaComponent)
            {
                this.CantinaComp = (CantinaComponent)comp;
                flag             = true;
            }
            if (comp is FleetCommandComponent)
            {
                this.FleetCommandComp = (FleetCommandComponent)comp;
                flag = true;
            }
            if (comp is FollowerComponent)
            {
                this.FollowerComp = (FollowerComponent)comp;
                flag = true;
            }
            if (comp is GameObjectViewComponent)
            {
                this.GameObjectViewComp = (GameObjectViewComponent)comp;
                flag = true;
            }
            if (comp is GeneratorComponent)
            {
                this.GeneratorComp = (GeneratorComponent)comp;
                flag = true;
            }
            if (comp is GeneratorViewComponent)
            {
                this.GeneratorViewComp = (GeneratorViewComponent)comp;
                flag = true;
            }
            if (comp is HealerComponent)
            {
                this.HealerComp = (HealerComponent)comp;
                flag            = true;
            }
            if (comp is TroopShieldComponent)
            {
                this.TroopShieldComp = (TroopShieldComponent)comp;
                flag = true;
            }
            if (comp is TroopShieldViewComponent)
            {
                this.TroopShieldViewComp = (TroopShieldViewComponent)comp;
                flag = true;
            }
            if (comp is TroopShieldHealthComponent)
            {
                this.TroopShieldHealthComp = (TroopShieldHealthComponent)comp;
                flag = true;
            }
            if (comp is HealthComponent)
            {
                this.HealthComp = (HealthComponent)comp;
                flag            = true;
            }
            if (comp is HealthViewComponent)
            {
                this.HealthViewComp = (HealthViewComponent)comp;
                flag = true;
            }
            if (comp is HQComponent)
            {
                this.HQComp = (HQComponent)comp;
                flag        = true;
            }
            if (comp is KillerComponent)
            {
                this.KillerComp = (KillerComponent)comp;
                flag            = true;
            }
            if (comp is LootComponent)
            {
                this.LootComp = (LootComponent)comp;
                flag          = true;
            }
            if (comp is MeterShaderComponent)
            {
                this.MeterShaderComp = (MeterShaderComponent)comp;
                flag = true;
            }
            if (comp is OffenseLabComponent)
            {
                this.OffenseLabComp = (OffenseLabComponent)comp;
                flag = true;
            }
            if (comp is PathingComponent)
            {
                this.PathingComp = (PathingComponent)comp;
                flag             = true;
            }
            if (comp is SecondaryTargetsComponent)
            {
                this.SecondaryTargetsComp = (SecondaryTargetsComponent)comp;
                flag = true;
            }
            if (comp is ShieldBorderComponent)
            {
                this.ShieldBorderComp = (ShieldBorderComponent)comp;
                flag = true;
            }
            if (comp is ShieldGeneratorComponent)
            {
                this.ShieldGeneratorComp = (ShieldGeneratorComponent)comp;
                flag = true;
            }
            if (comp is SizeComponent)
            {
                this.SizeComp = (SizeComponent)comp;
                flag          = true;
            }
            if (comp is ShooterComponent)
            {
                this.ShooterComp = (ShooterComponent)comp;
                flag             = true;
            }
            if (comp is StarportComponent)
            {
                this.StarportComp = (StarportComponent)comp;
                flag = true;
            }
            if (comp is StateComponent)
            {
                this.StateComp = (StateComponent)comp;
                flag           = true;
            }
            if (comp is StorageComponent)
            {
                this.StorageComp = (StorageComponent)comp;
                flag             = true;
            }
            if (comp is SupportComponent)
            {
                this.SupportComp = (SupportComponent)comp;
                flag             = true;
            }
            if (comp is SupportViewComponent)
            {
                this.SupportViewComp = (SupportViewComponent)comp;
                flag = true;
            }
            if (comp is TacticalCommandComponent)
            {
                this.TacticalCommandComp = (TacticalCommandComponent)comp;
                flag = true;
            }
            if (comp is ChampionPlatformComponent)
            {
                this.ChampionPlatformComp = (ChampionPlatformComponent)comp;
                flag = true;
            }
            if (comp is TeamComponent)
            {
                this.TeamComp = (TeamComponent)comp;
                flag          = true;
            }
            if (comp is TrackingComponent)
            {
                this.TrackingComp = (TrackingComponent)comp;
                flag = true;
            }
            if (comp is TrackingGameObjectViewComponent)
            {
                this.TrackingGameObjectViewComp = (TrackingGameObjectViewComponent)comp;
                flag = true;
            }
            if (comp is TransformComponent)
            {
                this.TransformComp = (TransformComponent)comp;
                flag = true;
            }
            if (comp is TransportComponent)
            {
                this.TransportComp = (TransportComponent)comp;
                flag = true;
            }
            if (comp is TroopComponent)
            {
                this.TroopComp = (TroopComponent)comp;
                flag           = true;
            }
            if (comp is TurretBuildingComponent)
            {
                this.TurretBuildingComp = (TurretBuildingComponent)comp;
                flag = true;
            }
            if (comp is TurretShooterComponent)
            {
                this.TurretShooterComp = (TurretShooterComponent)comp;
                flag = true;
            }
            if (comp is WalkerComponent)
            {
                this.WalkerComp = (WalkerComponent)comp;
                flag            = true;
            }
            if (comp is WallComponent)
            {
                this.WallComp = (WallComponent)comp;
                flag          = true;
            }
            if (comp is BuffComponent)
            {
                this.BuffComp = (BuffComponent)comp;
                flag          = true;
            }
            if (comp is TrapComponent)
            {
                this.TrapComp = (TrapComponent)comp;
                flag          = true;
            }
            if (comp is TrapViewComponent)
            {
                this.TrapViewComp = (TrapViewComponent)comp;
                flag = true;
            }
            if (comp is HousingComponent)
            {
                this.HousingComp = (HousingComponent)comp;
                flag             = true;
            }
            if (comp is ScoutTowerComponent)
            {
                this.ScoutTowerComp = (ScoutTowerComponent)comp;
                flag = true;
            }
            if (comp is SpawnComponent)
            {
                this.SpawnComp = (SpawnComponent)comp;
                flag           = true;
            }
            if (!flag && compCls != null)
            {
                Service.Logger.Error("Invalid component add: " + compCls.Name);
            }
            return(base.AddComponentAndDispatchAddEvent(comp, compCls));
        }
    //Rebels
    public void setEquip(Vector4 v)
    {
        armory = GameObject.Find("Armory").GetComponent<ArmoryComponent>();

        items = this.GetComponent<InventoryComponent>();

        ManagerSystem managersys = (ManagerSystem) FindObjectOfType(typeof(ManagerSystem));

        GameObject prefab = managersys.rebelPrefab;
        model = Instantiate(prefab);

        model.transform.SetParent(this.transform);
        model.transform.localPosition = prefab.transform.position;
        model.transform.localRotation = prefab.transform.rotation;
        model.transform.localScale = prefab.transform.localScale;
        anim = (Animator)model.GetComponent(typeof(Animator));

        Enums.Stance stance = Enums.Stance.Range1H;

        WeaponHolding weapons = (WeaponHolding)model.GetComponent(typeof(WeaponHolding));
        weapons.owner = this.gameObject;
        GameObject tmp;

        //primärwaffe
        items.primaryWeaponType = (Enums.PrimaryWeapons)v.x;
        if (items.primaryWeaponType == Enums.PrimaryWeapons.Pipe)
        {
            tmp = weapons.setLeftHandItem(armory.r_Pipe, true);
            stance = Enums.Stance.Melee1H;
            weapons.primaryStance = stance;

           items.primary = tmp.GetComponent<WeaponComponent>();
            items.primaryWeaponType = Enums.PrimaryWeapons.Pipe;
           skills.Add(Enums.Actions.Hit);

        }
        /*
        if (items.primaryWeaponType == Enums.PrimaryWeapons.ShieldnStick)
        {
            tmp = Instantiate(armory.ShieldnStick);
            tmp.transform.SetParent(transform);
            items.primary = tmp.GetComponent<WeaponComponent>();
            items.primaryWeaponType = Enums.PrimaryWeapons.ShieldnStick;
            hp += 20;
            skills.Add(Enums.Actions.Hit);
            stance = Enums.Stance.MeleeRiot;

        }
        else if (items.primaryWeaponType == Enums.PrimaryWeapons.Shotgun)
        {
            tmp = Instantiate(armory.Shotgun);
            tmp.transform.SetParent(transform);
            items.primary = tmp.GetComponent<WeaponComponent>();
            items.primaryWeaponType = Enums.PrimaryWeapons.Shotgun;
            skills.Add(Enums.Actions.Shoot);
            skills.Add(Enums.Actions.Reload);
            stance = Enums.Stance.Range2H;

        }
        else if (items.primaryWeaponType == Enums.PrimaryWeapons.HuntingRifle)
        {
            tmp = Instantiate(armory.HuntingRifle);
            tmp.transform.SetParent(transform);
            items.primary = tmp.GetComponent<WeaponComponent>();
            items.primaryWeaponType = Enums.PrimaryWeapons.HuntingRifle;
            skills.Add(Enums.Actions.Shoot);
            skills.Add(Enums.Actions.Reload);
            stance = Enums.Stance.Range2H;
        }
         */
        else if (items.primaryWeaponType == Enums.PrimaryWeapons.AssaultRifle)
        {
            tmp = weapons.setLeftHandItem(armory.r_AssaultRifle, true);
            stance = Enums.Stance.Range2H;
            weapons.primaryStance = stance;

            items.primary = tmp.GetComponent<WeaponComponent>();
            items.primaryWeaponType = Enums.PrimaryWeapons.AssaultRifle;
            skills.Add(Enums.Actions.Shoot);
            skills.Add(Enums.Actions.Reload);

        }
            /*
        else if (items.primaryWeaponType == Enums.PrimaryWeapons.MG)
        {
            tmp = Instantiate(armory.MG);
            tmp.transform.SetParent(transform);
            items.primary = tmp.GetComponent<WeaponComponent>();
            items.primaryWeaponType = Enums.PrimaryWeapons.MG;
            skills.Add(Enums.Actions.Shoot);
            skills.Add(Enums.Actions.Reload);
            stance = Enums.Stance.Range2H;
        }
        else if (items.primaryWeaponType == Enums.PrimaryWeapons.Sniper)
        {
            tmp = Instantiate(armory.Sniper);
            tmp.transform.SetParent(transform);
            items.primary = tmp.GetComponent<WeaponComponent>();
            items.primaryWeaponType = Enums.PrimaryWeapons.Sniper;
            skills.Add(Enums.Actions.Shoot);
            skills.Add(Enums.Actions.Reload);
            stance = Enums.Stance.Range2H;
        }*/
        //if (items.primary != null)
            //items.primary.gameObject.transform.SetParent(this.transform);

        //sekundärwaffe
        items.secondaryWeaponType = (Enums.SecondaryWeapons)v.y;
        if (items.secondaryWeaponType == Enums.SecondaryWeapons.Pistol)
        {
            tmp = weapons.setLeftHandItem(armory.r_Pistol, false);
            items.secondary = tmp.GetComponent<WeaponComponent>();
            items.secondaryWeaponType = Enums.SecondaryWeapons.Pistol;

            if (items.primaryWeaponType != Enums.PrimaryWeapons.None)
            {
                if (items.primaryWeaponType == Enums.PrimaryWeapons.Pipe) //|| items.primaryWeaponType == Enums.PrimaryWeapons.ShieldnStick
                {
                    skills.Add(Enums.Actions.Shoot);
                    skills.Add(Enums.Actions.Reload);
                }
                skills.Add(Enums.Actions.ChangeWeapon);
            }
                // keine primary weapon
            else
            {
                items.isPrimary = false;
                skills.Add(Enums.Actions.Shoot);
                skills.Add(Enums.Actions.Reload);
                //Ist auch default schon auf Range1H
                stance = Enums.Stance.Range1H;
            }
        }

        anim.SetInteger(animId_iStance, (int)stance);

        /*
        else if (items.secondaryWeaponType == Enums.SecondaryWeapons.Mortar)
        {

            items.secondary = Instantiate(armory.Mortar).GetComponent<WeaponComponent>();
        }
        else if (items.secondaryWeaponType == Enums.SecondaryWeapons.RPG)
        {

            items.secondary = Instantiate(armory.RPG).GetComponent<WeaponComponent>();
        }

        */
        //utility1
        items.utility1 = (Enums.Equipment)v.z;
        if (items.utility1 == Enums.Equipment.Kevlar)
        {
            hp += 10;
        }
        else if (items.utility1 == Enums.Equipment.Helmet)
        {
            hp += 10;
        }
        /*
         else if (items.utility1 == Enums.Equipment.SuicideBelt)
        {

        }
        */

        else if (items.utility1 == Enums.Equipment.MediPack)
        {
            items.amountMediKits = 2;
            skills.Add(Enums.Actions.Heal);
        }

        /*
         * else if (items.utility1 == Enums.Equipment.Mine)
        {
            items.amountMines = 2;
        }
        else if (items.utility1 == Enums.Equipment.Rocks)
        {

        }
         */
        else if (items.utility1 == Enums.Equipment.Mollotov)
        {
            items.amountMolotovs = 2;
            skills.Add(Enums.Actions.Molotov);
        }
        else if (items.utility1 == Enums.Equipment.Grenade)
        {
            items.amountGrenades = 1;
            skills.Add(Enums.Actions.Grenade);
        }
        else if (items.utility1 == Enums.Equipment.SmokeGreneade)
        {
            items.amountSmokes = 2;
            skills.Add(Enums.Actions.Smoke);
        }
        else if (items.utility1 == Enums.Equipment.Teargas)
        {
            items.amountTeargas = 2;
            skills.Add(Enums.Actions.Teargas);
        }

        //utility 2
        items.utility2 = (Enums.Equipment)v.w;
        if (items.utility2 == Enums.Equipment.Kevlar)
        {
            hp += 10;
        }
        else if (items.utility2 == Enums.Equipment.Helmet)
        {
            hp += 10;
        }

        else if (items.utility2 == Enums.Equipment.MediPack)
        {
            items.amountMediKits = 2;
            skills.Add(Enums.Actions.Heal);
        }
            /*
        else if (items.utility2 == Enums.Equipment.SuicideBelt)
        {

        }

        else if (items.utility2 == Enums.Equipment.Scope)
        {

        }

        else if (items.utility2 == Enums.Equipment.Mine)
        {
            items.amountMines = 2;
        }
        else if (items.utility2 == Enums.Equipment.Rocks)
        {

        }
             * */
        else if (items.utility2 == Enums.Equipment.Mollotov)
        {
            items.amountMolotovs = 2;
            skills.Add(Enums.Actions.Molotov);
        }
        else if (items.utility2 == Enums.Equipment.Grenade)
        {
            items.amountGrenades = 1;
            skills.Add(Enums.Actions.Grenade);
        }
        else if (items.utility2 == Enums.Equipment.SmokeGreneade)
        {
            items.amountSmokes = 2;
            skills.Add(Enums.Actions.Smoke);
        }

        else if (items.utility2 == Enums.Equipment.Teargas)
        {
            items.amountTeargas = 2;
            skills.Add(Enums.Actions.Teargas);
        }
    }
    // Use this for initialization
    void Start()
    {
        ability = FindObjectOfType<AbilitySystem>();
        armory = FindObjectOfType<ArmoryComponent>();
        anim = GetComponent<Animator>();
        animId_iStance = Animator.StringToHash("Stance");
        anim_shotIsHit = false;

        primary = true;
        anim_shotIsHit = false;
    }
    //Legt die Klasse fuer die Einheit fest
    public void setProf(int i)
    {
        prof = (Enums.Prof)i;
        armory = GameObject.Find("Armory").GetComponent<ArmoryComponent>();
        ManagerSystem managersys = (ManagerSystem) FindObjectOfType(typeof(ManagerSystem));
        items = this.GetComponent<InventoryComponent>();

        GameObject prefab = managersys.policePrefab;
        model = Instantiate(managersys.policePrefab);
        model.transform.SetParent(this.transform);
        model.transform.localPosition = prefab.transform.position;
        model.transform.localRotation = prefab.transform.rotation;
        model.transform.localScale = prefab.transform.localScale;

        anim = (Animator)model.GetComponent(typeof(Animator));

        Enums.Stance stance = Enums.Stance.Range1H;

        profession = (Enums.Prof)i;
        WeaponHolding weapons = (WeaponHolding)model.GetComponent(typeof(WeaponHolding));
        weapons.owner = this.gameObject;

        if (profession == Enums.Prof.Riot)
        {

            stance = Enums.Stance.MeleeRiot;
            weapons.initializeEquip(armory.p_Stick, armory.p_Riotshield, null, null , stance, Enums.Stance.None);
            GameObject tmp = weapons.leftHandObjectPrimary;
            items.primary = tmp.GetComponent<WeaponComponent>();
            items.primaryWeaponType = Enums.PrimaryWeapons.Pipe;
            items.amountTeargas = 4;
            hp += 20;
            skills.Add(Enums.Actions.Hit);
            skills.Add(Enums.Actions.Teargas);
            items.utility1 = Enums.Equipment.Teargas;

        }
        else if (profession == Enums.Prof.Soldier)
        {
            stance = Enums.Stance.Range2H;
            weapons.initializeEquip(armory.p_AssaultRifle, null, null, null, stance, Enums.Stance.None);
            GameObject tmp = weapons.leftHandObjectPrimary;
            items.primary = tmp.GetComponent<WeaponComponent>();
            items.primaryWeaponType = Enums.PrimaryWeapons.AssaultRifle;
            items.amountGrenades = 2;
            hp += 20;
            skills.Add(Enums.Actions.Shoot);
            skills.Add(Enums.Actions.Reload);
            skills.Add(Enums.Actions.Grenade);

            items.utility1 = Enums.Equipment.Grenade;

        }

        else if (profession == Enums.Prof.Support)
        {
            stance = Enums.Stance.Range2H;
            weapons.initializeEquip(armory.p_AssaultRifle, null, armory.p_Pistol, null, stance, Enums.Stance.Range1H);
            GameObject tmp = weapons.leftHandObjectPrimary;

            items.primary = tmp.GetComponent<WeaponComponent>();
            items.primaryWeaponType = Enums.PrimaryWeapons.AssaultRifle;

            tmp = weapons.leftHandObjectSecondary;
            items.secondary = tmp.GetComponent<WeaponComponent>();
            items.secondaryWeaponType = Enums.SecondaryWeapons.Pistol;
            items.amountMediKits = 2;
            hp += 20;
            skills.Add(Enums.Actions.Shoot);
            skills.Add(Enums.Actions.Reload);
            skills.Add(Enums.Actions.ChangeWeapon);
            skills.Add(Enums.Actions.Heal);

            items.utility1 = Enums.Equipment.MediPack;
        }
            /*
        else if (profession == Enums.Prof.HeavyGunner)
        {
            GameObject tmp = Instantiate(armory.MG);
            tmp.transform.SetParent(transform);
            items.primary = tmp.GetComponent<WeaponComponent>();
            items.primaryWeaponType = Enums.PrimaryWeapons.MG;
            hp += 20;
            skills.Add(Enums.Actions.Shoot);
            skills.Add(Enums.Actions.Reload);

            stance = Enums.Stance.Range2H;
        }
        if (profession == Enums.Prof.Sniper)
        {
            GameObject tmp = Instantiate(armory.Sniper);
            tmp.transform.SetParent(transform);
            items.primary = tmp.GetComponent<WeaponComponent>();
            items.primaryWeaponType = Enums.PrimaryWeapons.Sniper;

            tmp = Instantiate(armory.Pistol);
            tmp.transform.SetParent(transform);
            items.secondary = tmp.GetComponent<WeaponComponent>();
            items.secondaryWeaponType = Enums.SecondaryWeapons.Pistol;
            items.amountGrenades = 1;
            skills.Add(Enums.Actions.Shoot);
            skills.Add(Enums.Actions.Reload);
            skills.Add(Enums.Actions.ChangeWeapon);

            stance = Enums.Stance.Range2H;
        }
             * */
        anim.SetInteger(animId_iStance, (int)stance);
    }