Esempio n. 1
0
        public FloodUC(AccountUC account)
        {
            InitializeComponent();
            m_Account = account;
            string pathPlayers = System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "BlueSheep", "Accounts", m_Account.AccountName, "Flood");
            if (!Directory.Exists(pathPlayers))
                Directory.CreateDirectory(pathPlayers);
            PrivateExitBox.Hide();
            FloodContent = "";
            Dictionary<string, int> temp = new Dictionary<string, int>();
            if (File.Exists(pathPlayers + @"\Players.txt"))
            {
                var sr = new StreamReader(pathPlayers + @"\Players.txt");
                while (!sr.EndOfStream)
                {
                    string line = sr.ReadLine();
                    string[] parsed = line.Split(',');
                    if (parsed.Length > 1)
                    {
                        temp.Add(parsed[0], int.Parse(parsed[1]));
                        PlayerListLb.Items.Add(line);
                    }
                    else
                    {
                        sr.Close();
                        File.Delete(pathPlayers + @"\Players.txt");
                        return;
                    }

                }
                sr.Close();
                m_Account.Log(new DebugTextInformation("[ADVANCED FLOOD] Players loaded."), 5);
            }
        }
Esempio n. 2
0
 public GestItemsUC(AccountUC Account)
 {
     InitializeComponent();
     account = Account;
     LVGestItems.Columns.Add("Nom", 200, HorizontalAlignment.Center);
     LVGestItems.Columns.Add("Action", 200, HorizontalAlignment.Center);
     this.ItemTxtBox.KeyUp += (s, e) =>
     {
         IntelliSense.AutoCompleteTextBox(ItemTxtBox, this.litPopup, IntelliSense.ItemsList, e);
     };
     AutoDeletionTimer = new System.Timers.Timer(Convert.ToDouble(NUDAutoDeletion.Value * 10000)) { AutoReset = false };
     AutoDeletionTimer.Elapsed += new System.Timers.ElapsedEventHandler(PerformAutoDeletion);
     if (AutoDeletionBox.Checked)
         AutoDeletionTimer.Start();
 }
Esempio n. 3
0
        public static void RawDataMessageTreatment(Message message, byte[] packetDatas, AccountUC account)
        {
            //TODO : Bypass this f*****g anti-bot
            Random random       = new Random();
            int    randomNumber = (int)Math.Floor(random.NextDouble() * 16777215);

            CheckIntegrityMessage checkIntegrityMessage = new CheckIntegrityMessage(new List <int>()
            {
                randomNumber
            });

            using (BigEndianWriter writer = new BigEndianWriter())
            {
                checkIntegrityMessage.Serialize(writer);

                MessagePackaging messagePackaging = new MessagePackaging(writer);

                messagePackaging.Pack((int)checkIntegrityMessage.ProtocolID);

                account.SocketManager.Send(messagePackaging.Writer.Content);
            }
            //using (BigEndianReader reader = new BigEndianReader(packetDatas))
            //{
            //    byte[] content = reader.ReadBytes((int)reader.BytesAvailable);
            //    string d = DateTime.Now.ToShortDateString().Replace('\\', '-').Replace('/', '-');
            //    File.WriteAllBytes(@"F:\RDMs\" + d + "_RDM.swf", content);
            //    //account.SocketManager.Disconnect();
            //}

            //using (BigEndianWriter writer = new BigEndianWriter())
            //{
            //    TrustStatusMessage tsm = new TrustStatusMessage(true);
            //    tsm.Serialize(writer);
            //    writer.WriteUTF(account.Ticket);
            //    MessagePackaging pack = new MessagePackaging(writer);
            //    pack.Pack((int)tsm.ProtocolID);
            //    account.SocketManager.SendRaw(pack.Writer.Content);
            //}
            //using (BigEndianWriter writer = new BigEndianWriter())
            //{
            //    writer.WriteBytes(packetDatas);
            //    MessagePackaging pack = new MessagePackaging(writer);
            //    pack.Pack(6253);
            //    account.SocketManager.SendRaw(pack.Writer.Content);
            //}
            //    System.Security.Cryptography.MD5 md5 = System.Security.Cryptography.MD5.Create();
            //    byte[] hash = md5.ComputeHash(pack.Writer.Content);
            //    StringBuilder sb = new StringBuilder();
            //    for (int i = 0; i < hash.Length; i++)
            //    {
            //        sb.Append(hash[i].ToString("X2"));
            //    }
            //    System.Windows.Forms.MessageBox.Show(sb.ToString());
            //}
        }
