KLingo Project Documentation 1.0.0
Unreal Engine 5.6 C++ Project Documentation
로딩중...
검색중...
일치하는것 없음
ConveyorBelt.h
이 파일의 문서화 페이지로 가기
1// Copyright (c) 2025 Doppleddiggong. All rights reserved. Unauthorized copying, modification, or distribution of this file, via any medium is strictly prohibited. Proprietary and confidential.
2
3#pragma once
4
5#include "CoreMinimal.h"
6#include "GameFramework/Actor.h"
7#include "ConveyorBelt.generated.h"
8
9UCLASS()
10class ONEPIECE_API AConveyorBelt : public AActor
11{
12 GENERATED_BODY()
13
14public:
16
17protected:
18 virtual void BeginPlay() override;
19
20public:
21 virtual void Tick(float DeltaTime) override;
22
23 UFUNCTION()
24 void InitConveyorBelt();
25 UFUNCTION(Server, Reliable)
26 void ServerRPC_InitConveyorBelt();
27 UFUNCTION(NetMulticast, Reliable)
28 void MulticastRPC_InitConveyorBelt();
29
30 // Movement Func
31 void ChangeConveyorMovement();
32 UFUNCTION(Server, Reliable)
33 void ServerRPC_ChangeConveyorMovement();
34 UFUNCTION(NetMulticast, Reliable)
35 void MulticastRPC_ChangeConveyorMovement();
36
37 void ChangeConveyorSpeed(float NewSpeed);
38 UFUNCTION(Server, Reliable)
39 void Server_ChangeConveyorSpeed(float NewSpeed);
40 UFUNCTION(NetMulticast, Reliable)
41 void Multicast_ChangeConveyorSpeed(float NewSpeed);
42
43protected:
44 // Components
45 UPROPERTY()
46 TObjectPtr<class USceneComponent> RootSceneComp;
47
48 UPROPERTY(EditAnywhere, BlueprintReadOnly)
49 TObjectPtr<class UStaticMeshComponent> BeltComp;
50
51 UPROPERTY(EditAnywhere, BlueprintReadOnly)
52 TObjectPtr<class UBoxComponent> BeltBoxComp;
53
54 UPROPERTY(EditAnywhere, BlueprintReadOnly)
55 TObjectPtr<class UArrowComponent> MoveDirArrowComp;
56
57 // Move Values
58 UPROPERTY(EditAnywhere, BlueprintReadOnly)
59 bool bIsForward = true;
60 UPROPERTY(EditAnywhere, BlueprintReadOnly)
61 float MoveSpeed = 200.f;
62
63 // Move Overlapped Actors
64 void MoveOverlappedSkeletals(float deltaDistance);
65 void MoveOverlappedStatics(float deltaDistance);
66};