diff --git a/Assets/Scenes/SampleScene.unity.meta b/Assets/Resources/Data/EntityData/CompanionData.meta
similarity index 67%
rename from Assets/Scenes/SampleScene.unity.meta
rename to Assets/Resources/Data/EntityData/CompanionData.meta
index 952bd1e9e110583d94b471a30ff4ddd69f4aee7d..eabef7679789b25ac630d32b0f098e440b5fb943 100644
--- a/Assets/Scenes/SampleScene.unity.meta
+++ b/Assets/Resources/Data/EntityData/CompanionData.meta
@@ -1,5 +1,6 @@
 fileFormatVersion: 2
-guid: 9fc0d4010bbf28b4594072e72b8655ab
+guid: ce978864aefca41478a03b68da453799
+folderAsset: yes
 DefaultImporter:
   externalObjects: {}
   userData: 
diff --git a/Assets/Resources/Data/EntityData/CompanionData/HealingCompanionData.asset b/Assets/Resources/Data/EntityData/CompanionData/HealingCompanionData.asset
new file mode 100644
index 0000000000000000000000000000000000000000..29fc558aff7ddb6665e458cfcb790e9351028667
--- /dev/null
+++ b/Assets/Resources/Data/EntityData/CompanionData/HealingCompanionData.asset
@@ -0,0 +1,16 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!114 &11400000
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 0}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 216226ea5552cac49bdf2645569267bf, type: 3}
+  m_Name: HealingCompanionData
+  m_EditorClassIdentifier: 
+  prefabPath: 
+  model: {fileID: 0}
diff --git a/Assets/Resources/Data/EntityData/CompanionData/HealingCompanionData.asset.meta b/Assets/Resources/Data/EntityData/CompanionData/HealingCompanionData.asset.meta
new file mode 100644
index 0000000000000000000000000000000000000000..04cc134a5206e2fb130926d132bdd432cfb3dddf
--- /dev/null
+++ b/Assets/Resources/Data/EntityData/CompanionData/HealingCompanionData.asset.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 9829963a12dd0fa4e89086db46fea950
+NativeFormatImporter:
+  externalObjects: {}
+  mainObjectFileID: 11400000
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git a/Assets/Resources/Models/Characters/Basic.meta b/Assets/Resources/Models/Characters/Basic1.meta
similarity index 100%
rename from Assets/Resources/Models/Characters/Basic.meta
rename to Assets/Resources/Models/Characters/Basic1.meta
diff --git a/Assets/Resources/Models/Characters/Basic/Animations.meta b/Assets/Resources/Models/Characters/Basic1/Animations.meta
similarity index 100%
rename from Assets/Resources/Models/Characters/Basic/Animations.meta
rename to Assets/Resources/Models/Characters/Basic1/Animations.meta
diff --git a/Assets/Resources/Models/Characters/Basic/Animations/BasicCharAnim.controller b/Assets/Resources/Models/Characters/Basic1/Animations/Basic1Anim.controller
similarity index 99%
rename from Assets/Resources/Models/Characters/Basic/Animations/BasicCharAnim.controller
rename to Assets/Resources/Models/Characters/Basic1/Animations/Basic1Anim.controller
index 6c9052b1e6b6f31417fd7856daee29b56a327ad3..33d61d3e8980dd369ee5da17b34a09580523a2c8 100644
--- a/Assets/Resources/Models/Characters/Basic/Animations/BasicCharAnim.controller
+++ b/Assets/Resources/Models/Characters/Basic1/Animations/Basic1Anim.controller
@@ -76,7 +76,7 @@ AnimatorController:
   m_CorrespondingSourceObject: {fileID: 0}
   m_PrefabInstance: {fileID: 0}
   m_PrefabAsset: {fileID: 0}
-  m_Name: BasicCharAnim
+  m_Name: Basic1Anim
   serializedVersion: 5
   m_AnimatorParameters:
   - m_Name: Walk_param
diff --git a/Assets/Resources/Models/Characters/Basic/Animations/BasicCharAnim.controller.meta b/Assets/Resources/Models/Characters/Basic1/Animations/Basic1Anim.controller.meta
similarity index 100%
rename from Assets/Resources/Models/Characters/Basic/Animations/BasicCharAnim.controller.meta
rename to Assets/Resources/Models/Characters/Basic1/Animations/Basic1Anim.controller.meta
diff --git a/Assets/Resources/Models/Characters/Basic/BasicCharModel.prefab b/Assets/Resources/Models/Characters/Basic1/Basic1Model.prefab
similarity index 99%
rename from Assets/Resources/Models/Characters/Basic/BasicCharModel.prefab
rename to Assets/Resources/Models/Characters/Basic1/Basic1Model.prefab
index 3e874c341ad8a6f37a5dee9778c4d67cd7e5cabd..55f109f9675ce45d1a55259d29200d57e49b6fed 100644
--- a/Assets/Resources/Models/Characters/Basic/BasicCharModel.prefab
+++ b/Assets/Resources/Models/Characters/Basic1/Basic1Model.prefab
@@ -15,7 +15,7 @@ GameObject:
   - component: {fileID: 7854868560450781420}
   - component: {fileID: 4321336250984689561}
   m_Layer: 6
-  m_Name: BasicCharModel
+  m_Name: Basic1Model
   m_TagString: Player
   m_Icon: {fileID: 0}
   m_NavMeshLayer: 0
diff --git a/Assets/Resources/Models/Characters/Basic/BasicCharModel.prefab.meta b/Assets/Resources/Models/Characters/Basic1/Basic1Model.prefab.meta
similarity index 100%
rename from Assets/Resources/Models/Characters/Basic/BasicCharModel.prefab.meta
rename to Assets/Resources/Models/Characters/Basic1/Basic1Model.prefab.meta
diff --git a/Assets/Resources/Models/Characters/Basic2/BasicChar2Model.prefab b/Assets/Resources/Models/Characters/Basic2/Basic2Model.prefab
similarity index 99%
rename from Assets/Resources/Models/Characters/Basic2/BasicChar2Model.prefab
rename to Assets/Resources/Models/Characters/Basic2/Basic2Model.prefab
index b473d128882cfc07399a58ff8bf661d9f9647d9c..1ff50a5de4470e06e8761af165275994e77105f7 100644
--- a/Assets/Resources/Models/Characters/Basic2/BasicChar2Model.prefab
+++ b/Assets/Resources/Models/Characters/Basic2/Basic2Model.prefab
@@ -15,7 +15,7 @@ GameObject:
   - component: {fileID: 4205797128800968765}
   - component: {fileID: 5114590188839600129}
   m_Layer: 7
-  m_Name: BasicChar2Model
+  m_Name: Basic2Model
   m_TagString: Untagged
   m_Icon: {fileID: 0}
   m_NavMeshLayer: 0
diff --git a/Assets/Resources/Models/Characters/Basic2/BasicChar2Model.prefab.meta b/Assets/Resources/Models/Characters/Basic2/Basic2Model.prefab.meta
similarity index 100%
rename from Assets/Resources/Models/Characters/Basic2/BasicChar2Model.prefab.meta
rename to Assets/Resources/Models/Characters/Basic2/Basic2Model.prefab.meta
diff --git a/Assets/Resources/Models/Characters/Basic3.meta b/Assets/Resources/Models/Characters/Basic3.meta
new file mode 100644
index 0000000000000000000000000000000000000000..14576563789024057edc20465fea2c05ae612139
--- /dev/null
+++ b/Assets/Resources/Models/Characters/Basic3.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: b28bcddafed190744a821dabd63bd097
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git a/Assets/Resources/Models/Characters/Basic3/Basic3.prefab b/Assets/Resources/Models/Characters/Basic3/Basic3.prefab
new file mode 100644
index 0000000000000000000000000000000000000000..5f3bdad7c96cd73c935819f3765a429f637b2625
--- /dev/null
+++ b/Assets/Resources/Models/Characters/Basic3/Basic3.prefab
@@ -0,0 +1,123 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!1 &3802837052780452132
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 486067988534400423}
+  - component: {fileID: 2785673166861171252}
+  - component: {fileID: 230920367868259381}
+  - component: {fileID: 1523314302102385116}
+  - component: {fileID: 138729632845352590}
+  m_Layer: 0
+  m_Name: Basic3
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &486067988534400423
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 3802837052780452132}
+  serializedVersion: 2
+  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_ConstrainProportionsScale: 0
+  m_Children: []
+  m_Father: {fileID: 0}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!33 &2785673166861171252
+MeshFilter:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 3802837052780452132}
+  m_Mesh: {fileID: 10208, guid: 0000000000000000e000000000000000, type: 0}
+--- !u!23 &230920367868259381
+MeshRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 3802837052780452132}
+  m_Enabled: 1
+  m_CastShadows: 1
+  m_ReceiveShadows: 1
+  m_DynamicOccludee: 1
+  m_StaticShadowCaster: 0
+  m_MotionVectors: 1
+  m_LightProbeUsage: 1
+  m_ReflectionProbeUsage: 1
+  m_RayTracingMode: 2
+  m_RayTraceProcedural: 0
+  m_RayTracingAccelStructBuildFlagsOverride: 0
+  m_RayTracingAccelStructBuildFlags: 1
+  m_RenderingLayerMask: 1
+  m_RendererPriority: 0
+  m_Materials:
+  - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0}
+  m_StaticBatchInfo:
+    firstSubMesh: 0
+    subMeshCount: 0
+  m_StaticBatchRoot: {fileID: 0}
+  m_ProbeAnchor: {fileID: 0}
+  m_LightProbeVolumeOverride: {fileID: 0}
+  m_ScaleInLightmap: 1
+  m_ReceiveGI: 1
+  m_PreserveUVs: 0
+  m_IgnoreNormalsForChartDetection: 0
+  m_ImportantGI: 0
+  m_StitchLightmapSeams: 1
+  m_SelectedEditorRenderState: 3
+  m_MinimumChartSize: 4
+  m_AutoUVMaxDistance: 0.5
+  m_AutoUVMaxAngle: 89
+  m_LightmapParameters: {fileID: 0}
+  m_SortingLayerID: 0
+  m_SortingLayer: 0
+  m_SortingOrder: 0
+  m_AdditionalVertexStreams: {fileID: 0}
+--- !u!65 &1523314302102385116
+BoxCollider:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 3802837052780452132}
+  m_Material: {fileID: 0}
+  m_IncludeLayers:
+    serializedVersion: 2
+    m_Bits: 0
+  m_ExcludeLayers:
+    serializedVersion: 2
+    m_Bits: 0
+  m_LayerOverridePriority: 0
+  m_IsTrigger: 0
+  m_ProvidesContacts: 0
+  m_Enabled: 1
+  serializedVersion: 3
+  m_Size: {x: 1, y: 2.0000005, z: 1.0000002}
+  m_Center: {x: 0, y: 0, z: 0}
+--- !u!114 &138729632845352590
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 3802837052780452132}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: dc4d5359067cdfb47a45684d6cc1482a, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  WeaponPivot: {x: 0, y: 0, z: 0}
diff --git a/Assets/Resources/Models/Characters/Basic3/Basic3.prefab.meta b/Assets/Resources/Models/Characters/Basic3/Basic3.prefab.meta
new file mode 100644
index 0000000000000000000000000000000000000000..50c6f37a4cce8800b6fa6e52f7332c170c639393
--- /dev/null
+++ b/Assets/Resources/Models/Characters/Basic3/Basic3.prefab.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 0295b1918ca90dd4a95f39a33464f989
+PrefabImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git a/Assets/Resources/Prefabs/Mobs/Dummy/Dummy.prefab b/Assets/Resources/Prefabs/Mobs/Dummy/Dummy.prefab
index 9b0ef7a747fe9202c5aa24ee6baf383e1c491bda..57daa19973699d24eeb16df5cadc2da1f6539ef2 100644
--- a/Assets/Resources/Prefabs/Mobs/Dummy/Dummy.prefab
+++ b/Assets/Resources/Prefabs/Mobs/Dummy/Dummy.prefab
@@ -84,6 +84,8 @@ MonoBehaviour:
   maxHealth: 100000
   health: 100000
   damagedDelay: 0.5