Esempio n. 4
0
 public PathCondition(PathConditionEnum condition, object delta, char operateur, AccountUC Account)
 {
     m_Cond      = condition;
     m_delta     = delta;
     m_operateur = operateur;
     account     = Account;
 }
Esempio n. 5
0
        public static void SelectedServerDataExtendedMessageTreatment(Message message, byte[] packetDatas, AccountUC account)
        {
            SelectedServerDataExtendedMessage msg = (SelectedServerDataExtendedMessage)message;

            using (BigEndianReader reader = new BigEndianReader(packetDatas))
            {
                msg.Deserialize(reader);
            }
            //account.Log(new BotTextInformation(selectedServerDataExtendedMessage.address + " " + (int)selectedServerDataExtendedMessage.port));
            account.Ticket     = AES.AES.TicketTrans(msg.Ticket).ToString();
            account.HumanCheck = new HumanCheck(account);
            account.SocketManager.IsChangingServer = true;
            if (!account.IsMITM)
            {
                account.Log(new ConnectionTextInformation("Connexion au serveur " + BlueSheep.Common.Data.I18N.GetText((int)GameData.GetDataObject(D2oFileEnum.Servers, msg.ServerId).Fields["nameId"])), 0);
                account.SocketManager.Connect(new ConnectionInformations(msg.Address, (int)msg.Port, "de jeu"));
                account.loginstate = "de jeu";
            }
            else
            {
                SelectedServerDataExtendedMessage nmsg = new SelectedServerDataExtendedMessage(msg.CanCreateNewCharacter,
                                                                                               msg.ServerId,
                                                                                               msg.Address,
                                                                                               msg.Port,
                                                                                               msg.Ticket,
                                                                                               msg.ServerIds);
                using (BigEndianWriter writer = new BigEndianWriter())
                {
                    nmsg.Serialize(writer);
                    MessagePackaging pack = new MessagePackaging(writer);
                    pack.Pack((int)nmsg.MessageID);
                    account.SocketManager.SendToDofusClient(pack.Writer.Content);
                    //account.SocketManager.DisconnectFromDofusClient();
                    account.SocketManager.DisconnectServer("42 packet handling.");
                    account.SocketManager.ListenDofus();
                    account.Wait(100, 200);
                }
                account.Log(new ConnectionTextInformation("Connexion au serveur " + BlueSheep.Common.Data.I18N.GetText((int)GameData.GetDataObject(D2oFileEnum.Servers, msg.ServerId).Fields["nameId"])), 0);
                account.SocketManager.Connect(new ConnectionInformations(msg.Address, (int)msg.Port, "de jeu"));
                account.loginstate = "de jeu";
            }
        }
Esempio n. 6
0
        public static void IdentificationSuccessMessageTreatment(Message message, byte[] packetDatas, AccountUC account)
        {
            IdentificationSuccessMessage msg = (IdentificationSuccessMessage)message;

            using (BigEndianReader reader = new BigEndianReader(packetDatas))
            {
                msg.Deserialize(reader);
            }
            var dtDateTime = new DateTime(1970, 1, 1, 0, 0, 0, 0);

            dtDateTime = dtDateTime.AddMilliseconds(msg.SubscriptionEndDate).ToLocalTime();
            DateTime subscriptionDate = dtDateTime;

            if (subscriptionDate > DateTime.Now)
            {
                account.ModifBar(9, 0, 0, subscriptionDate.Date.ToShortDateString());
            }
            account.Log(new ConnectionTextInformation("Identification réussie."), 0);
        }
Esempio n. 7
0
        public static void IdentificationFailedBannedMessageTreatment(Message message, byte[] packetDatas, AccountUC account)
        {
            IdentificationFailedBannedMessage msg = (IdentificationFailedBannedMessage)message;

            using (BigEndianReader reader = new BigEndianReader(packetDatas))
            {
                msg.Deserialize(reader);
            }
            account.Log(new ConnectionTextInformation("Echec de connexion : Vous êtes bannis."), 0);
            account.SocketManager.DisconnectFromGUI();
        }
