diff --git a/.idea/.idea.SkyFrontier.dir/.idea/encodings.xml b/.idea/.idea.SkyFrontier.dir/.idea/encodings.xml
new file mode 100644
index 0000000..df87cf9
--- /dev/null
+++ b/.idea/.idea.SkyFrontier.dir/.idea/encodings.xml
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/.idea/.idea.SkyFrontier.dir/.idea/indexLayout.xml b/.idea/.idea.SkyFrontier.dir/.idea/indexLayout.xml
new file mode 100644
index 0000000..7b08163
--- /dev/null
+++ b/.idea/.idea.SkyFrontier.dir/.idea/indexLayout.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/.idea.SkyFrontier.dir/.idea/projectSettingsUpdater.xml b/.idea/.idea.SkyFrontier.dir/.idea/projectSettingsUpdater.xml
new file mode 100644
index 0000000..4bb9f4d
--- /dev/null
+++ b/.idea/.idea.SkyFrontier.dir/.idea/projectSettingsUpdater.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/.idea.SkyFrontier.dir/.idea/vcs.xml b/.idea/.idea.SkyFrontier.dir/.idea/vcs.xml
new file mode 100644
index 0000000..94a25f7
--- /dev/null
+++ b/.idea/.idea.SkyFrontier.dir/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/.idea.SkyFrontier.dir/.idea/workspace.xml b/.idea/.idea.SkyFrontier.dir/.idea/workspace.xml
new file mode 100644
index 0000000..239ff89
--- /dev/null
+++ b/.idea/.idea.SkyFrontier.dir/.idea/workspace.xml
@@ -0,0 +1,128 @@
+
+
+
+ SkyFrontier.uproject
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {
+ "keyToString": {
+ "RunOnceActivity.OpenProjectViewOnStart": "true",
+ "RunOnceActivity.ShowReadmeOnStart": "true",
+ "WebServerToolWindowFactoryState": "false",
+ "vue.rearranger.settings.migration": "true"
+ }
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1669821824482
+
+
+ 1669821824482
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Config/DefaultEngine.ini b/Config/DefaultEngine.ini
index 86f38d6..731ffbe 100644
--- a/Config/DefaultEngine.ini
+++ b/Config/DefaultEngine.ini
@@ -15,3 +15,60 @@
+ActiveGameNameRedirects=(OldGameName="/Script/TP_Blank",NewGameName="/Script/SkyFrontier")
+ActiveClassRedirects=(OldClassName="TP_BlankGameModeBase",NewClassName="SkyFrontierGameModeBase")
+[/Script/Engine.CollisionProfile]
+-Profiles=(Name="NoCollision",CollisionEnabled=NoCollision,ObjectTypeName="WorldStatic",CustomResponses=((Channel="Visibility",Response=ECR_Ignore),(Channel="Camera",Response=ECR_Ignore)),HelpMessage="No collision",bCanModify=False)
+-Profiles=(Name="BlockAll",CollisionEnabled=QueryAndPhysics,ObjectTypeName="WorldStatic",CustomResponses=,HelpMessage="WorldStatic object that blocks all actors by default. All new custom channels will use its own default response. ",bCanModify=False)
+-Profiles=(Name="OverlapAll",CollisionEnabled=QueryOnly,ObjectTypeName="WorldStatic",CustomResponses=((Channel="WorldStatic",Response=ECR_Overlap),(Channel="Pawn",Response=ECR_Overlap),(Channel="Visibility",Response=ECR_Overlap),(Channel="WorldDynamic",Response=ECR_Overlap),(Channel="Camera",Response=ECR_Overlap),(Channel="PhysicsBody",Response=ECR_Overlap),(Channel="Vehicle",Response=ECR_Overlap),(Channel="Destructible",Response=ECR_Overlap)),HelpMessage="WorldStatic object that overlaps all actors by default. All new custom channels will use its own default response. ",bCanModify=False)
+-Profiles=(Name="BlockAllDynamic",CollisionEnabled=QueryAndPhysics,ObjectTypeName="WorldDynamic",CustomResponses=,HelpMessage="WorldDynamic object that blocks all actors by default. All new custom channels will use its own default response. ",bCanModify=False)
+-Profiles=(Name="OverlapAllDynamic",CollisionEnabled=QueryOnly,ObjectTypeName="WorldDynamic",CustomResponses=((Channel="WorldStatic",Response=ECR_Overlap),(Channel="Pawn",Response=ECR_Overlap),(Channel="Visibility",Response=ECR_Overlap),(Channel="WorldDynamic",Response=ECR_Overlap),(Channel="Camera",Response=ECR_Overlap),(Channel="PhysicsBody",Response=ECR_Overlap),(Channel="Vehicle",Response=ECR_Overlap),(Channel="Destructible",Response=ECR_Overlap)),HelpMessage="WorldDynamic object that overlaps all actors by default. All new custom channels will use its own default response. ",bCanModify=False)
+-Profiles=(Name="IgnoreOnlyPawn",CollisionEnabled=QueryOnly,ObjectTypeName="WorldDynamic",CustomResponses=((Channel="Pawn",Response=ECR_Ignore),(Channel="Vehicle",Response=ECR_Ignore)),HelpMessage="WorldDynamic object that ignores Pawn and Vehicle. All other channels will be set to default.",bCanModify=False)
+-Profiles=(Name="OverlapOnlyPawn",CollisionEnabled=QueryOnly,ObjectTypeName="WorldDynamic",CustomResponses=((Channel="Pawn",Response=ECR_Overlap),(Channel="Vehicle",Response=ECR_Overlap),(Channel="Camera",Response=ECR_Ignore)),HelpMessage="WorldDynamic object that overlaps Pawn, Camera, and Vehicle. All other channels will be set to default. ",bCanModify=False)
+-Profiles=(Name="Pawn",CollisionEnabled=QueryAndPhysics,ObjectTypeName="Pawn",CustomResponses=((Channel="Visibility",Response=ECR_Ignore)),HelpMessage="Pawn object. Can be used for capsule of any playerable character or AI. ",bCanModify=False)
+-Profiles=(Name="Spectator",CollisionEnabled=QueryOnly,ObjectTypeName="Pawn",CustomResponses=((Channel="WorldStatic",Response=ECR_Block),(Channel="Pawn",Response=ECR_Ignore),(Channel="Visibility",Response=ECR_Ignore),(Channel="WorldDynamic",Response=ECR_Ignore),(Channel="Camera",Response=ECR_Ignore),(Channel="PhysicsBody",Response=ECR_Ignore),(Channel="Vehicle",Response=ECR_Ignore),(Channel="Destructible",Response=ECR_Ignore)),HelpMessage="Pawn object that ignores all other actors except WorldStatic.",bCanModify=False)
+-Profiles=(Name="CharacterMesh",CollisionEnabled=QueryOnly,ObjectTypeName="Pawn",CustomResponses=((Channel="Pawn",Response=ECR_Ignore),(Channel="Vehicle",Response=ECR_Ignore),(Channel="Visibility",Response=ECR_Ignore)),HelpMessage="Pawn object that is used for Character Mesh. All other channels will be set to default.",bCanModify=False)
+-Profiles=(Name="PhysicsActor",CollisionEnabled=QueryAndPhysics,ObjectTypeName="PhysicsBody",CustomResponses=,HelpMessage="Simulating actors",bCanModify=False)
+-Profiles=(Name="Destructible",CollisionEnabled=QueryAndPhysics,ObjectTypeName="Destructible",CustomResponses=,HelpMessage="Destructible actors",bCanModify=False)
+-Profiles=(Name="InvisibleWall",CollisionEnabled=QueryAndPhysics,ObjectTypeName="WorldStatic",CustomResponses=((Channel="Visibility",Response=ECR_Ignore)),HelpMessage="WorldStatic object that is invisible.",bCanModify=False)
+-Profiles=(Name="InvisibleWallDynamic",CollisionEnabled=QueryAndPhysics,ObjectTypeName="WorldDynamic",CustomResponses=((Channel="Visibility",Response=ECR_Ignore)),HelpMessage="WorldDynamic object that is invisible.",bCanModify=False)
+-Profiles=(Name="Trigger",CollisionEnabled=QueryOnly,ObjectTypeName="WorldDynamic",CustomResponses=((Channel="WorldStatic",Response=ECR_Overlap),(Channel="Pawn",Response=ECR_Overlap),(Channel="Visibility",Response=ECR_Ignore),(Channel="WorldDynamic",Response=ECR_Overlap),(Channel="Camera",Response=ECR_Overlap),(Channel="PhysicsBody",Response=ECR_Overlap),(Channel="Vehicle",Response=ECR_Overlap),(Channel="Destructible",Response=ECR_Overlap)),HelpMessage="WorldDynamic object that is used for trigger. All other channels will be set to default.",bCanModify=False)
+-Profiles=(Name="Ragdoll",CollisionEnabled=QueryAndPhysics,ObjectTypeName="PhysicsBody",CustomResponses=((Channel="Pawn",Response=ECR_Ignore),(Channel="Visibility",Response=ECR_Ignore)),HelpMessage="Simulating Skeletal Mesh Component. All other channels will be set to default.",bCanModify=False)
+-Profiles=(Name="Vehicle",CollisionEnabled=QueryAndPhysics,ObjectTypeName="Vehicle",CustomResponses=,HelpMessage="Vehicle object that blocks Vehicle, WorldStatic, and WorldDynamic. All other channels will be set to default.",bCanModify=False)
+-Profiles=(Name="UI",CollisionEnabled=QueryOnly,ObjectTypeName="WorldDynamic",CustomResponses=((Channel="WorldStatic",Response=ECR_Overlap),(Channel="Pawn",Response=ECR_Overlap),(Channel="Visibility",Response=ECR_Block),(Channel="WorldDynamic",Response=ECR_Overlap),(Channel="Camera",Response=ECR_Overlap),(Channel="PhysicsBody",Response=ECR_Overlap),(Channel="Vehicle",Response=ECR_Overlap),(Channel="Destructible",Response=ECR_Overlap)),HelpMessage="WorldStatic object that overlaps all actors by default. All new custom channels will use its own default response. ",bCanModify=False)
++Profiles=(Name="NoCollision",CollisionEnabled=NoCollision,bCanModify=False,ObjectTypeName="WorldStatic",CustomResponses=((Channel="Visibility",Response=ECR_Ignore),(Channel="Camera",Response=ECR_Ignore)),HelpMessage="No collision")
++Profiles=(Name="BlockAll",CollisionEnabled=QueryAndPhysics,bCanModify=False,ObjectTypeName="WorldStatic",CustomResponses=,HelpMessage="WorldStatic object that blocks all actors by default. All new custom channels will use its own default response. ")
++Profiles=(Name="OverlapAll",CollisionEnabled=QueryOnly,bCanModify=False,ObjectTypeName="WorldStatic",CustomResponses=((Channel="WorldStatic",Response=ECR_Overlap),(Channel="Pawn",Response=ECR_Overlap),(Channel="Visibility",Response=ECR_Overlap),(Channel="WorldDynamic",Response=ECR_Overlap),(Channel="Camera",Response=ECR_Overlap),(Channel="PhysicsBody",Response=ECR_Overlap),(Channel="Vehicle",Response=ECR_Overlap),(Channel="Destructible",Response=ECR_Overlap)),HelpMessage="WorldStatic object that overlaps all actors by default. All new custom channels will use its own default response. ")
++Profiles=(Name="BlockAllDynamic",CollisionEnabled=QueryAndPhysics,bCanModify=False,ObjectTypeName="WorldDynamic",CustomResponses=,HelpMessage="WorldDynamic object that blocks all actors by default. All new custom channels will use its own default response. ")
++Profiles=(Name="OverlapAllDynamic",CollisionEnabled=QueryOnly,bCanModify=False,ObjectTypeName="WorldDynamic",CustomResponses=((Channel="WorldStatic",Response=ECR_Overlap),(Channel="Pawn",Response=ECR_Overlap),(Channel="Visibility",Response=ECR_Overlap),(Channel="WorldDynamic",Response=ECR_Overlap),(Channel="Camera",Response=ECR_Overlap),(Channel="PhysicsBody",Response=ECR_Overlap),(Channel="Vehicle",Response=ECR_Overlap),(Channel="Destructible",Response=ECR_Overlap)),HelpMessage="WorldDynamic object that overlaps all actors by default. All new custom channels will use its own default response. ")
++Profiles=(Name="IgnoreOnlyPawn",CollisionEnabled=QueryOnly,bCanModify=False,ObjectTypeName="WorldDynamic",CustomResponses=((Channel="Pawn",Response=ECR_Ignore),(Channel="Vehicle",Response=ECR_Ignore)),HelpMessage="WorldDynamic object that ignores Pawn and Vehicle. All other channels will be set to default.")
++Profiles=(Name="OverlapOnlyPawn",CollisionEnabled=QueryOnly,bCanModify=False,ObjectTypeName="WorldDynamic",CustomResponses=((Channel="Pawn",Response=ECR_Overlap),(Channel="Vehicle",Response=ECR_Overlap),(Channel="Camera",Response=ECR_Ignore)),HelpMessage="WorldDynamic object that overlaps Pawn, Camera, and Vehicle. All other channels will be set to default. ")
++Profiles=(Name="Pawn",CollisionEnabled=QueryAndPhysics,bCanModify=False,ObjectTypeName="Pawn",CustomResponses=((Channel="Visibility",Response=ECR_Ignore)),HelpMessage="Pawn object. Can be used for capsule of any playerable character or AI. ")
++Profiles=(Name="Spectator",CollisionEnabled=QueryOnly,bCanModify=False,ObjectTypeName="Pawn",CustomResponses=((Channel="WorldStatic"),(Channel="Pawn",Response=ECR_Ignore),(Channel="Visibility",Response=ECR_Ignore),(Channel="WorldDynamic",Response=ECR_Ignore),(Channel="Camera",Response=ECR_Ignore),(Channel="PhysicsBody",Response=ECR_Ignore),(Channel="Vehicle",Response=ECR_Ignore),(Channel="Destructible",Response=ECR_Ignore)),HelpMessage="Pawn object that ignores all other actors except WorldStatic.")
++Profiles=(Name="CharacterMesh",CollisionEnabled=QueryOnly,bCanModify=False,ObjectTypeName="Pawn",CustomResponses=((Channel="Pawn",Response=ECR_Ignore),(Channel="Vehicle",Response=ECR_Ignore),(Channel="Visibility",Response=ECR_Ignore)),HelpMessage="Pawn object that is used for Character Mesh. All other channels will be set to default.")
++Profiles=(Name="PhysicsActor",CollisionEnabled=QueryAndPhysics,bCanModify=False,ObjectTypeName="PhysicsBody",CustomResponses=,HelpMessage="Simulating actors")
++Profiles=(Name="Destructible",CollisionEnabled=QueryAndPhysics,bCanModify=False,ObjectTypeName="Destructible",CustomResponses=,HelpMessage="Destructible actors")
++Profiles=(Name="InvisibleWall",CollisionEnabled=QueryAndPhysics,bCanModify=False,ObjectTypeName="WorldStatic",CustomResponses=((Channel="Visibility",Response=ECR_Ignore)),HelpMessage="WorldStatic object that is invisible.")
++Profiles=(Name="InvisibleWallDynamic",CollisionEnabled=QueryAndPhysics,bCanModify=False,ObjectTypeName="WorldDynamic",CustomResponses=((Channel="Visibility",Response=ECR_Ignore)),HelpMessage="WorldDynamic object that is invisible.")
++Profiles=(Name="Trigger",CollisionEnabled=QueryOnly,bCanModify=False,ObjectTypeName="WorldDynamic",CustomResponses=((Channel="WorldStatic",Response=ECR_Overlap),(Channel="Pawn",Response=ECR_Overlap),(Channel="Visibility",Response=ECR_Ignore),(Channel="WorldDynamic",Response=ECR_Overlap),(Channel="Camera",Response=ECR_Overlap),(Channel="PhysicsBody",Response=ECR_Overlap),(Channel="Vehicle",Response=ECR_Overlap),(Channel="Destructible",Response=ECR_Overlap)),HelpMessage="WorldDynamic object that is used for trigger. All other channels will be set to default.")
++Profiles=(Name="Ragdoll",CollisionEnabled=QueryAndPhysics,bCanModify=False,ObjectTypeName="PhysicsBody",CustomResponses=((Channel="Pawn",Response=ECR_Ignore),(Channel="Visibility",Response=ECR_Ignore)),HelpMessage="Simulating Skeletal Mesh Component. All other channels will be set to default.")
++Profiles=(Name="Vehicle",CollisionEnabled=QueryAndPhysics,bCanModify=False,ObjectTypeName="Vehicle",CustomResponses=,HelpMessage="Vehicle object that blocks Vehicle, WorldStatic, and WorldDynamic. All other channels will be set to default.")
++Profiles=(Name="UI",CollisionEnabled=QueryOnly,bCanModify=False,ObjectTypeName="WorldDynamic",CustomResponses=((Channel="WorldStatic",Response=ECR_Overlap),(Channel="Pawn",Response=ECR_Overlap),(Channel="Visibility"),(Channel="WorldDynamic",Response=ECR_Overlap),(Channel="Camera",Response=ECR_Overlap),(Channel="PhysicsBody",Response=ECR_Overlap),(Channel="Vehicle",Response=ECR_Overlap),(Channel="Destructible",Response=ECR_Overlap)),HelpMessage="WorldStatic object that overlaps all actors by default. All new custom channels will use its own default response. ")
++Profiles=(Name="WaterBodyCollision",CollisionEnabled=QueryOnly,bCanModify=False,ObjectTypeName="",CustomResponses=((Channel="WorldDynamic",Response=ECR_Overlap),(Channel="Pawn",Response=ECR_Overlap),(Channel="Visibility",Response=ECR_Ignore),(Channel="Camera",Response=ECR_Ignore),(Channel="PhysicsBody",Response=ECR_Overlap),(Channel="Vehicle",Response=ECR_Overlap),(Channel="Destructible",Response=ECR_Overlap)),HelpMessage="Default Water Collision Profile (Created by Water Plugin)")
+-ProfileRedirects=(OldName="BlockingVolume",NewName="InvisibleWall")
+-ProfileRedirects=(OldName="InterpActor",NewName="IgnoreOnlyPawn")
+-ProfileRedirects=(OldName="StaticMeshComponent",NewName="BlockAllDynamic")
+-ProfileRedirects=(OldName="SkeletalMeshActor",NewName="PhysicsActor")
+-ProfileRedirects=(OldName="InvisibleActor",NewName="InvisibleWallDynamic")
++ProfileRedirects=(OldName="BlockingVolume",NewName="InvisibleWall")
++ProfileRedirects=(OldName="InterpActor",NewName="IgnoreOnlyPawn")
++ProfileRedirects=(OldName="StaticMeshComponent",NewName="BlockAllDynamic")
++ProfileRedirects=(OldName="SkeletalMeshActor",NewName="PhysicsActor")
++ProfileRedirects=(OldName="InvisibleActor",NewName="InvisibleWallDynamic")
+-CollisionChannelRedirects=(OldName="Static",NewName="WorldStatic")
+-CollisionChannelRedirects=(OldName="Dynamic",NewName="WorldDynamic")
+-CollisionChannelRedirects=(OldName="VehicleMovement",NewName="Vehicle")
+-CollisionChannelRedirects=(OldName="PawnMovement",NewName="Pawn")
++CollisionChannelRedirects=(OldName="Static",NewName="WorldStatic")
++CollisionChannelRedirects=(OldName="Dynamic",NewName="WorldDynamic")
++CollisionChannelRedirects=(OldName="VehicleMovement",NewName="Vehicle")
++CollisionChannelRedirects=(OldName="PawnMovement",NewName="Pawn")
+
diff --git a/Config/DefaultInput.ini b/Config/DefaultInput.ini
index ed34ab4..05a1a08 100644
--- a/Config/DefaultInput.ini
+++ b/Config/DefaultInput.ini
@@ -85,6 +85,7 @@
+ActionMappings=(ActionName="Shooting",bShift=False,bCtrl=False,bAlt=False,bCmd=False,Key=Gamepad_FaceButton_Left)
+ActionMappings=(ActionName="Ability",bShift=False,bCtrl=False,bAlt=False,bCmd=False,Key=LeftShift)
+ActionMappings=(ActionName="Ability",bShift=False,bCtrl=False,bAlt=False,bCmd=False,Key=Gamepad_FaceButton_Right)
++ActionMappings=(ActionName="GetDamaged",bShift=False,bCtrl=False,bAlt=False,bCmd=False,Key=P)
+ActionMappings=(ActionName="ResetCamera",bShift=False,bCtrl=False,bAlt=False,bCmd=False,Key=R)
+ActionMappings=(ActionName="ResetCamera",bShift=False,bCtrl=False,bAlt=False,bCmd=False,Key=Gamepad_RightThumbstick)
+AxisMappings=(AxisName="Roll",Scale=1.000000,Key=Q)
@@ -98,9 +99,9 @@
+AxisMappings=(AxisName="MoveRight",Scale=1.000000,Key=Gamepad_RightShoulder)
+AxisMappings=(AxisName="MoveRight",Scale=-1.000000,Key=Gamepad_LeftShoulder)
+AxisMappings=(AxisName="CameraInputsY",Scale=1.000000,Key=MouseY)
-+AxisMappings=(AxisName="CameraInputsX",Scale=1.000000,Key=MouseX)
+AxisMappings=(AxisName="CameraInputsY",Scale=1.000000,Key=Gamepad_RightY)
+AxisMappings=(AxisName="CameraInputsX",Scale=1.000000,Key=Gamepad_RightX)
++AxisMappings=(AxisName="CameraInputsX",Scale=1.000000,Key=MouseX)
DefaultPlayerInputClass=/Script/Engine.PlayerInput
DefaultInputComponentClass=/Script/Engine.InputComponent
DefaultTouchInterface=/Engine/MobileResources/HUD/DefaultVirtualJoysticks.DefaultVirtualJoysticks
diff --git a/Content/Assets/Items/MagneticShield_BP.uasset b/Content/Assets/Items/MagneticShield_BP.uasset
new file mode 100644
index 0000000..e6ea81e
--- /dev/null
+++ b/Content/Assets/Items/MagneticShield_BP.uasset
Binary files differ
diff --git a/Content/Assets/Items/OverCharge_BP.uasset b/Content/Assets/Items/OverCharge_BP.uasset
new file mode 100644
index 0000000..79b0299
--- /dev/null
+++ b/Content/Assets/Items/OverCharge_BP.uasset
Binary files differ
diff --git a/Content/Assets/Items/RepairKit_BP.uasset b/Content/Assets/Items/RepairKit_BP.uasset
new file mode 100644
index 0000000..9715730
--- /dev/null
+++ b/Content/Assets/Items/RepairKit_BP.uasset
Binary files differ
diff --git a/Content/Assets/NormieAsset/Test_anim.uasset b/Content/Assets/NormieAsset/Test_anim.uasset
index 6a25ef0..de81fb1 100644
--- a/Content/Assets/NormieAsset/Test_anim.uasset
+++ b/Content/Assets/NormieAsset/Test_anim.uasset
Binary files differ
diff --git a/Content/Levels/MainMenu_Level.umap b/Content/Levels/MainMenu_Level.umap
new file mode 100644
index 0000000..478e5fe
--- /dev/null
+++ b/Content/Levels/MainMenu_Level.umap
Binary files differ
diff --git a/Content/Levels/Nuno_Level.umap b/Content/Levels/Nuno_Level.umap
index e5efb41..1b170e6 100644
--- a/Content/Levels/Nuno_Level.umap
+++ b/Content/Levels/Nuno_Level.umap
Binary files differ
diff --git a/Content/Levels/Sergio_Level.umap b/Content/Levels/Sergio_Level.umap
index 5f8411b..f9c00d9 100644
--- a/Content/Levels/Sergio_Level.umap
+++ b/Content/Levels/Sergio_Level.umap
Binary files differ
diff --git a/Content/MSPresets/MSAssets.db b/Content/MSPresets/MSAssets.db
new file mode 100644
index 0000000..8df8fc4
--- /dev/null
+++ b/Content/MSPresets/MSAssets.db
Binary files differ
diff --git a/Content/MSPresets/MSTextures/AO.uasset b/Content/MSPresets/MSTextures/AO.uasset
new file mode 100644
index 0000000..6c4d7ae
--- /dev/null
+++ b/Content/MSPresets/MSTextures/AO.uasset
Binary files differ
diff --git a/Content/MSPresets/MSTextures/Albedo.uasset b/Content/MSPresets/MSTextures/Albedo.uasset
new file mode 100644
index 0000000..d2e0b2b
--- /dev/null
+++ b/Content/MSPresets/MSTextures/Albedo.uasset
Binary files differ
diff --git a/Content/MSPresets/MSTextures/AlbedoVT.uasset b/Content/MSPresets/MSTextures/AlbedoVT.uasset
new file mode 100644
index 0000000..025c7fa
--- /dev/null
+++ b/Content/MSPresets/MSTextures/AlbedoVT.uasset
Binary files differ
diff --git a/Content/MSPresets/MSTextures/Black.uasset b/Content/MSPresets/MSTextures/Black.uasset
new file mode 100644
index 0000000..083baa7
--- /dev/null
+++ b/Content/MSPresets/MSTextures/Black.uasset
Binary files differ
diff --git a/Content/MSPresets/MSTextures/BlackVT.uasset b/Content/MSPresets/MSTextures/BlackVT.uasset
new file mode 100644
index 0000000..b01581c
--- /dev/null
+++ b/Content/MSPresets/MSTextures/BlackVT.uasset
Binary files differ
diff --git a/Content/MSPresets/MSTextures/Displacement.uasset b/Content/MSPresets/MSTextures/Displacement.uasset
new file mode 100644
index 0000000..09b6727
--- /dev/null
+++ b/Content/MSPresets/MSTextures/Displacement.uasset
Binary files differ
diff --git a/Content/MSPresets/MSTextures/EmissionVT.uasset b/Content/MSPresets/MSTextures/EmissionVT.uasset
new file mode 100644
index 0000000..ddcbbcb
--- /dev/null
+++ b/Content/MSPresets/MSTextures/EmissionVT.uasset
Binary files differ
diff --git a/Content/MSPresets/MSTextures/FlatNormal.uasset b/Content/MSPresets/MSTextures/FlatNormal.uasset
new file mode 100644
index 0000000..fa06274
--- /dev/null
+++ b/Content/MSPresets/MSTextures/FlatNormal.uasset
Binary files differ
diff --git a/Content/MSPresets/MSTextures/FlatNormalVT.uasset b/Content/MSPresets/MSTextures/FlatNormalVT.uasset
new file mode 100644
index 0000000..2172328
--- /dev/null
+++ b/Content/MSPresets/MSTextures/FlatNormalVT.uasset
Binary files differ
diff --git a/Content/MSPresets/MSTextures/Metalness.uasset b/Content/MSPresets/MSTextures/Metalness.uasset
new file mode 100644
index 0000000..d51883a
--- /dev/null
+++ b/Content/MSPresets/MSTextures/Metalness.uasset
Binary files differ
diff --git a/Content/MSPresets/MSTextures/MetalnessVT.uasset b/Content/MSPresets/MSTextures/MetalnessVT.uasset
new file mode 100644
index 0000000..e6737c9
--- /dev/null
+++ b/Content/MSPresets/MSTextures/MetalnessVT.uasset
Binary files differ
diff --git a/Content/MSPresets/MSTextures/Normal.uasset b/Content/MSPresets/MSTextures/Normal.uasset
new file mode 100644
index 0000000..340f41a
--- /dev/null
+++ b/Content/MSPresets/MSTextures/Normal.uasset
Binary files differ
diff --git a/Content/MSPresets/MSTextures/NormalVT.uasset b/Content/MSPresets/MSTextures/NormalVT.uasset
new file mode 100644
index 0000000..7146386
--- /dev/null
+++ b/Content/MSPresets/MSTextures/NormalVT.uasset
Binary files differ
diff --git a/Content/MSPresets/MSTextures/OpacityVT.uasset b/Content/MSPresets/MSTextures/OpacityVT.uasset
new file mode 100644
index 0000000..b11caae
--- /dev/null
+++ b/Content/MSPresets/MSTextures/OpacityVT.uasset
Binary files differ
diff --git a/Content/MSPresets/MSTextures/Roughness.uasset b/Content/MSPresets/MSTextures/Roughness.uasset
new file mode 100644
index 0000000..a99f9e2
--- /dev/null
+++ b/Content/MSPresets/MSTextures/Roughness.uasset
Binary files differ
diff --git a/Content/MSPresets/MSTextures/RoughnessVT.uasset b/Content/MSPresets/MSTextures/RoughnessVT.uasset
new file mode 100644
index 0000000..9467477
--- /dev/null
+++ b/Content/MSPresets/MSTextures/RoughnessVT.uasset
Binary files differ
diff --git a/Content/MSPresets/MSTextures/SpecularVT.uasset b/Content/MSPresets/MSTextures/SpecularVT.uasset
new file mode 100644
index 0000000..853e0e6
--- /dev/null
+++ b/Content/MSPresets/MSTextures/SpecularVT.uasset
Binary files differ
diff --git a/Content/MSPresets/MSTextures/White.uasset b/Content/MSPresets/MSTextures/White.uasset
new file mode 100644
index 0000000..51fd517
--- /dev/null
+++ b/Content/MSPresets/MSTextures/White.uasset
Binary files differ
diff --git a/Content/MSPresets/MSTextures/WhiteVT.uasset b/Content/MSPresets/MSTextures/WhiteVT.uasset
new file mode 100644
index 0000000..a3be004
--- /dev/null
+++ b/Content/MSPresets/MSTextures/WhiteVT.uasset
Binary files differ
diff --git a/Content/MSPresets/MSTextures/noise_mask.uasset b/Content/MSPresets/MSTextures/noise_mask.uasset
new file mode 100644
index 0000000..18618cb
--- /dev/null
+++ b/Content/MSPresets/MSTextures/noise_mask.uasset
Binary files differ
diff --git a/Content/MSPresets/MSTextures/noise_normal.uasset b/Content/MSPresets/MSTextures/noise_normal.uasset
new file mode 100644
index 0000000..35322a7
--- /dev/null
+++ b/Content/MSPresets/MSTextures/noise_normal.uasset
Binary files differ
diff --git a/Content/MSPresets/MS_DefaultMaterial_CP/Functions/MF_Emissive.uasset b/Content/MSPresets/MS_DefaultMaterial_CP/Functions/MF_Emissive.uasset
new file mode 100644
index 0000000..f67c415
--- /dev/null
+++ b/Content/MSPresets/MS_DefaultMaterial_CP/Functions/MF_Emissive.uasset
Binary files differ
diff --git a/Content/MSPresets/MS_DefaultMaterial_CP/MS_DefaultMaterial_CP.uasset b/Content/MSPresets/MS_DefaultMaterial_CP/MS_DefaultMaterial_CP.uasset
new file mode 100644
index 0000000..67ad491
--- /dev/null
+++ b/Content/MSPresets/MS_DefaultMaterial_CP/MS_DefaultMaterial_CP.uasset
Binary files differ
diff --git a/Content/MSPresets/MS_DefaultMaterial_Fuzzy/Functions/MF_DetailNormalTiling.uasset b/Content/MSPresets/MS_DefaultMaterial_Fuzzy/Functions/MF_DetailNormalTiling.uasset
new file mode 100644
index 0000000..e0a4a4d
--- /dev/null
+++ b/Content/MSPresets/MS_DefaultMaterial_Fuzzy/Functions/MF_DetailNormalTiling.uasset
Binary files differ
diff --git a/Content/MSPresets/MS_DefaultMaterial_Fuzzy/Functions/MF_Displacement.uasset b/Content/MSPresets/MS_DefaultMaterial_Fuzzy/Functions/MF_Displacement.uasset
new file mode 100644
index 0000000..b3d9068
--- /dev/null
+++ b/Content/MSPresets/MS_DefaultMaterial_Fuzzy/Functions/MF_Displacement.uasset
Binary files differ
diff --git a/Content/MSPresets/MS_DefaultMaterial_Fuzzy/Functions/MF_Fuzz.uasset b/Content/MSPresets/MS_DefaultMaterial_Fuzzy/Functions/MF_Fuzz.uasset
new file mode 100644
index 0000000..e6c8c9b
--- /dev/null
+++ b/Content/MSPresets/MS_DefaultMaterial_Fuzzy/Functions/MF_Fuzz.uasset
Binary files differ
diff --git a/Content/MSPresets/MS_DefaultMaterial_Fuzzy/Functions/MF_MapAdjustments.uasset b/Content/MSPresets/MS_DefaultMaterial_Fuzzy/Functions/MF_MapAdjustments.uasset
new file mode 100644
index 0000000..da45dd8
--- /dev/null
+++ b/Content/MSPresets/MS_DefaultMaterial_Fuzzy/Functions/MF_MapAdjustments.uasset
Binary files differ
diff --git a/Content/MSPresets/MS_DefaultMaterial_Fuzzy/Functions/MF_Tiling.uasset b/Content/MSPresets/MS_DefaultMaterial_Fuzzy/Functions/MF_Tiling.uasset
new file mode 100644
index 0000000..ecf41e7
--- /dev/null
+++ b/Content/MSPresets/MS_DefaultMaterial_Fuzzy/Functions/MF_Tiling.uasset
Binary files differ
diff --git a/Content/MSPresets/MS_DefaultMaterial_Fuzzy/Functions/MF_Transmission.uasset b/Content/MSPresets/MS_DefaultMaterial_Fuzzy/Functions/MF_Transmission.uasset
new file mode 100644
index 0000000..3357c1c
--- /dev/null
+++ b/Content/MSPresets/MS_DefaultMaterial_Fuzzy/Functions/MF_Transmission.uasset
Binary files differ
diff --git a/Content/MSPresets/MS_DefaultMaterial_Fuzzy/MS_DefaultMaterial_Fuzzy.uasset b/Content/MSPresets/MS_DefaultMaterial_Fuzzy/MS_DefaultMaterial_Fuzzy.uasset
new file mode 100644
index 0000000..5837798
--- /dev/null
+++ b/Content/MSPresets/MS_DefaultMaterial_Fuzzy/MS_DefaultMaterial_Fuzzy.uasset
Binary files differ
diff --git a/Content/MSPresets/MS_DefaultTextures/T_Alpha_Black.uasset b/Content/MSPresets/MS_DefaultTextures/T_Alpha_Black.uasset
new file mode 100644
index 0000000..fbefd2d
--- /dev/null
+++ b/Content/MSPresets/MS_DefaultTextures/T_Alpha_Black.uasset
Binary files differ
diff --git a/Content/MSPresets/MS_DefaultTextures/T_Alpha_Black_VT.uasset b/Content/MSPresets/MS_DefaultTextures/T_Alpha_Black_VT.uasset
new file mode 100644
index 0000000..129f996
--- /dev/null
+++ b/Content/MSPresets/MS_DefaultTextures/T_Alpha_Black_VT.uasset
Binary files differ
diff --git a/Content/MSPresets/MS_DefaultTextures/T_Alpha_Grey.uasset b/Content/MSPresets/MS_DefaultTextures/T_Alpha_Grey.uasset
new file mode 100644
index 0000000..42d5011
--- /dev/null
+++ b/Content/MSPresets/MS_DefaultTextures/T_Alpha_Grey.uasset
Binary files differ
diff --git a/Content/MSPresets/MS_DefaultTextures/T_Alpha_Grey_VT.uasset b/Content/MSPresets/MS_DefaultTextures/T_Alpha_Grey_VT.uasset
new file mode 100644
index 0000000..d70767d
--- /dev/null
+++ b/Content/MSPresets/MS_DefaultTextures/T_Alpha_Grey_VT.uasset
Binary files differ
diff --git a/Content/MSPresets/MS_DefaultTextures/T_Alpha_White.uasset b/Content/MSPresets/MS_DefaultTextures/T_Alpha_White.uasset
new file mode 100644
index 0000000..4873b38
--- /dev/null
+++ b/Content/MSPresets/MS_DefaultTextures/T_Alpha_White.uasset
Binary files differ
diff --git a/Content/MSPresets/MS_DefaultTextures/T_Alpha_White_VT.uasset b/Content/MSPresets/MS_DefaultTextures/T_Alpha_White_VT.uasset
new file mode 100644
index 0000000..7cc9d1e
--- /dev/null
+++ b/Content/MSPresets/MS_DefaultTextures/T_Alpha_White_VT.uasset
Binary files differ
diff --git a/Content/MSPresets/MS_DefaultTextures/T_Masks_RM.uasset b/Content/MSPresets/MS_DefaultTextures/T_Masks_RM.uasset
new file mode 100644
index 0000000..2eccb01
--- /dev/null
+++ b/Content/MSPresets/MS_DefaultTextures/T_Masks_RM.uasset
Binary files differ
diff --git a/Content/MSPresets/MS_DefaultTextures/T_Masks_RM_VT.uasset b/Content/MSPresets/MS_DefaultTextures/T_Masks_RM_VT.uasset
new file mode 100644
index 0000000..bcb9ff9
--- /dev/null
+++ b/Content/MSPresets/MS_DefaultTextures/T_Masks_RM_VT.uasset
Binary files differ
diff --git a/Content/MSPresets/MS_DefaultTextures/T_Normal.uasset b/Content/MSPresets/MS_DefaultTextures/T_Normal.uasset
new file mode 100644
index 0000000..51607b2
--- /dev/null
+++ b/Content/MSPresets/MS_DefaultTextures/T_Normal.uasset
Binary files differ
diff --git a/Content/MSPresets/MS_DefaultTextures/T_Normal_VT.uasset b/Content/MSPresets/MS_DefaultTextures/T_Normal_VT.uasset
new file mode 100644
index 0000000..a59c119
--- /dev/null
+++ b/Content/MSPresets/MS_DefaultTextures/T_Normal_VT.uasset
Binary files differ
diff --git a/Content/MSPresets/MS_DefaultTextures/T_srgb_Black.uasset b/Content/MSPresets/MS_DefaultTextures/T_srgb_Black.uasset
new file mode 100644
index 0000000..755c8e4
--- /dev/null
+++ b/Content/MSPresets/MS_DefaultTextures/T_srgb_Black.uasset
Binary files differ
diff --git a/Content/MSPresets/MS_DefaultTextures/T_srgb_Black_VT.uasset b/Content/MSPresets/MS_DefaultTextures/T_srgb_Black_VT.uasset
new file mode 100644
index 0000000..becfc71
--- /dev/null
+++ b/Content/MSPresets/MS_DefaultTextures/T_srgb_Black_VT.uasset
Binary files differ
diff --git a/Content/MSPresets/MS_DefaultTextures/T_srgb_White.uasset b/Content/MSPresets/MS_DefaultTextures/T_srgb_White.uasset
new file mode 100644
index 0000000..956bf9b
--- /dev/null
+++ b/Content/MSPresets/MS_DefaultTextures/T_srgb_White.uasset
Binary files differ
diff --git a/Content/MSPresets/MS_DefaultTextures/T_srgb_White_VT.uasset b/Content/MSPresets/MS_DefaultTextures/T_srgb_White_VT.uasset
new file mode 100644
index 0000000..b934371
--- /dev/null
+++ b/Content/MSPresets/MS_DefaultTextures/T_srgb_White_VT.uasset
Binary files differ
diff --git a/Content/NunoContent/Audio/Music.uasset b/Content/NunoContent/Audio/Music.uasset
new file mode 100644
index 0000000..1cb81b6
--- /dev/null
+++ b/Content/NunoContent/Audio/Music.uasset
Binary files differ
diff --git a/Content/NunoContent/Audio/Music/War_of_the_Crown.uasset b/Content/NunoContent/Audio/Music/War_of_the_Crown.uasset
new file mode 100644
index 0000000..b2a95a6
--- /dev/null
+++ b/Content/NunoContent/Audio/Music/War_of_the_Crown.uasset
Binary files differ
diff --git a/Content/NunoContent/Audio/SFX.uasset b/Content/NunoContent/Audio/SFX.uasset
new file mode 100644
index 0000000..47f5457
--- /dev/null
+++ b/Content/NunoContent/Audio/SFX.uasset
Binary files differ
diff --git a/Content/NunoContent/Audio/SoundMix.uasset b/Content/NunoContent/Audio/SoundMix.uasset
new file mode 100644
index 0000000..d295b08
--- /dev/null
+++ b/Content/NunoContent/Audio/SoundMix.uasset
Binary files differ
diff --git a/Content/NunoContent/Audio/UI.uasset b/Content/NunoContent/Audio/UI.uasset
new file mode 100644
index 0000000..89a1a30
--- /dev/null
+++ b/Content/NunoContent/Audio/UI.uasset
Binary files differ
diff --git a/Content/NunoContent/Environment/M_Landscape.uasset b/Content/NunoContent/Environment/M_Landscape.uasset
new file mode 100644
index 0000000..09f7b1d
--- /dev/null
+++ b/Content/NunoContent/Environment/M_Landscape.uasset
Binary files differ
diff --git a/Content/NunoContent/Environment/M_Landscape_Inst.uasset b/Content/NunoContent/Environment/M_Landscape_Inst.uasset
new file mode 100644
index 0000000..9a6bad0
--- /dev/null
+++ b/Content/NunoContent/Environment/M_Landscape_Inst.uasset
Binary files differ
diff --git a/Content/NunoContent/Environment/Shared_Assets/L1_LayerInfo.uasset b/Content/NunoContent/Environment/Shared_Assets/L1_LayerInfo.uasset
new file mode 100644
index 0000000..1377bf9
--- /dev/null
+++ b/Content/NunoContent/Environment/Shared_Assets/L1_LayerInfo.uasset
Binary files differ
diff --git a/Content/NunoContent/Environment/Shared_Assets/L2_LayerInfo.uasset b/Content/NunoContent/Environment/Shared_Assets/L2_LayerInfo.uasset
new file mode 100644
index 0000000..5f27ce0
--- /dev/null
+++ b/Content/NunoContent/Environment/Shared_Assets/L2_LayerInfo.uasset
Binary files differ
diff --git a/Content/NunoContent/Environment/Shared_Assets/L3_LayerInfo.uasset b/Content/NunoContent/Environment/Shared_Assets/L3_LayerInfo.uasset
new file mode 100644
index 0000000..35e9f7d
--- /dev/null
+++ b/Content/NunoContent/Environment/Shared_Assets/L3_LayerInfo.uasset
Binary files differ
diff --git a/Content/NunoContent/Environment/Shared_Assets/L4_LayerInfo.uasset b/Content/NunoContent/Environment/Shared_Assets/L4_LayerInfo.uasset
new file mode 100644
index 0000000..288c890
--- /dev/null
+++ b/Content/NunoContent/Environment/Shared_Assets/L4_LayerInfo.uasset
Binary files differ
diff --git a/Content/NunoContent/Fonts/EurostileExtendedBlack.uasset b/Content/NunoContent/Fonts/EurostileExtendedBlack.uasset
new file mode 100644
index 0000000..8ac221f
--- /dev/null
+++ b/Content/NunoContent/Fonts/EurostileExtendedBlack.uasset
Binary files differ
diff --git a/Content/NunoContent/Fonts/EurostileExtendedBlack_Font.uasset b/Content/NunoContent/Fonts/EurostileExtendedBlack_Font.uasset
new file mode 100644
index 0000000..85349b1
--- /dev/null
+++ b/Content/NunoContent/Fonts/EurostileExtendedBlack_Font.uasset
Binary files differ
diff --git a/Content/NunoContent/Images/Button.uasset b/Content/NunoContent/Images/Button.uasset
new file mode 100644
index 0000000..697b0d9
--- /dev/null
+++ b/Content/NunoContent/Images/Button.uasset
Binary files differ
diff --git a/Content/NunoContent/Images/GameLogo.uasset b/Content/NunoContent/Images/GameLogo.uasset
new file mode 100644
index 0000000..7ed8ac6
--- /dev/null
+++ b/Content/NunoContent/Images/GameLogo.uasset
Binary files differ
diff --git a/Content/NunoContent/Images/HoveredButton.uasset b/Content/NunoContent/Images/HoveredButton.uasset
new file mode 100644
index 0000000..79c4556
--- /dev/null
+++ b/Content/NunoContent/Images/HoveredButton.uasset
Binary files differ
diff --git a/Content/NunoContent/Images/JetPlaneBP.uasset b/Content/NunoContent/Images/JetPlaneBP.uasset
new file mode 100644
index 0000000..d242e31
--- /dev/null
+++ b/Content/NunoContent/Images/JetPlaneBP.uasset
Binary files differ
diff --git a/Content/NunoContent/Images/airplane-40453_1280.uasset b/Content/NunoContent/Images/airplane-40453_1280.uasset
new file mode 100644
index 0000000..2b9ee68
--- /dev/null
+++ b/Content/NunoContent/Images/airplane-40453_1280.uasset
Binary files differ
diff --git a/Content/NunoContent/Images/mouse-pointer.uasset b/Content/NunoContent/Images/mouse-pointer.uasset
new file mode 100644
index 0000000..8e70f88
--- /dev/null
+++ b/Content/NunoContent/Images/mouse-pointer.uasset
Binary files differ
diff --git a/Content/NunoContent/Megascans/3D_Assets/Huge_Nordic_Coastal_Cliff_venrdcgga_00/Albedo_2K_venrdcgga.uasset b/Content/NunoContent/Megascans/3D_Assets/Huge_Nordic_Coastal_Cliff_venrdcgga_00/Albedo_2K_venrdcgga.uasset
new file mode 100644
index 0000000..a50dfba
--- /dev/null
+++ b/Content/NunoContent/Megascans/3D_Assets/Huge_Nordic_Coastal_Cliff_venrdcgga_00/Albedo_2K_venrdcgga.uasset
Binary files differ
diff --git a/Content/NunoContent/Megascans/3D_Assets/Huge_Nordic_Coastal_Cliff_venrdcgga_00/Fuzz_2K_venrdcgga.uasset b/Content/NunoContent/Megascans/3D_Assets/Huge_Nordic_Coastal_Cliff_venrdcgga_00/Fuzz_2K_venrdcgga.uasset
new file mode 100644
index 0000000..b8f52df
--- /dev/null
+++ b/Content/NunoContent/Megascans/3D_Assets/Huge_Nordic_Coastal_Cliff_venrdcgga_00/Fuzz_2K_venrdcgga.uasset
Binary files differ
diff --git a/Content/NunoContent/Megascans/3D_Assets/Huge_Nordic_Coastal_Cliff_venrdcgga_00/Huge_Nordic_Coastal_Cliff_LOD0_venrdcgga.uasset b/Content/NunoContent/Megascans/3D_Assets/Huge_Nordic_Coastal_Cliff_venrdcgga_00/Huge_Nordic_Coastal_Cliff_LOD0_venrdcgga.uasset
new file mode 100644
index 0000000..03090ae
--- /dev/null
+++ b/Content/NunoContent/Megascans/3D_Assets/Huge_Nordic_Coastal_Cliff_venrdcgga_00/Huge_Nordic_Coastal_Cliff_LOD0_venrdcgga.uasset
Binary files differ
diff --git a/Content/NunoContent/Megascans/3D_Assets/Huge_Nordic_Coastal_Cliff_venrdcgga_00/Huge_Nordic_Coastal_Cliff_venrdcgga_00_inst.uasset b/Content/NunoContent/Megascans/3D_Assets/Huge_Nordic_Coastal_Cliff_venrdcgga_00/Huge_Nordic_Coastal_Cliff_venrdcgga_00_inst.uasset
new file mode 100644
index 0000000..7e71f37
--- /dev/null
+++ b/Content/NunoContent/Megascans/3D_Assets/Huge_Nordic_Coastal_Cliff_venrdcgga_00/Huge_Nordic_Coastal_Cliff_venrdcgga_00_inst.uasset
Binary files differ
diff --git a/Content/NunoContent/Megascans/3D_Assets/Huge_Nordic_Coastal_Cliff_venrdcgga_00/Normal_2K_LOD0_venrdcgga.uasset b/Content/NunoContent/Megascans/3D_Assets/Huge_Nordic_Coastal_Cliff_venrdcgga_00/Normal_2K_LOD0_venrdcgga.uasset
new file mode 100644
index 0000000..60bbb71
--- /dev/null
+++ b/Content/NunoContent/Megascans/3D_Assets/Huge_Nordic_Coastal_Cliff_venrdcgga_00/Normal_2K_LOD0_venrdcgga.uasset
Binary files differ
diff --git a/Content/NunoContent/Megascans/3D_Assets/Huge_Nordic_Coastal_Cliff_venrdcgga_00/Roughness_2K_venrdcgga.uasset b/Content/NunoContent/Megascans/3D_Assets/Huge_Nordic_Coastal_Cliff_venrdcgga_00/Roughness_2K_venrdcgga.uasset
new file mode 100644
index 0000000..0219f2b
--- /dev/null
+++ b/Content/NunoContent/Megascans/3D_Assets/Huge_Nordic_Coastal_Cliff_venrdcgga_00/Roughness_2K_venrdcgga.uasset
Binary files differ
diff --git a/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_veqnci0db/Albedo_2K_veqnci0db.uasset b/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_veqnci0db/Albedo_2K_veqnci0db.uasset
new file mode 100644
index 0000000..80ab79f
--- /dev/null
+++ b/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_veqnci0db/Albedo_2K_veqnci0db.uasset
Binary files differ
diff --git a/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_veqnci0db/Fuzz_2K_veqnci0db.uasset b/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_veqnci0db/Fuzz_2K_veqnci0db.uasset
new file mode 100644
index 0000000..2cea1d5
--- /dev/null
+++ b/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_veqnci0db/Fuzz_2K_veqnci0db.uasset
Binary files differ
diff --git a/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_veqnci0db/Massive_Nordic_Coastal_Cliff_LOD0_veqnci0db.uasset b/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_veqnci0db/Massive_Nordic_Coastal_Cliff_LOD0_veqnci0db.uasset
new file mode 100644
index 0000000..5994be6
--- /dev/null
+++ b/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_veqnci0db/Massive_Nordic_Coastal_Cliff_LOD0_veqnci0db.uasset
Binary files differ
diff --git a/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_veqnci0db/Massive_Nordic_Coastal_Cliff_veqnci0db_inst.uasset b/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_veqnci0db/Massive_Nordic_Coastal_Cliff_veqnci0db_inst.uasset
new file mode 100644
index 0000000..80cbda7
--- /dev/null
+++ b/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_veqnci0db/Massive_Nordic_Coastal_Cliff_veqnci0db_inst.uasset
Binary files differ
diff --git a/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_veqnci0db/Normal_2K_LOD0_veqnci0db.uasset b/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_veqnci0db/Normal_2K_LOD0_veqnci0db.uasset
new file mode 100644
index 0000000..64803a9
--- /dev/null
+++ b/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_veqnci0db/Normal_2K_LOD0_veqnci0db.uasset
Binary files differ
diff --git a/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_veqnci0db/Roughness_2K_veqnci0db.uasset b/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_veqnci0db/Roughness_2K_veqnci0db.uasset
new file mode 100644
index 0000000..0ccd5fc
--- /dev/null
+++ b/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_veqnci0db/Roughness_2K_veqnci0db.uasset
Binary files differ
diff --git a/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_vfmjadufa/Albedo_2K_vfmjadufa.uasset b/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_vfmjadufa/Albedo_2K_vfmjadufa.uasset
new file mode 100644
index 0000000..794fcfb
--- /dev/null
+++ b/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_vfmjadufa/Albedo_2K_vfmjadufa.uasset
Binary files differ
diff --git a/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_vfmjadufa/Fuzz_2K_vfmjadufa.uasset b/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_vfmjadufa/Fuzz_2K_vfmjadufa.uasset
new file mode 100644
index 0000000..61dd7b2
--- /dev/null
+++ b/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_vfmjadufa/Fuzz_2K_vfmjadufa.uasset
Binary files differ
diff --git a/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_vfmjadufa/Massive_Nordic_Coastal_Cliff_LOD0_vfmjadufa.uasset b/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_vfmjadufa/Massive_Nordic_Coastal_Cliff_LOD0_vfmjadufa.uasset
new file mode 100644
index 0000000..a050a3f
--- /dev/null
+++ b/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_vfmjadufa/Massive_Nordic_Coastal_Cliff_LOD0_vfmjadufa.uasset
Binary files differ
diff --git a/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_vfmjadufa/Massive_Nordic_Coastal_Cliff_vfmjadufa_inst.uasset b/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_vfmjadufa/Massive_Nordic_Coastal_Cliff_vfmjadufa_inst.uasset
new file mode 100644
index 0000000..779bba4
--- /dev/null
+++ b/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_vfmjadufa/Massive_Nordic_Coastal_Cliff_vfmjadufa_inst.uasset
Binary files differ
diff --git a/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_vfmjadufa/Normal_2K_LOD0_vfmjadufa.uasset b/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_vfmjadufa/Normal_2K_LOD0_vfmjadufa.uasset
new file mode 100644
index 0000000..8ed6b83
--- /dev/null
+++ b/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_vfmjadufa/Normal_2K_LOD0_vfmjadufa.uasset
Binary files differ
diff --git a/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_vfmjadufa/Roughness_2K_vfmjadufa.uasset b/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_vfmjadufa/Roughness_2K_vfmjadufa.uasset
new file mode 100644
index 0000000..7406a96
--- /dev/null
+++ b/Content/NunoContent/Megascans/3D_Assets/Massive_Nordic_Coastal_Cliff_vfmjadufa/Roughness_2K_vfmjadufa.uasset
Binary files differ
diff --git a/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/AO_2K_td0macdn.uasset b/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/AO_2K_td0macdn.uasset
new file mode 100644
index 0000000..7413cd1
--- /dev/null
+++ b/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/AO_2K_td0macdn.uasset
Binary files differ
diff --git a/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/Albedo_2K_td0macdn.uasset b/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/Albedo_2K_td0macdn.uasset
new file mode 100644
index 0000000..6185641
--- /dev/null
+++ b/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/Albedo_2K_td0macdn.uasset
Binary files differ
diff --git a/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/Bump_2K_td0macdn.uasset b/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/Bump_2K_td0macdn.uasset
new file mode 100644
index 0000000..f9e077c
--- /dev/null
+++ b/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/Bump_2K_td0macdn.uasset
Binary files differ
diff --git a/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/Cavity_2K_td0macdn.uasset b/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/Cavity_2K_td0macdn.uasset
new file mode 100644
index 0000000..8772d58
--- /dev/null
+++ b/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/Cavity_2K_td0macdn.uasset
Binary files differ
diff --git a/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/Displacement_2K_td0macdn.uasset b/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/Displacement_2K_td0macdn.uasset
new file mode 100644
index 0000000..cb1195b
--- /dev/null
+++ b/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/Displacement_2K_td0macdn.uasset
Binary files differ
diff --git a/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/Gloss_2K_td0macdn.uasset b/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/Gloss_2K_td0macdn.uasset
new file mode 100644
index 0000000..11a761c
--- /dev/null
+++ b/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/Gloss_2K_td0macdn.uasset
Binary files differ
diff --git a/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/Mask_2K_td0macdn.uasset b/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/Mask_2K_td0macdn.uasset
new file mode 100644
index 0000000..1b739c8
--- /dev/null
+++ b/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/Mask_2K_td0macdn.uasset
Binary files differ
diff --git a/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/Normal_2K_td0macdn.uasset b/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/Normal_2K_td0macdn.uasset
new file mode 100644
index 0000000..89e7055
--- /dev/null
+++ b/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/Normal_2K_td0macdn.uasset
Binary files differ
diff --git a/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/RM_2K_td0macdn.uasset b/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/RM_2K_td0macdn.uasset
new file mode 100644
index 0000000..8691037
--- /dev/null
+++ b/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/RM_2K_td0macdn.uasset
Binary files differ
diff --git a/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/Specular_2K_td0macdn.uasset b/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/Specular_2K_td0macdn.uasset
new file mode 100644
index 0000000..b7ad39b
--- /dev/null
+++ b/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/Specular_2K_td0macdn.uasset
Binary files differ
diff --git a/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/Thai_Rocky_Beach_td0macdn_01_inst.uasset b/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/Thai_Rocky_Beach_td0macdn_01_inst.uasset
new file mode 100644
index 0000000..d5d5d92
--- /dev/null
+++ b/Content/NunoContent/Megascans/Surfaces/Thai_Rocky_Beach_td0macdn/Thai_Rocky_Beach_td0macdn_01_inst.uasset
Binary files differ
diff --git a/Content/NunoContent/Menus/MainMenuGameModeBase.uasset b/Content/NunoContent/Menus/MainMenuGameModeBase.uasset
new file mode 100644
index 0000000..b164035
--- /dev/null
+++ b/Content/NunoContent/Menus/MainMenuGameModeBase.uasset
Binary files differ
diff --git a/Content/NunoContent/Menus/MainMenuPC.uasset b/Content/NunoContent/Menus/MainMenuPC.uasset
new file mode 100644
index 0000000..63df3c1
--- /dev/null
+++ b/Content/NunoContent/Menus/MainMenuPC.uasset
Binary files differ
diff --git a/Content/NunoContent/Menus/Widgets/CostumMouseCursor.uasset b/Content/NunoContent/Menus/Widgets/CostumMouseCursor.uasset
new file mode 100644
index 0000000..4443343
--- /dev/null
+++ b/Content/NunoContent/Menus/Widgets/CostumMouseCursor.uasset
Binary files differ
diff --git a/Content/NunoContent/Menus/Widgets/MainMenu_Widget.uasset b/Content/NunoContent/Menus/Widgets/MainMenu_Widget.uasset
new file mode 100644
index 0000000..8f91d8c
--- /dev/null
+++ b/Content/NunoContent/Menus/Widgets/MainMenu_Widget.uasset
Binary files differ
diff --git a/Content/NunoContent/Menus/Widgets/OptionsMenu_Widget.uasset b/Content/NunoContent/Menus/Widgets/OptionsMenu_Widget.uasset
new file mode 100644
index 0000000..8866f99
--- /dev/null
+++ b/Content/NunoContent/Menus/Widgets/OptionsMenu_Widget.uasset
Binary files differ
diff --git a/Content/NunoContent/UI/InGame.uasset b/Content/NunoContent/UI/InGame.uasset
new file mode 100644
index 0000000..55e9c59
--- /dev/null
+++ b/Content/NunoContent/UI/InGame.uasset
Binary files differ
diff --git a/Content/PlaneTest/Missile.uasset b/Content/PlaneTest/Missile.uasset
index 99ba5f0..b046bbf 100644
--- a/Content/PlaneTest/Missile.uasset
+++ b/Content/PlaneTest/Missile.uasset
Binary files differ
diff --git a/Content/PlaneTest/Projectile_BP.uasset b/Content/PlaneTest/Projectile_BP.uasset
index c797cc7..9b10cf5 100644
--- a/Content/PlaneTest/Projectile_BP.uasset
+++ b/Content/PlaneTest/Projectile_BP.uasset
Binary files differ
diff --git a/Content/PlaneTest/Targets_BP.uasset b/Content/PlaneTest/Targets_BP.uasset
index abf0d91..0126f67 100644
--- a/Content/PlaneTest/Targets_BP.uasset
+++ b/Content/PlaneTest/Targets_BP.uasset
Binary files differ
diff --git a/Content/VigilanteContent/Shared/Levels/Platform/Cylinder/Materials/M_Platform.uasset b/Content/VigilanteContent/Shared/Levels/Platform/Cylinder/Materials/M_Platform.uasset
new file mode 100644
index 0000000..feb8c1d
--- /dev/null
+++ b/Content/VigilanteContent/Shared/Levels/Platform/Cylinder/Materials/M_Platform.uasset
Binary files differ
diff --git a/Content/VigilanteContent/Shared/Levels/Platform/Cylinder/Materials/Textures/T_Platform_ARM.uasset b/Content/VigilanteContent/Shared/Levels/Platform/Cylinder/Materials/Textures/T_Platform_ARM.uasset
new file mode 100644
index 0000000..f358867
--- /dev/null
+++ b/Content/VigilanteContent/Shared/Levels/Platform/Cylinder/Materials/Textures/T_Platform_ARM.uasset
Binary files differ
diff --git a/Content/VigilanteContent/Shared/Levels/Platform/Cylinder/Materials/Textures/T_Platform_D.uasset b/Content/VigilanteContent/Shared/Levels/Platform/Cylinder/Materials/Textures/T_Platform_D.uasset
new file mode 100644
index 0000000..20cb9b0
--- /dev/null
+++ b/Content/VigilanteContent/Shared/Levels/Platform/Cylinder/Materials/Textures/T_Platform_D.uasset
Binary files differ
diff --git a/Content/VigilanteContent/Shared/Levels/Platform/Cylinder/Materials/Textures/T_Platform_N.uasset b/Content/VigilanteContent/Shared/Levels/Platform/Cylinder/Materials/Textures/T_Platform_N.uasset
new file mode 100644
index 0000000..a855ab3
--- /dev/null
+++ b/Content/VigilanteContent/Shared/Levels/Platform/Cylinder/Materials/Textures/T_Platform_N.uasset
Binary files differ
diff --git a/Content/VigilanteContent/Shared/Materials/M_Master_Glass_ARM_N.uasset b/Content/VigilanteContent/Shared/Materials/M_Master_Glass_ARM_N.uasset
new file mode 100644
index 0000000..7dee0e4
--- /dev/null
+++ b/Content/VigilanteContent/Shared/Materials/M_Master_Glass_ARM_N.uasset
Binary files differ
diff --git a/Content/VigilanteContent/Shared/Materials/M_Master_Main.uasset b/Content/VigilanteContent/Shared/Materials/M_Master_Main.uasset
new file mode 100644
index 0000000..05b52c3
--- /dev/null
+++ b/Content/VigilanteContent/Shared/Materials/M_Master_Main.uasset
Binary files differ
diff --git a/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Anim/A_East_Fighter_Su30_break_flap_open.uasset b/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Anim/A_East_Fighter_Su30_break_flap_open.uasset
new file mode 100644
index 0000000..565091c
--- /dev/null
+++ b/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Anim/A_East_Fighter_Su30_break_flap_open.uasset
Binary files differ
diff --git a/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Materials/MI_East_Fighter_SU30_Glass.uasset b/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Materials/MI_East_Fighter_SU30_Glass.uasset
new file mode 100644
index 0000000..5a3d880
--- /dev/null
+++ b/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Materials/MI_East_Fighter_SU30_Glass.uasset
Binary files differ
diff --git a/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Materials/MI_East_Fighter_SU30_Main.uasset b/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Materials/MI_East_Fighter_SU30_Main.uasset
new file mode 100644
index 0000000..5b82913
--- /dev/null
+++ b/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Materials/MI_East_Fighter_SU30_Main.uasset
Binary files differ
diff --git a/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Materials/Textures/T_East_Fighter_Su30_ARM.uasset b/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Materials/Textures/T_East_Fighter_Su30_ARM.uasset
new file mode 100644
index 0000000..83e3407
--- /dev/null
+++ b/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Materials/Textures/T_East_Fighter_Su30_ARM.uasset
Binary files differ
diff --git a/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Materials/Textures/T_East_Fighter_Su30_D.uasset b/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Materials/Textures/T_East_Fighter_Su30_D.uasset
new file mode 100644
index 0000000..661e93b
--- /dev/null
+++ b/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Materials/Textures/T_East_Fighter_Su30_D.uasset
Binary files differ
diff --git a/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Materials/Textures/T_East_Fighter_Su30_E.uasset b/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Materials/Textures/T_East_Fighter_Su30_E.uasset
new file mode 100644
index 0000000..189c492
--- /dev/null
+++ b/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Materials/Textures/T_East_Fighter_Su30_E.uasset
Binary files differ
diff --git a/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Materials/Textures/T_East_Fighter_Su30_N.uasset b/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Materials/Textures/T_East_Fighter_Su30_N.uasset
new file mode 100644
index 0000000..cd07401
--- /dev/null
+++ b/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Materials/Textures/T_East_Fighter_Su30_N.uasset
Binary files differ
diff --git a/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Materials/Textures/T_East_Fighter_Su30_glass_ARM.uasset b/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Materials/Textures/T_East_Fighter_Su30_glass_ARM.uasset
new file mode 100644
index 0000000..b46041e
--- /dev/null
+++ b/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Materials/Textures/T_East_Fighter_Su30_glass_ARM.uasset
Binary files differ
diff --git a/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Materials/Textures/T_East_Fighter_Su30_glass_D.uasset b/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Materials/Textures/T_East_Fighter_Su30_glass_D.uasset
new file mode 100644
index 0000000..e3a493e
--- /dev/null
+++ b/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Materials/Textures/T_East_Fighter_Su30_glass_D.uasset
Binary files differ
diff --git a/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Materials/Textures/T_East_Fighter_Su30_glass_N.uasset b/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Materials/Textures/T_East_Fighter_Su30_glass_N.uasset
new file mode 100644
index 0000000..4f51748
--- /dev/null
+++ b/Content/VigilanteContent/Vehicles/East_Fighter_Su30/Materials/Textures/T_East_Fighter_Su30_glass_N.uasset
Binary files differ
diff --git a/Content/VigilanteContent/Vehicles/East_Fighter_Su30/PHYS_East_Fighter_Su30.uasset b/Content/VigilanteContent/Vehicles/East_Fighter_Su30/PHYS_East_Fighter_Su30.uasset
new file mode 100644
index 0000000..74603e3
--- /dev/null
+++ b/Content/VigilanteContent/Vehicles/East_Fighter_Su30/PHYS_East_Fighter_Su30.uasset
Binary files differ
diff --git a/Content/VigilanteContent/Vehicles/East_Fighter_Su30/SKEL_East_Fighter_Su30.uasset b/Content/VigilanteContent/Vehicles/East_Fighter_Su30/SKEL_East_Fighter_Su30.uasset
new file mode 100644
index 0000000..ea1d519
--- /dev/null
+++ b/Content/VigilanteContent/Vehicles/East_Fighter_Su30/SKEL_East_Fighter_Su30.uasset
Binary files differ
diff --git a/Content/VigilanteContent/Vehicles/East_Fighter_Su30/SK_East_Fighter_Su30.uasset b/Content/VigilanteContent/Vehicles/East_Fighter_Su30/SK_East_Fighter_Su30.uasset
new file mode 100644
index 0000000..eee4dd3
--- /dev/null
+++ b/Content/VigilanteContent/Vehicles/East_Fighter_Su30/SK_East_Fighter_Su30.uasset
Binary files differ
diff --git a/SkyFrontier.uproject b/SkyFrontier.uproject
index 6003fa6..d69af13 100644
--- a/SkyFrontier.uproject
+++ b/SkyFrontier.uproject
@@ -7,7 +7,10 @@
{
"Name": "SkyFrontier",
"Type": "Runtime",
- "LoadingPhase": "Default"
+ "LoadingPhase": "Default",
+ "AdditionalDependencies": [
+ "Engine"
+ ]
}
],
"Plugins": [
@@ -19,6 +22,18 @@
"Name": "UniversalCameraPlugin",
"Enabled": true,
"MarketplaceURL": "com.epicgames.launcher://ue/marketplace/product/a9172fdfc87c464eae3a49860ee2610f"
+ },
+ {
+ "Name": "Landmass",
+ "Enabled": true
+ },
+ {
+ "Name": "Water",
+ "Enabled": true
+ },
+ {
+ "Name": "ShallowWater",
+ "Enabled": true
}
]
}
\ No newline at end of file
diff --git a/Source/SkyFrontier/Private/DamageSystem.cpp b/Source/SkyFrontier/Private/DamageSystem.cpp
new file mode 100644
index 0000000..6ffce29
--- /dev/null
+++ b/Source/SkyFrontier/Private/DamageSystem.cpp
@@ -0,0 +1,54 @@
+// Fill out your copyright notice in the Description page of Project Settings.
+
+
+#include "DamageSystem.h"
+
+// Sets default values for this component's properties
+UDamageSystem::UDamageSystem()
+{
+ PrimaryComponentTick.bCanEverTick = false;
+ PrimaryComponentTick.bStartWithTickEnabled = false;
+}
+
+
+// Called when the game starts
+void UDamageSystem::BeginPlay()
+{
+ Super::BeginPlay();
+ ShootingDamage = 20;
+ MissileDamage = 50;
+
+}
+
+float UDamageSystem::GetShootingDamage() const
+{
+ return ShootingDamage;
+}
+
+float UDamageSystem::GetMissileDamage() const
+{
+ return MissileDamage;
+}
+
+void UDamageSystem::MultiplyDamage(const float Amount)
+{
+ if(Amount >= 0)
+ {
+ ShootingDamage *= Amount;
+ MissileDamage *= Amount;
+
+ OnIncreaseDamageEvent.Broadcast(Amount);
+ }
+}
+
+void UDamageSystem::RestoreDamage(const float Amount)
+{
+ if(Amount >= 0)
+ {
+ ShootingDamage /= Amount;
+ MissileDamage /= Amount;
+
+ OnIncreaseDamageEvent.Broadcast(Amount);
+ }
+}
+
diff --git a/Source/SkyFrontier/Private/HealthSystem.cpp b/Source/SkyFrontier/Private/HealthSystem.cpp
new file mode 100644
index 0000000..3643f42
--- /dev/null
+++ b/Source/SkyFrontier/Private/HealthSystem.cpp
@@ -0,0 +1,96 @@
+// Fill out your copyright notice in the Description page of Project Settings.
+
+
+#include "HealthSystem.h"
+
+UHealthSystem::UHealthSystem()
+{
+ PrimaryComponentTick.bCanEverTick = false;
+ PrimaryComponentTick.bStartWithTickEnabled = false;
+}
+
+void UHealthSystem::BeginPlay()
+{
+ Super::BeginPlay();
+
+ Health = MaxHealth;
+ Shield = 0;
+}
+
+float UHealthSystem::GetHealth() const
+{
+ return Health;
+}
+
+float UHealthSystem::GetMaxHealth() const
+{
+ return MaxHealth;
+}
+
+float UHealthSystem::GetHealthAsPercentage() const
+{
+ return Health / MaxHealth;
+}
+
+float UHealthSystem::GetShield() const
+{
+ return Shield;
+}
+
+void UHealthSystem::ModifyHealth(const float Amount)
+{
+ if(Amount == 0)
+ return;
+
+ Health += Amount;
+
+ Amount > 0 ? OnDamageHealedEvent.Broadcast(Amount) : OnDamageTakenEvent.Broadcast(Amount);
+}
+
+void UHealthSystem::TakeDamage(const float Amount)
+{
+ if(Amount > 0)
+ {
+ Health -= Amount;
+
+ OnDamageTakenEvent.Broadcast(Amount);
+ }
+}
+
+void UHealthSystem::RecoverHealth(const float Amount)
+{
+ if(Amount > 0)
+ {
+ Health += Amount;
+ if (Health >= MaxHealth)
+ {
+ Health = MaxHealth;
+ }
+
+ OnDamageHealedEvent.Broadcast(Amount);
+ }
+}
+
+void UHealthSystem::ReceiveShield(const float Amount)
+{
+ if(Amount >= 0)
+ {
+ Shield += Amount;
+
+ OnShieldReceiveEvent.Broadcast(Amount);
+ }
+}
+
+void UHealthSystem::RemoveShield(const float Amount)
+{
+ if(Amount >= 0)
+ {
+ Shield -= Amount;
+
+ if (Shield < 0)
+ {
+ Shield = 0;
+ }
+ OnShieldReceiveEvent.Broadcast(Amount);
+ }
+}
\ No newline at end of file
diff --git a/Source/SkyFrontier/Public/DamageSystem.h b/Source/SkyFrontier/Public/DamageSystem.h
new file mode 100644
index 0000000..3f660d8
--- /dev/null
+++ b/Source/SkyFrontier/Public/DamageSystem.h
@@ -0,0 +1,45 @@
+// Fill out your copyright notice in the Description page of Project Settings.
+
+#pragma once
+
+#include "CoreMinimal.h"
+#include "Components/ActorComponent.h"
+#include "DamageSystem.generated.h"
+
+DECLARE_EVENT_OneParam(UCPP_DamageComponent, IncreaseDamageEvent, float )
+DECLARE_EVENT_OneParam(UCPP_DamageComponent, DecreaseDamageEvent, float )
+
+UCLASS( ClassGroup=(Custom), meta=(BlueprintSpawnableComponent) )
+class SKYFRONTIER_API UDamageSystem : public UActorComponent
+{
+ GENERATED_BODY()
+
+public:
+ UDamageSystem();
+
+ UFUNCTION(BlueprintPure)
+ float GetShootingDamage() const;
+ UFUNCTION(BlueprintPure)
+ float GetMissileDamage() const;
+
+ UFUNCTION(BlueprintCallable)
+ void MultiplyDamage(float Amount);
+ UFUNCTION(BlueprintCallable)
+ void RestoreDamage(float Amount);
+
+protected:
+ // Called when the game starts
+ virtual void BeginPlay() override;
+
+public: // Events
+ IncreaseDamageEvent OnIncreaseDamageEvent;
+ DecreaseDamageEvent OnDecreaseDamageEvent;
+
+private: // This can be protected if we want to subclass the Health Component
+
+ UPROPERTY(EditAnywhere)
+ float ShootingDamage;
+ UPROPERTY(EditAnywhere)
+ float MissileDamage;
+
+};
diff --git a/Source/SkyFrontier/Public/HealthSystem.h b/Source/SkyFrontier/Public/HealthSystem.h
new file mode 100644
index 0000000..3f5377b
--- /dev/null
+++ b/Source/SkyFrontier/Public/HealthSystem.h
@@ -0,0 +1,62 @@
+// Fill out your copyright notice in the Description page of Project Settings.
+
+#pragma once
+
+#include "CoreMinimal.h"
+#include "Components/ActorComponent.h"
+#include "HealthSystem.generated.h"
+
+DECLARE_EVENT_OneParam(UCPP_HealthComponent, DamageTakenEvent, float )
+DECLARE_EVENT_OneParam(UCPP_HealthComponent, HealDamageEvent, float )
+DECLARE_EVENT_OneParam(UCPP_HealthComponent, ShieldReceiveEvent, float )
+
+UCLASS( ClassGroup=(Custom), meta=(BlueprintSpawnableComponent) )
+class SKYFRONTIER_API UHealthSystem : public UActorComponent
+{
+ GENERATED_BODY()
+
+public:
+ // Sets default values for this component's properties
+ UHealthSystem();
+
+ UFUNCTION(BlueprintPure)
+ float GetHealth() const;
+ UFUNCTION(BlueprintPure)
+ float GetMaxHealth() const;
+ UFUNCTION(BlueprintPure)
+ float GetHealthAsPercentage() const;
+ UFUNCTION(BlueprintPure)
+ float GetShield() const;
+
+ UFUNCTION(BlueprintCallable)
+ void ModifyHealth(float Amount);
+
+ UFUNCTION(BlueprintCallable)
+ void TakeDamage(float Amount);
+ UFUNCTION(BlueprintCallable)
+ void RecoverHealth(float Amount);
+ UFUNCTION(BlueprintCallable)
+ void ReceiveShield(float Amount);
+ UFUNCTION(BlueprintCallable)
+ void RemoveShield(float Amount);
+
+protected: // Functions
+
+ virtual void BeginPlay() override;
+
+public: // Events
+
+ DamageTakenEvent OnDamageTakenEvent;
+ HealDamageEvent OnDamageHealedEvent;
+ ShieldReceiveEvent OnShieldReceiveEvent;
+
+private: // This can be protected if we want to subclass the Health Component
+
+ UPROPERTY(VisibleAnywhere)
+ float Health;
+ UPROPERTY(EditAnywhere)
+ float MaxHealth;
+ UPROPERTY(VisibleAnywhere)
+ float Shield;
+
+};