+  weaponList:
+  - {fileID: 2798277747015640978, guid: 967e1612f343be242bd63968a7374248, type: 3}
   baseDamage: 0
 --- !u!1001 &1851493345103208170
 PrefabInstance:
diff --git a/Assets/Resources/Prefabs/Pets.meta b/Assets/Resources/Prefabs/Pets.meta
new file mode 100644
index 0000000000000000000000000000000000000000..094d1b7f293c2eb9cb0abf80bd40c66a2c18c79f
--- /dev/null
+++ b/Assets/Resources/Prefabs/Pets.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 9108a2c8d18c55e4a9fc3fb7d0328b2a
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git a/Assets/Resources/Prefabs/Pets/HealingCompanion.meta b/Assets/Resources/Prefabs/Pets/HealingCompanion.meta
new file mode 100644
index 0000000000000000000000000000000000000000..a433148d077656dd38ead9fbb3519d6f926fc3f2
--- /dev/null
+++ b/Assets/Resources/Prefabs/Pets/HealingCompanion.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 3fad42c25a0438d45b645be85b85c538
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git a/Assets/Resources/Prefabs/Pets/HealingCompanion/HealingCompanion.prefab b/Assets/Resources/Prefabs/Pets/HealingCompanion/HealingCompanion.prefab
new file mode 100644
index 0000000000000000000000000000000000000000..d06f2215d90a95a9aa7d160bea61d43fb36e6b19
--- /dev/null
+++ b/Assets/Resources/Prefabs/Pets/HealingCompanion/HealingCompanion.prefab
@@ -0,0 +1,150 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!1 &2355923405921133889
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 7950878578672798786}
+  - component: {fileID: 4129478026809786151}
+  - component: {fileID: 4091594578875004112}
+  m_Layer: 0
+  m_Name: HealingCompanion
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!4 &7950878578672798786
+Transform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2355923405921133889}
+  serializedVersion: 2
+  m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071068}
+  m_LocalPosition: {x: 1.76, y: 0.75, z: -2.43}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_ConstrainProportionsScale: 0
+  m_Children:
+  - {fileID: 8872828837526113612}
+  m_Father: {fileID: 0}
+  m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0}
+--- !u!54 &4129478026809786151
+Rigidbody:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2355923405921133889}
+  serializedVersion: 4
+  m_Mass: 1
+  m_Drag: 0
+  m_AngularDrag: 0.05
+  m_CenterOfMass: {x: 0, y: 0, z: 0}
+  m_InertiaTensor: {x: 1, y: 1, z: 1}
+  m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_IncludeLayers:
+    serializedVersion: 2
+    m_Bits: 0
+  m_ExcludeLayers:
+    serializedVersion: 2
+    m_Bits: 0
+  m_ImplicitCom: 1
+  m_ImplicitTensor: 1
+  m_UseGravity: 1
+  m_IsKinematic: 0
+  m_Interpolate: 0
+  m_Constraints: 80
+  m_CollisionDetection: 0
+--- !u!114 &4091594578875004112
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2355923405921133889}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: f726b7cf3da1440469bf2d1c4d5171b0, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  id: 
+  knockbackResistance: 0
+  baseSpeed: 10
+  jumpForce: 5
+  groundLayers:
+    serializedVersion: 2
+    m_Bits: 0
+  maxHealth: 100
+  health: 100
+  damagedDelay: 1
+  data: {fileID: 11400000, guid: 9829963a12dd0fa4e89086db46fea950, type: 2}
+  healInterval: 10
+  healAmount: 20
+--- !u!1001 &9051182554075240683
+PrefabInstance:
+  m_ObjectHideFlags: 0
+  serializedVersion: 2
+  m_Modification:
+    serializedVersion: 3
+    m_TransformParent: {fileID: 7950878578672798786}
+    m_Modifications:
+    - target: {fileID: 486067988534400423, guid: 0295b1918ca90dd4a95f39a33464f989, type: 3}
+      propertyPath: m_LocalPosition.x
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 486067988534400423, guid: 0295b1918ca90dd4a95f39a33464f989, type: 3}
+      propertyPath: m_LocalPosition.y
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 486067988534400423, guid: 0295b1918ca90dd4a95f39a33464f989, type: 3}
+      propertyPath: m_LocalPosition.z
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 486067988534400423, guid: 0295b1918ca90dd4a95f39a33464f989, type: 3}
+      propertyPath: m_LocalRotation.w
+      value: 1
+      objectReference: {fileID: 0}
+    - target: {fileID: 486067988534400423, guid: 0295b1918ca90dd4a95f39a33464f989, type: 3}
+      propertyPath: m_LocalRotation.x
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 486067988534400423, guid: 0295b1918ca90dd4a95f39a33464f989, type: 3}
+      propertyPath: m_LocalRotation.y
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 486067988534400423, guid: 0295b1918ca90dd4a95f39a33464f989, type: 3}
+      propertyPath: m_LocalRotation.z
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 486067988534400423, guid: 0295b1918ca90dd4a95f39a33464f989, type: 3}
+      propertyPath: m_LocalEulerAnglesHint.x
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 486067988534400423, guid: 0295b1918ca90dd4a95f39a33464f989, type: 3}
+      propertyPath: m_LocalEulerAnglesHint.y
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 486067988534400423, guid: 0295b1918ca90dd4a95f39a33464f989, type: 3}
+      propertyPath: m_LocalEulerAnglesHint.z
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 3802837052780452132, guid: 0295b1918ca90dd4a95f39a33464f989, type: 3}
+      propertyPath: m_Name
+      value: Basic3
+      objectReference: {fileID: 0}
+    m_RemovedComponents: []
+    m_RemovedGameObjects: []
+    m_AddedGameObjects: []
+    m_AddedComponents: []
+  m_SourcePrefab: {fileID: 100100000, guid: 0295b1918ca90dd4a95f39a33464f989, type: 3}
+--- !u!4 &8872828837526113612 stripped
+Transform:
+  m_CorrespondingSourceObject: {fileID: 486067988534400423, guid: 0295b1918ca90dd4a95f39a33464f989, type: 3}
+  m_PrefabInstance: {fileID: 9051182554075240683}
+  m_PrefabAsset: {fileID: 0}
diff --git a/Assets/Resources/Prefabs/Pets/HealingCompanion/HealingCompanion.prefab.meta b/Assets/Resources/Prefabs/Pets/HealingCompanion/HealingCompanion.prefab.meta
new file mode 100644
index 0000000000000000000000000000000000000000..16c59cd9bc4dc5b982d6d5476c17c8f78a55ebf8
--- /dev/null
+++ b/Assets/Resources/Prefabs/Pets/HealingCompanion/HealingCompanion.prefab.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 858d65d8f2b4e2640801afaf643d0c14
+PrefabImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git a/Assets/Scenes/TestScene.unity b/Assets/Scenes/DevRoom.unity
similarity index 100%
rename from Assets/Scenes/TestScene.unity
rename to Assets/Scenes/DevRoom.unity
diff --git a/Assets/Scenes/TestScene.unity.meta b/Assets/Scenes/DevRoom.unity.meta
similarity index 100%
rename from Assets/Scenes/TestScene.unity.meta
rename to Assets/Scenes/DevRoom.unity.meta
diff --git a/Assets/Scenes/Level0.unity b/Assets/Scenes/Level0.unity
index ba64724b247358371e32d0a19b517e00ff31337e..da9ac3760feaa862e15d5ea37c5d0639054c8fc3 100644
--- a/Assets/Scenes/Level0.unity
+++ b/Assets/Scenes/Level0.unity
@@ -586,6 +586,10 @@ PrefabInstance:
       propertyPath: id
       value: 
       objectReference: {fileID: 0}
+    - target: {fileID: 8734659159874979979, guid: 7e312250336c0244193b4b75151d4fe3, type: 3}
+      propertyPath: weaponList.Array.size
+      value: 1
+      objectReference: {fileID: 0}
     m_RemovedComponents: []
     m_RemovedGameObjects: []
     m_AddedGameObjects: []
@@ -735,7 +739,7 @@ Transform:
   m_GameObject: {fileID: 1487068465}
   serializedVersion: 2
   m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
-  m_LocalPosition: {x: 0, y: 2.55, z: -3.32}
+  m_LocalPosition: {x: 0, y: 1.64, z: -3.32}
   m_LocalScale: {x: 1, y: 1, z: 1}
   m_ConstrainProportionsScale: 0
   m_Children: []
@@ -813,7 +817,8 @@ MonoBehaviour:
   maxHealth: 10
   health: 10
   damagedDelay: 1
-  weaponList: []
+  weaponList:
+  - {fileID: 2798277747015640978, guid: 967e1612f343be242bd63968a7374248, type: 3}
   baseDamage: 0
   companionList: []
   activeCompanions: 