Esempio n. 8
0
        public static void SelectedServerRefusedMessageTreatment(Message message, byte[] packetDatas, AccountUC account)
        {
            // Lecture du paquet ServerStatusUpdateMessage
            SelectedServerRefusedMessage selectedServerRefusedMessage = (SelectedServerRefusedMessage)message;

            using (BigEndianReader reader = new BigEndianReader(packetDatas))
            {
                selectedServerRefusedMessage.Deserialize(reader);
            }
            // Cherche le statut du serveur
            ServerStatus.Test((ServerStatusEnum)selectedServerRefusedMessage.ServerStatus, account);
        }
Esempio n. 9
0
        public static void SequenceEndMessageTreatment(Message message, byte[] packetDatas, AccountUC account)
        {
            SequenceEndMessage msg = (SequenceEndMessage)message;

            using (BigEndianReader reader = new BigEndianReader(packetDatas))
            {
                msg.Deserialize(reader);
            }
            if ((account.Fight != null) && (account.Fight.Fighter != null) && (account.Fight.Fighter.Id == msg.authorId) && (!account.IsMITM))
            {
                GameActionAcknowledgementMessage msg2 = new GameActionAcknowledgementMessage(true, msg.sequenceType);
                account.SocketManager.Send(msg2);
                account.Fight.PerformSpellsStack();
                //account.Fight.PerformMove();
            }
        }
Esempio n. 10
0
        public static void GameFightTurnReadyRequestMessageTreatment(Message message, byte[] packetDatas, AccountUC account)
        {
            GameFightTurnReadyRequestMessage msg = (GameFightTurnReadyRequestMessage)message;

            using (BigEndianReader reader = new BigEndianReader(packetDatas))
            {
                msg.Deserialize(reader);
            }
            GameFightTurnReadyMessage msg2 = new GameFightTurnReadyMessage(true);

            account.SocketManager.Send(msg2);
        }
Esempio n. 11
0
        public static void GameFightPlacementPossiblePositionsMessageTreatment(Message message, byte[] packetDatas, AccountUC account)
        {
            GameFightPlacementPossiblePositionsMessage msg = (GameFightPlacementPossiblePositionsMessage)message;

            using (BigEndianReader reader = new BigEndianReader(packetDatas))
            {
                msg.Deserialize(reader);
            }
            account.SetStatus(Status.Fighting);
            if (account.Fight != null)
            {
                account.Fight.PlacementCells = msg.positionsForChallengers.ToList();
                account.Fight.TurnId         = 0;
                if (account.Fight.m_Conf.Tactic != BlueSheep.Core.Fight.TacticEnum.Immobile)
                {
                    account.Fight.PlaceCharacter();
                }
            }
            //account.Fight.PerformAutoTimeoutFight(3000);
            //if (account.IsMITM)
            // account.Fight.PerformAutoTimeoutFight(3000);
            if (account.WithItemSetBox.Checked == true)
            {
                sbyte id = (sbyte)account.PresetStartUpD.Value;
                InventoryPresetUseMessage msg2 = new InventoryPresetUseMessage((sbyte)(id - 1));
                account.SocketManager.Send(msg2);
                account.Log(new ActionTextInformation("Equipement rapide numero " + Convert.ToString(id)), 5);
                account.Fight.PerformAutoTimeoutFight(500);
            }
            //LaunchWatch()
            GameFightReadyMessage nmsg = new GameFightReadyMessage(true);

            account.SocketManager.Send(nmsg);
            account.Log(new BotTextInformation("Send Ready !"), 5);
        }
Esempio n. 12
0
        public static void GameFightTurnStartPlayingMessageTreatment(Message message, byte[] packetDatas, AccountUC account)
        {
            GameFightTurnStartPlayingMessage msg = (GameFightTurnStartPlayingMessage)message;

            using (BigEndianReader reader = new BigEndianReader(packetDatas))
            {
                msg.Deserialize(reader);
            }
            //account.Fight.PerformAutoTimeoutFight(100);
            if (account.Fight != null)
            {
                account.Fight.FightTurn();
            }
        }
