Ejemplo n.º 1
0
        /// <summary>
        /// Change a character's stat value.
        /// </summary>
        /// <param name="statAttribute">Stat to change</param>
        /// <param name="newStatValue">New stat value</param>
        public void SetStat(CharacterAttributeEnum statAttribute, ushort newStatValue)
        {
            switch (statAttribute)
            {
            case CharacterAttributeEnum.Strength:
                SetStat(CharacterStatEnum.Strength, newStatValue);
                break;

            case CharacterAttributeEnum.Dexterity:
                SetStat(CharacterStatEnum.Dexterity, newStatValue);
                break;

            case CharacterAttributeEnum.Reaction:
                SetStat(CharacterStatEnum.Reaction, newStatValue);
                break;

            case CharacterAttributeEnum.Intelligence:
                SetStat(CharacterStatEnum.Intelligence, newStatValue);
                break;

            case CharacterAttributeEnum.Luck:
                SetStat(CharacterStatEnum.Luck, newStatValue);
                break;

            case CharacterAttributeEnum.Wisdom:
                SetStat(CharacterStatEnum.Wisdom, newStatValue);
                break;

            default:
                return;
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Gets a character's attribute.
        /// </summary>
        public uint GetAttributeValue(CharacterAttributeEnum attribute)
        {
            switch (attribute)
            {
            case CharacterAttributeEnum.Grow:
                return((uint)Mode);

            case CharacterAttributeEnum.Level:
                return(Level);

            case CharacterAttributeEnum.Money:
                return(Gold);

            case CharacterAttributeEnum.StatPoint:
                return(StatPoint);

            case CharacterAttributeEnum.SkillPoint:
                return(SkillPoint);

            case CharacterAttributeEnum.Strength:
                return(Strength);

            case CharacterAttributeEnum.Dexterity:
                return(Dexterity);

            case CharacterAttributeEnum.Reaction:
                return(Reaction);

            case CharacterAttributeEnum.Intelligence:
                return(Intelligence);

            case CharacterAttributeEnum.Luck:
                return(Luck);

            case CharacterAttributeEnum.Wisdom:
                return(Wisdom);

            // TODO: Investigate what these attributes represent
            case CharacterAttributeEnum.Hg:
            case CharacterAttributeEnum.Vg:
            case CharacterAttributeEnum.Cg:
            case CharacterAttributeEnum.Og:
            case CharacterAttributeEnum.Ig:
                return(0);

            case CharacterAttributeEnum.Exp:
                return(Exp);

            case CharacterAttributeEnum.Kills:
                return(Kills);

            case CharacterAttributeEnum.Deaths:
                return(Deaths);

            default:
                return(0);
            }
        }
Ejemplo n.º 3
0
 static public extern bool FillConsoleOutputAttribute(Microsoft.Win32.SafeHandles.SafeFileHandle ConsoleOutput, CharacterAttributeEnum Attribute, uint Length, Coord WriteCoord, out uint NumberOfAttrsWritten);
Ejemplo n.º 4
0
 public void SendAttribute(CharacterAttributeEnum attribute) =>
 _packetsHelper.SendAttribute(Client, attribute, GetAttributeValue(attribute));
Ejemplo n.º 5
0
 public CharacterAttribute(int nAttribute)
 {
     Value = (CharacterAttributeEnum)nAttribute;
 }
Ejemplo n.º 6
0
 public void SetCharacterAttribute(System.ConsoleColor Foreground, System.ConsoleColor Background)
 {
     Value = (CharacterAttributeEnum)(((ushort)Background << 4) | (ushort)Foreground);
 }
Ejemplo n.º 7
0
 public CharacterAttribute(CharacterAttributeEnum nAttribute)
 {
     Value = nAttribute;
 }
Ejemplo n.º 8
0
 internal void SendAttribute(IWorldClient client, CharacterAttributeEnum attribute, uint attributeValue)
 {
     using var packet = new Packet(PacketType.CHARACTER_ATTRIBUTE_SET);
     packet.Write(new CharacterAttribute(attribute, attributeValue).Serialize());
     client.SendPacket(packet);
 }
Ejemplo n.º 9
0
 public CharacterAttribute(CharacterAttributeEnum attribute, uint value)
 {
     Attribute = (byte)attribute;
     Value     = attribute == CharacterAttributeEnum.Exp ? value / 10 : value; // Normalize experience for ep8 game
 }
Ejemplo n.º 10
0
 public void Deconstruct(out CharacterAttributeEnum attribute, out uint value, out string charname)
 {
     attribute = Attribute;
     value     = Value;
     charname  = Name;
 }
Ejemplo n.º 11
0
 public GMSetAttributePacket(IPacketStream packet)
 {
     Attribute = (CharacterAttributeEnum)packet.Read <byte>();
     Value     = packet.Read <uint>();
     Name      = packet.ReadString(21);
 }