### Summary * Added World.NewVirtual for creating virtual serial numbers * Reserved range 0x7EEEEEEE to 0x7FFFFFFF for virtual serials * Hair and Facial hair (for mobiles) now use virtual serials instead of FakeSerial() functions * Consolidated virtual hair to a single `VirtualHairInfo` class. Corpse hair and facial hair now persists across save/load and hair and facial hair no longer teleport to newest corpse.
131 lines
No EOL
3 KiB
JSON
Generated
131 lines
No EOL
3 KiB
JSON
Generated
{
|
|
"version": 14,
|
|
"type": "Server.Items.Corpse",
|
|
"properties": [
|
|
{
|
|
"name": "RestoreEquip",
|
|
"type": "System.Collections.Generic.List\u003CServer.Item\u003E",
|
|
"rule": "ListMigrationRule",
|
|
"ruleArguments": [
|
|
"Server.Item",
|
|
"SerializableInterfaceMigrationRule"
|
|
]
|
|
},
|
|
{
|
|
"name": "Flags",
|
|
"type": "Server.Items.CorpseFlag",
|
|
"rule": "EnumMigrationRule"
|
|
},
|
|
{
|
|
"name": "TimeOfDeath",
|
|
"type": "System.DateTime",
|
|
"rule": "PrimitiveTypeMigrationRule",
|
|
"ruleArguments": [
|
|
"DeltaTime"
|
|
]
|
|
},
|
|
{
|
|
"name": "RestoreTable",
|
|
"type": "System.Collections.Generic.Dictionary\u003CServer.Item, Server.Point3D\u003E",
|
|
"rule": "DictionaryMigrationRule",
|
|
"ruleArguments": [
|
|
"Server.Item",
|
|
"SerializableInterfaceMigrationRule",
|
|
"0",
|
|
"Server.Point3D",
|
|
"PrimitiveUOTypeMigrationRule",
|
|
"1",
|
|
"Point3D"
|
|
]
|
|
},
|
|
{
|
|
"name": "DecayTimer",
|
|
"type": "Server.Timer",
|
|
"rule": "TimerMigrationRule",
|
|
"ruleArguments": [
|
|
"@TimerDrift"
|
|
]
|
|
},
|
|
{
|
|
"name": "Looters",
|
|
"type": "System.Collections.Generic.HashSet\u003CServer.Mobile\u003E",
|
|
"rule": "HashSetMigrationRule",
|
|
"ruleArguments": [
|
|
"Server.Mobile",
|
|
"SerializableInterfaceMigrationRule"
|
|
]
|
|
},
|
|
{
|
|
"name": "Killer",
|
|
"type": "Server.Mobile",
|
|
"rule": "SerializableInterfaceMigrationRule"
|
|
},
|
|
{
|
|
"name": "Aggressors",
|
|
"type": "System.Collections.Generic.List\u003CServer.Mobile\u003E",
|
|
"rule": "ListMigrationRule",
|
|
"ruleArguments": [
|
|
"Server.Mobile",
|
|
"SerializableInterfaceMigrationRule"
|
|
]
|
|
},
|
|
{
|
|
"name": "Owner",
|
|
"type": "Server.Mobile",
|
|
"rule": "SerializableInterfaceMigrationRule"
|
|
},
|
|
{
|
|
"name": "CorpseName",
|
|
"type": "string",
|
|
"rule": "PrimitiveTypeMigrationRule",
|
|
"ruleArguments": [
|
|
""
|
|
]
|
|
},
|
|
{
|
|
"name": "AccessLevel",
|
|
"type": "Server.AccessLevel",
|
|
"rule": "EnumMigrationRule"
|
|
},
|
|
{
|
|
"name": "Guild",
|
|
"type": "Server.Guilds.Guild",
|
|
"rule": "SerializableInterfaceMigrationRule"
|
|
},
|
|
{
|
|
"name": "Kills",
|
|
"type": "int",
|
|
"rule": "PrimitiveTypeMigrationRule",
|
|
"ruleArguments": [
|
|
""
|
|
]
|
|
},
|
|
{
|
|
"name": "EquipItems",
|
|
"type": "System.Collections.Generic.List\u003CServer.Item\u003E",
|
|
"rule": "ListMigrationRule",
|
|
"ruleArguments": [
|
|
"Server.Item",
|
|
"SerializableInterfaceMigrationRule"
|
|
]
|
|
},
|
|
{
|
|
"name": "Hair",
|
|
"type": "Server.VirtualHairInfo",
|
|
"rule": "RawSerializableMigrationRule",
|
|
"ruleArguments": [
|
|
"",
|
|
"@CanBeNull"
|
|
]
|
|
},
|
|
{
|
|
"name": "FacialHair",
|
|
"type": "Server.VirtualHairInfo",
|
|
"rule": "RawSerializableMigrationRule",
|
|
"ruleArguments": [
|
|
"",
|
|
"@CanBeNull"
|
|
]
|
|
}
|
|
]
|
|
} |