diff --git a/Assets/Scenes/SampleScene.unity b/Assets/Scenes/SampleScene.unity
deleted file mode 100644
index dae40961e421f0e2b012008c68d56db9a9db84e1..0000000000000000000000000000000000000000
--- a/Assets/Scenes/SampleScene.unity
+++ /dev/null
@@ -1,1333 +0,0 @@
-%YAML 1.1
-%TAG !u! tag:unity3d.com,2011:
---- !u!29 &1
-OcclusionCullingSettings:
-  m_ObjectHideFlags: 0
-  serializedVersion: 2
-  m_OcclusionBakeSettings:
-    smallestOccluder: 5
-    smallestHole: 0.25
-    backfaceThreshold: 100
-  m_SceneGUID: 00000000000000000000000000000000
-  m_OcclusionCullingData: {fileID: 0}
---- !u!104 &2
-RenderSettings:
-  m_ObjectHideFlags: 0
-  serializedVersion: 10
-  m_Fog: 0
-  m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
-  m_FogMode: 3
-  m_FogDensity: 0.01
-  m_LinearFogStart: 0
-  m_LinearFogEnd: 300
-  m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1}
-  m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1}
-  m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1}
-  m_AmbientIntensity: 1
-  m_AmbientMode: 0
-  m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1}
-  m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0}
-  m_HaloStrength: 0.5
-  m_FlareStrength: 1
-  m_FlareFadeSpeed: 3
-  m_HaloTexture: {fileID: 0}
-  m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
-  m_DefaultReflectionMode: 0
-  m_DefaultReflectionResolution: 128
-  m_ReflectionBounces: 1
-  m_ReflectionIntensity: 1
-  m_CustomReflection: {fileID: 0}
-  m_Sun: {fileID: 705507994}
-  m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1}
-  m_UseRadianceAmbientProbe: 0
---- !u!157 &3
-LightmapSettings:
-  m_ObjectHideFlags: 0
-  serializedVersion: 12
-  m_GISettings:
-    serializedVersion: 2
-    m_BounceScale: 1
-    m_IndirectOutputScale: 1
-    m_AlbedoBoost: 1
-    m_EnvironmentLightingMode: 0
-    m_EnableBakedLightmaps: 1
-    m_EnableRealtimeLightmaps: 0
-  m_LightmapEditorSettings:
-    serializedVersion: 12
-    m_Resolution: 2
-    m_BakeResolution: 40
-    m_AtlasSize: 1024
-    m_AO: 0
-    m_AOMaxDistance: 1
-    m_CompAOExponent: 1
-    m_CompAOExponentDirect: 0
-    m_ExtractAmbientOcclusion: 0
-    m_Padding: 2
-    m_LightmapParameters: {fileID: 0}
-    m_LightmapsBakeMode: 1
-    m_TextureCompression: 1
-    m_ReflectionCompression: 2
-    m_MixedBakeMode: 2
-    m_BakeBackend: 1
-    m_PVRSampling: 1
-    m_PVRDirectSampleCount: 32
-    m_PVRSampleCount: 500
-    m_PVRBounces: 2
-    m_PVREnvironmentSampleCount: 500
-    m_PVREnvironmentReferencePointCount: 2048
-    m_PVRFilteringMode: 2
-    m_PVRDenoiserTypeDirect: 0
-    m_PVRDenoiserTypeIndirect: 0
-    m_PVRDenoiserTypeAO: 0
-    m_PVRFilterTypeDirect: 0
-    m_PVRFilterTypeIndirect: 0
-    m_PVRFilterTypeAO: 0
-    m_PVREnvironmentMIS: 0
-    m_PVRCulling: 1
-    m_PVRFilteringGaussRadiusDirect: 1
-    m_PVRFilteringGaussRadiusIndirect: 5
-    m_PVRFilteringGaussRadiusAO: 2
-    m_PVRFilteringAtrousPositionSigmaDirect: 0.5
-    m_PVRFilteringAtrousPositionSigmaIndirect: 2
-    m_PVRFilteringAtrousPositionSigmaAO: 1
-    m_ExportTrainingData: 0
-    m_TrainingDataDestination: TrainingData
-    m_LightProbeSampleCountMultiplier: 4
-  m_LightingDataAsset: {fileID: 0}
-  m_LightingSettings: {fileID: 0}
---- !u!196 &4
-NavMeshSettings:
-  serializedVersion: 2
-  m_ObjectHideFlags: 0
-  m_BuildSettings:
-    serializedVersion: 3
-    agentTypeID: 0
-    agentRadius: 0.5
-    agentHeight: 2
-    agentSlope: 45
-    agentClimb: 0.4
-    ledgeDropHeight: 0
-    maxJumpAcrossDistance: 0
-    minRegionArea: 2
-    manualCellSize: 0
-    cellSize: 0.16666667
-    manualTileSize: 0
-    tileSize: 256
-    buildHeightMesh: 0
-    maxJobWorkers: 0
-    preserveTilesOutsideBounds: 0
-    debug:
-      m_Flags: 0
-  m_NavMeshData: {fileID: 0}
---- !u!1 &6125821
-GameObject:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  serializedVersion: 6
-  m_Component:
-  - component: {fileID: 6125823}
-  - component: {fileID: 6125822}
-  m_Layer: 0
-  m_Name: GameControls
-  m_TagString: Untagged
-  m_Icon: {fileID: 0}
-  m_NavMeshLayer: 0
-  m_StaticEditorFlags: 0
-  m_IsActive: 1
---- !u!114 &6125822
-MonoBehaviour:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 6125821}
-  m_Enabled: 1
-  m_EditorHideFlags: 0
-  m_Script: {fileID: 11500000, guid: 277e6d37ad3220543a05009070b3a2b8, type: 3}
-  m_Name: 
-  m_EditorClassIdentifier: 
---- !u!4 &6125823
-Transform:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 6125821}
-  serializedVersion: 2
-  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
-  m_LocalPosition: {x: 0, y: 0, z: 0}
-  m_LocalScale: {x: 1, y: 1, z: 1}
-  m_ConstrainProportionsScale: 0
-  m_Children: []
-  m_Father: {fileID: 0}
-  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!1 &117855954
-GameObject:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  serializedVersion: 6
-  m_Component:
-  - component: {fileID: 117855957}
-  - component: {fileID: 117855955}
-  - component: {fileID: 117855958}
-  m_Layer: 6
-  m_Name: Player
-  m_TagString: Player
-  m_Icon: {fileID: 0}
-  m_NavMeshLayer: 0
-  m_StaticEditorFlags: 0
-  m_IsActive: 1
---- !u!54 &117855955
-Rigidbody:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 117855954}
-  serializedVersion: 4
-  m_Mass: 1
-  m_Drag: 0
-  m_AngularDrag: 0.05
-  m_CenterOfMass: {x: 0, y: 0, z: 0}
-  m_InertiaTensor: {x: 1, y: 1, z: 1}
-  m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1}
-  m_IncludeLayers:
-    serializedVersion: 2
-    m_Bits: 0
-  m_ExcludeLayers:
-    serializedVersion: 2
-    m_Bits: 0
-  m_ImplicitCom: 1
-  m_ImplicitTensor: 1
-  m_UseGravity: 1
-  m_IsKinematic: 0
-  m_Interpolate: 0
-  m_Constraints: 80
-  m_CollisionDetection: 0
---- !u!4 &117855957
-Transform:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 117855954}
-  serializedVersion: 2
-  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
-  m_LocalPosition: {x: 0, y: 0, z: 0}
-  m_LocalScale: {x: 1, y: 1, z: 1}
-  m_ConstrainProportionsScale: 0
-  m_Children:
-  - {fileID: 675919035}
-  m_Father: {fileID: 484130345}
-  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!114 &117855958
-MonoBehaviour:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 117855954}
-  m_Enabled: 1
-  m_EditorHideFlags: 0
-  m_Script: {fileID: 11500000, guid: bbd12f0cc12b22743998413b3f14b197, type: 3}
-  m_Name: 
-  m_EditorClassIdentifier: 
-  id: 
-  knockbackResistance: 1
-  baseSpeed: 10
-  jumpForce: 5
-  groundLayers:
-    serializedVersion: 2
-    m_Bits: 0
-  maxHealth: 100
-  health: 100
-  damagedDelay: 1
-  weaponList:
-  - {fileID: 5029868015402955001, guid: 1a7698227caac3d429dceb8aa5056502, type: 3}
-  baseDamage: 10
-  weaponLocation: {x: 0.258, y: 0.889, z: 0.375}
-  companionList: []
-  activeCompanions: 
---- !u!1 &239523005
-GameObject:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  serializedVersion: 6
-  m_Component:
-  - component: {fileID: 239523007}
-  - component: {fileID: 239523006}
-  m_Layer: 0
-  m_Name: GameController
-  m_TagString: Untagged
-  m_Icon: {fileID: 0}
-  m_NavMeshLayer: 0
-  m_StaticEditorFlags: 0
-  m_IsActive: 1
---- !u!114 &239523006
-MonoBehaviour:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 239523005}
-  m_Enabled: 1
-  m_EditorHideFlags: 0
-  m_Script: {fileID: 11500000, guid: 354f6ba1c1428a04da1f256d1da9f51e, type: 3}
-  m_Name: 
-  m_EditorClassIdentifier: 
-  player: {fileID: 117855958}
---- !u!4 &239523007
-Transform:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 239523005}
-  serializedVersion: 2
-  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
-  m_LocalPosition: {x: 0, y: 0, z: 0}
-  m_LocalScale: {x: 1, y: 1, z: 1}
-  m_ConstrainProportionsScale: 0
-  m_Children:
-  - {fileID: 963194228}
-  - {fileID: 484130345}
-  - {fileID: 1098815287}
-  - {fileID: 2127634081}
-  m_Father: {fileID: 0}
-  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!1 &484130344
-GameObject:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  serializedVersion: 6
-  m_Component:
-  - component: {fileID: 484130345}
-  - component: {fileID: 484130346}
-  m_Layer: 0
-  m_Name: EntityManager
-  m_TagString: Untagged
-  m_Icon: {fileID: 0}
-  m_NavMeshLayer: 0
-  m_StaticEditorFlags: 0
-  m_IsActive: 1
---- !u!4 &484130345
-Transform:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 484130344}
-  serializedVersion: 2
-  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
-  m_LocalPosition: {x: 0, y: 0, z: 0}
-  m_LocalScale: {x: 1, y: 1, z: 1}
-  m_ConstrainProportionsScale: 0
-  m_Children:
-  - {fileID: 117855957}
-  - {fileID: 542408818}
-  m_Father: {fileID: 239523007}
-  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!114 &484130346
-MonoBehaviour:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 484130344}
-  m_Enabled: 1
-  m_EditorHideFlags: 0
-  m_Script: {fileID: 11500000, guid: 04dfd389d2725984eac71a7ab91689a3, type: 3}
-  m_Name: 
-  m_EditorClassIdentifier: 
---- !u!1 &521822198
-GameObject:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  serializedVersion: 6
-  m_Component:
-  - component: {fileID: 521822200}
-  - component: {fileID: 521822199}
-  m_Layer: 0
-  m_Name: GameSaveData
-  m_TagString: Untagged
-  m_Icon: {fileID: 0}
-  m_NavMeshLayer: 0
-  m_StaticEditorFlags: 0
-  m_IsActive: 1
---- !u!114 &521822199
-MonoBehaviour:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 521822198}
-  m_Enabled: 1
-  m_EditorHideFlags: 0
-  m_Script: {fileID: 11500000, guid: 1e57b66e76eeafd4bb8ea101ee7598ae, type: 3}
-  m_Name: 
-  m_EditorClassIdentifier: 
-  difficulty: 1
---- !u!4 &521822200
-Transform:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 521822198}
-  serializedVersion: 2
-  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
-  m_LocalPosition: {x: -0.23483449, y: 1.2052782, z: 0.37424207}
-  m_LocalScale: {x: 1, y: 1, z: 1}
-  m_ConstrainProportionsScale: 0
-  m_Children: []
-  m_Father: {fileID: 0}
-  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!4 &542408818 stripped
-Transform:
-  m_CorrespondingSourceObject: {fileID: 6141342063799955615, guid: 7e312250336c0244193b4b75151d4fe3, type: 3}
-  m_PrefabInstance: {fileID: 4169340464452295211}
-  m_PrefabAsset: {fileID: 0}
---- !u!1 &576314395
-GameObject:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  serializedVersion: 6
-  m_Component:
-  - component: {fileID: 576314396}
-  - component: {fileID: 576314399}
-  - component: {fileID: 576314398}
-  - component: {fileID: 576314397}
-  - component: {fileID: 576314400}
-  m_Layer: 0
-  m_Name: Marker
-  m_TagString: Untagged
-  m_Icon: {fileID: 0}
-  m_NavMeshLayer: 0
-  m_StaticEditorFlags: 0
-  m_IsActive: 1
---- !u!4 &576314396
-Transform:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 576314395}
-  serializedVersion: 2
-  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
-  m_LocalPosition: {x: 2.08, y: 2, z: 3.57}
-  m_LocalScale: {x: 1, y: 4, z: 1}
-  m_ConstrainProportionsScale: 0
-  m_Children: []
-  m_Father: {fileID: 1098815287}
-  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!65 &576314397
-BoxCollider:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 576314395}
-  m_Material: {fileID: 13400000, guid: 6b36fb2e3a8a80643988a623d515cbcc, type: 2}
-  m_IncludeLayers:
-    serializedVersion: 2
-    m_Bits: 0
-  m_ExcludeLayers:
-    serializedVersion: 2
-    m_Bits: 0
-  m_LayerOverridePriority: 0
-  m_IsTrigger: 0
-  m_ProvidesContacts: 0
-  m_Enabled: 1
-  serializedVersion: 3
-  m_Size: {x: 1, y: 1, z: 1}
-  m_Center: {x: 0, y: 0, z: 0}
---- !u!23 &576314398
-MeshRenderer:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 576314395}
-  m_Enabled: 1
-  m_CastShadows: 1
-  m_ReceiveShadows: 1
-  m_DynamicOccludee: 1
-  m_StaticShadowCaster: 0
-  m_MotionVectors: 1
-  m_LightProbeUsage: 1
-  m_ReflectionProbeUsage: 1
-  m_RayTracingMode: 2
-  m_RayTraceProcedural: 0
-  m_RayTracingAccelStructBuildFlagsOverride: 0
-  m_RayTracingAccelStructBuildFlags: 1
-  m_RenderingLayerMask: 1
-  m_RendererPriority: 0
-  m_Materials:
-  - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0}
-  m_StaticBatchInfo:
-    firstSubMesh: 0
-    subMeshCount: 0
-  m_StaticBatchRoot: {fileID: 0}
-  m_ProbeAnchor: {fileID: 0}
-  m_LightProbeVolumeOverride: {fileID: 0}
-  m_ScaleInLightmap: 1
-  m_ReceiveGI: 1
-  m_PreserveUVs: 0
-  m_IgnoreNormalsForChartDetection: 0
-  m_ImportantGI: 0
-  m_StitchLightmapSeams: 1
-  m_SelectedEditorRenderState: 3
-  m_MinimumChartSize: 4
-  m_AutoUVMaxDistance: 0.5
-  m_AutoUVMaxAngle: 89
-  m_LightmapParameters: {fileID: 0}
-  m_SortingLayerID: 0
-  m_SortingLayer: 0
-  m_SortingOrder: 0
-  m_AdditionalVertexStreams: {fileID: 0}
---- !u!33 &576314399
-MeshFilter:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 576314395}
-  m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
---- !u!54 &576314400
-Rigidbody:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 576314395}
-  serializedVersion: 4
-  m_Mass: 1
-  m_Drag: 0
-  m_AngularDrag: 0.05
-  m_CenterOfMass: {x: 0, y: 0, z: 0}
-  m_InertiaTensor: {x: 1, y: 1, z: 1}
-  m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1}
-  m_IncludeLayers:
-    serializedVersion: 2
-    m_Bits: 0
-  m_ExcludeLayers:
-    serializedVersion: 2
-    m_Bits: 0
-  m_ImplicitCom: 1
-  m_ImplicitTensor: 1
-  m_UseGravity: 0
-  m_IsKinematic: 0
-  m_Interpolate: 0
-  m_Constraints: 126
-  m_CollisionDetection: 0
---- !u!4 &675919035 stripped
-Transform:
-  m_CorrespondingSourceObject: {fileID: 1838854055268103909, guid: 71b1260932d07054caf2d52890e46704, type: 3}
-  m_PrefabInstance: {fileID: 4053253517607393480}
-  m_PrefabAsset: {fileID: 0}
---- !u!1 &705507993
-GameObject:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  serializedVersion: 6
-  m_Component:
-  - component: {fileID: 705507995}
-  - component: {fileID: 705507994}
-  m_Layer: 0
-  m_Name: GlobalIllumination
-  m_TagString: Untagged
-  m_Icon: {fileID: 0}
-  m_NavMeshLayer: 0
-  m_StaticEditorFlags: 0
-  m_IsActive: 1
---- !u!108 &705507994
-Light:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 705507993}
-  m_Enabled: 1
-  serializedVersion: 11
-  m_Type: 1
-  m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1}
-  m_Intensity: 1
-  m_Range: 10
-  m_SpotAngle: 30
-  m_InnerSpotAngle: 21.80208
-  m_CookieSize: 10
-  m_Shadows:
-    m_Type: 2
-    m_Resolution: -1
-    m_CustomResolution: -1
-    m_Strength: 1
-    m_Bias: 0.05
-    m_NormalBias: 0.4
-    m_NearPlane: 0.2
-    m_CullingMatrixOverride:
-      e00: 1
-      e01: 0
-      e02: 0
-      e03: 0
-      e10: 0
-      e11: 1
-      e12: 0
-      e13: 0
-      e20: 0
-      e21: 0
-      e22: 1
-      e23: 0
-      e30: 0
-      e31: 0
-      e32: 0
-      e33: 1
-    m_UseCullingMatrixOverride: 0
-  m_Cookie: {fileID: 0}
-  m_DrawHalo: 0
-  m_Flare: {fileID: 0}
-  m_RenderMode: 0
-  m_CullingMask:
-    serializedVersion: 2
-    m_Bits: 4294967295
-  m_RenderingLayerMask: 1
-  m_Lightmapping: 1
-  m_LightShadowCasterMode: 0
-  m_AreaSize: {x: 1, y: 1}
-  m_BounceIntensity: 1
-  m_ColorTemperature: 6570
-  m_UseColorTemperature: 0
-  m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0}
-  m_UseBoundingSphereOverride: 0
-  m_UseViewFrustumForShadowCasterCull: 1
-  m_ShadowRadius: 0
-  m_ShadowAngle: 0
---- !u!4 &705507995
-Transform:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 705507993}
-  serializedVersion: 2
-  m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261}
-  m_LocalPosition: {x: 3.1930373, y: 9.28, z: 3.8122077}
-  m_LocalScale: {x: 1, y: 1, z: 1}
-  m_ConstrainProportionsScale: 0
-  m_Children: []
-  m_Father: {fileID: 1098815287}
-  m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0}
---- !u!4 &766737620 stripped
-Transform:
-  m_CorrespondingSourceObject: {fileID: 5801067718172810331, guid: c21e0108f08f0d74b92e3576ec7a7ecc, type: 3}
-  m_PrefabInstance: {fileID: 1450041068962791888}
-  m_PrefabAsset: {fileID: 0}
---- !u!1 &770593019
-GameObject:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  serializedVersion: 6
-  m_Component:
-  - component: {fileID: 770593023}
-  - component: {fileID: 770593022}
-  - component: {fileID: 770593021}
-  - component: {fileID: 770593020}
-  m_Layer: 0
-  m_Name: Floor
-  m_TagString: Untagged
-  m_Icon: {fileID: 0}
-  m_NavMeshLayer: 0
-  m_StaticEditorFlags: 0
-  m_IsActive: 1
---- !u!65 &770593020
-BoxCollider:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 770593019}
-  m_Material: {fileID: 0}
-  m_IncludeLayers:
-    serializedVersion: 2
-    m_Bits: 0
-  m_ExcludeLayers:
-    serializedVersion: 2
-    m_Bits: 0
-  m_LayerOverridePriority: 0
-  m_IsTrigger: 0
-  m_ProvidesContacts: 0
-  m_Enabled: 1
-  serializedVersion: 3
-  m_Size: {x: 1, y: 1, z: 1}
-  m_Center: {x: 0, y: 0, z: 0}
---- !u!23 &770593021
-MeshRenderer:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 770593019}
-  m_Enabled: 1
-  m_CastShadows: 1
-  m_ReceiveShadows: 1
-  m_DynamicOccludee: 1
-  m_StaticShadowCaster: 0
-  m_MotionVectors: 1
-  m_LightProbeUsage: 1
-  m_ReflectionProbeUsage: 1
-  m_RayTracingMode: 2
-  m_RayTraceProcedural: 0
-  m_RayTracingAccelStructBuildFlagsOverride: 0
-  m_RayTracingAccelStructBuildFlags: 1
-  m_RenderingLayerMask: 1
-  m_RendererPriority: 0
-  m_Materials:
-  - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0}
-  m_StaticBatchInfo:
-    firstSubMesh: 0
-    subMeshCount: 0
-  m_StaticBatchRoot: {fileID: 0}
-  m_ProbeAnchor: {fileID: 0}
-  m_LightProbeVolumeOverride: {fileID: 0}
-  m_ScaleInLightmap: 1
-  m_ReceiveGI: 1
-  m_PreserveUVs: 0
-  m_IgnoreNormalsForChartDetection: 0
-  m_ImportantGI: 0
-  m_StitchLightmapSeams: 1
-  m_SelectedEditorRenderState: 3
-  m_MinimumChartSize: 4
-  m_AutoUVMaxDistance: 0.5
-  m_AutoUVMaxAngle: 89
-  m_LightmapParameters: {fileID: 0}
-  m_SortingLayerID: 0
-  m_SortingLayer: 0
-  m_SortingOrder: 0
-  m_AdditionalVertexStreams: {fileID: 0}
---- !u!33 &770593022
-MeshFilter:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 770593019}
-  m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
---- !u!4 &770593023
-Transform:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 770593019}
-  serializedVersion: 2
-  m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
-  m_LocalPosition: {x: 0, y: -0.125, z: 0}
-  m_LocalScale: {x: 100, y: 0.25, z: 100}
-  m_ConstrainProportionsScale: 0
-  m_Children:
-  - {fileID: 779633712}
-  m_Father: {fileID: 1098815287}
-  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!1 &779633711
-GameObject:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  serializedVersion: 6
-  m_Component:
-  - component: {fileID: 779633712}
-  - component: {fileID: 779633716}
-  - component: {fileID: 779633715}
-  - component: {fileID: 779633714}
-  - component: {fileID: 779633713}
-  m_Layer: 0
-  m_Name: UnderFloor
-  m_TagString: Untagged
-  m_Icon: {fileID: 0}
-  m_NavMeshLayer: 0
-  m_StaticEditorFlags: 0
-  m_IsActive: 1
---- !u!4 &779633712
-Transform:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 779633711}
-  serializedVersion: 2
-  m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
-  m_LocalPosition: {x: 0, y: -5, z: 0}
-  m_LocalScale: {x: 1, y: 10, z: 1}
-  m_ConstrainProportionsScale: 0
-  m_Children: []
-  m_Father: {fileID: 770593023}
-  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!54 &779633713
-Rigidbody:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 779633711}
-  serializedVersion: 4
-  m_Mass: 0.0000001
-  m_Drag: 0
-  m_AngularDrag: 0
-  m_CenterOfMass: {x: 0, y: 0, z: 0}
-  m_InertiaTensor: {x: 1, y: 1, z: 1}
-  m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1}
-  m_IncludeLayers:
-    serializedVersion: 2
-    m_Bits: 0
-  m_ExcludeLayers:
-    serializedVersion: 2
-    m_Bits: 0
-  m_ImplicitCom: 1
-  m_ImplicitTensor: 1
-  m_UseGravity: 0
-  m_IsKinematic: 0
-  m_Interpolate: 0
-  m_Constraints: 126
-  m_CollisionDetection: 0
---- !u!65 &779633714
-BoxCollider:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 779633711}
-  m_Material: {fileID: 0}
-  m_IncludeLayers:
-    serializedVersion: 2
-    m_Bits: 0
-  m_ExcludeLayers:
-    serializedVersion: 2
-    m_Bits: 0
-  m_LayerOverridePriority: 0
-  m_IsTrigger: 0
-  m_ProvidesContacts: 0
-  m_Enabled: 1
-  serializedVersion: 3
-  m_Size: {x: 1, y: 1, z: 1}
-  m_Center: {x: 0, y: 0, z: 0}
---- !u!23 &779633715
-MeshRenderer:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 779633711}
-  m_Enabled: 1
-  m_CastShadows: 1
-  m_ReceiveShadows: 1
-  m_DynamicOccludee: 1
-  m_StaticShadowCaster: 0
-  m_MotionVectors: 1
-  m_LightProbeUsage: 1
-  m_ReflectionProbeUsage: 1
-  m_RayTracingMode: 2
-  m_RayTraceProcedural: 0
-  m_RayTracingAccelStructBuildFlagsOverride: 0
-  m_RayTracingAccelStructBuildFlags: 1
-  m_RenderingLayerMask: 1
-  m_RendererPriority: 0
-  m_Materials:
-  - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0}
-  m_StaticBatchInfo:
-    firstSubMesh: 0
-    subMeshCount: 0
-  m_StaticBatchRoot: {fileID: 0}
-  m_ProbeAnchor: {fileID: 0}
-  m_LightProbeVolumeOverride: {fileID: 0}
-  m_ScaleInLightmap: 1
-  m_ReceiveGI: 1
-  m_PreserveUVs: 0
-  m_IgnoreNormalsForChartDetection: 0
-  m_ImportantGI: 0
-  m_StitchLightmapSeams: 1
-  m_SelectedEditorRenderState: 3
-  m_MinimumChartSize: 4
-  m_AutoUVMaxDistance: 0.5
-  m_AutoUVMaxAngle: 89
-  m_LightmapParameters: {fileID: 0}
-  m_SortingLayerID: 0
-  m_SortingLayer: 0
-  m_SortingOrder: 0
-  m_AdditionalVertexStreams: {fileID: 0}
---- !u!33 &779633716
-MeshFilter:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 779633711}
-  m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
---- !u!1 &963194225
-GameObject:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  serializedVersion: 6
-  m_Component:
-  - component: {fileID: 963194228}
-  - component: {fileID: 963194227}
-  - component: {fileID: 963194226}
-  - component: {fileID: 963194229}
-  m_Layer: 0
-  m_Name: MainCamera
-  m_TagString: Untagged
-  m_Icon: {fileID: 0}
-  m_NavMeshLayer: 0
-  m_StaticEditorFlags: 0
-  m_IsActive: 1
---- !u!81 &963194226
-AudioListener:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 963194225}
-  m_Enabled: 1
---- !u!20 &963194227
-Camera:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 963194225}
-  m_Enabled: 1
-  serializedVersion: 2
-  m_ClearFlags: 1
-  m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0}
-  m_projectionMatrixMode: 1
-  m_GateFitMode: 2
-  m_FOVAxisMode: 0
-  m_Iso: 200
-  m_ShutterSpeed: 0.005
-  m_Aperture: 16
-  m_FocusDistance: 10
-  m_FocalLength: 50
-  m_BladeCount: 5
-  m_Curvature: {x: 2, y: 11}
-  m_BarrelClipping: 0.25
-  m_Anamorphism: 0
-  m_SensorSize: {x: 36, y: 24}
-  m_LensShift: {x: 0, y: 0}
-  m_NormalizedViewPortRect:
-    serializedVersion: 2
-    x: 0
-    y: 0
-    width: 1
-    height: 1
-  near clip plane: 0.3
-  far clip plane: 1000
-  field of view: 60
-  orthographic: 0
-  orthographic size: 5
-  m_Depth: -1
-  m_CullingMask:
-    serializedVersion: 2
-    m_Bits: 4294967295
-  m_RenderingPath: -1
-  m_TargetTexture: {fileID: 0}
-  m_TargetDisplay: 0
-  m_TargetEye: 3
-  m_HDR: 1
-  m_AllowMSAA: 1
-  m_AllowDynamicResolution: 0
-  m_ForceIntoRT: 0
-  m_OcclusionCulling: 1
-  m_StereoConvergence: 10
-  m_StereoSeparation: 0.022
---- !u!4 &963194228
-Transform:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 963194225}
-  serializedVersion: 2
-  m_LocalRotation: {x: 0.08715578, y: 0, z: 0, w: 0.9961947}
-  m_LocalPosition: {x: 0, y: 3, z: -8}
-  m_LocalScale: {x: 1, y: 1, z: 1}
-  m_ConstrainProportionsScale: 0
-  m_Children: []
-  m_Father: {fileID: 239523007}
-  m_LocalEulerAnglesHint: {x: 10, y: 0, z: 0}
---- !u!114 &963194229
-MonoBehaviour:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 963194225}
-  m_Enabled: 1
-  m_EditorHideFlags: 0
-  m_Script: {fileID: 11500000, guid: 7558c354360ba85428bc25c0e0a3d83b, type: 3}
-  m_Name: 
-  m_EditorClassIdentifier: 
-  target: {fileID: 117855957}
-  followingTime: 0.1
-  mouseSensitivity: 2
---- !u!1 &1098815286
-GameObject:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  serializedVersion: 6
-  m_Component:
-  - component: {fileID: 1098815287}
-  - component: {fileID: 1098815288}
-  m_Layer: 0
-  m_Name: EnvironmentManager
-  m_TagString: Untagged
-  m_Icon: {fileID: 0}
-  m_NavMeshLayer: 0
-  m_StaticEditorFlags: 0
-  m_IsActive: 1
---- !u!4 &1098815287
-Transform:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 1098815286}
-  serializedVersion: 2
-  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
-  m_LocalPosition: {x: 0, y: 0, z: 0}
-  m_LocalScale: {x: 1, y: 1, z: 1}
-  m_ConstrainProportionsScale: 0
-  m_Children:
-  - {fileID: 705507995}
-  - {fileID: 770593023}
-  - {fileID: 576314396}
-  - {fileID: 6199646963567315010}
-  m_Father: {fileID: 239523007}
-  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!114 &1098815288
-MonoBehaviour:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 1098815286}
-  m_Enabled: 1
-  m_EditorHideFlags: 0
-  m_Script: {fileID: 11500000, guid: c54dc993f0d1e36499ea37e182a87cbc, type: 3}
-  m_Name: 
-  m_EditorClassIdentifier: 
---- !u!1 &2127634080
-GameObject:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  serializedVersion: 6
-  m_Component:
-  - component: {fileID: 2127634081}
-  - component: {fileID: 2127634082}
-  m_Layer: 0
-  m_Name: ObjectManager
-  m_TagString: Untagged
-  m_Icon: {fileID: 0}
-  m_NavMeshLayer: 0
-  m_StaticEditorFlags: 0
-  m_IsActive: 1
---- !u!4 &2127634081
-Transform:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 2127634080}
-  serializedVersion: 2
-  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
-  m_LocalPosition: {x: 0, y: 0, z: 0}
-  m_LocalScale: {x: 1, y: 1, z: 1}
-  m_ConstrainProportionsScale: 0
-  m_Children:
-  - {fileID: 766737620}
-  m_Father: {fileID: 239523007}
-  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
---- !u!114 &2127634082
-MonoBehaviour:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 2127634080}
-  m_Enabled: 1
-  m_EditorHideFlags: 0
-  m_Script: {fileID: 11500000, guid: c051aae39aef0264ba144bc30cbe301e, type: 3}
-  m_Name: 
-  m_EditorClassIdentifier: 
---- !u!1001 &1450041068962791888
-PrefabInstance:
-  m_ObjectHideFlags: 0
-  serializedVersion: 2
-  m_Modification:
-    serializedVersion: 3
-    m_TransformParent: {fileID: 2127634081}
-    m_Modifications:
-    - target: {fileID: 5383203518885919015, guid: c21e0108f08f0d74b92e3576ec7a7ecc, type: 3}
-      propertyPath: m_Name
-      value: TestCollectible
-      objectReference: {fileID: 0}
-    - target: {fileID: 5801067718172810331, guid: c21e0108f08f0d74b92e3576ec7a7ecc, type: 3}
-      propertyPath: m_LocalPosition.x
-      value: -1.597
-      objectReference: {fileID: 0}
-    - target: {fileID: 5801067718172810331, guid: c21e0108f08f0d74b92e3576ec7a7ecc, type: 3}
-      propertyPath: m_LocalPosition.y
-      value: 0.843
-      objectReference: {fileID: 0}
-    - target: {fileID: 5801067718172810331, guid: c21e0108f08f0d74b92e3576ec7a7ecc, type: 3}
-      propertyPath: m_LocalPosition.z
-      value: 0
-      objectReference: {fileID: 0}
-    - target: {fileID: 5801067718172810331, guid: c21e0108f08f0d74b92e3576ec7a7ecc, type: 3}
-      propertyPath: m_LocalRotation.w
-      value: 1
-      objectReference: {fileID: 0}
-    - target: {fileID: 5801067718172810331, guid: c21e0108f08f0d74b92e3576ec7a7ecc, type: 3}
-      propertyPath: m_LocalRotation.x
-      value: 0
-      objectReference: {fileID: 0}
-    - target: {fileID: 5801067718172810331, guid: c21e0108f08f0d74b92e3576ec7a7ecc, type: 3}
-      propertyPath: m_LocalRotation.y
-      value: 0
-      objectReference: {fileID: 0}
-    - target: {fileID: 5801067718172810331, guid: c21e0108f08f0d74b92e3576ec7a7ecc, type: 3}
-      propertyPath: m_LocalRotation.z
-      value: 0
-      objectReference: {fileID: 0}
-    - target: {fileID: 5801067718172810331, guid: c21e0108f08f0d74b92e3576ec7a7ecc, type: 3}
-      propertyPath: m_LocalEulerAnglesHint.x
-      value: 0
-      objectReference: {fileID: 0}
-    - target: {fileID: 5801067718172810331, guid: c21e0108f08f0d74b92e3576ec7a7ecc, type: 3}
-      propertyPath: m_LocalEulerAnglesHint.y
-      value: 0
-      objectReference: {fileID: 0}
-    - target: {fileID: 5801067718172810331, guid: c21e0108f08f0d74b92e3576ec7a7ecc, type: 3}
-      propertyPath: m_LocalEulerAnglesHint.z
-      value: 0
-      objectReference: {fileID: 0}
-    m_RemovedComponents: []
-    m_RemovedGameObjects: []
-    m_AddedGameObjects: []
-    m_AddedComponents: []
-  m_SourcePrefab: {fileID: 100100000, guid: c21e0108f08f0d74b92e3576ec7a7ecc, type: 3}
---- !u!1001 &4053253517607393480
-PrefabInstance:
-  m_ObjectHideFlags: 0
-  serializedVersion: 2
-  m_Modification:
-    serializedVersion: 3
-    m_TransformParent: {fileID: 117855957}
-    m_Modifications:
-    - target: {fileID: 125248941348886635, guid: 71b1260932d07054caf2d52890e46704, type: 3}
-      propertyPath: m_Name
-      value: Model
-      objectReference: {fileID: 0}
-    - target: {fileID: 1838854055268103909, guid: 71b1260932d07054caf2d52890e46704, type: 3}
-      propertyPath: m_LocalPosition.x
-      value: 0
-      objectReference: {fileID: 0}
-    - target: {fileID: 1838854055268103909, guid: 71b1260932d07054caf2d52890e46704, type: 3}
-      propertyPath: m_LocalPosition.y
-      value: 0.75
-      objectReference: {fileID: 0}
-    - target: {fileID: 1838854055268103909, guid: 71b1260932d07054caf2d52890e46704, type: 3}
-      propertyPath: m_LocalPosition.z
-      value: 0
-      objectReference: {fileID: 0}
-    - target: {fileID: 1838854055268103909, guid: 71b1260932d07054caf2d52890e46704, type: 3}
-      propertyPath: m_LocalRotation.w
-      value: 1
-      objectReference: {fileID: 0}
-    - target: {fileID: 1838854055268103909, guid: 71b1260932d07054caf2d52890e46704, type: 3}
-      propertyPath: m_LocalRotation.x
-      value: 0
-      objectReference: {fileID: 0}
-    - target: {fileID: 1838854055268103909, guid: 71b1260932d07054caf2d52890e46704, type: 3}
-      propertyPath: m_LocalRotation.y
-      value: 0
-      objectReference: {fileID: 0}
-    - target: {fileID: 1838854055268103909, guid: 71b1260932d07054caf2d52890e46704, type: 3}
-      propertyPath: m_LocalRotation.z
-      value: 0
-      objectReference: {fileID: 0}
-    - target: {fileID: 1838854055268103909, guid: 71b1260932d07054caf2d52890e46704, type: 3}
-      propertyPath: m_LocalEulerAnglesHint.x
-      value: 0
-      objectReference: {fileID: 0}
-    - target: {fileID: 1838854055268103909, guid: 71b1260932d07054caf2d52890e46704, type: 3}
-      propertyPath: m_LocalEulerAnglesHint.y
-      value: 0
-      objectReference: {fileID: 0}
-    - target: {fileID: 1838854055268103909, guid: 71b1260932d07054caf2d52890e46704, type: 3}
-      propertyPath: m_LocalEulerAnglesHint.z
-      value: 0
-      objectReference: {fileID: 0}
-    m_RemovedComponents: []
-    m_RemovedGameObjects: []
-    m_AddedGameObjects: []
-    m_AddedComponents: []
-  m_SourcePrefab: {fileID: 100100000, guid: 71b1260932d07054caf2d52890e46704, type: 3}
---- !u!1001 &4169340464452295211
-PrefabInstance:
-  m_ObjectHideFlags: 0
-  serializedVersion: 2
-  m_Modification:
-    serializedVersion: 3
-    m_TransformParent: {fileID: 484130345}
-    m_Modifications:
-    - target: {fileID: 1629977785691913864, guid: 7e312250336c0244193b4b75151d4fe3, type: 3}
-      propertyPath: m_IsActive
-      value: 1
-      objectReference: {fileID: 0}
-    - target: {fileID: 6141342063799955615, guid: 7e312250336c0244193b4b75151d4fe3, type: 3}
-      propertyPath: m_LocalPosition.x
-      value: -1.59
-      objectReference: {fileID: 0}
-    - target: {fileID: 6141342063799955615, guid: 7e312250336c0244193b4b75151d4fe3, type: 3}
-      propertyPath: m_LocalPosition.y
-      value: 0
-      objectReference: {fileID: 0}
-    - target: {fileID: 6141342063799955615, guid: 7e312250336c0244193b4b75151d4fe3, type: 3}
-      propertyPath: m_LocalPosition.z
-      value: 1.93
-      objectReference: {fileID: 0}
-    - target: {fileID: 6141342063799955615, guid: 7e312250336c0244193b4b75151d4fe3, type: 3}
-      propertyPath: m_LocalRotation.w
-      value: 1
-      objectReference: {fileID: 0}
-    - target: {fileID: 6141342063799955615, guid: 7e312250336c0244193b4b75151d4fe3, type: 3}
-      propertyPath: m_LocalRotation.x
-      value: 0
-      objectReference: {fileID: 0}
-    - target: {fileID: 6141342063799955615, guid: 7e312250336c0244193b4b75151d4fe3, type: 3}
-      propertyPath: m_LocalRotation.y
-      value: 0
-      objectReference: {fileID: 0}
-    - target: {fileID: 6141342063799955615, guid: 7e312250336c0244193b4b75151d4fe3, type: 3}
-      propertyPath: m_LocalRotation.z
-      value: 0
-      objectReference: {fileID: 0}
-    - target: {fileID: 6141342063799955615, guid: 7e312250336c0244193b4b75151d4fe3, type: 3}
-      propertyPath: m_LocalEulerAnglesHint.x
-      value: 0
-      objectReference: {fileID: 0}
-    - target: {fileID: 6141342063799955615, guid: 7e312250336c0244193b4b75151d4fe3, type: 3}
-      propertyPath: m_LocalEulerAnglesHint.y
-      value: 0
-      objectReference: {fileID: 0}
-    - target: {fileID: 6141342063799955615, guid: 7e312250336c0244193b4b75151d4fe3, type: 3}
-      propertyPath: m_LocalEulerAnglesHint.z
-      value: 0
-      objectReference: {fileID: 0}
-    - target: {fileID: 8491347043216026353, guid: 7e312250336c0244193b4b75151d4fe3, type: 3}
-      propertyPath: m_Name
-      value: Dummy
-      objectReference: {fileID: 0}
-    m_RemovedComponents: []
-    m_RemovedGameObjects: []
-    m_AddedGameObjects: []
-    m_AddedComponents: []
-  m_SourcePrefab: {fileID: 100100000, guid: 7e312250336c0244193b4b75151d4fe3, type: 3}
---- !u!1001 &4779000661126631185
-PrefabInstance:
-  m_ObjectHideFlags: 0
-  serializedVersion: 2
-  m_Modification:
-    serializedVersion: 3
-    m_TransformParent: {fileID: 1098815287}
-    m_Modifications:
-    - target: {fileID: 4603107572195619152, guid: c98b222ded23bb24690e674886e5741a, type: 3}
-      propertyPath: m_Material
-      value: 
-      objectReference: {fileID: 13400000, guid: 6b36fb2e3a8a80643988a623d515cbcc, type: 2}
-    - target: {fileID: 6541102688641435260, guid: c98b222ded23bb24690e674886e5741a, type: 3}
-      propertyPath: m_Name
-      value: TestInteractable
-      objectReference: {fileID: 0}
-    - target: {fileID: 7065619579114910469, guid: c98b222ded23bb24690e674886e5741a, type: 3}
-      propertyPath: m_LocalPosition.x
-      value: 3
-      objectReference: {fileID: 0}
-    - target: {fileID: 7065619579114910469, guid: c98b222ded23bb24690e674886e5741a, type: 3}
-      propertyPath: m_LocalPosition.y
-      value: 0
-      objectReference: {fileID: 0}
-    - target: {fileID: 7065619579114910469, guid: c98b222ded23bb24690e674886e5741a, type: 3}
-      propertyPath: m_LocalPosition.z
-      value: 0
-      objectReference: {fileID: 0}
-    - target: {fileID: 7065619579114910469, guid: c98b222ded23bb24690e674886e5741a, type: 3}
-      propertyPath: m_LocalRotation.w
-      value: 1
-      objectReference: {fileID: 0}
-    - target: {fileID: 7065619579114910469, guid: c98b222ded23bb24690e674886e5741a, type: 3}
-      propertyPath: m_LocalRotation.x
-      value: 0
-      objectReference: {fileID: 0}
-    - target: {fileID: 7065619579114910469, guid: c98b222ded23bb24690e674886e5741a, type: 3}
-      propertyPath: m_LocalRotation.y
-      value: 0
-      objectReference: {fileID: 0}
-    - target: {fileID: 7065619579114910469, guid: c98b222ded23bb24690e674886e5741a, type: 3}
-      propertyPath: m_LocalRotation.z
-      value: 0
-      objectReference: {fileID: 0}
-    - target: {fileID: 7065619579114910469, guid: c98b222ded23bb24690e674886e5741a, type: 3}
-      propertyPath: m_LocalEulerAnglesHint.x
-      value: 0
-      objectReference: {fileID: 0}
-    - target: {fileID: 7065619579114910469, guid: c98b222ded23bb24690e674886e5741a, type: 3}
-      propertyPath: m_LocalEulerAnglesHint.y
-      value: 0
-      objectReference: {fileID: 0}
-    - target: {fileID: 7065619579114910469, guid: c98b222ded23bb24690e674886e5741a, type: 3}
-      propertyPath: m_LocalEulerAnglesHint.z
-      value: 0
-      objectReference: {fileID: 0}
-    - target: {fileID: 8869483112752652203, guid: c98b222ded23bb24690e674886e5741a, type: 3}
-      propertyPath: m_Material
-      value: 
-      objectReference: {fileID: 13400000, guid: 6b36fb2e3a8a80643988a623d515cbcc, type: 2}
-    m_RemovedComponents: []
-    m_RemovedGameObjects: []
-    m_AddedGameObjects: []
-    m_AddedComponents: []
-  m_SourcePrefab: {fileID: 100100000, guid: c98b222ded23bb24690e674886e5741a, type: 3}
---- !u!4 &6199646963567315010 stripped
-Transform:
-  m_CorrespondingSourceObject: {fileID: 7065619579114910469, guid: c98b222ded23bb24690e674886e5741a, type: 3}
-  m_PrefabInstance: {fileID: 4779000661126631185}
-  m_PrefabAsset: {fileID: 0}
---- !u!1660057539 &9223372036854775807
-SceneRoots:
-  m_ObjectHideFlags: 0
-  m_Roots:
-  - {fileID: 239523007}
-  - {fileID: 521822200}
-  - {fileID: 6125823}
diff --git a/Assets/_Scripts/Config/EnvironmentConfig.cs b/Assets/_Scripts/Config/EnvironmentConfig.cs
index c5eec142531b945ccad708328249f3be2f15fd2e..3b19584a59af0b50f8eb9926748172ed2da8127d 100644
--- a/Assets/_Scripts/Config/EnvironmentConfig.cs
+++ b/Assets/_Scripts/Config/EnvironmentConfig.cs
@@ -15,7 +15,4 @@ public static class EnvironmentConfig{
     public const string LAYER_ENEMY_ATTACK = "EnemyAttack";
     public const string LAYER_ENVIRONMENT_ATTACK = "EnvironmentAttack";
     public const string LAYER_COLLECTIBLE = "Collectible";
-
-    // Object Components
-    public const string OBJECT_NAME_WEAPON = "Weapon";
 }
