전체 코트.
전체 코드는 다음과 같습니다.
local PlayerHousingConstants =
{
Tables =
{
{
Name = "HousingDecorFlags",
Type = "Enumeration",
NumValues = 2,
MinValue = 1,
MaxValue = 2,
Fields =
{
{ Name = "Exterior", Type = "HousingDecorFlags", EnumValue = 1 },
{ Name = "Interior", Type = "HousingDecorFlags", EnumValue = 2 },
},
},
{
Name = "HousingDecorModelType",
Type = "Enumeration",
NumValues = 3,
MinValue = 0,
MaxValue = 2,
Fields =
{
{ Name = "None", Type = "HousingDecorModelType", EnumValue = 0 },
{ Name = "M2", Type = "HousingDecorModelType", EnumValue = 1 },
{ Name = "Wmo", Type = "HousingDecorModelType", EnumValue = 2 },
},
},
{
Name = "HousingDecorTheme",
Type = "Enumeration",
NumValues = 5,
MinValue = 0,
MaxValue = 4,
Fields =
{
{ Name = "None", Type = "HousingDecorTheme", EnumValue = 0 },
{ Name = "Folk", Type = "HousingDecorTheme", EnumValue = 1 },
{ Name = "Rugged", Type = "HousingDecorTheme", EnumValue = 2 },
{ Name = "Generic", Type = "HousingDecorTheme", EnumValue = 3 },
{ Name = "Opulent", Type = "HousingDecorTheme", EnumValue = 4 },
},
},
{
Name = "HousingDecorType",
Type = "Enumeration",
NumValues = 5,
MinValue = 0,
MaxValue = 4,
Fields =
{
{ Name = "None", Type = "HousingDecorType", EnumValue = 0 },
{ Name = "Floor", Type = "HousingDecorType", EnumValue = 1 },
{ Name = "Wall", Type = "HousingDecorType", EnumValue = 2 },
{ Name = "Ceiling", Type = "HousingDecorType", EnumValue = 3 },
{ Name = "Tabletop", Type = "HousingDecorType", EnumValue = 4 },
},
},
{
Name = "HousingExteriorComponentSize",
Type = "Enumeration",
NumValues = 4,
MinValue = 1,
MaxValue = 4,
Fields =
{
{ Name = "Any", Type = "HousingExteriorComponentSize", EnumValue = 1 },
{ Name = "Small", Type = "HousingExteriorComponentSize", EnumValue = 2 },
{ Name = "Medium", Type = "HousingExteriorComponentSize", EnumValue = 3 },
{ Name = "Large", Type = "HousingExteriorComponentSize", EnumValue = 4 },
},
},
{
Name = "HousingExteriorComponentTheme",
Type = "Enumeration",
NumValues = 1,
MinValue = 1,
MaxValue = 1,
Fields =
{
{ Name = "Human", Type = "HousingExteriorComponentTheme", EnumValue = 1 },
},
},
{
Name = "HousingPermission",
Type = "Enumeration",
NumValues = 8,
MinValue = 1,
MaxValue = 128,
Fields =
{
{ Name = "AddDecor", Type = "HousingPermission", EnumValue = 1 },
{ Name = "ChangeDecorParam", Type = "HousingPermission", EnumValue = 2 },
{ Name = "EnterDecorEditMode", Type = "HousingPermission", EnumValue = 4 },
{ Name = "MoveDecor", Type = "HousingPermission", EnumValue = 8 },
{ Name = "RemoveDecor", Type = "HousingPermission", EnumValue = 16 },
{ Name = "SaveHouse", Type = "HousingPermission", EnumValue = 32 },
{ Name = "SelectDecor", Type = "HousingPermission", EnumValue = 64 },
{ Name = "EditLayout", Type = "HousingPermission", EnumValue = 128 },
},
},
{
Name = "HousingResult",
Type = "Enumeration",
NumValues = 18,
MinValue = 0,
MaxValue = 17,
Fields =
{
{ Name = "Success", Type = "HousingResult", EnumValue = 0 },
{ Name = "DbError", Type = "HousingResult", EnumValue = 1 },
{ Name = "RpcFailure", Type = "HousingResult", EnumValue = 2 },
{ Name = "GenericFailure", Type = "HousingResult", EnumValue = 3 },
{ Name = "LockOperationFailed", Type = "HousingResult", EnumValue = 4 },
{ Name = "UnlockOperationFailed", Type = "HousingResult", EnumValue = 5 },
{ Name = "LockedByOtherPlayer", Type = "HousingResult", EnumValue = 6 },
{ Name = "DecorNotFound", Type = "HousingResult", EnumValue = 7 },
{ Name = "HouseNotFound", Type = "HousingResult", EnumValue = 8 },
{ Name = "PermissionDenied", Type = "HousingResult", EnumValue = 9 },
{ Name = "NotInDecorEditMode", Type = "HousingResult", EnumValue = 10 },
{ Name = "NotInsideHouse", Type = "HousingResult", EnumValue = 11 },
{ Name = "ServiceNotAvailable", Type = "HousingResult", EnumValue = 12 },
{ Name = "RoomNotFound", Type = "HousingResult", EnumValue = 13 },
{ Name = "RoomUpdateFailed", Type = "HousingResult", EnumValue = 14 },
{ Name = "NotInLayoutEditMode", Type = "HousingResult", EnumValue = 15 },
{ Name = "PlotNotFound", Type = "HousingResult", EnumValue = 16 },
{ Name = "MaxDecorReached", Type = "HousingResult", EnumValue = 17 },
},
},
{
Name = "HousingRoomComponentDoorType",
Type = "Enumeration",
NumValues = 3,
MinValue = 0,
MaxValue = 2,
Fields =
{
{ Name = "None", Type = "HousingRoomComponentDoorType", EnumValue = 0 },
{ Name = "NarrowDoor", Type = "HousingRoomComponentDoorType", EnumValue = 1 },
{ Name = "LargeDoor", Type = "HousingRoomComponentDoorType", EnumValue = 2 },
},
},
{
Name = "HousingRoomComponentOptionType",
Type = "Enumeration",
NumValues = 3,
MinValue = 0,
MaxValue = 2,
Fields =
{
{ Name = "Cosmetic", Type = "HousingRoomComponentOptionType", EnumValue = 0 },
{ Name = "DoorwayWall", Type = "HousingRoomComponentOptionType", EnumValue = 1 },
{ Name = "Doorway", Type = "HousingRoomComponentOptionType", EnumValue = 2 },
},
},
{
Name = "HousingRoomComponentType",
Type = "Enumeration",
NumValues = 6,
MinValue = 0,
MaxValue = 5,
Fields =
{
{ Name = "None", Type = "HousingRoomComponentType", EnumValue = 0 },
{ Name = "Wall", Type = "HousingRoomComponentType", EnumValue = 1 },
{ Name = "Floor", Type = "HousingRoomComponentType", EnumValue = 2 },
{ Name = "Ceiling", Type = "HousingRoomComponentType", EnumValue = 3 },
{ Name = "Stairs", Type = "HousingRoomComponentType", EnumValue = 4 },
{ Name = "Pillar", Type = "HousingRoomComponentType", EnumValue = 5 },
},
},
{
Name = "HousingRoomFlags",
Type = "Enumeration",
NumValues = 2,
MinValue = 0,
MaxValue = 1,
Fields =
{
{ Name = "None", Type = "HousingRoomFlags", EnumValue = 0 },
{ Name = "BaseRoom", Type = "HousingRoomFlags", EnumValue = 1 },
},
},
},
};
APIDocumentation:AddDocumentationTable(PlayerHousingConstants);
출처와 잡설.
출처:
https://www.wowhead.com/news/additional-player-housing-information-possibly-found-on-cataclysm-classic-ptr-366294
아래 내용은 대격변 클래식 공개 테스트 서버에 데이터가 추가된 것이기 때문에, 잘못된 파일이거나 오래된 파일일 수도 있습니다.
(흥미.) 대격변 클래식 공개 테스트 서버에 추가된 하우징 관련 데이터.
대격변 클래식 공개 테스트 서버에서 한밤에 추가될 예정인 하우징 시스템과 관련되어 있어 보이는 데이터가 발견되었습니다. 이는 PlayerHousingConstantsDocumentation.lua라는 플레이어 하우징 상수 문서라는 파일입니다.
이 파일 안에는 다음과 같은 선택지가 있습니다.
하우징 장식 -
하우징 외부 -
허가 -
결과 -
하우징 방 요소 -
하우징 방 플래그 -
이를 종합해보면 다음과 같은 결론을 낼 수 있습니다.
전체 코트.
전체 코드는 다음과 같습니다.
local PlayerHousingConstants =
{
Tables =
{
{
Name = "HousingDecorFlags",
Type = "Enumeration",
NumValues = 2,
MinValue = 1,
MaxValue = 2,
Fields =
{
{ Name = "Exterior", Type = "HousingDecorFlags", EnumValue = 1 },
{ Name = "Interior", Type = "HousingDecorFlags", EnumValue = 2 },
},
},
{
Name = "HousingDecorModelType",
Type = "Enumeration",
NumValues = 3,
MinValue = 0,
MaxValue = 2,
Fields =
{
{ Name = "None", Type = "HousingDecorModelType", EnumValue = 0 },
{ Name = "M2", Type = "HousingDecorModelType", EnumValue = 1 },
{ Name = "Wmo", Type = "HousingDecorModelType", EnumValue = 2 },
},
},
{
Name = "HousingDecorTheme",
Type = "Enumeration",
NumValues = 5,
MinValue = 0,
MaxValue = 4,
Fields =
{
{ Name = "None", Type = "HousingDecorTheme", EnumValue = 0 },
{ Name = "Folk", Type = "HousingDecorTheme", EnumValue = 1 },
{ Name = "Rugged", Type = "HousingDecorTheme", EnumValue = 2 },
{ Name = "Generic", Type = "HousingDecorTheme", EnumValue = 3 },
{ Name = "Opulent", Type = "HousingDecorTheme", EnumValue = 4 },
},
},
{
Name = "HousingDecorType",
Type = "Enumeration",
NumValues = 5,
MinValue = 0,
MaxValue = 4,
Fields =
{
{ Name = "None", Type = "HousingDecorType", EnumValue = 0 },
{ Name = "Floor", Type = "HousingDecorType", EnumValue = 1 },
{ Name = "Wall", Type = "HousingDecorType", EnumValue = 2 },
{ Name = "Ceiling", Type = "HousingDecorType", EnumValue = 3 },
{ Name = "Tabletop", Type = "HousingDecorType", EnumValue = 4 },
},
},
{
Name = "HousingExteriorComponentSize",
Type = "Enumeration",
NumValues = 4,
MinValue = 1,
MaxValue = 4,
Fields =
{
{ Name = "Any", Type = "HousingExteriorComponentSize", EnumValue = 1 },
{ Name = "Small", Type = "HousingExteriorComponentSize", EnumValue = 2 },
{ Name = "Medium", Type = "HousingExteriorComponentSize", EnumValue = 3 },
{ Name = "Large", Type = "HousingExteriorComponentSize", EnumValue = 4 },
},
},
{
Name = "HousingExteriorComponentTheme",
Type = "Enumeration",
NumValues = 1,
MinValue = 1,
MaxValue = 1,
Fields =
{
{ Name = "Human", Type = "HousingExteriorComponentTheme", EnumValue = 1 },
},
},
{
Name = "HousingPermission",
Type = "Enumeration",
NumValues = 8,
MinValue = 1,
MaxValue = 128,
Fields =
{
{ Name = "AddDecor", Type = "HousingPermission", EnumValue = 1 },
{ Name = "ChangeDecorParam", Type = "HousingPermission", EnumValue = 2 },
{ Name = "EnterDecorEditMode", Type = "HousingPermission", EnumValue = 4 },
{ Name = "MoveDecor", Type = "HousingPermission", EnumValue = 8 },
{ Name = "RemoveDecor", Type = "HousingPermission", EnumValue = 16 },
{ Name = "SaveHouse", Type = "HousingPermission", EnumValue = 32 },
{ Name = "SelectDecor", Type = "HousingPermission", EnumValue = 64 },
{ Name = "EditLayout", Type = "HousingPermission", EnumValue = 128 },
},
},
{
Name = "HousingResult",
Type = "Enumeration",
NumValues = 18,
MinValue = 0,
MaxValue = 17,
Fields =
{
{ Name = "Success", Type = "HousingResult", EnumValue = 0 },
{ Name = "DbError", Type = "HousingResult", EnumValue = 1 },
{ Name = "RpcFailure", Type = "HousingResult", EnumValue = 2 },
{ Name = "GenericFailure", Type = "HousingResult", EnumValue = 3 },
{ Name = "LockOperationFailed", Type = "HousingResult", EnumValue = 4 },
{ Name = "UnlockOperationFailed", Type = "HousingResult", EnumValue = 5 },
{ Name = "LockedByOtherPlayer", Type = "HousingResult", EnumValue = 6 },
{ Name = "DecorNotFound", Type = "HousingResult", EnumValue = 7 },
{ Name = "HouseNotFound", Type = "HousingResult", EnumValue = 8 },
{ Name = "PermissionDenied", Type = "HousingResult", EnumValue = 9 },
{ Name = "NotInDecorEditMode", Type = "HousingResult", EnumValue = 10 },
{ Name = "NotInsideHouse", Type = "HousingResult", EnumValue = 11 },
{ Name = "ServiceNotAvailable", Type = "HousingResult", EnumValue = 12 },
{ Name = "RoomNotFound", Type = "HousingResult", EnumValue = 13 },
{ Name = "RoomUpdateFailed", Type = "HousingResult", EnumValue = 14 },
{ Name = "NotInLayoutEditMode", Type = "HousingResult", EnumValue = 15 },
{ Name = "PlotNotFound", Type = "HousingResult", EnumValue = 16 },
{ Name = "MaxDecorReached", Type = "HousingResult", EnumValue = 17 },
},
},
{
Name = "HousingRoomComponentDoorType",
Type = "Enumeration",
NumValues = 3,
MinValue = 0,
MaxValue = 2,
Fields =
{
{ Name = "None", Type = "HousingRoomComponentDoorType", EnumValue = 0 },
{ Name = "NarrowDoor", Type = "HousingRoomComponentDoorType", EnumValue = 1 },
{ Name = "LargeDoor", Type = "HousingRoomComponentDoorType", EnumValue = 2 },
},
},
{
Name = "HousingRoomComponentOptionType",
Type = "Enumeration",
NumValues = 3,
MinValue = 0,
MaxValue = 2,
Fields =
{
{ Name = "Cosmetic", Type = "HousingRoomComponentOptionType", EnumValue = 0 },
{ Name = "DoorwayWall", Type = "HousingRoomComponentOptionType", EnumValue = 1 },
{ Name = "Doorway", Type = "HousingRoomComponentOptionType", EnumValue = 2 },
},
},
{
Name = "HousingRoomComponentType",
Type = "Enumeration",
NumValues = 6,
MinValue = 0,
MaxValue = 5,
Fields =
{
{ Name = "None", Type = "HousingRoomComponentType", EnumValue = 0 },
{ Name = "Wall", Type = "HousingRoomComponentType", EnumValue = 1 },
{ Name = "Floor", Type = "HousingRoomComponentType", EnumValue = 2 },
{ Name = "Ceiling", Type = "HousingRoomComponentType", EnumValue = 3 },
{ Name = "Stairs", Type = "HousingRoomComponentType", EnumValue = 4 },
{ Name = "Pillar", Type = "HousingRoomComponentType", EnumValue = 5 },
},
},
{
Name = "HousingRoomFlags",
Type = "Enumeration",
NumValues = 2,
MinValue = 0,
MaxValue = 1,
Fields =
{
{ Name = "None", Type = "HousingRoomFlags", EnumValue = 0 },
{ Name = "BaseRoom", Type = "HousingRoomFlags", EnumValue = 1 },
},
},
},
};
APIDocumentation:AddDocumentationTable(PlayerHousingConstants);