diff --git a/ProjectFish/Binaries/Win64/UnrealEditor-ProjectFish-0001.dll b/ProjectFish/Binaries/Win64/UnrealEditor-ProjectFish-0001.dll new file mode 100644 index 0000000..85b458a Binary files /dev/null and b/ProjectFish/Binaries/Win64/UnrealEditor-ProjectFish-0001.dll differ diff --git a/ProjectFish/Binaries/Win64/UnrealEditor-ProjectFish-0001.exp b/ProjectFish/Binaries/Win64/UnrealEditor-ProjectFish-0001.exp index 6fb83ff..d24de64 100644 Binary files a/ProjectFish/Binaries/Win64/UnrealEditor-ProjectFish-0001.exp and b/ProjectFish/Binaries/Win64/UnrealEditor-ProjectFish-0001.exp differ diff --git a/ProjectFish/Binaries/Win64/UnrealEditor-ProjectFish.dll b/ProjectFish/Binaries/Win64/UnrealEditor-ProjectFish.dll index c30dc9d..8bbe9dd 100644 Binary files a/ProjectFish/Binaries/Win64/UnrealEditor-ProjectFish.dll and b/ProjectFish/Binaries/Win64/UnrealEditor-ProjectFish.dll differ diff --git a/ProjectFish/Binaries/Win64/UnrealEditor-ProjectFish.exp b/ProjectFish/Binaries/Win64/UnrealEditor-ProjectFish.exp index 5f4f622..0482bc4 100644 Binary files a/ProjectFish/Binaries/Win64/UnrealEditor-ProjectFish.exp and b/ProjectFish/Binaries/Win64/UnrealEditor-ProjectFish.exp differ diff --git a/ProjectFish/Binaries/Win64/UnrealEditor-ProjectFish.pdb b/ProjectFish/Binaries/Win64/UnrealEditor-ProjectFish.pdb deleted file mode 100644 index a9f8251..0000000 Binary files a/ProjectFish/Binaries/Win64/UnrealEditor-ProjectFish.pdb and /dev/null differ diff --git a/ProjectFish/Binaries/Win64/UnrealEditor-ProjectFishEditor-0001.dll b/ProjectFish/Binaries/Win64/UnrealEditor-ProjectFishEditor-0001.dll new file mode 100644 index 0000000..16768c2 Binary files /dev/null and b/ProjectFish/Binaries/Win64/UnrealEditor-ProjectFishEditor-0001.dll differ diff --git a/ProjectFish/Binaries/Win64/UnrealEditor-ProjectFishEditor.pdb b/ProjectFish/Binaries/Win64/UnrealEditor-ProjectFishEditor.pdb deleted file mode 100644 index bff225d..0000000 Binary files a/ProjectFish/Binaries/Win64/UnrealEditor-ProjectFishEditor.pdb and /dev/null differ diff --git a/ProjectFish/Binaries/Win64/UnrealEditor.modules b/ProjectFish/Binaries/Win64/UnrealEditor.modules index 22c08e6..fe900f8 100644 --- a/ProjectFish/Binaries/Win64/UnrealEditor.modules +++ b/ProjectFish/Binaries/Win64/UnrealEditor.modules @@ -2,7 +2,7 @@ "BuildId": "37670630", "Modules": { - "ProjectFish": "UnrealEditor-ProjectFish.dll", - "ProjectFishEditor": "UnrealEditor-ProjectFishEditor.dll" + "ProjectFish": "UnrealEditor-ProjectFish-0001.dll", + "ProjectFishEditor": "UnrealEditor-ProjectFishEditor-0001.dll" } } \ No newline at end of file diff --git a/ProjectFish/Content/Entity/BP_FishingPoint.uasset b/ProjectFish/Content/Entity/BP_FishingPoint.uasset index 9fb5f97..fc59dda 100644 Binary files a/ProjectFish/Content/Entity/BP_FishingPoint.uasset and b/ProjectFish/Content/Entity/BP_FishingPoint.uasset differ diff --git a/ProjectFish/Content/Gameplay/BP_Dabaza_GameMode.uasset b/ProjectFish/Content/Gameplay/BP_Dabaza_GameMode.uasset index d16640c..c3615a5 100644 Binary files a/ProjectFish/Content/Gameplay/BP_Dabaza_GameMode.uasset and b/ProjectFish/Content/Gameplay/BP_Dabaza_GameMode.uasset differ diff --git a/ProjectFish/Content/Gameplay/Ship/BP_Ship.uasset b/ProjectFish/Content/Gameplay/Ship/BP_Ship.uasset index ce9fca7..dac4215 100644 Binary files a/ProjectFish/Content/Gameplay/Ship/BP_Ship.uasset and b/ProjectFish/Content/Gameplay/Ship/BP_Ship.uasset differ diff --git a/ProjectFish/Source/ProjectFish/ProjectFishGameMode.cpp b/ProjectFish/Source/ProjectFish/ProjectFishGameMode.cpp index eaa7012..b71da16 100644 --- a/ProjectFish/Source/ProjectFish/ProjectFishGameMode.cpp +++ b/ProjectFish/Source/ProjectFish/ProjectFishGameMode.cpp @@ -3,6 +3,7 @@ #include "ProjectFishGameMode.h" #include "ProjectFishPlayerController.h" #include "ProjectFishCharacter.h" +#include "Settings/GameConfigSettings.h" #include "UObject/ConstructorHelpers.h" AProjectFishGameMode::AProjectFishGameMode() @@ -23,4 +24,22 @@ AProjectFishGameMode::AProjectFishGameMode() { PlayerControllerClass = PlayerControllerBPClass.Class; } -} \ No newline at end of file + + +} + +void AProjectFishGameMode::BeginPlay() +{ + Super::BeginPlay(); + const UGameConfigSettings* ConfigSettings = GetDefault(); + FTimerHandle FishingTimerHandle; + GetWorld()->GetTimerManager().SetTimer(FishingTimerHandle, [this]() + { + this->bBattleIsBegin = true; + }, ConfigSettings->BattaleWatingTime, false); +} + +bool AProjectFishGameMode::GetBattleIsBegin() const +{ + return bBattleIsBegin; +} diff --git a/ProjectFish/Source/ProjectFish/ProjectFishGameMode.h b/ProjectFish/Source/ProjectFish/ProjectFishGameMode.h index 6c2af1a..6ae3062 100644 --- a/ProjectFish/Source/ProjectFish/ProjectFishGameMode.h +++ b/ProjectFish/Source/ProjectFish/ProjectFishGameMode.h @@ -13,6 +13,13 @@ class AProjectFishGameMode : public AGameModeBase public: AProjectFishGameMode(); + + virtual void BeginPlay() override; + + bool GetBattleIsBegin() const; + +private: + bool bBattleIsBegin = false; }; diff --git a/ProjectFish/Source/ProjectFish/Settings/GameConfigSettings.h b/ProjectFish/Source/ProjectFish/Settings/GameConfigSettings.h index 47b5d7a..e3ca8fa 100644 --- a/ProjectFish/Source/ProjectFish/Settings/GameConfigSettings.h +++ b/ProjectFish/Source/ProjectFish/Settings/GameConfigSettings.h @@ -21,6 +21,8 @@ public: float MinWaitingTime; UPROPERTY(EditAnywhere, BlueprintReadOnly, config) float MaxWaitingTime; - + + UPROPERTY(EditAnywhere, BlueprintReadOnly, config) + float BattaleWatingTime = 1.0f; virtual FName GetCategoryName() const override; }; diff --git a/ProjectFish/Source/ProjectFish/Skill/SkillManager.cpp b/ProjectFish/Source/ProjectFish/Skill/SkillManager.cpp index d59ba70..78d51b9 100644 --- a/ProjectFish/Source/ProjectFish/Skill/SkillManager.cpp +++ b/ProjectFish/Source/ProjectFish/Skill/SkillManager.cpp @@ -3,9 +3,16 @@ #include "SkillManager.h" #include "Skill.h" +#include "Kismet/GameplayStatics.h" +#include "ProjectFish/ProjectFishGameMode.h" #include "ProjectFish/DataAsset/BagConfigAsset.h" #include "ProjectFish/DataAsset/BagShapeAsset.h" +USkillManager::USkillManager() +{ + +} + void USkillManager::Tick(float DeltaTime) { for (auto Skill : Skills) @@ -16,7 +23,7 @@ void USkillManager::Tick(float DeltaTime) bool USkillManager::IsTickable() const { - return !bGameEnd; + return !bGameEnd && IsValid(GameMode) && GameMode->GetBattleIsBegin(); } TStatId USkillManager::GetStatId() const @@ -26,6 +33,10 @@ TStatId USkillManager::GetStatId() const void USkillManager::AddPawn(class APawnWithSkill* Pawn, FIntPoint BagSize) { + if (!IsValid(GameMode)) + { + GameMode = Cast(UGameplayStatics::GetGameMode(this)); + } PawnInfo.Add(Pawn, BagSize); TMap states; for (int y = 0; y < BagSize.Y; y++) diff --git a/ProjectFish/Source/ProjectFish/Skill/SkillManager.h b/ProjectFish/Source/ProjectFish/Skill/SkillManager.h index 77f9a28..086528a 100644 --- a/ProjectFish/Source/ProjectFish/Skill/SkillManager.h +++ b/ProjectFish/Source/ProjectFish/Skill/SkillManager.h @@ -16,6 +16,8 @@ class PROJECTFISH_API USkillManager : public UObject, public FTickableGameObject { GENERATED_BODY() public: + USkillManager(); + virtual void Tick(float DeltaTime) override; virtual bool IsTickable() const override; virtual TStatId GetStatId() const override; @@ -72,6 +74,9 @@ protected: bool bGameEnd = false; TMap> PawnBagState; + +private: + class AProjectFishGameMode* GameMode; };