Esempio n. 1
0
        public override void Execute()
        {
            if (isExecuting)
            {
                if (onScore.IsNull())
                {
                    return;
                }

                Player.PlayerID scorerPID = onScore();
                PlayerQuery     query     = new PlayerQuery(
                    game.Players,
                    scorerPID
                    );

                scorer = Player.ExtractScoringPlayer(query);
                text   = string.Format("POINT: {0}", scorer.ScorerPID);

                onScore     = null;
                isExecuting = false;

                return;
            }
            else
            {
                OnChangeState();
            }
        }
Esempio n. 2
0
    // private Player (Player.PlayerID pid, int points = 0, int wins = 0) {
    //     PlayerDetails = new Player.Details();
    //     PID = pid;
    //     pointsScored = points;
    //     roundsWon = wins;
    //     AssignPaddle ();
    // }

    public Player(Player.PlayerID pid, int points = 0, int wins = 0)
    {
        PlayerDetails = new Player.Details();
        PID           = pid;
        pointsScored  = points;
        roundsWon     = wins;
        AssignPaddle();
    }
Esempio n. 3
0
    public static Player.PlayerID TryDetermineScoringPlayer(System.Func <int> onScore)
    {
        Player.PlayerID scorer = (Player.PlayerID)onScore.InvokeSafe();

        if (scorer != 0)
        {
            return(scorer);
        }

        return(0);
    }
Esempio n. 4
0
    public void MoveUp(Player.PlayerID player)
    {
        var index = playerChoose[(int)player] - 4;

        if (index < 0)
        {
            return;
        }

        SelectSlot(player, index);
    }
Esempio n. 5
0
    public void MoveRight(Player.PlayerID player)
    {
        var index = playerChoose[(int)player] + 1;

        if (index >= _slots.Length)
        {
            return;
        }

        SelectSlot(player, index);
    }
Esempio n. 6
0
    public void ChooseMem(Player.PlayerID player)
    {
        var mems = playerMems[(int)player];

        if (mems.selectedSlot.Count >= mems.slot.Length || _slots[playerChoose[(int)player]].choosed ||
            !_slots[playerChoose[(int)player]].avaiable)
        {
            return;
        }

        _slots[playerChoose[(int)player]].ChooseMem(player);
        mems.selectedSlot.Add(_slots[playerChoose[(int)player]]);
        mems.slot[mems.selectedSlot.Count - 1].enabled = true;
        mems.slot[mems.selectedSlot.Count - 1].sprite  = _slots[playerChoose[(int)player]].memeImage.sprite;
    }
Esempio n. 7
0
    public void CancelChooseMem(Player.PlayerID player)
    {
        var mems = playerMems[(int)player];

        if (mems.selectedSlot.Count == 0)
        {
            if (player == Player.PlayerID.Player1 && playerMems[0].selectedSlot.Count == 0)
            {
                GameManager.Instance.ShowScreen(ScreenType.mainMenu, false);
            }
            return;
        }

        mems.selectedSlot[mems.selectedSlot.Count - 1].CancelChoose();
        mems.selectedSlot.RemoveAt(mems.selectedSlot.Count - 1);
        mems.slot[mems.selectedSlot.Count].sprite  = null;
        mems.slot[mems.selectedSlot.Count].enabled = false;
    }
Esempio n. 8
0
 public PlayerQuery(IEnumerable <Player> players, Player.PlayerID queryTargetPID)
 {
     this.playersEnumerable = players;
     this.QueryTargetPID    = queryTargetPID;
 }
Esempio n. 9
0
 public PlayerQuery(Player[] players, Player.PlayerID queryTargetPID)
 {
     this.players        = players;
     this.QueryTargetPID = queryTargetPID;
 }
Esempio n. 10
0
    // public Vector3 WrapPosition (Paddle p) {
    //     float xLeft = p.transform.position.x - p.ColliderMidpoint;
    //     float xRight = p.transform.position.x + p.ColliderMidpoint;
    //     float xInverse = p.transform.position.x * -1.0f;

    //     if (xLeft < LeftMostVertical) {
    //         p.TR.Clear();
    //         return new Vector3(xInverse - p.ColliderLength, p.Parameters.FixedHorizontalPosition, 0.0f);
    //     } else if (xRight > RightMostVertical) {
    //         p.TR.Clear();
    //         return new Vector3(xInverse + p.ColliderLength, p.Parameters.FixedHorizontalPosition, 0.0f);
    //     } else {
    //         return transform.position;
    //     }
    // }

    public static void BallEnteredScoreZone(Player.PlayerID attackingPlayerPID)
    {
        mStateFramework.Core.StateWaitUntilPointScore.onScore = () => {
            return(attackingPlayerPID);
        };
    }
Esempio n. 11
0
 void SelectSlot(Player.PlayerID player, int index)
 {
     _slots[playerChoose[(int)player]].DiselectMem(player);
     playerChoose[(int)player] = index;
     _slots[index].SelectMem(player);
 }
Esempio n. 12
0
 public PlayerScorer(Player scorer)
 {
     Scorer    = scorer;
     ScorerPID = Scorer.PID;
 }
Esempio n. 13
0
 public void ChooseMem(Player.PlayerID player)
 {
     animator.SetTrigger("select");
     choosed = true;
     SetGrayed(true);
 }
Esempio n. 14
0
 public void DiselectMem(Player.PlayerID player)
 {
     hover[(int)player].enabled = false;
     CheckHoverFill();
     animator.SetTrigger("release");
 }
Esempio n. 15
0
 public void SelectMem(Player.PlayerID player)
 {
     hover[(int)player].enabled = true;
     CheckHoverFill();
     animator.SetTrigger("highlight");
 }