Exemple #1
0
    void Start()
    {
        initialized = true;
        GameManager.instance.units.Add(this);
        /*
        if (tile == null)
        {
            int i = 0;
            while (tile == null)
                tile = GameManager.instance.tiles[i++][(int)ID];
            tile.SetUnit(this);
            transform.position = tile.TopPosition;
            //reachableTiles = GameManager.instance.TilesInRange(tile, MoveRange);
        }
        */

        nextTurnTime = GameManager.instance.TurnTime;

        if (!dontPlace) {
            int startI = faction == 0 ? 0 : GameManager.instance.height - 1;
            int endI = GameManager.instance.height - 1 - startI;
            int dirI = faction == 0 ? 1 : -1;

            for (int i = startI; i != endI; i += dirI)
            {
                for (int j = 0; j < GameManager.instance.width; ++j)
                {
                    Tile t = GameManager.instance.tiles[j][i];
                    if (t != null && t.unit == null)
                    {
                        t.SetUnit(this);
                        transform.position = tile.TopPosition;
                        break;
                    }
                }
                if (this.tile != null)
                    break;
            }
        }
        else
        {
            GameManager.instance.tempTurnQueueBar.ChangeFuture(GameManager.instance.units);
        }

        if (anim == null)
            if (transform.childCount > 0)
            {
                anim = transform.FindChild("Model").GetComponent<Animator>();
                ik = transform.FindChild("Model").GetComponent<AnimatorIKProxie>();
            }

        curHP = maxHP;
        curMP = maxMP;
        explosion = (GameObject)Resources.Load("SpellVisuals/Explosion");

        if (faction != 0)
        {
            //AddSkill (SkillFactory.GetWeakenOffense ());
            //AddSkill (SkillFactory.GetWeakenDefense());
            //AddSkill(SkillFactory.GetTaunt());
            AddSkill(SkillFactory.GetShiv());
            //AddSkill(SkillFactory.GetFade());
            //AddSkill(SkillFactory.GetBloodDonor());
            //AddSkill (SkillFactory.GetAoEHeal ());
            AddSkill(SkillFactory.GetSnipe());
            //AddSkill(SkillFactory.GetSlam());
            //AddSkill(SkillFactory.GetRepair());
            //AddSkill(SkillFactory.GetPersistence());
            //AddSkill(SkillFactory.GetEpidemic());
        }
    }
    void Start()
    {
        initialized = true;
        GameManager.instance.units.Add(this);

        /*
         * if (tile == null)
         * {
         *  int i = 0;
         *  while (tile == null)
         *      tile = GameManager.instance.tiles[i++][(int)ID];
         *  tile.SetUnit(this);
         *  transform.position = tile.TopPosition;
         *  //reachableTiles = GameManager.instance.TilesInRange(tile, MoveRange);
         * }
         */

        nextTurnTime = GameManager.instance.TurnTime;

        if (!dontPlace)
        {
            int startI = faction == 0 ? 0 : GameManager.instance.height - 1;
            int endI   = GameManager.instance.height - 1 - startI;
            int dirI   = faction == 0 ? 1 : -1;

            for (int i = startI; i != endI; i += dirI)
            {
                for (int j = 0; j < GameManager.instance.width; ++j)
                {
                    Tile t = GameManager.instance.tiles[j][i];
                    if (t != null && t.unit == null)
                    {
                        t.SetUnit(this);
                        transform.position = tile.TopPosition;
                        break;
                    }
                }
                if (this.tile != null)
                {
                    break;
                }
            }
        }
        else
        {
            GameManager.instance.tempTurnQueueBar.ChangeFuture(GameManager.instance.units);
        }


        if (anim == null)
        {
            if (transform.childCount > 0)
            {
                anim = transform.FindChild("Model").GetComponent <Animator>();
                ik   = transform.FindChild("Model").GetComponent <AnimatorIKProxie>();
            }
        }

        curHP     = maxHP;
        curMP     = maxMP;
        explosion = (GameObject)Resources.Load("SpellVisuals/Explosion");

        if (faction != 0)
        {
            //AddSkill (SkillFactory.GetWeakenOffense ());
            //AddSkill (SkillFactory.GetWeakenDefense());
            //AddSkill(SkillFactory.GetTaunt());
            AddSkill(SkillFactory.GetShiv());
            //AddSkill(SkillFactory.GetFade());
            //AddSkill(SkillFactory.GetBloodDonor());
            //AddSkill (SkillFactory.GetAoEHeal ());
            AddSkill(SkillFactory.GetSnipe());
            //AddSkill(SkillFactory.GetSlam());
            //AddSkill(SkillFactory.GetRepair());
            //AddSkill(SkillFactory.GetPersistence());
            //AddSkill(SkillFactory.GetEpidemic());
        }
    }