Replace SkeletalMesh with SkeletalMeshComponent
This commit is contained in:
		
							parent
							
								
									126a9e116a
								
							
						
					
					
						commit
						e97ed90ffd
					
				| @ -188,6 +188,7 @@ AWeapon* ANakatomiCharacter::InitializeWeapon(TSubclassOf<class AWeapon> weapon) | |||||||
| 	FActorSpawnParameters SpawnParameters; | 	FActorSpawnParameters SpawnParameters; | ||||||
| 	SpawnParameters.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; | 	SpawnParameters.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; | ||||||
| 	AWeapon* Weapon = GetWorld()->SpawnActor<AWeapon>(weapon, SpawnParameters); | 	AWeapon* Weapon = GetWorld()->SpawnActor<AWeapon>(weapon, SpawnParameters); | ||||||
|  | 	Weapon->SetOwner(this); | ||||||
| 	Weapon->AttachToComponent(GetMesh(), FAttachmentTransformRules::SnapToTargetNotIncludingScale, "WeaponHand"); | 	Weapon->AttachToComponent(GetMesh(), FAttachmentTransformRules::SnapToTargetNotIncludingScale, "WeaponHand"); | ||||||
| 	Weapon->SetActorEnableCollision(false); | 	Weapon->SetActorEnableCollision(false); | ||||||
| 	Weapon->SetActorHiddenInGame(true); | 	Weapon->SetActorHiddenInGame(true); | ||||||
|  | |||||||
| @ -11,7 +11,7 @@ ARandomWeapon::ARandomWeapon() | |||||||
| void ARandomWeapon::BeginPlay() | void ARandomWeapon::BeginPlay() | ||||||
| { | { | ||||||
| 	WeaponProperties = RandomWeaponParameters->GenerateRandomWeaponProperties(); | 	WeaponProperties = RandomWeaponParameters->GenerateRandomWeaponProperties(); | ||||||
| 	WeaponSkeletalMesh = RandomWeaponParameters->PickRandomMesh(); | 	WeaponSkeletalMeshComponent->SetSkeletalMeshAsset(RandomWeaponParameters->PickRandomMesh()); | ||||||
| 	FireSound = RandomWeaponParameters->PickRandomSoundBase(); | 	FireSound = RandomWeaponParameters->PickRandomSoundBase(); | ||||||
| 	FieldSystemActor = RandomWeaponParameters->PickRandomFieldSystem(); | 	FieldSystemActor = RandomWeaponParameters->PickRandomFieldSystem(); | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -7,6 +7,13 @@ | |||||||
| // Sets default values
 | // Sets default values
 | ||||||
| AWeapon::AWeapon() | AWeapon::AWeapon() | ||||||
| {	 | {	 | ||||||
|  | 	WeaponSkeletalMeshComponent = CreateDefaultSubobject<USkeletalMeshComponent>(TEXT("Skeletal Mesh Component")); | ||||||
|  | 	WeaponSkeletalMeshComponent->SetCollisionProfileName(FName("NoCollision")); | ||||||
|  | 	WeaponSkeletalMeshComponent->SetCollisionEnabled(ECollisionEnabled::NoCollision); | ||||||
|  | 	WeaponSkeletalMeshComponent->SetSimulatePhysics(false); | ||||||
|  | 	WeaponSkeletalMeshComponent->SetGenerateOverlapEvents(false); | ||||||
|  | 	WeaponSkeletalMeshComponent->SetNotifyRigidBodyCollision(false); | ||||||
|  | 	SetRootComponent(WeaponSkeletalMeshComponent); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| // Called when the game starts or when spawned
 | // Called when the game starts or when spawned
 | ||||||
| @ -19,12 +26,12 @@ void AWeapon::BeginPlay() | |||||||
| 
 | 
 | ||||||
| USkeletalMesh* AWeapon::GetSkeletalMesh() | USkeletalMesh* AWeapon::GetSkeletalMesh() | ||||||
| { | { | ||||||
| 	return WeaponSkeletalMesh; | 	return WeaponSkeletalMeshComponent->GetSkeletalMeshAsset(); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void AWeapon::SetSkeletalMesh(USkeletalMesh* USkeletalMesh) | void AWeapon::SetSkeletalMesh(USkeletalMesh* USkeletalMesh) | ||||||
| { | { | ||||||
| 	WeaponSkeletalMesh = USkeletalMesh; | 	WeaponSkeletalMeshComponent->SetSkeletalMeshAsset(USkeletalMesh); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| TEnumAsByte<WeaponState>* AWeapon::GetCurrentWeaponStatus() | TEnumAsByte<WeaponState>* AWeapon::GetCurrentWeaponStatus() | ||||||
|  | |||||||
| @ -29,8 +29,8 @@ class NAKATOMI_API AWeapon : public AActor | |||||||
| 	GENERATED_BODY() | 	GENERATED_BODY() | ||||||
| 
 | 
 | ||||||
| protected: | protected: | ||||||
| 	UPROPERTY(EditDefaultsOnly) | 	UPROPERTY(BlueprintReadWrite) | ||||||
| 	USkeletalMesh* WeaponSkeletalMesh = nullptr; | 	USkeletalMeshComponent* WeaponSkeletalMeshComponent; | ||||||
| 
 | 
 | ||||||
| 	UPROPERTY(EditDefaultsOnly) | 	UPROPERTY(EditDefaultsOnly) | ||||||
| 	TEnumAsByte<WeaponState> CurrentWeaponStatus; | 	TEnumAsByte<WeaponState> CurrentWeaponStatus; | ||||||
| @ -65,6 +65,7 @@ public: | |||||||
| 
 | 
 | ||||||
| protected: | protected: | ||||||
| 	// Called when the game starts or when spawned
 | 	// Called when the game starts or when spawned
 | ||||||
|  | 	UFUNCTION(Blueprintable, BlueprintCallable) | ||||||
| 	virtual void BeginPlay() override; | 	virtual void BeginPlay() override; | ||||||
| 
 | 
 | ||||||
| public: | public: | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user