\ No newline at end of file
diff --git a/Assets/_Scripts/Core/Entities/Mobs/BossEntity.cs b/Assets/_Scripts/Core/Entities/Mobs/BossEntity.cs
index 5aec3ba4c01d6b3406aa5f36e23ae0855231b2e8..943bdd0e2e06a428185c79e6bcbdd14395e4313c 100644
--- a/Assets/_Scripts/Core/Entities/Mobs/BossEntity.cs
+++ b/Assets/_Scripts/Core/Entities/Mobs/BossEntity.cs
@@ -4,22 +4,85 @@ using UnityEngine;
 public abstract class BossEntity : EnemyEntity, IAccompaniable
 {
     // Attributes
-    private readonly List<Companion> companionList = new();    
-    private readonly List<bool> Activecompanions = new();    
-
+    public List<Companion> companionList = new();    
+    public List<bool> companionActive = new();    
+    private int companionSelectorIndex;
+    
     // Set-Getters
-    public List<bool> ActiveCompanions => ActiveCompanions;
-    public List<Companion> Companions => companionList;
+    public List<Companion> CompanionList => companionList;
+    public List<bool> CompanionActive => companionActive;
     public MonoBehaviour CompanionController => this;
-
+    public int CompanionSelectorIndex
+    {
+        get => companionSelectorIndex;
+        set 
+        {
+            // Switch requires a constant, so can't use that here
+            if(value == companionList.Count) companionSelectorIndex = 0;
+            else if(value == -1) companionSelectorIndex = companionList.Count - 1;
+            else if(-1 < value && value < companionList.Count) companionSelectorIndex = value;
+            else companionSelectorIndex = 0;
+        } 
+    }
+    
     // Functions
     public void ActivateCompanion(int index)
     {
-        throw new System.NotImplementedException();
+        if(companionList.Count == 0)
+        {
+            return;
+        }
+        CompanionSelectorIndex = index;
+        Companion selectedCompanion = CompanionList[CompanionSelectorIndex];
+        
+        if(CompanionActive[CompanionSelectorIndex])
+        {
+            return;
+        }
+
+        Debug.Log($"Activating Companion {selectedCompanion.name}");
+        
+        // To handle prefabs
+        if(!selectedCompanion.gameObject.scene.IsValid())
+        {
+            selectedCompanion = ObjectFactory.CreateObject<Companion>(
+                prefabPath: selectedCompanion.data.prefabPath,
+                parent: EntityManager.Instance.transform, 
+                objectName: selectedCompanion.name
+            );
+            CompanionList[CompanionSelectorIndex] = selectedCompanion;
+        }
+
+        selectedCompanion.gameObject.SetActive(true);
+        
+        // TODO: Set possible spawn locations for companions, for now it will spawn on the left
+        selectedCompanion.transform.position = transform.position - new Vector3(-0.5f, 0, 0);
+        companionActive[CompanionSelectorIndex] = true;
     }
 
     public void DeactivateCompanion(int index)
     {
-        throw new System.NotImplementedException();
+        if(companionList.Count == 0)
+        {
+            return;
+        }
+        CompanionSelectorIndex = index;
+        Companion selectedCompanion = CompanionList[CompanionSelectorIndex];
+        companionActive[CompanionSelectorIndex] = false;
+        selectedCompanion.gameObject.SetActive(false);
+
+        Debug.Log($"Deactivating Companion {selectedCompanion.name}");
+    }
+
+    public void AddCompanion(Companion companion)
+    {
+        CompanionList.Add(companion);
+        CompanionActive.Add(false);
+    }
+
+    public void DeleteCompanion(int index)
+    {
+        CompanionActive.RemoveAt(index);
+        CompanionList.RemoveAt(index);
     }
 }
