void AWeapon::setProperty(ETargetType Type)
{
UStaticMesh *pMesh = nullptr;
switch (Type)
{
case ETargetType::Target_Army:
{
pMesh = Cast<UStaticMesh>(StaticLoadObject(UStaticMesh::StaticClass(), nullptr, *(MESH_PATH + FString(PLANE_SMA))));
break;
}
case ETargetType::Target_Boat:
{
pMesh = Cast<UStaticMesh>(StaticLoadObject(UStaticMesh::StaticClass(), nullptr, *(MESH_PATH + FString(TANK_SMA))));
break;
}
case ETargetType::Target_Plane:
{
pMesh = Cast<UStaticMesh>(StaticLoadObject(UStaticMesh::StaticClass(), nullptr, *(MESH_PATH + FString(TANK_SMA))));
break;
}
case ETargetType::Target_Tank:
{
pMesh = Cast<UStaticMesh>(StaticLoadObject(UStaticMesh::StaticClass(), nullptr, *(MESH_PATH + FString(PLANE_SMA))));
break;
}
}
if(pMesh->IsValidLowLevel())
{
MeshComponent->SetStaticMesh(pMesh);
}
}
#pragma once
#define MESH_PATH TEXT("/Game/Meshes/Targets/")
#define TANK_SMA TEXT("Tank_Sma")
#define PLANE_SMA TEXT("Plane_Sma")
UENUM(BlueprintType)
enum class ETargetType : uint8
{
Target_Tank = 1,
Target_Plane,
Target_Army,
Target_Boat
};