Example #1
0
        public static void SetTitleRequest(IRealmClient client, RealmPacketIn packet)
        {
            packet.Position += 2;
            short num1 = packet.ReadInt16();
            short num2 = packet.ReadInt16();

            if (num1 != (short)-1)
            {
                if ((Decimal)num1 > new Decimal(418) || num1 < (short)-1)
                {
                    client.ActiveCharacter.YouAreFuckingCheater("Wrong title id : " + (object)num1, 1);
                    return;
                }

                if (!client.ActiveCharacter.GetedTitles.GetBit((int)num1))
                {
                    client.ActiveCharacter.YouAreFuckingCheater("Tries to set not owned title id : " + (object)num1,
                                                                1);
                    return;
                }

                client.ActiveCharacter.Record.PreTitleId = num1;
            }

            if (num2 != (short)-1)
            {
                if ((Decimal)num2 > new Decimal(418) || num2 < (short)-1)
                {
                    client.ActiveCharacter.YouAreFuckingCheater("Wrong title id : " + (object)num1, 1);
                    return;
                }

                if (!client.ActiveCharacter.GetedTitles.GetBit((int)num2))
                {
                    client.ActiveCharacter.YouAreFuckingCheater("Tries to set not owned title id : " + (object)num2,
                                                                1);
                    return;
                }

                client.ActiveCharacter.Record.PostTitleId = num2;
            }

            GlobalHandler.BroadcastCharacterPlaceInTitleRatingResponse(client.ActiveCharacter);
        }
Example #2
0
        //update thread
        private static void UpdateTitleRating()
        {
            var ratings = _ratings.Values.ToList().OrderByDescending(r => r.TotalPoints).ToList();
            var place   = 1;

            foreach (var characterTitleRating in ratings)
            {
                var chr = World.GetCharacter(characterTitleRating.CharacterName, true);
                if (chr != null && chr.PlaceInRating != place)
                {
                    chr.PlaceInRating = place;
                    chr.SendInfoMsg(string.Format("أنت الان رقم {0} في ترتيب الألقاب.", place)); //رسائل الالقاب
                    if (place <= 3)
                    {
                        World.BroadcastMsg("نظام الألقاب", string.Format("{0} أصبح الان رقم {2} في نظام الألقاب ب  {1} نقطة لقـب.", chr.Name, chr.Asda2TitlePoints, place), Color.Gold);
                    }
                    GlobalHandler.BroadcastCharacterPlaceInTitleRatingResponse(chr);
                }
                place++;
            }
        }
Example #3
0
        [PacketHandler(RealmServerOpCode.SetTitle)]//6067
        public static void SetTitleRequest(IRealmClient client, RealmPacketIn packet)
        {
            packet.Position += 2;
            var prefixTitleId  = packet.ReadInt16(); //default : 105Len : 2
            var postFixTitleId = packet.ReadInt16(); //default : -1Len : 2

            if (prefixTitleId != -1)
            {
                if (prefixTitleId > (decimal)Asda2TitleId.End || prefixTitleId < -1)
                {
                    client.ActiveCharacter.YouAreFuckingCheater("Wrong title id : " + prefixTitleId);
                    return;
                }
                if (!client.ActiveCharacter.GetedTitles.GetBit(prefixTitleId))
                {
                    client.ActiveCharacter.YouAreFuckingCheater("Tries to set not owned title id : " + prefixTitleId);
                    return;
                }
                client.ActiveCharacter.Record.PreTitleId = prefixTitleId;
            }
            if (postFixTitleId != -1)
            {
                if (postFixTitleId > (decimal)Asda2TitleId.End || postFixTitleId < -1)
                {
                    client.ActiveCharacter.YouAreFuckingCheater("Wrong title id : " + prefixTitleId);
                    return;
                }
                if (!client.ActiveCharacter.GetedTitles.GetBit(postFixTitleId))
                {
                    client.ActiveCharacter.YouAreFuckingCheater("Tries to set not owned title id : " + postFixTitleId);
                    return;
                }
                client.ActiveCharacter.Record.PostTitleId = postFixTitleId;
            }
            GlobalHandler.BroadcastCharacterPlaceInTitleRatingResponse(client.ActiveCharacter);
        }