diff --git a/Assets/_Scripts/Core/Objects/Weapons/WeaponObject.cs b/Assets/_Scripts/Core/Objects/Weapons/WeaponObject.cs
index 0b5ffbf1be7fe94d14bf2f764eeece2edb6c0a2d..e0f11c5c3a779821f25e7bd50e8e24a846946991 100644
--- a/Assets/_Scripts/Core/Objects/Weapons/WeaponObject.cs
+++ b/Assets/_Scripts/Core/Objects/Weapons/WeaponObject.cs
@@ -7,8 +7,8 @@ public abstract class WeaponObject : MonoBehaviour
 
     // Attributes
     public WeaponData data;
+    public bool canAttack = true;
     protected IArmed bearer;
-    private bool canAttack = true;
 
     // Events
     public event Action OnAttackEvent;
diff --git a/Assets/_Scripts/Core/Player/Player.cs b/Assets/_Scripts/Core/Player/Player.cs
index 47052f96d7424bfde9a615c13497bf158cbd99bd..fcd8e25289c07d35c7f959a82f2af425808e1d08 100644
--- a/Assets/_Scripts/Core/Player/Player.cs
+++ b/Assets/_Scripts/Core/Player/Player.cs
@@ -30,12 +30,24 @@ public class Player : PlayerEntity
         inputController = new PlayerInputController(this);
         movementController = new PlayerMovementController(this);
         animationController = new PlayerAnimationController(this);
