From 58cedb423a580829753159060b2954ef102162cd Mon Sep 17 00:00:00 2001 From: Oleg Petruny Date: Thu, 26 Sep 2024 22:09:42 +0200 Subject: [PATCH] Level 4 --- .../StealthGuard/BP_StealthGuardAIController.uasset | 4 ++-- .../StealthGuard/BP_StealthGuardCharacter.uasset | 4 ++-- .../Level_3/BP_Level3_PortalRoom_PressurePlate.uasset | 3 --- Content/Levels/Level_3/L_Level3.umap | 4 ++-- .../Levels/Level_4/Blueprints/BP_Level4_Exit.uasset | 3 +++ .../Level_4/Blueprints/BP_Level4_IntroDialogue.uasset | 3 +++ .../Levels/Level_4/Dialogues/DT_Level4_Intro.uasset | 3 +++ Content/Levels/Level_4/L_Level4.umap | 3 +++ Content/Levels/Level_4/L_Level4_BuiltData.uasset | 3 +++ .../Models/Characters/Human/MaterialsS/M_Body.uasset | 4 ++-- Source/Lost_Edge/Private/DialogueManager.cpp | 11 +++++++---- Source/Lost_Edge/Private/Levels/Level4.cpp | 2 +- Source/Lost_Edge/Private/QuestManager.cpp | 9 ++++++++- Source/Lost_Edge/Private/QuestManager.h | 3 +++ Source/Lost_Edge/Private/Widgets/WidgetsManager.h | 2 ++ 15 files changed, 44 insertions(+), 17 deletions(-) delete mode 100644 Content/Levels/Level_3/BP_Level3_PortalRoom_PressurePlate.uasset create mode 100644 Content/Levels/Level_4/Blueprints/BP_Level4_Exit.uasset create mode 100644 Content/Levels/Level_4/Blueprints/BP_Level4_IntroDialogue.uasset create mode 100644 Content/Levels/Level_4/Dialogues/DT_Level4_Intro.uasset create mode 100644 Content/Levels/Level_4/L_Level4.umap create mode 100644 Content/Levels/Level_4/L_Level4_BuiltData.uasset diff --git a/Content/Blueprints/Characters/StealthGuard/BP_StealthGuardAIController.uasset b/Content/Blueprints/Characters/StealthGuard/BP_StealthGuardAIController.uasset index 9c19083..1c448f2 100644 --- a/Content/Blueprints/Characters/StealthGuard/BP_StealthGuardAIController.uasset +++ b/Content/Blueprints/Characters/StealthGuard/BP_StealthGuardAIController.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:48861b7bdfd09fc89800d6ecd463a4c5623580e6682f89a5f5f4834574822351 -size 87236 +oid sha256:c4364a4eab2a5909e0e81c881bdef654beda07425fa54b0f75ece5aeae20fba0 +size 92552 diff --git a/Content/Blueprints/Characters/StealthGuard/BP_StealthGuardCharacter.uasset b/Content/Blueprints/Characters/StealthGuard/BP_StealthGuardCharacter.uasset index 736a499..d88949d 100644 --- a/Content/Blueprints/Characters/StealthGuard/BP_StealthGuardCharacter.uasset +++ b/Content/Blueprints/Characters/StealthGuard/BP_StealthGuardCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b2c68317b4dcaa34dd54f8ca6d5860cae5403b537647f12da866b1bba8a90a8e -size 39760 +oid sha256:e05f2d9b98a0447d79094129d8f769afe5a354e06a74b381a46441df6bf43647 +size 32170 diff --git a/Content/Levels/Level_3/BP_Level3_PortalRoom_PressurePlate.uasset b/Content/Levels/Level_3/BP_Level3_PortalRoom_PressurePlate.uasset deleted file mode 100644 index e92349b..0000000 --- a/Content/Levels/Level_3/BP_Level3_PortalRoom_PressurePlate.uasset +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:21cde5f846552e8fdd4b62582ab3960d0615a2fff38939788661ddfabad3497b -size 2908 diff --git a/Content/Levels/Level_3/L_Level3.umap b/Content/Levels/Level_3/L_Level3.umap index a922e71..0ee67bf 100644 --- a/Content/Levels/Level_3/L_Level3.umap +++ b/Content/Levels/Level_3/L_Level3.umap @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c566fd6d644b65ea39d0878618f1f76c2bbeb1b9ed75a2337dac1ea97d289007 -size 361121 +oid sha256:d403643d48033dbc92181f052153fe5c47fc367cf04c3c038f5fa28cb403b8c5 +size 358171 diff --git a/Content/Levels/Level_4/Blueprints/BP_Level4_Exit.uasset b/Content/Levels/Level_4/Blueprints/BP_Level4_Exit.uasset new file mode 100644 index 0000000..4950658 --- /dev/null +++ b/Content/Levels/Level_4/Blueprints/BP_Level4_Exit.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7cb4c695db4a6189b9520ec0bdf063ea2fba4e3791b9758ad29d7c5b0cc793a +size 42273 diff --git a/Content/Levels/Level_4/Blueprints/BP_Level4_IntroDialogue.uasset b/Content/Levels/Level_4/Blueprints/BP_Level4_IntroDialogue.uasset new file mode 100644 index 0000000..49a30fe --- /dev/null +++ b/Content/Levels/Level_4/Blueprints/BP_Level4_IntroDialogue.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8235a89c98da582f530b2bd8522916ad3dba24be4967b32bffa270fe44fb4902 +size 55423 diff --git a/Content/Levels/Level_4/Dialogues/DT_Level4_Intro.uasset b/Content/Levels/Level_4/Dialogues/DT_Level4_Intro.uasset new file mode 100644 index 0000000..6305d7b --- /dev/null +++ b/Content/Levels/Level_4/Dialogues/DT_Level4_Intro.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86c9af0426eed5ab844745ed6072f9ce25abd68ae9793bd9ae22a1dcd7c04793 +size 3367 diff --git a/Content/Levels/Level_4/L_Level4.umap b/Content/Levels/Level_4/L_Level4.umap new file mode 100644 index 0000000..003884e --- /dev/null +++ b/Content/Levels/Level_4/L_Level4.umap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08a927664516f09f5502fce55f43ae31ba6c3f67e667f0d5bc884245d60f2377 +size 279322 diff --git a/Content/Levels/Level_4/L_Level4_BuiltData.uasset b/Content/Levels/Level_4/L_Level4_BuiltData.uasset new file mode 100644 index 0000000..d4504d2 --- /dev/null +++ b/Content/Levels/Level_4/L_Level4_BuiltData.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1891c90c79636b4ff902661e8c8e6fa692f860c6fde0f5687493f9d716aa1109 +size 181125 diff --git a/Content/Models/Characters/Human/MaterialsS/M_Body.uasset b/Content/Models/Characters/Human/MaterialsS/M_Body.uasset index 9dff190..9d93fdd 100644 --- a/Content/Models/Characters/Human/MaterialsS/M_Body.uasset +++ b/Content/Models/Characters/Human/MaterialsS/M_Body.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3a2f2419627da40d6fcf9fdf98836a0a39c9242bd361c2a33758f1ee43136a2d -size 76322 +oid sha256:d3c68a9233f90d99d94a63f4d87debaa9f52246fb56f6f99717d5242bc9255b2 +size 12909 diff --git a/Source/Lost_Edge/Private/DialogueManager.cpp b/Source/Lost_Edge/Private/DialogueManager.cpp index fb39f60..6ed5613 100644 --- a/Source/Lost_Edge/Private/DialogueManager.cpp +++ b/Source/Lost_Edge/Private/DialogueManager.cpp @@ -223,10 +223,13 @@ void UDialogueManager::LockCallback(bool lock) void UDialogueManager::BeginDestroy() { - _timersLock.Lock(); - for(auto& timer : _timers) - GetWorld()->GetTimerManager().ClearTimer(timer); - _timersLock.Unlock(); + if(auto world = GetWorld()) + { + _timersLock.Lock(); + for(auto& timer : _timers) + world->GetTimerManager().ClearTimer(timer); + _timersLock.Unlock(); + } UObject::BeginDestroy(); } diff --git a/Source/Lost_Edge/Private/Levels/Level4.cpp b/Source/Lost_Edge/Private/Levels/Level4.cpp index b9f2b62..9851fce 100644 --- a/Source/Lost_Edge/Private/Levels/Level4.cpp +++ b/Source/Lost_Edge/Private/Levels/Level4.cpp @@ -16,5 +16,5 @@ void ALevel4::BeginPlay() { ALevelBase::BeginPlay(); - CallNextState(); + //CallNextState(); } diff --git a/Source/Lost_Edge/Private/QuestManager.cpp b/Source/Lost_Edge/Private/QuestManager.cpp index 3daabd8..b9c0742 100644 --- a/Source/Lost_Edge/Private/QuestManager.cpp +++ b/Source/Lost_Edge/Private/QuestManager.cpp @@ -13,13 +13,20 @@ void AQuestManager::BeginPlay() { if(auto gamemode_base = UGameplayStatics::GetGameMode(GetWorld())) { - if(auto gamemode = Cast(gamemode_base)) + gamemode = Cast(gamemode_base); + if(gamemode) { gamemode->questsUpdateDelegate.AddDynamic(this, &AQuestManager::Update); } } } +void AQuestManager::EndPlay(const EEndPlayReason::Type EndPlayReason) +{ + if(gamemode) + gamemode->questsUpdateDelegate.RemoveDynamic(this, &AQuestManager::Update); +} + void AQuestManager::Update(TArray quests) { if(auto WM = AMainGameModeBase::GetWidgetsManager()) diff --git a/Source/Lost_Edge/Private/QuestManager.h b/Source/Lost_Edge/Private/QuestManager.h index 678dda8..28c10d8 100644 --- a/Source/Lost_Edge/Private/QuestManager.h +++ b/Source/Lost_Edge/Private/QuestManager.h @@ -16,8 +16,11 @@ public: protected: virtual void BeginPlay() override; + virtual void EndPlay(const EEndPlayReason::Type EndPlayReason) override; UFUNCTION() void Update(TArray quests); + class AMainGameModeBase* gamemode = nullptr; + }; diff --git a/Source/Lost_Edge/Private/Widgets/WidgetsManager.h b/Source/Lost_Edge/Private/Widgets/WidgetsManager.h index e23034e..0f51e29 100644 --- a/Source/Lost_Edge/Private/Widgets/WidgetsManager.h +++ b/Source/Lost_Edge/Private/Widgets/WidgetsManager.h @@ -88,4 +88,6 @@ protected: UPROPERTY(EditDefaultsOnly) TSubclassOf journalWidgetClass; // hidden in pause, cutscene class UJournalWidget* journalWidget = nullptr; + + bool initialized = false; };