32 virtual void BeginPlay()
override;
33 virtual void GetLifetimeReplicatedProps(TArray<class FLifetimeProperty>& OutLifetimeProps)
const override;
35 virtual void PossessedBy(AController* NewController)
override;
37 virtual void Tick(
float DeltaTime)
override;
39 virtual void OnRep_Controller()
override;
42 void OnRep_LookPitch();
45 void OnRep_AnotherValue();
47 UFUNCTION(BlueprintCallable, Category=
"Command")
48 void RecoveryMovementMode(
const EMovementMode InMovementMode);
51 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category=
"Components|System")
52 TObjectPtr<class UInteractionSystem> InteractionSystem;
54 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category="Components|System")
55 TObjectPtr<class UHookSystem> HookSystem;
57 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category="Components|
Hook")
58 TObjectPtr<class UStaticMeshComponent> HookCable;
60 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category="Components|
Hook")
61 TObjectPtr<class UStaticMeshComponent> HookProjectileMesh;
64 UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category="Interaction")
65 TObjectPtr<class USceneComponent> HoldPosition;
68 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category="Camera", meta=(AllowPrivateAccess="true"))
69 TObjectPtr<class USpringArmComponent> SpringArmComp;
71 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category="Camera", meta=(AllowPrivateAccess="true"))
72 TObjectPtr<class UCameraComponent> FollowCamera;
74 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category="Camera", meta=(AllowPrivateAccess="true"))
75 TObjectPtr<class UHookComponent> HookComp;
77 UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category="RushAttack|Owner")
78 TObjectPtr<class UCharacterMovementComponent> MoveComp;
80 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "Voice", meta=(AllowPrivateAccess="true"))
81 TObjectPtr<class UVoiceConversationSystem> VoiceConversationSystem;
83 UPROPERTY(EditAnywhere, BlueprintReadOnly)
84 TObjectPtr<class UChildActorComponent> miniOwlBot;
87 FVector basePos = FVector(238,135.5,60);
88 FRotator baseRot = FRotator(-5.53,212.2,-0.2);
91 UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category="Command")
92 void Cmd_Move(const FVector2D& Axis) override;
93 UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category="Command")
94 void Cmd_StopMove() override;
95 UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category="Command")
96 void Cmd_Look(const FVector2D& Axis) override;
98 UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category="Command")
99 void Cmd_Jump() override;
100 UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category="Command")
101 void Cmd_Run() override;
104 UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category="Command")
105 void Cmd_RecordStart() override;
106 UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category="Command")
107 void Cmd_RecordEnd() override;
109 UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category="Command")
110 void Cmd_Info() override;
112 UFUNCTION(Server, Reliable)
113 void ServerRPC_StopMove();
114 UFUNCTION(NetMulticast, Reliable)
115 void MulticastRPC_StopMove();
116 UFUNCTION(Server, Reliable)
117 void ServerRPC_DoJumpStart();
118 UFUNCTION(NetMulticast, Reliable)
119 void MulticastRPC_DoJumpStart();
120 UFUNCTION(Server, Reliable)
121 void ServerRPC_DoJump();
122 UFUNCTION(NetMulticast, Reliable)
123 void MulticastRPC_DoJump();
124 UFUNCTION(Server, Reliable)
125 void ServerRPC_DoRun();
126 UFUNCTION(NetMulticast, Reliable)
127 void MulticastRPC_DoRun();
130 FORCEINLINE
bool GetIsRunning() {
return bIsRunning; }
134 void PlaySpeakInfo(int32 QuestStep);
140 UFUNCTION(BlueprintCallable, Category=
"Event")
141 void OnGameMessage(const FString& Message);
143 UFUNCTION(Server, Reliable)
144 void ServerRPC_Teleport(FTransform TargetTransform);
148 UFUNCTION(Server, Reliable)
153 UFUNCTION(Client, Reliable)
158 UFUNCTION(Server, Reliable)
159 void Server_NotifyConfirmSpeakJudes();
163 UFUNCTION(Client, Reliable)
164 void ClientRPC_ShowGameMessage(const FString& Message);
169 UFUNCTION(BlueprintCallable, Category = "Voice")
170 void PlayTTSAudio(const TArray<uint8>& AudioData);
174 UFUNCTION(BlueprintPure, Category = "UI")
177 void RequestListenAudio(
const FString& AudioText);
178 void RequestSpeakAudio(
const FString& AudioText);
183 bool IsControlEnabled()
const;
189 void ApplyAnotherValue();
192 void CreateMainWidget();
193 void CreateToastWidget();
201 void OnTeleportAllPlayers(FTransform TargetTransform);
205 void OnFadeOutCompleteForTeleport();
214 void OnRoomIdUpdated(int64 NewRoomId);
217 void OnRoomLevelUpdated(int32 NewRoomLevel);
228 UPROPERTY(ReplicatedUsing=OnRep_LookPitch)
232 UPROPERTY(ReplicatedUsing=OnRep_AnotherValue)
237 UPROPERTY(EditDefaultsOnly, Category = "UI")
244 UPROPERTY(EditDefaultsOnly, Category = "UI")
251 FTransform PendingTeleportTransform;
254 float WalkSpeed = 200.f;
255 float RunSpeed = 500.f;
256 bool bIsRunning = false;
257 bool bIsJumpStart = false;
259 bool bIsRequest = false;
263 TMap<AActor*, class UImage*> CompassMarkerMap;
265 void UpdateCompassMarkers();
266 FRotator FindRelativeRotationAtTarget(AActor* Target);