diff --git a/Config/DefaultEngine.ini b/Config/DefaultEngine.ini index 0b1f30ab..c0482ecf 100644 --- a/Config/DefaultEngine.ini +++ b/Config/DefaultEngine.ini @@ -4,7 +4,7 @@ +EditProfiles=(Name="Trigger",CustomResponses=((Channel=Projectile, Response=ECR_Ignore))) [/Script/EngineSettings.GameMapsSettings] -EditorStartupMap=/Game/Test/Maps/FirstPersonMap.FirstPersonMap +EditorStartupMap=/Game/EndlessHotel/Map/MainMenu.MainMenu LocalMapOptions= TransitionMap= bUseSplitscreen=True diff --git a/Content/EndlessHotel/Anomaly/Object/Painting/BP_Object_Painting2.uasset b/Content/EndlessHotel/Anomaly/Object/Painting/BP_Object_Painting2.uasset new file mode 100644 index 00000000..66e89349 Binary files /dev/null and b/Content/EndlessHotel/Anomaly/Object/Painting/BP_Object_Painting2.uasset differ diff --git a/Content/EndlessHotel/UI/Blueprint/InGame/WBP_InGame.uasset b/Content/EndlessHotel/UI/Blueprint/InGame/WBP_InGame.uasset index 5e99e1f8..8f920216 100644 Binary files a/Content/EndlessHotel/UI/Blueprint/InGame/WBP_InGame.uasset and b/Content/EndlessHotel/UI/Blueprint/InGame/WBP_InGame.uasset differ diff --git a/Content/__ExternalActors__/EndlessHotel/Map/Hotel/0/2X/MVSMFCGVLAE0DQG8L71S1S.uasset b/Content/__ExternalActors__/EndlessHotel/Map/Hotel/0/2X/MVSMFCGVLAE0DQG8L71S1S.uasset new file mode 100644 index 00000000..12cb79f0 Binary files /dev/null and b/Content/__ExternalActors__/EndlessHotel/Map/Hotel/0/2X/MVSMFCGVLAE0DQG8L71S1S.uasset differ diff --git a/Content/__ExternalActors__/EndlessHotel/Map/Hotel/5/8G/YZF50HKC4EFQAMKQ9NSQAR.uasset b/Content/__ExternalActors__/EndlessHotel/Map/Hotel/5/8G/YZF50HKC4EFQAMKQ9NSQAR.uasset deleted file mode 100644 index 23ccab0a..00000000 Binary files a/Content/__ExternalActors__/EndlessHotel/Map/Hotel/5/8G/YZF50HKC4EFQAMKQ9NSQAR.uasset and /dev/null differ diff --git a/Content/__ExternalActors__/EndlessHotel/Map/Hotel/9/F0/TKMUYZE6053O3UEGYP3501.uasset b/Content/__ExternalActors__/EndlessHotel/Map/Hotel/9/F0/TKMUYZE6053O3UEGYP3501.uasset new file mode 100644 index 00000000..ecf7fb87 Binary files /dev/null and b/Content/__ExternalActors__/EndlessHotel/Map/Hotel/9/F0/TKMUYZE6053O3UEGYP3501.uasset differ diff --git a/Content/__ExternalActors__/EndlessHotel/Map/Hotel/B/TQ/99K0RPLR3C2LHF5LF93QYF.uasset b/Content/__ExternalActors__/EndlessHotel/Map/Hotel/B/TQ/99K0RPLR3C2LHF5LF93QYF.uasset new file mode 100644 index 00000000..2994a3c8 Binary files /dev/null and b/Content/__ExternalActors__/EndlessHotel/Map/Hotel/B/TQ/99K0RPLR3C2LHF5LF93QYF.uasset differ diff --git a/Content/__ExternalActors__/EndlessHotel/Map/Hotel/E/X9/AR02A5MP0QONWYM2QZR7HJ.uasset b/Content/__ExternalActors__/EndlessHotel/Map/Hotel/E/X9/AR02A5MP0QONWYM2QZR7HJ.uasset index ca38ed59..9a571221 100644 Binary files a/Content/__ExternalActors__/EndlessHotel/Map/Hotel/E/X9/AR02A5MP0QONWYM2QZR7HJ.uasset and b/Content/__ExternalActors__/EndlessHotel/Map/Hotel/E/X9/AR02A5MP0QONWYM2QZR7HJ.uasset differ diff --git a/Source/Endless_Hotel/Elevator/Elevator.cpp b/Source/Endless_Hotel/Elevator/Elevator.cpp index cc2f579f..52b2502f 100644 --- a/Source/Endless_Hotel/Elevator/Elevator.cpp +++ b/Source/Endless_Hotel/Elevator/Elevator.cpp @@ -2,7 +2,6 @@ #include "Elevator.h" #include "Player/Controller/EHPlayerController.h" -#include "Player/Component/EHCameraComponent.h" #include "Elevator/Elevator_Button.h" #include "GameSystem/SubSystem/AnomalyProgressSubSystem.h" #include "Player/Character/EHPlayer.h" @@ -19,6 +18,8 @@ DEFINE_LOG_CATEGORY_STATIC(LogElevator, Log, All); +FElevatorDelegate AElevator::ElevatorDelegate; + #pragma region Base AElevator::AElevator(const FObjectInitializer& ObjectInitializer) @@ -282,9 +283,7 @@ void AElevator::ElevatorMove(FVector Start, FVector End, bool bIsStart) } else { - ACharacter* Player = UGameplayStatics::GetPlayerCharacter(GetWorld(), 0); - UEHCameraComponent* PlayerCC = Player->FindComponentByClass(); - PlayerCC->StartEyeEffect(false); + ElevatorDelegate.Broadcast(bIsStart); } } diff --git a/Source/Endless_Hotel/Elevator/Elevator.h b/Source/Endless_Hotel/Elevator/Elevator.h index 2798a1bf..bb0b4414 100644 --- a/Source/Endless_Hotel/Elevator/Elevator.h +++ b/Source/Endless_Hotel/Elevator/Elevator.h @@ -3,6 +3,7 @@ #include "Actor/EHActor.h" #include +#include #include #pragma region ForwardDeclarations @@ -17,6 +18,12 @@ class AElevator_Button; #pragma endregion +#pragma region Declare + +DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FElevatorDelegate, bool, bIsStart); + +#pragma endregion + UCLASS() class ENDLESS_HOTEL_API AElevator : public AEHActor { @@ -158,6 +165,9 @@ class ENDLESS_HOTEL_API AElevator : public AEHActor #pragma region ElevatorMovement +public: + static FElevatorDelegate ElevatorDelegate; + protected: UPROPERTY(EditAnywhere, Category = "Movement|Elevator") FVector StartPos; diff --git a/Source/Endless_Hotel/Player/Component/EHCameraComponent.cpp b/Source/Endless_Hotel/Player/Component/EHCameraComponent.cpp index 920e9f29..f94e0fdd 100644 --- a/Source/Endless_Hotel/Player/Component/EHCameraComponent.cpp +++ b/Source/Endless_Hotel/Player/Component/EHCameraComponent.cpp @@ -4,6 +4,7 @@ #include "UI/Controller/UI_Controller.h" #include "UI/PopUp/Blur/UI_PopUp_Blur.h" #include "Sound/SoundController.h" +#include "Elevator/Elevator.h" #include "Anomaly/Base/Anomaly_Base.h" #include #include @@ -21,9 +22,13 @@ void UEHCameraComponent::BeginPlay() Super::BeginPlay(); SettingEyeEffect(); - StartEyeEffect(true); + AElevator::ElevatorDelegate.AddDynamic(this, &ThisClass::StartEyeEffect); + AElevator::ElevatorDelegate.Broadcast(true); + AAnomaly_Base::AnomalyDelegate.AddDynamic(this, &ThisClass::StartEyeEffect); + + StartEyeEffect(true); } #pragma endregion diff --git a/Source/Endless_Hotel/Player/Component/EHCameraComponent.h b/Source/Endless_Hotel/Player/Component/EHCameraComponent.h index 4c96bf09..b5742b01 100644 --- a/Source/Endless_Hotel/Player/Component/EHCameraComponent.h +++ b/Source/Endless_Hotel/Player/Component/EHCameraComponent.h @@ -31,11 +31,9 @@ class ENDLESS_HOTEL_API UEHCameraComponent : public UEHComponent #pragma region Eye Effect -public: +protected: UFUNCTION() void StartEyeEffect(bool bIsOpen); - -protected: void SettingEyeEffect(); UFUNCTION() diff --git a/Source/Endless_Hotel/UI/HUD/InGame/UI_InGame.cpp b/Source/Endless_Hotel/UI/HUD/InGame/UI_InGame.cpp index 0080f113..09d0e1a8 100644 --- a/Source/Endless_Hotel/UI/HUD/InGame/UI_InGame.cpp +++ b/Source/Endless_Hotel/UI/HUD/InGame/UI_InGame.cpp @@ -6,6 +6,7 @@ #include "GameSystem/SubSystem/AnomalyProgressSubSystem.h" #include "GameSystem/SaveGame/SaveManager.h" #include "Player/Character/EHPlayer.h" +#include "Elevator/Elevator.h" #include #include #include @@ -23,6 +24,8 @@ void UUI_InGame::NativeOnInitialized() Subsystem->GameClearEvent.AddDynamic(this, &ThisClass::OpenDemoWidget); UUI_PopUp_Brightness::SettingBrightness.AddDynamic(this, &ThisClass::SetBrightness); + + AElevator::ElevatorDelegate.AddDynamic(this, &ThisClass::ShowCrosshair); } void UUI_InGame::NativeConstruct() @@ -45,21 +48,37 @@ void UUI_InGame::ChangeCrosshair(bool bCanInteract) if (bCanInteract) { Brush.SetResourceObject(Crosshair_Interact); - Brush.TintColor = FSlateColor(FLinearColor(1, 1, 1, 0.6f)); - CPSlot->SetSize(FVector2D(8, 8)); - CPSlot->SetPosition(FVector2D(-4, -4)); + if (!bIsCrosshairInteractMode) + { + PlayAnimation(WidgetAnim_Interact); + bIsCrosshairInteractMode = true; + } } else { Brush.SetResourceObject(Crosshair_Normal); - Brush.TintColor = FSlateColor(FLinearColor(1, 1, 1, 0.3f)); - CPSlot->SetSize(FVector2D(18, 18)); - CPSlot->SetPosition(FVector2D(-9, -9)); + if (bIsCrosshairInteractMode) + { + PlayAnimation(WidgetAnim_Normal); + bIsCrosshairInteractMode = false; + } } Crosshair->SetBrush(Brush); } +void UUI_InGame::ShowCrosshair(bool bIsShow) +{ + if (bIsShow) + { + PlayAnimation(WidgetAnim_ShowCrosshair); + } + else + { + Crosshair->SetVisibility(ESlateVisibility::Hidden); + } +} + #pragma endregion #pragma region Brightness diff --git a/Source/Endless_Hotel/UI/HUD/InGame/UI_InGame.h b/Source/Endless_Hotel/UI/HUD/InGame/UI_InGame.h index c18742c8..b5413697 100644 --- a/Source/Endless_Hotel/UI/HUD/InGame/UI_InGame.h +++ b/Source/Endless_Hotel/UI/HUD/InGame/UI_InGame.h @@ -35,6 +35,22 @@ class ENDLESS_HOTEL_API UUI_InGame : public UUI_HUD_Base UPROPERTY(EditAnywhere) TObjectPtr Crosshair_Interact; +protected: + UFUNCTION() + void ShowCrosshair(bool bIsShow); + +protected: + UPROPERTY(meta = (BindWidgetAnim), Transient) + TObjectPtr WidgetAnim_ShowCrosshair; + + UPROPERTY(meta = (BindWidgetAnim), Transient) + TObjectPtr WidgetAnim_Interact; + + UPROPERTY(meta = (BindWidgetAnim), Transient) + TObjectPtr WidgetAnim_Normal; + + bool bIsCrosshairInteractMode = false; + #pragma endregion #pragma region Brightness