示例#1
0
        public void Init(UnitData unitData, UnitBody.UnitBodySprites bodySprites)
        {
            this.baseData    = unitData;
            this.currentData = unitData;


            this.isDamaged    = false;
            this.isMoving     = false;
            this.isUsingSkill = false;

            this.hpBar.Init(this);

            if (null != this.enemiesInRange)
            {
                this.enemiesInRange.Clear();
            }
            else
            {
                this.enemiesInRange = new List <Unit>(32);
            }

            this.unitRange.SetRange(this.Range);
            this.unitRange.OnTriEnter = this.OnTriEnter;
            this.unitRange.OnTriExit  = this.OnTriExit;

            this.body.Init(bodySprites);
        }
示例#2
0
        public void Spawn(UnitData unitData, UnitBody.UnitBodySprites bodySprites, Vector2 spawnPosition, int direction)
        {
            this.SetActive(true);

            this.Init(unitData, bodySprites);

            this.CachedRectTransform.anchoredPosition = spawnPosition;
            this.Direction = direction;

            this.StartCoroutine(this.MainLoop());
            this.StartCoroutine(this.MovingLoop());
        }