const char player_match = 'M'; //CardHandler.CardActions.Match; public void SendPlayerAction(int x, int y, CardHandler.CardActions action, int x2, int y2) { List <byte> toSend = new List <byte> (); toSend.AddRange(System.BitConverter.GetBytes((short)x)); toSend.AddRange(System.BitConverter.GetBytes((short)y)); switch (action) { case CardHandler.CardActions.Select: toSend.Add((byte)player_select); break; case CardHandler.CardActions.UnSelect: toSend.Add((byte)player_unselect); break; case CardHandler.CardActions.Match: toSend.Add((byte)player_match); break; default: toSend.Add((byte)a_def); break; } if (x2 != -1) { toSend.AddRange(System.BitConverter.GetBytes((short)x2)); toSend.AddRange(System.BitConverter.GetBytes((short)y2)); } SendData(a_player, toSend.ToArray()); }
public void ReceiveAction(char player, int x, int y, CardHandler.CardActions action, int x2, int y2) { int playerID = -1; IndividualCard myCard, matchPair = null; GameObject myEffect; switch (player) { case 'B': playerID = 0; myEffect = GS.a.gfxs.selectEffects[1]; break; case 'R': playerID = 1; myEffect = GS.a.gfxs.selectEffects[2]; break; case 'G': playerID = 2; myEffect = GS.a.gfxs.selectEffects[3]; break; case 'Y': playerID = 3; myEffect = GS.a.gfxs.selectEffects[4]; break; default: myEffect = GS.a.gfxs.selectEffects[1]; break; } myCard = CardHandler.s.allCards [x, y]; if (x2 != -1) { matchPair = CardHandler.s.allCards[x2, y2]; } switch (action) { case CardHandler.CardActions.Select: if (myCard.isSelectable) { myCard.selectedEffect = (GameObject)Instantiate(myEffect, myCard.transform.position, Quaternion.identity); myCard.selectEffectID = DataHandler.s.toInt(player); myCard.SelectCard(playerID); } else { DataHandler.s.NetworkCorrection(myCard); } break; case CardHandler.CardActions.UnSelect: if (myCard.isUnselectable) { myCard.UnSelectCard(); } else { DataHandler.s.NetworkCorrection(myCard); } break; case CardHandler.CardActions.Match: if (!myCard.isSelectable && matchPair != null) { IndividualCard.MatchCards(playerID, myCard, matchPair); } else { DataHandler.s.NetworkCorrection(myCard); if (matchPair == null) { DataHandler.s.NetworkCorrection(matchPair); } } break; default: break; } }
public void SendPlayerAction(int x, int y, CardHandler.CardActions action) { SendPlayerAction(x, y, action, -1, -1); }