Exemple #1
0
    void onTeam1Score(Godot.Object body)
    {
        if (body != ball)
        {
            return;
        }

        Scored?.Invoke(Data.Team.TEAM_1);
    }
 private void OnBreakdown(Asteroid asteroid)
 {
     Scored?.Invoke((4 - asteroid.BreakdownsRemaining) * 100);
     if (asteroid.BreakdownsRemaining > 0)
     {
         CreateBreakdownAsteroids(asteroid);
     }
     _asteroids.Remove(asteroid);
 }
 public void Score()
 {
     while (true)
     {
         Thread.Sleep(50);
         Random random            = new Random();
         int    position          = random.Next(0, 2);
         var    positionEventArgs = new PositionEventArgs((PlayerPosition)position);
         Scored?.Invoke(this, positionEventArgs);
     }
 }
Exemple #4
0
    private void OnTriggerEnter(Collider other)
    {
        var puck = other.GetComponentInParent <Puck>();

        if (puck != null)
        {
            if (OnScored != null)
            {
                Debug.Log("Goal scored");
                OnScored.Invoke();
            }
            puck.transform.position = new Vector3(Random.value, 1, Random.value);
        }
    }
Exemple #5
0
    private void OnTriggerEnter(Collider other)
    {
        var puck = other.GetComponentInParent <Puck>();

        if (puck != null)
        {
            if (OnScored != null)
            {
                Debug.Log("Goal scored");
                OnScored.Invoke();
            }
            Destroy(puck);
        }
    }
Exemple #6
0
    /// <summary>
    /// Al llamar al evento de anotar <see cref="Score"/> y destruir el objeto, se simula que la roca entra en la meta.
    /// </summary>
    /// <returns></returns>
    private IEnumerator Score()
    {
        var     wait       = new WaitForFixedUpdate();
        Vector2 localScale = transform.localScale;
        Vector2 size       = renderer.size * localScale;

        while (size.y > 0f)
        {
            size.y       += velocity.y * fixedDeltaTime;
            renderer.size = size / localScale;

            yield return(wait);
        }

        Scored?.Invoke();
        Destroy(gameObject);
    }
Exemple #7
0
 private void OnScored()
 {
     Scored?.Invoke(this, new ScoredEventArgs(_model.Score));
 }