01-29-2016, 02:43 PM
Поделитесь логикой старта боя)где какие проверки делать и что слать
Логика старта боя
|
01-29-2016, 02:43 PM
Поделитесь логикой старта боя)где какие проверки делать и что слать
01-29-2016, 08:54 PM
Пакеты слать. kappa
Там же все просто, StartBattle() > StartRound(Все пакеты PROTOCOL_BATTLE_MISSION_ROUND_XXX_START_ACK) > EndRound() > если не один раунд, то по новой StartRound(), иначе EndBattle(расчёт заработанного опыта, кредитов, ...). Что имеется ввиду под проверками?
01-29-2016, 09:06 PM
PROGRAMMATOR Написал:Пакеты слать. kappa Бой же нужно одновременно стартовать.Я имею виду где какие проверки делать что бы запустить бой одновременно мол Код: if(Slot.State == SlotState.READY)
01-29-2016, 09:20 PM
По вкусу, как удобно.
[SRC="csharp"] public void SendBroadcastPacket(SendPacket packet, SlotState state) { foreach (var account in Accounts.Where(x => x.Slot.HasState(state))) { account.SendPacket(packet); } } [/SRC]
01-29-2016, 09:26 PM
PROGRAMMATOR Написал:По вкусу, как удобно. Вы меня кажись опять не правильно поняли(или я вас) Задам вопрос проще.Как запустить одновременно бой?Что бы у одного игрока бой не запустился раньше чем у другого
01-29-2016, 09:41 PM
После загрузки карты клиент шлёт пакет PROTOCOL_BATTLE_PRESTARTBATTLE_REQ.
Проставляется PRESTART и сверяется, есть ли игроки с этим состоянием в каждой команде, если есть - запускается бой. Кто прогрузился позже - подключается к бою, то есть ему шлем те же пакеты на старт боя, то только уже ему одному. Мало чем отличается от запуска боя с ботами. |
« Предыдущая | Следующая »
|