private void OnAttackPushResponse(NetworkMessage msg) { Debug.Log("Push Attack Result"); AttackPushResponseMessage message = msg.ReadMessage <AttackPushResponseMessage>(); message.ActionNumber = AdjustActionNumber(message.ActionNumber); GameState.ConfirmAttackPushResult((AttackResult)message.AttackResultId, message.AvailablePushDestinationIds, message.AttackingMonsterTypeId, message.DefendingMonsterTypeId, message.ActionNumber, message.SubActionNumber); }
private void OnAttackPushResponse(NetworkMessage msg) { AttackPushResponseMessage message = msg.ReadMessage <AttackPushResponseMessage>(); bool canPush = (message.ActionNumber == 1 || message.ActionNumber == 2) && message.SubActionNumber == 6; bool canCounterPush = (message.ActionNumber == 3 || message.ActionNumber == 4) && message.SubActionNumber == 7; if (message.AvailablePushDestinationIds.Any() && (canPush || canCounterPush)) { int selectedDestinationNodeId = message.AvailablePushDestinationIds.ElementAt(_random.Next(message.AvailablePushDestinationIds.Length)); NetClient.Send(CustomMessageTypes.PushDestinationRequest, new PushDestinationRequestMessage { ActionNumber = message.ActionNumber, SubActionNumber = message.SubActionNumber, SelectedNodeId = selectedDestinationNodeId }); } }