Initial commit: Item Interaction Ecosystem plugin (UE5.7)
Server-authoritative, data-driven item/inventory/interaction/carry/equipment/ world-slot/placement/crafting framework. 8 modules, compiles against UE 5.7. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
95
Source/ItemCore/Public/ItemEnums.h
Normal file
95
Source/ItemCore/Public/ItemEnums.h
Normal file
@ -0,0 +1,95 @@
|
||||
// Copyright ExByte Studios. Item Interaction Ecosystem.
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "CoreMinimal.h"
|
||||
#include "ItemEnums.generated.h"
|
||||
|
||||
/**
|
||||
* Where an item instance currently lives (section 5).
|
||||
* Every state transition is validated server-side through the transaction layer.
|
||||
*/
|
||||
UENUM(BlueprintType)
|
||||
enum class EItemLocationType : uint8
|
||||
{
|
||||
None,
|
||||
World,
|
||||
Inventory,
|
||||
Container,
|
||||
Held,
|
||||
Equipped,
|
||||
PlacementPreview,
|
||||
Installed,
|
||||
NestedContainer
|
||||
};
|
||||
|
||||
/** Per-property replication scope (section 22). */
|
||||
UENUM(BlueprintType)
|
||||
enum class EItemPropertyReplicationPolicy : uint8
|
||||
{
|
||||
None,
|
||||
OwnerOnly,
|
||||
Everyone,
|
||||
NearbyOnly,
|
||||
ServerOnly
|
||||
};
|
||||
|
||||
/** How an item is currently carried/equipped on a character (section 11). */
|
||||
UENUM(BlueprintType)
|
||||
enum class EHeldItemMode : uint8
|
||||
{
|
||||
None,
|
||||
EquippedFromInventory,
|
||||
CarryAttached,
|
||||
CarryPhysicsHandle,
|
||||
PlacementPreview
|
||||
};
|
||||
|
||||
/** High level interaction mode resolved per option (section 8.5). */
|
||||
UENUM(BlueprintType)
|
||||
enum class EItemInteractionMode : uint8
|
||||
{
|
||||
None,
|
||||
|
||||
InstantPickup,
|
||||
OpenLootUI,
|
||||
PickupToInventory,
|
||||
EquipFromWorld,
|
||||
EquipFromInventory,
|
||||
|
||||
CarryAttached,
|
||||
CarryPhysicsHandle,
|
||||
DropHeldItem,
|
||||
|
||||
Inspect,
|
||||
Use,
|
||||
UseHeldOnTarget,
|
||||
Combine,
|
||||
|
||||
StartPlacement,
|
||||
ConfirmPlacement,
|
||||
CancelPlacement,
|
||||
|
||||
InstallIntoWorldSlot,
|
||||
RemoveFromWorldSlot,
|
||||
|
||||
TransferContainerItem,
|
||||
SplitStack,
|
||||
MergeStack
|
||||
};
|
||||
|
||||
/** Container layout / role (section 7.2). */
|
||||
UENUM(BlueprintType)
|
||||
enum class EInventoryContainerType : uint8
|
||||
{
|
||||
SlotList,
|
||||
Grid,
|
||||
Equipment,
|
||||
Hotbar,
|
||||
VehicleCargo,
|
||||
LootBox,
|
||||
KeyRing,
|
||||
Wallet,
|
||||
CraftingInput,
|
||||
CraftingOutput
|
||||
};
|
||||
Reference in New Issue
Block a user