+        GameController.Instance.player = this;
 
-        
+
+        // TODO: These are for dev, consider deleting
         WeaponList.AddRange(GetComponentsInChildren<WeaponObject>());
         EquipWeapon(0);
 
-        GameController.Instance.player = this;
+        int initialIndex = CompanionList.Count;
+        for (int i = 0; i < initialIndex; i++)
+        {            
+            CompanionActive.Add(false);
+        }
+        
+        CompanionList.AddRange(EntityManager.Instance.GetComponentsInChildren<Companion>());
+        for (int i = initialIndex; i < CompanionList.Count; i++)
+        {            
+            CompanionActive.Add(CompanionList[i].gameObject.activeSelf);
+        }
     }
 
     // Functions
diff --git a/Assets/_Scripts/Core/Player/PlayerAnimationController.cs b/Assets/_Scripts/Core/Player/PlayerAnimationController.cs
index 02707188dd88f1de1ca202b816f18707907948c8..77cbfbbf850bc01e80b01fa93236595267a20ea1 100644
--- a/Assets/_Scripts/Core/Player/PlayerAnimationController.cs
+++ b/Assets/_Scripts/Core/Player/PlayerAnimationController.cs
@@ -24,7 +24,7 @@ public class PlayerAnimationController : AnimationController
         #if STRICT
         if(animator == null)
         {
-            Debug.LogError($"Animated object of {player.name} does not have an animator in its model");
+            Debug.LogError($"Animated object of {player.name} does not have an animator in its model. How to resolve: add an animator to its child containing the model.cs script");
         }
         #endif
 
