diff --git a/EndlessVendetta/.idea/.idea.EndlessVendetta/.idea/workspace.xml b/EndlessVendetta/.idea/.idea.EndlessVendetta/.idea/workspace.xml
index 5beca5d8..9e1d1585 100644
--- a/EndlessVendetta/.idea/.idea.EndlessVendetta/.idea/workspace.xml
+++ b/EndlessVendetta/.idea/.idea.EndlessVendetta/.idea/workspace.xml
@@ -9,19 +9,15 @@
-
+
-
-
+
+
-
-
-
-
@@ -146,6 +142,7 @@
+
diff --git a/EndlessVendetta/Content/BountySystem/Waypoint/BP_Waypoint.uasset b/EndlessVendetta/Content/BountySystem/Waypoint/BP_Waypoint.uasset
index 784cbe0b..3b21973c 100644
--- a/EndlessVendetta/Content/BountySystem/Waypoint/BP_Waypoint.uasset
+++ b/EndlessVendetta/Content/BountySystem/Waypoint/BP_Waypoint.uasset
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:a406c3c753428efd22e472351a913e042fd0653a7430e4ee29ae7149559d92b4
-size 62287
+oid sha256:b6511ca4db97e4492dced6793261a1362cc37f48b4cbc534142af930d394cbdc
+size 62240
diff --git a/EndlessVendetta/Content/Levels/MainMenuLevel.umap b/EndlessVendetta/Content/Levels/MainMenuLevel.umap
index 88c665cd..6dd6c40d 100644
--- a/EndlessVendetta/Content/Levels/MainMenuLevel.umap
+++ b/EndlessVendetta/Content/Levels/MainMenuLevel.umap
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:5015076ef46a0b0a06bef84fadb67659cdaad3127c3834256c74d4464b8646f6
-size 308758
+oid sha256:baf9403b33d7855cad2195c4d017e92a79de594c89dc87205e7c3c5e7fa9f6e6
+size 308710
diff --git a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset
index c2a34afc..68b6d69a 100644
--- a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset
+++ b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:4c0ecf0ac0702cc2bd355ec050232a61c49e10f102448efbeb735a51824adef6
-size 14948
+oid sha256:26450b67609a17b75a4f99e729b760006ea8860ab33e56e4a8bfcc4eefdb7b73
+size 14831
diff --git a/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset b/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset
index a660aa52..c5c3b84e 100644
--- a/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset
+++ b/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:08b978a616cb421c699b3c0aaf8e8e0a4d12614c8c99eb79c6debb1a030313ee
-size 43745
+oid sha256:4a60a29ad596546d481e43dfb8698842a78cc07f4a4b1000fa397cfba4e72331
+size 158206
diff --git a/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.cpp b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.cpp
index 576cab76..b6678d31 100644
--- a/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.cpp
+++ b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.cpp
@@ -16,7 +16,6 @@ void ABountyClass::ActivateFirstCheckpoint()
if (BountyCheckpoints.IsEmpty() || BountyCheckpoints[0] == nullptr) return;
BountyCheckpoints[0]->Active = true;
- // BountyCheckpoints[0]->CheckpointActivated();
BountyCheckpoints[0]->CompletedCheckpoint.AddDynamic(this, &ABountyClass::IncrementBountyCheckpoint);
}
@@ -24,8 +23,9 @@ void ABountyClass::DeActivateFirstCheckpoint()
{
if (BountyCheckpoints.IsEmpty() || BountyCheckpoints[0] == nullptr) return;
+ BountyCheckpoints[0]->CompletedCheckpoint.RemoveDynamic(this, &ABountyClass::IncrementBountyCheckpoint);
BountyCheckpoints[0]->Active = false;
- BountyCheckpoints[0]->DestroyWaypoint();
+ BountyCheckpoints[0]->DestroyWaypoint();
}
void ABountyClass::SpawnCheckpoints()
diff --git a/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.h b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.h
index b0d84bf5..d34e4c77 100644
--- a/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.h
+++ b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.h
@@ -49,7 +49,7 @@ public:
virtual void ActivateFirstCheckpoint();
// De-Activate the First Checkpoint in Bounty Checkpoints
- void DeActivateFirstCheckpoint();
+ virtual void DeActivateFirstCheckpoint();
diff --git a/EndlessVendetta/Source/EndlessVendetta/BountySystem/MainBountyClass.cpp b/EndlessVendetta/Source/EndlessVendetta/BountySystem/MainBountyClass.cpp
index aff7de9b..b4d65338 100644
--- a/EndlessVendetta/Source/EndlessVendetta/BountySystem/MainBountyClass.cpp
+++ b/EndlessVendetta/Source/EndlessVendetta/BountySystem/MainBountyClass.cpp
@@ -15,11 +15,18 @@ void AMainBountyClass::IncrementBountyCheckpoint()
void AMainBountyClass::ActivateFirstCheckpoint()
{
Super::ActivateFirstCheckpoint();
+ if (IsValid(OpenWorldcheckpoint)) OpenWorldcheckpoint->SpawnWaypoint(MainBountyStruct.TargetName);
if (BountyCheckpoints.IsEmpty() || BountyCheckpoints[0] == nullptr) return;
BountyCheckpoints[0]->SpawnWaypoint(MainBountyStruct.TargetName);
}
-void AMainBountyClass::SpawnOpenWorldCheckpoint()
+void AMainBountyClass::DeActivateFirstCheckpoint()
+{
+ Super::DeActivateFirstCheckpoint();
+ if (IsValid(OpenWorldcheckpoint)) OpenWorldcheckpoint->DestroyWaypoint();
+}
+
+ void AMainBountyClass::SpawnOpenWorldCheckpoint()
{
if (!IsValid(OpenWorldCheckpointClass)) return;
@@ -29,7 +36,7 @@ void AMainBountyClass::SpawnOpenWorldCheckpoint()
FRotator Rot = OpenWorldCheckpointClass.GetDefaultObject()->GetCheckpointSpawnTransform().GetRotation().Rotator();
OpenWorldcheckpoint = GetWorld()->SpawnActor(OpenWorldCheckpointClass, Loc, Rot, SpawnParameters);
- OpenWorldcheckpoint->SpawnWaypoint(BountyTitle);
+ ActivateFirstCheckpoint();
}
void AMainBountyClass::SpawnCheckpoints()
diff --git a/EndlessVendetta/Source/EndlessVendetta/BountySystem/MainBountyClass.h b/EndlessVendetta/Source/EndlessVendetta/BountySystem/MainBountyClass.h
index e41b6fab..933c4a28 100644
--- a/EndlessVendetta/Source/EndlessVendetta/BountySystem/MainBountyClass.h
+++ b/EndlessVendetta/Source/EndlessVendetta/BountySystem/MainBountyClass.h
@@ -89,7 +89,10 @@ public:
}
// Overrides to Set Title of Waypoint
- void ActivateFirstCheckpoint() override;
+ void ActivateFirstCheckpoint() override;
+
+ // Overrides to Desapwn Waypoint from OpenWorld Checkpoint
+ void DeActivateFirstCheckpoint() override;
diff --git a/EndlessVendetta/Source/EndlessVendetta/Characters/BountyHunterCharacter.h b/EndlessVendetta/Source/EndlessVendetta/Characters/BountyHunterCharacter.h
index 1784fed4..8f4d0797 100644
--- a/EndlessVendetta/Source/EndlessVendetta/Characters/BountyHunterCharacter.h
+++ b/EndlessVendetta/Source/EndlessVendetta/Characters/BountyHunterCharacter.h
@@ -28,8 +28,10 @@ class ENDLESSVENDETTA_API ABountyHunterCharacter : public AEndlessVendettaCharac
TArray> MainBountyClasses;
// Reference to the Currently Active Main Bounty
+ UPROPERTY()
AMainBountyClass* CurrentMainBounty;
+ UPROPERTY()
TArray CurrentSideBounties;
// Index of Currently Active Main Bounty, Used for MainBountyClasses