void Idle() { //HARD CODE NOW Move(); monsterAnimator.SetInteger("Stat", 0); speedMultiplier = Random.Range(0.5f, 1.2f); if (idleDir == IdleDir.RIGHT) { if (transform.position.x < bornLocation.x + Random.Range(4, 10)) { dir = new Vector3(1, 0, 0); this.transform.localScale = new Vector3(1, 1, 1); } else { idleDir = IdleDir.UP; } } else if (idleDir == IdleDir.UP) { if (transform.position.y < bornLocation.x + Random.Range(4, 10)) { dir = new Vector3(0, 0, 1); UpdateSprite(); } else { idleDir = IdleDir.LEFT; } } else if (idleDir == IdleDir.LEFT) { if (transform.position.x > bornLocation.x - Random.Range(4, 10)) { dir = new Vector3(-1, 0, 0); this.transform.localScale = new Vector3(1, 1, 1); UpdateSprite(); } else { idleDir = IdleDir.DOWN; } } else if (idleDir == IdleDir.DOWN) { if (transform.position.y > bornLocation.y - Random.Range(4, 10)) { dir = new Vector3(0, 0, -1); } else { idleDir = IdleDir.RIGHT; } } }
IEnumerator SetUp() { //Debug.Log("Monster Set up"); bornLocation = transform.position; spriteRds = new List <SpriteRenderer>(); SpriteRenderer[] renderers = GetComponentsInChildren <SpriteRenderer>(); foreach (SpriteRenderer s in renderers) { spriteRds.Add(s); } idleDir = IdleDir.LEFT; chaseDistance = mogwai.detectDis; damageDistance = mogwai.damageDis; baseDamage = mogwai.baseDmg; speed = mogwai.idleSpeed; attackCd = mogwai.attackCd; chaseCd = mogwai.chaseCd; monsterAnimator = GetComponentInChildren <Animator>(); yield return(StartCoroutine("FollowSetUp")); }