Esempio n. 1
0
 public override void Run(NpcController c)
 {
     if (Mathf.Abs(c.transform.position.x - FallPos.x) >= 10)
     //|| Mathf.Abs(c.rb.velocity.x) <= 0f
     {
         c.SetState(NPCState.Attack);
     }
     else
     {
         c.rb.AddForce(Vector2.right * 100);
     }
 }
Esempio n. 2
0
 public override void Run(NpcController c)
 {
     if (DashTimer > 0)
     {
         DashTimer        -= Time.deltaTime;
         c.rb.gravityScale = 0.0f;
         c.rb.velocity     = new Vector2(Mathf.Lerp(Mathf.Abs(c.rb.velocity.x), c.DashSpeed, Time.deltaTime * 3f) * c._movement, c.rb.velocity.y);
         c.DashPar.Play();
     }
     else
     {
         c.SetState(NPCState.Leave, true);
     }
 }
Esempio n. 3
0
        public override void Run(NpcController c)
        {
            if (c.PlayerReply)
            {
                var chance = Random.value;
                if (chance > 0.6f)
                {
                    GameManager.Singleton.AddHeart(1);
                    c._audio.PlayOneShot(c.Hint);
                    Instantiate(GameManager.Singleton.HeartPrefab, c.transform.position + Vector3.up * (1 + 0.5f * c.HeartNum),
                                Quaternion.identity);
                }

                else if (chance > 0.3f && chance < 0.5f)
                {
                    GameManager.Singleton.AddHeart(2);
                    c._audio.PlayOneShot(c.Hint);
                    Instantiate(GameManager.Singleton.HeartPrefab, c.transform.position + Vector3.up * (1 + 0.5f * c.HeartNum),
                                Quaternion.identity);
                    Instantiate(GameManager.Singleton.HeartPrefab, c.transform.position + Vector3.up * (1.5f + 0.5f * c.HeartNum),
                                Quaternion.identity);
                }
                else if (chance < 0.2f)
                {
                    GameManager.Singleton.HeartNum--;
                    c._audio.PlayOneShot(c.Bad);
                    Instantiate(GameManager.Singleton.BadHeartPrefab, c.transform.position + Vector3.up * (1 + 0.5f * c.HeartNum),
                                Quaternion.identity);
                }

                c.SetState(NPCState.Leave);
            }

/*            else
 *          {
 *              waitTimer -= Time.deltaTime;
 *              if (waitTimer < 0)
 *              {
 *                  c.SetState(NPCState.Leave);
 *              }
 *          }*/
        }