Bootstrap

UE求职Demo开发日志#21 背包-仓库-装备栏移动物品

1 创建一个枚举记录来源位置

UENUM(BlueprintType)
enum class EMyItemLocation : uint8
{
	None=0,
	Bag UMETA(DisplayName = "Bag"),
	Armed UMETA(DisplayName = "Armed"),
	WareHouse UMETA(DisplayName = "WareHouse"),
};

2 创建一个BagPad和WarePad都有的UI

虽然巨丑但是先这样:

左边是背包,右边是仓库

3 分情况重写swap函数

背包-装备栏

装备栏-背包

背包-仓库

仓库-背包

装备栏-仓库

仓库-装备栏

这些swap函数根本上是传入FMyItemInfo数组的引用不同,提取一下

因为写的太史了,我就不出来丢人了,反正最后实现了:

测试效果:

本来所有物品都在左边的背包里,这些位置都是后来换上去的

//TODO:装备物品限制,装备后调用计算属性函数并更新属性信息 

;