コード例 #1
0
 public _0xA9CharStartingLocation(UOStream Data)
     : base(Data)
 {
     _length = Data.ReadShort();
     NumberOfChars = Data.ReadBit();
     for (int i = 0; i < NumberOfChars; i++)
     {
         Characters.Add((byte)(i+1),Data.ReadString(30));
     }
     NumberStartingCities = Data.ReadBit();
     for (int i = 0; i < NumberStartingCities; i++)
     {
         byte Index = Data.ReadBit();
         string CityName = Data.ReadString(32);
         string AreaName = Data.ReadString(32);
         int X = Data.ReadInt();
         int Y = Data.ReadInt();
         int Z = Data.ReadInt();
         int MapID = Data.ReadInt();
         int cliloc = Data.ReadInt();
         int zero = Data.ReadInt();
     }
     if (Data.Position < _length)
     {
         Data.Position = _length;
     }
 }
コード例 #2
0
        //public List<string> TextToAdd = new List<string>();
        public _0xD6MegaCliloc(UOStream Data)
            : base(Data)
        {
            length = Data.ReadShort();
            unknown1 = Data.ReadShort();
            if (unknown1 != 0x0001)
            {
                this.Data.Position -= 2;
                for (int i = 0; i < length - 3 / 4; i++)
                    RequestedItems.Add(Data.ReadInt());
                return;
            }
            Serial = Data.ReadInt();
            unknown2 = Data.ReadShort();
            OwnerID = Data.ReadInt();
            List<string> Cliocs = new List<string>();
            while(Data.Position + 6 <= Data.Length)
            {
                int MessageNumber = Data.ReadInt();
                short textlen = Data.ReadShort();

                if(textlen > 0)
                {
                    string _args = Data.ReadString(textlen);
                    Cliocs.Add(Helpers.Cliloc.constructCliLoc(Helpers.Cliloc.Table[MessageNumber].ToString(), _args));
                }

                Cliocs.Add(Helpers.Cliloc.Table[MessageNumber].ToString());
            }
            Data.Position += 4;
                  //TODO FINISH THIS
        }
コード例 #3
0
        public _0xB1GumpMenuSelection(UOStream Data)
            : base(Data)
        {
            length = Data.ReadShort();

             GumpID = Data.ReadInt();
             GumpType = Data.ReadInt();
             ButtonID = Data.ReadInt();
             SwitchCount = Data.ReadInt();
             if (SwitchCount > 0)
             {
                 for (int i = 0; i <= SwitchCount; i++)
                 {
                     SwitchID.Add(Data.ReadInt());
                 }
             }

             TextCount = Data.ReadInt();
             if (TextCount > 0)
             {
                 for (int i = 0; i <= TextCount; i++)
                 {
                     TextID.Add(Data.ReadShort());
                     TextLength.Add(Data.ReadShort());
                     UnicodeText.Add(Data.ReadString(TextLength[i] * 2));
                 }
             }
        }
コード例 #4
0
 public _0xBDClientVersion(UOStream Data)
     : base(Data)
 {
     _length = Data.ReadShort();
     if(_length > 3)
     Version = Data.ReadString(_length - 3);
 }
コード例 #5
0
 public _0xB0SendGumpMenuDialog(UOStream Data)
     : base(Data)
 {
     length = Data.ReadShort();
     ID = Data.ReadInt();
     GumpID = Data.ReadInt();
     X = Data.ReadInt();
     Y = Data.ReadInt();
     commands = Data.ReadString(Data.ReadShort());
     numTextLines = Data.ReadShort();
     for (int i = 0; i <= numTextLines; i++)
     {
         Text.Add(Data.ReadString(Data.ReadShort()));
     }
     Logger.Log(this.ToString());
 }
コード例 #6
0
 public _0x88OpenPaperDoll(UOStream Data)
     : base(Data)
 {
     this.Serial = Data.ReadInt();
     this.Text = Data.ReadString(60);
     this.Flags = Data.ReadBit();
 }
コード例 #7
0
 public _0x1CSendSpeech(UOStream Data)
     : base(Data)
 {
     length = Data.ReadShort();
     ObjectID = Data.ReadInt();
     GraphicID = Data.ReadShort();
     TypeOfText = Data.ReadBit();
     TextColor = Data.ReadShort();
     Font = Data.ReadShort();
     Name = Data.ReadString(30); // try normal read?
     Message = Data.ReadNullTermString();
 }
コード例 #8
0
 public _0xAEUnicodeSpeech(UOStream Data)
     : base(Data)
 {
     _length = Data.ReadShort();
     Serial = Data.ReadInt();
     GraphicID = Data.ReadShort();
     type = Data.ReadBit();
     hue = Data.ReadShort();
     font = Data.ReadShort();
     Language = Data.ReadInt();
     SpeakerName = Data.ReadString(30);
     Message = Data.ReadNullTermString();
 }