Esempio n. 13
0
        public static void GameFightNewRoundMessageTreatment(Message message, byte[] packetDatas, AccountUC account)
        {
            GameFightNewRoundMessage msg = (GameFightNewRoundMessage)message;

            using (BigEndianReader reader = new BigEndianReader(packetDatas))
            {
                msg.Deserialize(reader);
            }
            if (account.Fight != null)
            {
                account.Fight.TurnId = msg.roundNumber;
            }
        }
Esempio n. 14
0
        public static void GameMapMovementMessageTreatment(Message message, byte[] packetDatas, AccountUC account)
        {
            GameMapMovementMessage msg = (GameMapMovementMessage)message;

            using (BigEndianReader reader = new BigEndianReader(packetDatas))
            {
                msg.Deserialize(reader);
            }
            MovementPath clientMovement = MapMovementAdapter.GetClientMovement(msg.keyMovements.Select <short, uint>(k => (uint)k).ToList());

            if (account.state == Enums.Status.Fighting)
            {
                BFighter fighter = account.Fight.GetFighter(msg.actorId);
                if (fighter != null)
                {
                    //account.Log(new BotTextInformation("GameMap Ancienne cellid of " + fighter.Id + " = " + fighter.CellId));
                    fighter.CellId = clientMovement.CellEnd.CellId;
                    //account.Log(new BotTextInformation("GameMap Nouvelle cellid of " + fighter.Id + " = " + fighter.CellId));
                }
            }
        }
Esempio n. 15
0
        public static void GameActionFightDispellableEffectMessageTreatment(Message message, byte[] packetDatas, AccountUC account)
        {
            GameActionFightDispellableEffectMessage msg = (GameActionFightDispellableEffectMessage)message;

            using (BigEndianReader reader = new BigEndianReader(packetDatas))
            {
                msg.Deserialize(reader);
            }
            if (account.Fight != null)
            {
                if (msg.effect is FightTemporaryBoostStateEffect)
                {
                    FightTemporaryBoostStateEffect effect = (FightTemporaryBoostStateEffect)msg.effect;
                    if (effect.targetId == account.Fight.Fighter.Id)
                    {
                        if (account.Fight.DurationByEffect.ContainsKey(effect.stateId))
                        {
                            account.Fight.DurationByEffect.Remove(effect.stateId);
                        }
                        account.Fight.DurationByEffect.Add(effect.stateId, effect.turnDuration);
                    }
                }
                else if (msg.effect is FightTemporaryBoostEffect)
                {
                    FightTemporaryBoostEffect effect = (FightTemporaryBoostEffect)msg.effect;
                    if (msg.actionId == 168)
                    {
                        ((BFighter)account.Fight.Fighter).ActionPoints = account.Fight.Fighter.ActionPoints - effect.delta;
                    }
                    else if (msg.actionId == 169)
                    {
                        ((BFighter)account.Fight.Fighter).MovementPoints = account.Fight.Fighter.MovementPoints - effect.delta;
                    }
                }
            }
        }
Esempio n. 16
0
 public RegenUC(AccountUC Account)
 {
     InitializeComponent();
     m_Account = Account;
     Init();
 }
Esempio n. 17
0
        public static void GameFightTurnStartMessageTreatment(Message message, byte[] packetDatas, AccountUC account)
        {
            GameFightTurnStartMessage msg = (GameFightTurnStartMessage)message;

            using (BigEndianReader reader = new BigEndianReader(packetDatas))
            {
                msg.Deserialize(reader);
            }
            if (!account.Fight.IsFightStarted)
            {
                account.Fight.IsFightStarted = true;
            }
            if (msg.id == account.CharacterBaseInformations.id)
            {
                account.Fight.IsFighterTurn = true;
            }
            else
            {
                account.Fight.IsFighterTurn = false;
            }
        }
