* Adds `RaceFlag` to the `Race` object. This is `1 << RaceIndex` * Replaces `RequiredRace` with `RequiredRaces` for items. * Adds convenience flags for `RequiredRaces` ```cs public const int AllowAllRaces = 0x7; // Race.Human.RaceFlag | Race.Elf.RaceFlag | Race.Gargoyle.RaceFlag public const int AllowHumanOrElves = 0x3; // Race.Human.RaceFlag | Race.Elf.RaceFlag public const int AllowElvesOnly = 0x2; // Race.Elf.RaceFlag public const int AllowGargoylesOnly = 0x4; // Race.Gargoyle.RaceFlag ``` * Example usage on an item: ```cs public override int RequiredRaces => Race.AllowHumanOrElves; ``` * Adds Wood and Stone armor material types * Updates Woodland armor to Wood * Adds proper messaging for race restrictions * Adds gargoyle only for object properties * Adds `CheckRace` functions for validating if a race or mobile can use the item: ```cs bool CheckRace(Race race); bool CheckRace(Mobile from, bool message = true); ```
64 lines
947 B
C#
64 lines
947 B
C#
namespace Server.Items
|
|
{
|
|
public enum ArmorQuality
|
|
{
|
|
Low,
|
|
Regular,
|
|
Exceptional
|
|
}
|
|
|
|
public enum ArmorDurabilityLevel
|
|
{
|
|
Regular,
|
|
Durable,
|
|
Substantial,
|
|
Massive,
|
|
Fortified,
|
|
Indestructible
|
|
}
|
|
|
|
public enum ArmorProtectionLevel
|
|
{
|
|
Regular,
|
|
Defense,
|
|
Guarding,
|
|
Hardening,
|
|
Fortification,
|
|
Invulnerability
|
|
}
|
|
|
|
public enum ArmorBodyType
|
|
{
|
|
Gorget,
|
|
Gloves,
|
|
Helmet,
|
|
Arms,
|
|
Legs,
|
|
Chest,
|
|
Shield
|
|
}
|
|
|
|
public enum ArmorMaterialType
|
|
{
|
|
Cloth,
|
|
Leather,
|
|
Studded,
|
|
Bone,
|
|
Spined,
|
|
Horned,
|
|
Barbed,
|
|
Ringmail,
|
|
Chainmail,
|
|
Plate,
|
|
Dragon,
|
|
Wood,
|
|
Stone
|
|
}
|
|
|
|
public enum ArmorMeditationAllowance
|
|
{
|
|
All,
|
|
Half,
|
|
None
|
|
}
|
|
}
|