コード例 #9
0
 public _0xC1ClilocMessage(UOStream Data)
     : base(Data)
 {
     _length = Data.ReadShort();
     Serial = Data.ReadInt();
     GraphicID = Data.ReadShort();
     type = Data.ReadBit();
     hue = Data.ReadShort();
     font = Data.ReadShort();
     MessageNumber = Data.ReadInt();
     SpeakerName = Data.ReadString(30);
     _args = Data.ReadNullTermString();
     Message = Helpers.Cliloc.constructCliLoc(Helpers.Cliloc.Table[MessageNumber].ToString(), _args);
 }
コード例 #10
0
 public _0xA8GameServerList(UOStream Data)
     : base(Data)
 {
     _length = Data.ReadShort();
     Flag = Data.ReadBit();
     NumServers = Data.ReadShort();
     if(NumServers > 0)
         for (int i = 0; i < NumServers; i++)
         {
             Servers.Add(Data.ReadShort(), Data.ReadString(32));
             Data.ReadBit();//percentfull
             Data.ReadBit(); // TimeZone
             Data.ReadInt();// IP
         }
 }
コード例 #11
0
ファイル: 0xD6MegaCliloc.cs プロジェクト: DarkLotus/UOnet
 public _0xD6MegaCliloc(UOStream Data)
     : base(Data)
 {
     Helpers.Cliloc Clilocdata = new Helpers.Cliloc();
     Helpers.Cliloc.LoadStringList("enu");
     length = Data.ReadShort();
     unknown1 = Data.ReadShort();
     Serial = Data.ReadInt();
     unknown2 = Data.ReadShort();
     OwnerID = Data.ReadInt();
     List<string> Cliocs = new List<string>();
     while(Data.Position + 6 < Data.Length)
     {
         ClilocIDs.Add(Data.ReadInt());
         TextToAdd.Add(Data.ReadString(Data.ReadShort()));
         Cliocs.Add(Helpers.Cliloc.Table[ClilocIDs.Last()].ToString());
     }
           //TODO FINISH THIS
 }
コード例 #12
0
 public _0x11StatusBarInfo(UOStream Data)
     : base(Data)
 {
     _length = Data.ReadShort();
     PlayerID = Data.ReadInt();
     PlayerName = Data.ReadString(30);
     HitsCurrent = Data.ReadShort();
     NameChangeFlag = Data.ReadBit();
     StatusFlag = Data.ReadBit();
     SexRace = Data.ReadBit();
     Str = Data.ReadShort();
     Dex = Data.ReadShort();
     Int = Data.ReadShort();
     StamCurrent = Data.ReadShort();
     StamMax = Data.ReadShort();
     ManaCurrent = Data.ReadShort();
     ManaMax = Data.ReadShort();
     Gold = Data.ReadInt();
     AR = Data.ReadShort();
     Weight = Data.ReadShort();
     if (StatusFlag >= 0x5)
     {
         MaxWeight = Data.ReadShort();
         Race = Data.ReadBit();
     }
     if (StatusFlag >= 0x3)
     {
         StatCap = Data.ReadShort();
         Followers = Data.ReadBit();
         FollowersMax = Data.ReadBit();
     }
     if (StatusFlag >= 0x04)
     {
         FireRes = Data.ReadShort();
         ColdRes = Data.ReadShort();
         PoisonRes = Data.ReadShort();
         EnergyRes = Data.ReadShort();
         Luck = Data.ReadShort();
         DmgMin = Data.ReadShort();
         DmgMax = Data.ReadShort();
         TithingPoints = Data.ReadInt();
     }
     if (StatusFlag >= 0x06)
     {
         HitChanceIncrease = Data.ReadShort();
         SwingSpeedIncrease = Data.ReadShort();
         DamageChanceIncrease = Data.ReadShort();
         LowerReagCost = Data.ReadShort();
         HitsRegen = Data.ReadShort();
         StamRegen = Data.ReadShort();
         ManaRegen = Data.ReadShort();
         ReflectPhys = Data.ReadShort();
         EnhancePotions = Data.ReadShort();
         DefenseChanceIncrease = Data.ReadShort();
         SpellDamageIncrease = Data.ReadShort();
         FasterCastRecovery = Data.ReadShort();
         FasterCasting = Data.ReadShort();
         LowerManaCost = Data.ReadShort();
         StrIncrease = Data.ReadShort();
         DexIncrease = Data.ReadShort();
         IntIncrease = Data.ReadShort();
         HitsIncrease = Data.ReadShort();
         StamIncrease = Data.ReadShort();
         ManaIncrease = Data.ReadShort();
         MaxHitsIncrease = Data.ReadShort();
         MaxStamIncrease  = Data.ReadShort();
         MaxManaIncrease = Data.ReadShort();
     }
 }