Esempio n. 18
0
        public static void LifePointsRegenBeginMessageTreatment(Message message, byte[] packetDatas, AccountUC account)
        {
            LifePointsRegenBeginMessage msg = (LifePointsRegenBeginMessage)message;

            using (BigEndianReader reader = new BigEndianReader(packetDatas))
            {
                msg.Deserialize(reader);
            }
            if (account.Fight != null && account.state == Enums.Status.Fighting)
            {
                account.Fight.watch.Stop();
                account.Fight.WaitForReady   = false;
                account.Fight.IsFighterTurn  = false;
                account.Fight.IsFightStarted = false;
                account.Log(new ActionTextInformation("Combat fini ! (" + account.Fight.watch.Elapsed.Minutes + " min, " + account.Fight.watch.Elapsed.Seconds + " sec)"), 0);
                account.Fight.watch.Reset();
                account.Fight.PerformAutoTimeoutFight(2000);
                if (account.WithItemSetBox.Checked == true)
                {
                    sbyte id = (sbyte)account.PresetEndUpD.Value;
                    InventoryPresetUseMessage msg2 = new InventoryPresetUseMessage((sbyte)(id - 1));
                    account.SocketManager.Send(msg2);
                    account.Log(new ActionTextInformation("Equipement rapide numero " + Convert.ToString(id)), 5);
                }
                account.Fight.PulseRegen();
            }
            account.SetStatus(Status.None);

            //account.Path.Stop = false;
        }
Esempio n. 19
0
        public static void IdentificationFailedForBadVersionMessageTreatment(Message message, byte[] packetDatas, AccountUC account)
        {
            IdentificationFailedForBadVersionMessage identificationFailedForBadVersionMessage = (IdentificationFailedForBadVersionMessage)message;

            using (BigEndianReader reader = new BigEndianReader(packetDatas))
            {
                identificationFailedForBadVersionMessage.Deserialize(reader);
            }
            account.Log(new ErrorTextInformation("Echec de connexion : Dofus a été mis à jour ("
                                                 + identificationFailedForBadVersionMessage.RequiredVersion.Major + "."
                                                 + identificationFailedForBadVersionMessage.RequiredVersion.Minor + "."
                                                 + identificationFailedForBadVersionMessage.RequiredVersion.Release + "."
                                                 + identificationFailedForBadVersionMessage.RequiredVersion.Revision + "."
                                                 + identificationFailedForBadVersionMessage.RequiredVersion.Patch + "."
                                                 + identificationFailedForBadVersionMessage.RequiredVersion.BuildType + ")."
                                                 + " BlueSheep supporte uniquement la version " + GameConstants.Major + "."
                                                 + GameConstants.Minor + "." + GameConstants.Release + "."
                                                 + GameConstants.Revision + "." + GameConstants.Patch + "."
                                                 + GameConstants.BuildType + " du jeu. Consultez le forum pour être alerté de la mise à jour du bot."), 0);
            account.SocketManager.DisconnectFromGUI();
        }
Esempio n. 20
0
        public static void LifePointsRegenEndMessageTreatment(Message message, byte[] packetDatas, AccountUC account)
        {
            LifePointsRegenEndMessage msg = (LifePointsRegenEndMessage)message;

            using (BigEndianReader reader = new BigEndianReader(packetDatas))
            {
                msg.Deserialize(reader);
            }
            int percent = (msg.lifePoints / msg.maxLifePoints) * 100;

            account.Log(new BotTextInformation("Fin de la régénération. + " + msg.lifePointsGained + " points de vie"), 2);
            //string text = msg.lifePoints + "/" + msg.maxLifePoints + "(" + percent + "%)";
            account.ModifBar(2, (int)msg.maxLifePoints, (int)msg.lifePoints, "Vitalité");
        }
Esempio n. 21
0
 public static void HelloConnectMessageTreatment(Message message, byte[] packetDatas, AccountUC account)
 {
     account.SetStatus(Status.None);
     if (!account.IsMITM)
     {
         HelloConnectMessage helloConnectMessage = (HelloConnectMessage)message;
         using (BigEndianReader reader = new BigEndianReader(packetDatas))
         {
             helloConnectMessage.Deserialize(reader);
         }
         sbyte[] credentials = RSAKey.Encrypt(helloConnectMessage.key,
                                              account.AccountName,
                                              account.AccountPassword,
                                              helloConnectMessage.salt);
         IdentificationMessage msg = new IdentificationMessage(GameConstants.AutoConnect, GameConstants.UseCertificate, GameConstants.UseLoginToken, new Common.Protocol.Types.VersionExtended(GameConstants.Major, GameConstants.Minor, GameConstants.Release, GameConstants.Revision, GameConstants.Patch, GameConstants.BuildType, GameConstants.Install, GameConstants.Technology), GameConstants.Lang, credentials, GameConstants.ServerID, GameConstants.SessionOptionalSalt, new List <ushort>().ToArray());
         account.SocketManager.Send(msg);
     }
     account.Log(new ConnectionTextInformation("Identification en cours."), 0);
 }
