private void Respawn() { AstronautController controller = gameObject.GetComponent <AstronautController>(); controller.Respawn(); AddLifes(maxLifes); }
private void TryWhackAstronaut() { for (int i = 0; i < AstronautController.Instances.Count; ++i) { AstronautController astro = AstronautController.Instances[i]; if (astro != this) { Vector3 toAstro = (astro.transform.position - transform.position).WithY(0); if (toAstro.magnitude < 2.5f) { if (_hitSound) { AudioManager.Instance.PlaySound(gameObject, _hitSound); } astro.GetWhacked(transform.position); BatteryComponent battery = GetComponent <BatteryComponent>(); if (battery != null && battery.HasCharge) { astro.RoomInhabitant.NotifySuckedIntoSpace(); battery.DrainCharge(); } return; } } } }
void Start() { getMoneyController = GameObject.Find("GetMoney").GetComponent<GetMoneyController>(); staffController = GameObject.Find("HireStaff").GetComponent<StaffController>(); astronautController = GameObject.Find("Astronaut").GetComponent<AstronautController>(); researchersController = GameObject.Find("Researcher").GetComponent<ResearcherController>(); }
private void Spawn() { _astronaut = Instantiate(_astronautPrefab, transform); _astronaut.Died += OnDied; _astronaut.Despawned += OnDespawned; PlayerSpawned?.Invoke(this); }
void OnTriggerEnter2D(Collider2D collider) { AstronautController astronaut = collider.GetComponent <AstronautController>(); if (astronaut) { GetComponent <UIFadeIn>().Begin(); } }
private void OnTriggerEnter(Collider collider) { if (collider.gameObject.tag == "Player" && !running) { AstronautController controller = collider.gameObject.GetComponent <AstronautController>(); if (controller != null) { StartCoroutine(KillPlayerOnWater(collider.gameObject)); } } }
private void OnCollisionEnter(Collision collision) { if (collision.gameObject.tag == "Player") { AstronautController controller = collision.gameObject.GetComponent <AstronautController>(); if (controller != null) { controller.Jump(_jumpeForce); } } }
private void AddAstronaut() { Vector3 astronautPos = transform.position; astronautPos.y -= 3.0f; { AstronautController astronautControl = Instantiate(_astronautPrefab, astronautPos, Quaternion.identity).GetComponent <AstronautController>(); astronautControl._astronautIndex = _listAstronautControl.Count; _listAstronautControl.Add(astronautControl); astronautControl.gameObject.SetActive(true); } }
private void Start() { _targetZoom = new Vector3(_distance, _minHeight, _maxHeight); _astronautController = target.GetComponent <AstronautController>(); if (_astronautController != null) { float maxDeltaHead = _astronautController.headMaxRotation - _astronautController.headMinRotation; float maxDeltaCam = _maxHeight - _minHeight; _headToCamRatio = maxDeltaCam / maxDeltaHead; } }
protected virtual void AttemptAbduction() { hasAttemptedAbduction = true; astronaut = FindClosestAstronaut(transform.position); if (astronaut != null) { AstronautController ac = astronaut.GetComponent <AstronautController>(); if (!ac.beingAbducted && Vector2.Distance(transform.position, astronaut.transform.position) < 20) { ac.beingAbducted = true; abducting = true; } } }
private IEnumerator KillPlayerOnWater(GameObject player) { running = true; AstronautController controller = player.GetComponent <AstronautController>(); PlayerLife pl = player.GetComponent <PlayerLife>(); controller._animator.SetBool("damaged", true); yield return(new WaitForSeconds(2f)); controller._animator.SetBool("damaged", false); controller.Respawn(); pl.Kill(); running = false; }
private void CollideWithPlayer(AstronautController astronaut) { if (_dead || _isPDead) { return; } _isInvulnerable = true; Vector3 direction = astronaut.transform.position - transform.position; direction.y = 0; Vector3 nDirection = direction.normalized; nDirection.x *= Mathf.Sign(direction.x); nDirection.z *= Mathf.Sign(direction.z); astronaut.Push(_pushHorizontalSpeed, _pushYSpeed, new Vector3(direction.x, 1, direction.z)); // Damage astronaut _events.onPlayerPushed(astronaut.gameObject, gameObject); }
public void OnControllerColliderHit(ControllerColliderHit hit) { if (hit.gameObject.tag == "Player") { AstronautController astronaut = hit.gameObject.GetComponent <AstronautController>(); PlayerLife astronautLifes = hit.gameObject.GetComponent <PlayerLife>(); if (astronaut != null) { CollideWithPlayer(astronaut); DamagePlayer(astronautLifes); } } if (_state == EnemyStates.CHARGE && hit.gameObject.tag != "Ground" && hit.gameObject.tag != "Mountain") { StopAllCoroutines(); runningCoroutine = null; ChangeState(EnemyStates.FLEE); } }
void Awake() { astronautController = GameObject.FindObjectOfType <AstronautController>(); UIInformationController = GameObject.FindObjectOfType <UIInformationController>(); currentState = GameState.Running; }
// Use this for initialization void Start() { m_AstronautController = m_Astronaut.GetComponent <AstronautController>(); ResetUI(); DisplayCurrentOxygen(); }