public override void Update(EnemyMovementScript enemyMovementScript) { if (player == null) { return; } GameObject gameObject = enemyMovementScript.gameObject; // moving Vector3 targetPosition = new Vector3(player.transform.position.x, gameObject.transform.position.y, gameObject.transform.position.z); gameObject.transform.position = Vector3.MoveTowards(gameObject.transform.position, targetPosition, followAttackSpeed * Time.deltaTime); // shooting followAttackTime += Time.deltaTime; if (followAttackTime > 1.0f) { followAttackTime = 0.0f; } // changing the attack pattern if the HP is low (internal state has been changed!) if (enemyMovementScript.GetHP() < 150) { gameObject.SendMessage("SetAutoShootInterval", 0.4f); enemyMovementScript.SetState(new EnemyDesperateState()); } }
// Use this for initialization void Start() { m_parentScript = (EnemyMovementScript)transform.parent.gameObject.GetComponent("EnemyMovementScript"); m_parentToFollow = transform.parent; transform.parent = null; animation.wrapMode = WrapMode.Loop; }
public IEnumerator Start() { enemyMovementScript = GetComponent <EnemyMovementScript>(); Instantiate(beforeGameAudio, gameObject.transform.position, Quaternion.identity); Destroy(beforeGameAudio, 8.0f); yield return(new WaitForSeconds(beforeGameAudioDuration)); spawnPlayer(); StartCoroutine(spawnWaves()); }
public override void Update(EnemyMovementScript enemyMovementScript) { enemyMovementScript.gameObject.transform.RotateAround(enemyMovementScript.gameObject.transform.position, Vector3.forward, shootingDirection * rotationSpeed * Time.deltaTime); changeAngleTime += Time.deltaTime; if (changeAngleTime > 1.0f) { shootingDirection *= -1; changeAngleTime = -1.0f; } }
public void Setup(Func <Vector2> getPlayerFunc, PlayerHealth playerHealth, GameManager gameManager) { enemyMovement = instance.GetComponent <EnemyMovementScript>(); enemyMovement.Setup(getPlayerFunc); enemyMovement.enabled = true; enemyHit = instance.GetComponent <EnemyHit>(); enemyHit.playerHealth = playerHealth; enemyHealth = instance.GetComponent <EnemyHealth>(); enemyHealth.Setup(gameManager); }
void Start() { rigidbody = GetComponent <Rigidbody2D>(); animator = GetComponent <Animator>(); collision = GetComponent <Collider2D>(); spawnerScript = GetComponent <SpawnerScript>(); enemyMovementScript = GetComponent <EnemyMovementScript>(); Tween.Spline( spline, gameObject.transform, 0.0f, 1.0f, false, splineDuration, splineDelay, completeCallback: pathCompleted ); }
void Awake() { collider = GetComponent <MeshCollider>(); rigidbody = GetComponent <Rigidbody>(); renderer = GetComponentInChildren <SpriteRenderer>(); animator = GetComponentInChildren <Animator>(); movement = GetComponent <EnemyMovementScript>(); status = GetComponent <EnemyStatusScript>(); if (movement != null) { movement.self = this; } if (status != null) { status.self = this; } }
void Start() { animator = GetComponent <Animator>(); isDead = false; scriptEnemyMovementScript = GetComponent <EnemyMovementScript>(); }
void Awake() { enemyMovementScript = GetComponent <EnemyMovementScript>(); }
public abstract void Update(EnemyMovementScript enemyMovementScript);