public static void HandleChallengeAnswer(GameRolePlayPlayerFightFriendlyAnswerMessage message, WorldClient client) { if (client.Character.IsFighting) return; FightDual fight = FightProvider.Instance.GetFight(message.fightId) as FightDual; var sMessage = new GameRolePlayPlayerFightFriendlyAnsweredMessage(message.fightId, (uint)client.Character.Id, (uint)fight.InitiatorId, false); if (client.Character.Id == fight.InitiatorId) { var acceptor = WorldServer.Instance.GetOnlineClient(fight.AcceptorId); acceptor.Send(sMessage); return; } WorldClient target = WorldServer.Instance.GetOnlineClient((fight.InitiatorId)); if (message.accept) { sMessage.accept = true; target.Send(sMessage); fight.BlueTeam.AddFighter(client.Character.CreateFighter(fight.BlueTeam)); fight.RedTeam.AddFighter(target.Character.CreateFighter(fight.RedTeam)); fight.StartPlacement(); } else { target.Send(sMessage); FightProvider.Instance.RemoveFight(message.fightId); } }
public static void HandleChallengeAnswer(GameRolePlayPlayerFightFriendlyAnswerMessage message, WorldClient client) { if (client.Character.IsFighting) { return; } FightDual fight = FightProvider.Instance.GetFight(message.fightId) as FightDual; var sMessage = new GameRolePlayPlayerFightFriendlyAnsweredMessage(message.fightId, (uint)client.Character.Id, (uint)fight.InitiatorId, false); if (client.Character.Id == fight.InitiatorId) { var acceptor = WorldServer.Instance.GetOnlineClient(fight.AcceptorId); acceptor.Send(sMessage); return; } WorldClient target = WorldServer.Instance.GetOnlineClient((fight.InitiatorId)); if (message.accept) { sMessage.accept = true; target.Send(sMessage); fight.BlueTeam.AddFighter(client.Character.CreateFighter(fight.BlueTeam)); fight.RedTeam.AddFighter(target.Character.CreateFighter(fight.RedTeam)); fight.StartPlacement(); } else { target.Send(sMessage); FightProvider.Instance.RemoveFight(message.fightId); } }
private void GameRolePlayPlayerFightFriendlyAnsweredMessageHandler(DofusClient client, GameRolePlayPlayerFightFriendlyAnsweredMessage message) { if (!message.Accept) { client.Logger.Log("Fermeture de la demande de défi.", LogMessageType.Info); } }