protected override void Start() { base.Start(); // Start Looking To Player spriteDirection.FaceDirection(LookAtPlayer.LookToPlayerDirection(transform.position)); // notify GameEvents.Enemies.ZombieSpawned.SafeCall(); }
private IEnumerator CHeal() { LookAtPlayer.StartLooking(Player.transform, FollowType.Lerp, 3f); _healFX.StartHeal(AttachedEntity, PrematureKill); yield return(new WaitForSeconds(Random.Range(4.0f, 8.0f))); _healFX.EndHeal(); Complete(); enabled = false; }
protected override void Start() { // Start Looking To Player spriteDirection.FaceDirection(LookAtPlayer.LookToPlayerDirection(transform.position)); // wait for cooldown before starts shooting canShoot = false; MyExtensions.WaitAndAct(this, shootingCooldown, () => canShoot = true); //notify spawn GameEvents.Enemies.WoodyPigSpawned.SafeCall(); }
private IEnumerator CWhirlind() { Follow.StartFollowing(Player.transform, FollowType.Lerp, AttachedEntity.CurrentRoom.RoomGrid, 1.3f); LookAtPlayer.StartLooking(Player.transform, FollowType.Lerp, 3f); _whirlwindFX.StartSpin(); yield return(new WaitForSeconds(Random.Range(4.0f, 8.0f))); _whirlwindFX.EndSpin(); Follow.StopFollowing(); yield return(_delayAfterSpin); Complete(); }
private IEnumerator CShootBeam() { LookAtPlayer.StartLooking(Player.transform, FollowType.Lerp, 2f); Follow.StartFollowing(Player.transform, FollowType.Linear, AttachedEntity.CurrentRoom.RoomGrid, 2); yield return(_chargeUp); LookAtPlayer.StartLooking(Player.transform, FollowType.Linear, 0.25f); Follow.Speed /= 2; _ray.StartEmitting(); yield return(new WaitForSeconds(Random.Range(3.0f, 5.0f))); _ray.StopEmitting(); yield return(_delayAfterCompletion); Complete(); }
private IEnumerator Despawn() { despawning = true; float startAltitude = transform.position.y; float calculatedTargetAltitude = transform.position.y + targetAltitude; LookAtPlayer lookat = transform.root.GetComponent <LookAtPlayer>(); if (lookat) { lookat.enabled = false; } while (transform.position.y < calculatedTargetAltitude) { float percentageToTargetAltitude = 1f / targetAltitude * (transform.position.y - startAltitude); Vector3 vectorToAdd = Vector3.up * hoverSpeed * Time.deltaTime * 10f * flyAwaySpeedCurve.Evaluate(percentageToTargetAltitude); if (wheels.Length > 0) { foreach (var item in wheels) { item.GetChild(0).Rotate(Vector3.forward, (spinSpeed + (spinSpeed * flyAwaySpeedCurve.Evaluate(percentageToTargetAltitude))) * Time.deltaTime * 100f); item.position += vectorToAdd; } } transform.position += vectorToAdd; yield return(0); } if (wheels.Length > 0) { foreach (var item in wheels) { Destroy(item.gameObject); } } Destroy(gameObject); }
public void CloseEye(LookAtPlayer sender) { animator.enabled = true; animator.SetBool("Revived", false); animator.SetBool("IsDead", true); }
protected void Awake() { lookAtPlayer = GetComponent <LookAtPlayer>(); }
public void LookToPlayer() { spriteDirection.FaceDirection(LookAtPlayer.LookToPlayerDirection(transform.position)); }
public void TurnToPlayer() { FaceDirection(LookAtPlayer.LookToPlayerDirection(transform.position)); }
// Start is called before the first frame update void Start() { lookAt = gameObject.AddComponent <LookAt>(); lookAtPlayer = gameObject.AddComponent <LookAtPlayer>(); target = transform; }