diff --git a/Assets/_Scripts/Core/Player/PlayerInputController.cs b/Assets/_Scripts/Core/Player/PlayerInputController.cs
index 78c69b1b87615be42934aa56fcdf9d0e548b3b82..036e8773836c79b3bacf8fc21c9d471690d8270c 100644
--- a/Assets/_Scripts/Core/Player/PlayerInputController.cs
+++ b/Assets/_Scripts/Core/Player/PlayerInputController.cs
@@ -37,19 +37,23 @@ public class PlayerInputController
             OnJumpEvent?.Invoke();
         }
 
-
-        if(Input.GetKey(GameInput.Instance.inputToggleButton)){
-            Debug.Log("Player control is Toggled");
-            if(movementInputScroll != 0)
-            {
-                Debug.Log("Player is scrolling in toggle");
-            }
+        bool Toggled = Input.GetKey(GameInput.Instance.inputToggleButton);
+        if (Toggled)
+        {
+            HandleToggledInputs();
         }
-        else if(movementInputScroll != 0)
+        else
         {
-            player.EquipWeapon(player.WeaponIndex + (int)(movementInputScroll * 10));
+            HandleUntoggledInputs();
         }
+    }
 
+    private void HandleUntoggledInputs()
+    {
+        if(movementInputScroll != 0)
+        {
+            player.EquipWeapon(player.WeaponIndex + (int)(movementInputScroll * 10));
+        }
 
         else if(Input.GetKeyDown(GameInput.Instance.attackButton))
         {
@@ -59,7 +63,6 @@ public class PlayerInputController
                 Debug.Log("Player does not have a weapon");
                 return;
             }
-            Debug.Log("Attacking using Weapon");
 
             player.Weapon.Attack();
         }