Esempio n. 22
0
        public static void GameFightSpectatorJoinMessageTreatment(Message message, byte[] packetDatas, AccountUC account)
        {
            GameFightSpectatorJoinMessage msg = (GameFightSpectatorJoinMessage)message;

            using (BigEndianReader reader = new BigEndianReader(packetDatas))
            {
                msg.Deserialize(reader);
            }
        }
Esempio n. 23
0
        public static void IdentificationFailedMessageTreatment(Message message, byte[] packetDatas, AccountUC account)
        {
            IdentificationFailedMessage identificationFailedMessage = (IdentificationFailedMessage)message;

            account.Log(new ErrorTextInformation("Echec de l'identification."), 0);
            using (BigEndianReader reader = new BigEndianReader(packetDatas))
            {
                identificationFailedMessage.Deserialize(reader);
            }
            IdentificationFailureReason.Test((IdentificationFailureReasonEnum)identificationFailedMessage.Reason, account);
            account.SocketManager.DisconnectFromGUI();
        }
Esempio n. 24
0
        public static void GameActionFightPointsVariationMessageTreatment(Message message, byte[] packetDatas, AccountUC account)
        {
            GameActionFightPointsVariationMessage msg = (GameActionFightPointsVariationMessage)message;

            using (BigEndianReader reader = new BigEndianReader(packetDatas))
            {
                msg.Deserialize(reader);
            }
            if (account.Fight != null)
            {
                BFighter fighter = (BFighter)account.Fight.GetFighter(msg.targetId);
                if (fighter != null)
                {
                    switch (msg.actionId)
                    {
                    case 101:
                    case 102:
                    case 120:
                        fighter.ActionPoints = (fighter.ActionPoints + msg.delta);
                        break;

                    case 78:
                    case 127:
                    case 129:
                        fighter.MovementPoints = (fighter.MovementPoints + msg.delta);
                        break;
                    }
                }
            }
        }
Esempio n. 25
0
 public CLIParser(AccountUC Account)
 {
     this.account = Account;
 }
Esempio n. 26
0
 public Gather(AccountUC Account)
 {
     account = Account;
 }
Esempio n. 27
0
 public Treatment(AccountUC accountform)
 {
     GetTypes("BlueSheep");
     account = accountform;
 }
Esempio n. 28
0
        public static void ServerListMessageTreatment(Message message, byte[] packetDatas, AccountUC account)
        {
            ServersListMessage msg = new ServersListMessage();

            using (BigEndianReader reader = new BigEndianReader(packetDatas))
            {
                msg.Deserialize(reader);
            }

            account.Log(new ConnectionTextInformation("< --- Probably, your server is under maintenance --- >"), 0);
            msg.Servers.ForEach(server => account.Log(new ConnectionTextInformation("< --- Server : " +
                                                                                    BlueSheep.Common.Data.I18N.GetText((int)GameData.GetDataObject(D2oFileEnum.Servers, server.ObjectID).Fields["nameId"])
                                                                                    + " Status : " + ((ServerStatusEnum)server.Status).Description() + " --- >"), 0));

            //foreach (GameServerInformations gsi in msg.servers)
            //{
            //    account.Log(new ConnectionTextInformation("Server : "+
            //        IntelliSense.ServersList.Where(server => server.Id == gsi.id).FirstOrDefault().Name), 0);
            //}

            account.Log(new ConnectionTextInformation("Serveur complet."), 0);
            account.TryReconnect(600);
        }
Esempio n. 29
0
 public static void CheckIntegrityMessageTreatment(Message message, byte[] packetDatas, AccountUC account)
 {
     //using (BigEndianWriter writer = new BigEndianWriter())
     //{
     //    writer.WriteBytes(packetDatas);
     //    MessagePackaging pack = new MessagePackaging(writer);
     //    pack.Pack(6372);
     //    account.SocketManager.Send(pack.Writer.Content);
     //    account.Log(new BotTextInformation("Raw data traité avec succès."), 0);
     //}
 }
