private void Start() { base.Initial(); Animator animator; animator = GetComponent <Animator>(); #region 设置角色控制器的大小 control = GetComponent <CharacterController>(); control.center = new Vector3(0, 1, 0); control.height = 2; control.radius = 0.23f; #endregion #region 添加动画 PlayerIdel playerIdel = new PlayerIdel(animator); fsmManager.AddState(playerIdel); PlayerWalk playerWalk = new PlayerWalk(animator); fsmManager.AddState(playerWalk); PlayerRun playerRun = new PlayerRun(animator); fsmManager.AddState(playerRun); PlayerAttack playerAttack = new PlayerAttack(animator); fsmManager.AddState(playerAttack); PlayerAttacked playerAttacked = new PlayerAttacked(animator, this); fsmManager.AddState(playerAttacked); PlayerDie playerDie = new PlayerDie(animator); fsmManager.AddState(playerDie); #endregion }
private void Update() { if (_hunger >= _maxHungerLavel) { TakeInfoAboutPlayer(false); PlayerDie?.Invoke(); _isLife = false; } if (!_sewageTreatment.CheckCountWater) { TakeInfoAboutPlayer(false); PlayerDie?.Invoke(); _isLife = false; } if (_hunger >= _alertHungerLavel) { PlayerHungry?.Invoke(true); } else { PlayerHungry?.Invoke(false); } }
private void Awake() { if (instance == null) { instance = this; } }
// Start is called before the first frame update void Start() { body = GetComponent <Rigidbody2D>(); playerDie = GetComponent <PlayerDie>(); teleportCircleScript = teleportCircle.GetComponent <TeleportCircle>(); teleportCircleScript.SetRadius(teleportRadius); }
private void OnLevelInitialized() { _playerDie = FindObjectOfType <PlayerDie>(); _treasure = FindObjectOfType <Treasure>(); _playerDie.PlayerDied += OnPlayerDied; _treasure.TreasureCollected += OnTreasureCollected; }
private void OnTriggerEnter2D(Collider2D collision) { if (collision.gameObject.CompareTag("Player") && !collision.gameObject.GetComponent <PlayerDie>().isDead) { PlayerDie player = collision.gameObject.GetComponent <PlayerDie>(); player.Die(); } }
void Start() { animator = GetComponent<Animator>(); character = GetComponent<Character>(); controller = GetComponent<Controller>(); playerDie = GetComponent<PlayerDie>(); playerSlot = GetComponent<PlayerSlot>(); weapon = GetComponent<Weapon>(); weapon.WeaponInfo(); }
protected override bool UseItem(Collider2D playerCollision) { PlayerDie diePlayer = playerCollision.GetComponent <PlayerDie>(); if (!diePlayer.IsShield) { diePlayer.ActivateShield(); return(true); } return(false); }
private void OnTriggerStay2D(Collider2D collision) { if (collision.gameObject.CompareTag("Player") && !collision.gameObject.GetComponent <PlayerDie>().isDead) { if (timeTillExplosion <= 0) { // Debug.Log("OnTriggerSTAycircle"); PlayerDie player = collision.gameObject.GetComponent <PlayerDie>(); player.Die(); } } }
private void OnCollisionEnter2D(Collision2D collision) { if (collision.gameObject.CompareTag("Player")) { //This works for inactive player Debug.Log("hitting player"); if (isBallEnemy) { player = collision.gameObject.GetComponent <PlayerDie>(); canKillPlayer = true; } } }
/// <summary> /// Start the lose update logic in a coroutine. /// </summary> /// <returns>Default coroutine return value.</returns> public IEnumerator Lose() { Pause = true; GameIsEnding = true; Lives--; PlayerDie.Play(); //if (Lives > 0) { string tBlame = "You lose"; MiddleText.text = tBlame; MiddleText.CrossFadeAlpha(1f, 0.5f, true); } while (Characters[0].transform.localScale.x > 0f) { Characters[0].transform.localScale -= new Vector3(0.05f, 0f, 0f); yield return(null); } Characters[0].transform.localScale = Vector3.zero; yield return(new WaitForSeconds(WaitBeforeLevelReload - 0.5f)); //if (Lives > 0) { MiddleText.CrossFadeAlpha(0f, 0.5f, true); } yield return(new WaitForSeconds(0.5f)); if (Lives > 0) { SceneManager.LoadScene(SceneManager.GetActiveScene().buildIndex); } else { StartCoroutine(GameOver(CharacterMovementScripts[0].GetBlocks())); } }
void CheckRayCasts() { // Debug.DrawRay(transform.position, Vector2.right, Color.green, distance); RaycastHit2D hitPlayerInFront; RaycastHit2D rightHit; if (platform.isFacingRight) { hitPlayerInFront = Physics2D.Raycast(transform.position, Vector2.right, distanceToChase, (playerLayer | otherPlayerLayer)); rightHit = Physics2D.Raycast(transform.position, Vector2.right, distanceToKill, (playerLayer | otherPlayerLayer)); } else { hitPlayerInFront = Physics2D.Raycast(transform.position, -Vector2.right, distanceToChase, (playerLayer | otherPlayerLayer)); rightHit = Physics2D.Raycast(transform.position, -Vector2.right, distanceToKill, (playerLayer | otherPlayerLayer)); } if (hitPlayerInFront.collider != null) { isHittingPlayer = true; //This is only working on Actie Players Debug.Log("os Hitting Player"); } else { isHittingPlayer = false; } if (!isBallEnemy) { if (rightHit.collider != null) { player = rightHit.collider.gameObject.GetComponent <PlayerDie>(); canKillPlayer = true; } else { canKillPlayer = false; } } }
private void Start() { player = GetComponent <PlayerDie>(); squeezeAnimation = new SqueezeAnimation(transform); }
void Start() { health = GetComponent <HealthController>(); despawn = GetComponent <PlayerDie>(); despawn.OnDespawn += HandleDespawn; }
void Start() { go_PlayerDie = go_Player.GetComponent <PlayerDie>(); radius = rect_Background.rect.width * 0.5f; }
private void Start() { player = GetComponent <PlayerDie>(); }
private void Start() { this.temperature = this.temperatureMax; this.playerDie = GetComponent <PlayerDie>(); }