@@ -86,4 +89,24 @@ public class PlayerInputController
             interactable.Interact();
         }
     }
+
+    private void HandleToggledInputs()
+    {
+        if(movementInputScroll != 0)
+        {
+            player.CompanionSelectorIndex += (int)(movementInputScroll * 10);
+            Debug.Log($"Selecting companions: {player.CompanionSelectorIndex}");
+        }
+
+        else if(Input.GetKeyDown(GameInput.Instance.attackButton))
+        {
+            Debug.Log("Player is Activating a companion");
+            player.ActivateCompanion(player.CompanionSelectorIndex);
+        }
+        else if(Input.GetKeyDown(GameInput.Instance.attackAlternateButton))
+        {
+            Debug.Log("Player is Deactivating a companion");
+            player.DeactivateCompanion(player.CompanionSelectorIndex);
+        }
+    }
 }
\ No newline at end of file
diff --git a/Assets/_Scripts/Library/BaseClasses/EntityObject/CombatantEntity.cs b/Assets/_Scripts/Library/BaseClasses/EntityObject/CombatantEntity.cs
index c6014e1d25e74a6a226eff2899cbb0a675de828e..abf638897dc28042cb668dcd534a9ad7d17aa690 100644
--- a/Assets/_Scripts/Library/BaseClasses/EntityObject/CombatantEntity.cs
+++ b/Assets/_Scripts/Library/BaseClasses/EntityObject/CombatantEntity.cs
@@ -7,8 +7,8 @@ using UnityEngine;
 public class CombatantEntity : DamageableEntity, IArmed
 {
     // Attributes
-    public List<WeaponObject> weaponList = new();
     [SerializeField] protected float baseDamage;
+    public List<WeaponObject> weaponList = new();
     private int weaponIndex;
     private WeaponObject weapon;
     
@@ -38,12 +38,13 @@ public class CombatantEntity : DamageableEntity, IArmed
     }
 
     // Constructors
-    protected new void Start(){
+    protected new void Start()
+    {
         base.Start();
         #if STRICT
         if(WeaponList.Count ==  0)
         {
-            Debug.LogError($"CombatantEntity {name} does not have any weapon. How to solve: Consider putting a NoWeapon instead in the class");
+            Debug.LogError($"CombatantEntity {name} does not have any initial weapon. How to solve: Consider putting a NoWeapon instead to the list in the class");
         }
         #endif
     }
@@ -56,30 +57,36 @@ public class CombatantEntity : DamageableEntity, IArmed
         {
             return;
         }
-        Debug.Log($"Equipping weapon {index}");
-
+        if(Weapon != null && !Weapon.canAttack)
+        {
+            return;
+        }
+        
         UnequipWeapon();
 
         WeaponIndex = index;
         WeaponObject selectedWeapon = WeaponList[WeaponIndex];
+        Debug.Log($"Equipping weapon {selectedWeapon.name}");
         
-        // To handle editor prefab drag n drops
+        // To handle prefabs
         if(!selectedWeapon.gameObject.scene.IsValid())
         {
             selectedWeapon = ObjectFactory.CreateObject<WeaponObject>(
                 prefabPath: selectedWeapon.data.prefabPath,
                 parent: transform, 
-                objectName: EnvironmentConfig.OBJECT_NAME_WEAPON
+                objectName: selectedWeapon.name
             );
             WeaponList[WeaponIndex] = selectedWeapon;
         }
+
         selectedWeapon.gameObject.SetActive(true);
         selectedWeapon.transform.localPosition = WeaponLocation;
         selectedWeapon.gameObject.layer = LayerMask.NameToLayer(AttackLayerCode);
         weapon = selectedWeapon;
     }
 
-    public void UnequipWeapon(){
+    public void UnequipWeapon()
+    {
         foreach (WeaponObject weapon in WeaponList)
         {
             // We'll also clean null weapons here, add no weapons explicitly
diff --git a/Assets/_Scripts/Library/BaseClasses/EntityObject/PlayerEntity.cs b/Assets/_Scripts/Library/BaseClasses/EntityObject/PlayerEntity.cs
index 68b2f0b3453d8d5e53fbd869c132eee34af3dbe6..b293d1d27494f67874ddaac9a7d661243a1ace4f 100644
--- a/Assets/_Scripts/Library/BaseClasses/EntityObject/PlayerEntity.cs
+++ b/Assets/_Scripts/Library/BaseClasses/EntityObject/PlayerEntity.cs
@@ -5,22 +5,84 @@ public class PlayerEntity : CombatantEntity, IAccompaniable
 {
     // Attributes
     public List<Companion> companionList = new();    
-    public List<bool> activeCompanions = new();    
+    public List<bool> companionActive = new();    
+    private int companionSelectorIndex;
     
     // Set-Getters
-    public List<Companion> Companions => companionList;
-    public List<bool> ActiveCompanions => activeCompanions;
+    public List<Companion> CompanionList => companionList;
+    public List<bool> CompanionActive => companionActive;
     public MonoBehaviour CompanionController => this;
-
+    public int CompanionSelectorIndex
+    {
+        get => companionSelectorIndex;
+        set 
+        {
+            // Switch requires a constant, so can't use that here
+            if(value == companionList.Count) companionSelectorIndex = 0;
+            else if(value == -1) companionSelectorIndex = companionList.Count - 1;
+            else if(-1 < value && value < companionList.Count) companionSelectorIndex = value;
+            else companionSelectorIndex = 0;
+        } 
+    }
+    
     // Functions
     public void ActivateCompanion(int index)
     {
-        throw new System.NotImplementedException();
+        if(companionList.Count == 0)
+        {
+            return;
+        }
+        CompanionSelectorIndex = index;
+        Companion selectedCompanion = CompanionList[CompanionSelectorIndex];
+        
+        if(CompanionActive[CompanionSelectorIndex])
+        {
+            return;
+        }
+
+        Debug.Log($"Activating Companion {selectedCompanion.name}");
+        
+        // To handle prefabs
+        if(!selectedCompanion.gameObject.scene.IsValid())
+        {
+            selectedCompanion = ObjectFactory.CreateObject<Companion>(
+                prefabPath: selectedCompanion.data.prefabPath,
+                parent: EntityManager.Instance.transform, 
+                objectName: selectedCompanion.name
+            );
+            CompanionList[CompanionSelectorIndex] = selectedCompanion;
+        }
+
+        selectedCompanion.gameObject.SetActive(true);
+        
+        // TODO: Set possible spawn locations for companions, for now it will spawn on the left
+        selectedCompanion.transform.position = transform.position - new Vector3(-0.5f, 0, 0);
+        companionActive[CompanionSelectorIndex] = true;
     }
 
     public void DeactivateCompanion(int index)
     {
-        throw new System.NotImplementedException();
+        if(companionList.Count == 0)
+        {
+            return;
+        }
+        CompanionSelectorIndex = index;
+        Companion selectedCompanion = CompanionList[CompanionSelectorIndex];
+        companionActive[CompanionSelectorIndex] = false;
+        selectedCompanion.gameObject.SetActive(false);
+
+        Debug.Log($"Deactivating Companion {selectedCompanion.name}");
+    }
+
+    public void AddCompanion(Companion companion)
+    {
+        CompanionList.Add(companion);
+        CompanionActive.Add(false);
     }
 
+    public void DeleteCompanion(int index)
+    {
+        CompanionActive.RemoveAt(index);
+        CompanionList.RemoveAt(index);
+    }
 }
diff --git a/Assets/_Scripts/Library/DataTypes/CompanionData.cs b/Assets/_Scripts/Library/DataTypes/CompanionData.cs
index ca28a157808e0a7bb1c2c0ba1b161820dcf7e9c2..5bfb22e78076912a7f9445e2d1717e00dc367525 100644
--- a/Assets/_Scripts/Library/DataTypes/CompanionData.cs
+++ b/Assets/_Scripts/Library/DataTypes/CompanionData.cs
@@ -8,5 +8,5 @@ public class CompanionData : ScriptableObject
     // Learn other systems than this obviously
     // but I think the window to learn and implement a new system is not viable within the scope of the project
     public string prefabPath;
-    public UnityEngine.GameObject model;
+    public GameObject model;
 }
\ No newline at end of file
diff --git a/Assets/_Scripts/Library/Interfaces/IAccompanied.cs b/Assets/_Scripts/Library/Interfaces/IAccompanied.cs
index ec66b003b0f6df18d7ae94ec65ea35c026904358..f87a5d6338188b9f3c004b73528d00d347ca7a8e 100644
--- a/Assets/_Scripts/Library/Interfaces/IAccompanied.cs
+++ b/Assets/_Scripts/Library/Interfaces/IAccompanied.cs
@@ -4,8 +4,8 @@ using UnityEngine;
 public interface IAccompaniable
 {
     // Set-Getters
-    public List<Companion> Companions { get; }
-    public List<bool> ActiveCompanions { get; }
+    public List<Companion> CompanionList { get; }
+    public List<bool> CompanionActive { get; }
     public MonoBehaviour CompanionController { get; }
     public void ActivateCompanion(int index);
     public void DeactivateCompanion(int index);
diff --git a/ProjectSettings/ProjectSettings.asset b/ProjectSettings/ProjectSettings.asset
index 36f85238054984b8c6e3493687bfbcc81032a59e..5bb590a1c6c52e718f23f9c6fafa9ac8d2a6f6bc 100644
--- a/ProjectSettings/ProjectSettings.asset
+++ b/ProjectSettings/ProjectSettings.asset
@@ -654,7 +654,7 @@ PlayerSettings:
   webGLWebAssemblyBigInt: 0
   webGLCloseOnQuit: 0
   scriptingDefineSymbols:
-    Standalone: DEVELOPMENT
+    Standalone: STRICT
   additionalCompilerArguments: {}
   platformArchitecture: {}
   scriptingBackend: {}