Esempio n. 30
0
 public static void HelloGameMessageTreatment(Message message, byte[] packetDatas, AccountUC account)
 {
     if (!account.IsMITM)
     {
         AuthenticationTicketMessage authenticationTicketMessage = new AuthenticationTicketMessage(GameConstants.Lang,
                                                                                                   account.Ticket);
         account.SocketManager.Send(authenticationTicketMessage);
     }
 }
Esempio n. 31
0
 public static void AuthenticationTicketAcceptedMessageTreatment(Message message, byte[] packetDatas, AccountUC account)
 {
     if (!account.IsMITM)
     {
         CharactersListRequestMessage charactersListRequestMessage = new CharactersListRequestMessage();
         account.SocketManager.Send(charactersListRequestMessage);
     }
 }
Esempio n. 32
0
        public static void AuthenticationTicketAcceptedRefusedTreatment(Message message, byte[] packetDatas, AccountUC account)
        {
            AuthenticationTicketRefusedMessage msg = new AuthenticationTicketRefusedMessage();

            using (BigEndianReader reader = new BigEndianReader(packetDatas))
            {
                msg.Deserialize(reader);
            }
            account.Log(new ErrorTextInformation("Error : Authentication Ticket Refused"), 0);
        }
Esempio n. 33
0
 public CaracUC(AccountUC Account)
 {
     InitializeComponent();
     account = Account;
 }
Esempio n. 34
0
        public static void GameFightTurnEndMessageTreatment(Message message, byte[] packetDatas, AccountUC account)
        {
            GameFightTurnEndMessage msg = (GameFightTurnEndMessage)message;

            using (BigEndianReader reader = new BigEndianReader(packetDatas))
            {
                msg.Deserialize(reader);
            }
            if (msg.id == account.CharacterBaseInformations.id)
            {
                int        num4 = 0;
                List <int> list = new List <int>();
                account.Fight.IsFighterTurn = false;
                account.Fight.TotalLaunchBySpell.Clear();       //Nettoyage des variables de vérification de lancement d'un sort
                account.Fight.TotalLaunchByCellBySpell.Clear(); //Nettoyage des variables de vérification de lancement d'un sort
                for (int i = 0; i < account.Fight.DurationByEffect.Keys.Count; i++)
                {
                    Dictionary <int, int> durationPerEffect = account.Fight.DurationByEffect;
                    num4 = Enumerable.ElementAtOrDefault <int>(account.Fight.DurationByEffect.Keys, i);
                    durationPerEffect[num4] = (durationPerEffect[num4] - 1);
                    if (account.Fight.DurationByEffect[Enumerable.ElementAtOrDefault <int>(account.Fight.DurationByEffect.Keys, i)] <= 0)
                    {
                        list.Add(Enumerable.ElementAtOrDefault <int>(account.Fight.DurationByEffect.Keys, i));
                    }
                }
                while (list.Count > 0)
                {
                    account.Fight.DurationByEffect.Remove(list[0]);
                    list.RemoveAt(0);
                }
                for (int i = 0; i < account.Fight.LastTurnLaunchBySpell.Keys.Count; i++)
                {
                    Dictionary <int, int> dictionary = account.Fight.LastTurnLaunchBySpell;
                    num4             = Enumerable.ElementAtOrDefault <int>(account.Fight.LastTurnLaunchBySpell.Keys, i);
                    dictionary[num4] = (dictionary[num4] - 1);
                    if (account.Fight.LastTurnLaunchBySpell[Enumerable.ElementAtOrDefault <int>(account.Fight.LastTurnLaunchBySpell.Keys, i)] <= 0)
                    {
                        list.Add(Enumerable.ElementAtOrDefault <int>(account.Fight.LastTurnLaunchBySpell.Keys, i));
                    }
                }
                while (list.Count > 0)
                {
                    account.Fight.LastTurnLaunchBySpell.Remove(list[0]);
                    list.RemoveAt(0);
                }
                account.Log(new BotTextInformation("Fin du tour"), 5);
            }
            BFighter fighter = (BFighter)account.Fight.GetFighter(msg.id);

            if (fighter != null)
            {
                fighter.ActionPoints   = fighter.GameFightMinimalStats.maxActionPoints;
                fighter.MovementPoints = fighter.GameFightMinimalStats.maxMovementPoints;
            }
        }