diff --git a/Assets/Scene.unity b/Assets/Scene.unity
new file mode 100644
index 0000000..86b61b0
--- /dev/null
+++ b/Assets/Scene.unity
@@ -0,0 +1,987 @@
+%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: 9
+ 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: 3
+ m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1}
+ m_SkyboxMaterial: {fileID: 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: 0}
+ m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1}
+ m_UseRadianceAmbientProbe: 0
+--- !u!157 &3
+LightmapSettings:
+ m_ObjectHideFlags: 0
+ serializedVersion: 12
+ m_GIWorkflowMode: 1
+ m_GISettings:
+ serializedVersion: 2
+ m_BounceScale: 1
+ m_IndirectOutputScale: 1
+ m_AlbedoBoost: 1
+ m_EnvironmentLightingMode: 0
+ m_EnableBakedLightmaps: 0
+ 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_FinalGather: 0
+ m_FinalGatherFiltering: 1
+ m_FinalGatherRayCount: 256
+ m_ReflectionCompression: 2
+ m_MixedBakeMode: 2
+ m_BakeBackend: 1
+ m_PVRSampling: 1
+ m_PVRDirectSampleCount: 32
+ m_PVRSampleCount: 512
+ m_PVRBounces: 2
+ m_PVREnvironmentSampleCount: 256
+ m_PVREnvironmentReferencePointCount: 2048
+ m_PVRFilteringMode: 1
+ m_PVRDenoiserTypeDirect: 1
+ m_PVRDenoiserTypeIndirect: 1
+ m_PVRDenoiserTypeAO: 1
+ m_PVRFilterTypeDirect: 0
+ m_PVRFilterTypeIndirect: 0
+ m_PVRFilterTypeAO: 0
+ m_PVREnvironmentMIS: 1
+ 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: 2
+ 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
+ accuratePlacement: 0
+ maxJobWorkers: 0
+ preserveTilesOutsideBounds: 0
+ debug:
+ m_Flags: 0
+ m_NavMeshData: {fileID: 0}
+--- !u!1 &42357753
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 42357756}
+ - component: {fileID: 42357755}
+ - component: {fileID: 42357754}
+ m_Layer: 0
+ m_Name: Main Camera
+ m_TagString: MainCamera
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!81 &42357754
+AudioListener:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 42357753}
+ m_Enabled: 1
+--- !u!20 &42357755
+Camera:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 42357753}
+ 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_SensorSize: {x: 36, y: 24}
+ m_LensShift: {x: 0, y: 0}
+ m_FocalLength: 50
+ 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: 1
+ 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 &42357756
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 42357753}
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+ m_LocalPosition: {x: 0, y: 0, z: -10}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 0}
+ m_RootOrder: 0
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1 &762063264
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 762063265}
+ m_Layer: 0
+ m_Name: UI
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!4 &762063265
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 762063264}
+ 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: 831773407}
+ m_Father: {fileID: 0}
+ m_RootOrder: 1
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1 &831773406
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 831773407}
+ - component: {fileID: 831773410}
+ - component: {fileID: 831773409}
+ - component: {fileID: 831773408}
+ - component: {fileID: 831773411}
+ m_Layer: 0
+ m_Name: Canvas
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &831773407
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 831773406}
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+ m_LocalPosition: {x: 0, y: 0, z: 0}
+ m_LocalScale: {x: 0, y: 0, z: 0}
+ m_ConstrainProportionsScale: 0
+ m_Children:
+ - {fileID: 1276161489}
+ m_Father: {fileID: 762063265}
+ m_RootOrder: 0
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0, y: 0}
+ m_AnchorMax: {x: 0, y: 0}
+ m_AnchoredPosition: {x: 0, y: 0}
+ m_SizeDelta: {x: 0, y: 0}
+ m_Pivot: {x: 0, y: 0}
+--- !u!114 &831773408
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 831773406}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_IgnoreReversedGraphics: 1
+ m_BlockingObjects: 0
+ m_BlockingMask:
+ serializedVersion: 2
+ m_Bits: 4294967295
+--- !u!114 &831773409
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 831773406}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_UiScaleMode: 1
+ m_ReferencePixelsPerUnit: 100
+ m_ScaleFactor: 1
+ m_ReferenceResolution: {x: 1600, y: 900}
+ m_ScreenMatchMode: 0
+ m_MatchWidthOrHeight: 0
+ m_PhysicalUnit: 3
+ m_FallbackScreenDPI: 96
+ m_DefaultSpriteDPI: 96
+ m_DynamicPixelsPerUnit: 1
+ m_PresetInfoIsWorld: 0
+--- !u!223 &831773410
+Canvas:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 831773406}
+ m_Enabled: 1
+ serializedVersion: 3
+ m_RenderMode: 0
+ m_Camera: {fileID: 0}
+ m_PlaneDistance: 100
+ m_PixelPerfect: 0
+ m_ReceivesEvents: 1
+ m_OverrideSorting: 0
+ m_OverridePixelPerfect: 0
+ m_SortingBucketNormalizedSize: 0
+ m_AdditionalShaderChannelsFlag: 25
+ m_SortingLayerID: 0
+ m_SortingOrder: 0
+ m_TargetDisplay: 0
+--- !u!114 &831773411
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 831773406}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 2270781166138a84fa19eefc3f92bda6, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ inventoryContainer: {fileID: 1276161489}
+ itemSlotTemplate: {fileID: 1081364496}
+--- !u!224 &1081364496 stripped
+RectTransform:
+ m_CorrespondingSourceObject: {fileID: 4215392545969358082, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ m_PrefabInstance: {fileID: 4215392547039679762}
+ m_PrefabAsset: {fileID: 0}
+--- !u!1 &1270691016
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 1270691017}
+ m_Layer: 0
+ m_Name: Background
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &1270691017
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1270691016}
+ 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: 1858773272}
+ m_Father: {fileID: 1276161489}
+ m_RootOrder: 0
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0, y: 0}
+ m_AnchorMax: {x: 1, y: 1}
+ m_AnchoredPosition: {x: 0, y: -0.00048828125}
+ m_SizeDelta: {x: 0.000061035, y: -0.00097656}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!1 &1276161485
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 1276161489}
+ - component: {fileID: 1276161488}
+ m_Layer: 0
+ m_Name: InventoryContainer
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!222 &1276161488
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1276161485}
+ m_CullTransparentMesh: 1
+--- !u!224 &1276161489
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1276161485}
+ 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: 1270691017}
+ - {fileID: 1081364496}
+ m_Father: {fileID: 831773407}
+ m_RootOrder: 0
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0, y: 1}
+ m_AnchorMax: {x: 0, y: 1}
+ m_AnchoredPosition: {x: 259.71698, y: -211.72588}
+ m_SizeDelta: {x: 561.131, y: 592.292}
+ m_Pivot: {x: 0, y: 1}
+--- !u!1 &1327223488
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 1327223490}
+ - component: {fileID: 1327223489}
+ - component: {fileID: 1327223491}
+ m_Layer: 0
+ m_Name: player
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!114 &1327223489
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1327223488}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: cff3b5ce3863a7442a86b400700ff131, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ item1: {fileID: 11400000, guid: a29513e23691eb0408e3b0e1a8e99148, type: 2}
+ item2: {fileID: 11400000, guid: e04039a6cbed5e5439b605aeee90485f, type: 2}
+ inventory: {fileID: 0}
+ uiInventory: {fileID: 831773411}
+--- !u!4 &1327223490
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1327223488}
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+ m_LocalPosition: {x: 209.55298, y: 268.50955, z: 3.2421181}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 0}
+ m_RootOrder: 3
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!114 &1327223491
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1327223488}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: ee2fcb6d299019740bbede78bbc6a1d7, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+--- !u!1 &1404527750
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 1404527751}
+ - component: {fileID: 1404527753}
+ - component: {fileID: 1404527752}
+ m_Layer: 0
+ m_Name: Text (TMP)
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 0
+--- !u!224 &1404527751
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1404527750}
+ 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: 1632946789}
+ m_RootOrder: 1
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 1, y: 0}
+ m_AnchorMax: {x: 1, y: 0}
+ m_AnchoredPosition: {x: -25, y: 15}
+ m_SizeDelta: {x: 40, y: 20}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!114 &1404527752
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1404527750}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Material: {fileID: 0}
+ m_Color: {r: 1, g: 1, b: 1, a: 1}
+ m_RaycastTarget: 1
+ m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+ m_Maskable: 1
+ m_OnCullStateChanged:
+ m_PersistentCalls:
+ m_Calls: []
+ m_text: 100
+ m_isRightToLeft: 0
+ m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
+ m_sharedMaterial: {fileID: 2100000, guid: 79459efec17a4d00a321bdcc27bbc385, type: 2}
+ m_fontSharedMaterials: []
+ m_fontMaterial: {fileID: 0}
+ m_fontMaterials: []
+ m_fontColor32:
+ serializedVersion: 2
+ rgba: 4294967295
+ m_fontColor: {r: 1, g: 1, b: 1, a: 1}
+ m_enableVertexGradient: 0
+ m_colorMode: 3
+ m_fontColorGradient:
+ topLeft: {r: 1, g: 1, b: 1, a: 1}
+ topRight: {r: 1, g: 1, b: 1, a: 1}
+ bottomLeft: {r: 1, g: 1, b: 1, a: 1}
+ bottomRight: {r: 1, g: 1, b: 1, a: 1}
+ m_fontColorGradientPreset: {fileID: 0}
+ m_spriteAsset: {fileID: 0}
+ m_tintAllSprites: 0
+ m_StyleSheet: {fileID: 0}
+ m_TextStyleHashCode: -1183493901
+ m_overrideHtmlColors: 0
+ m_faceColor:
+ serializedVersion: 2
+ rgba: 4294967295
+ m_fontSize: 18
+ m_fontSizeBase: 20
+ m_fontWeight: 400
+ m_enableAutoSizing: 1
+ m_fontSizeMin: 18
+ m_fontSizeMax: 72
+ m_fontStyle: 0
+ m_HorizontalAlignment: 4
+ m_VerticalAlignment: 512
+ m_textAlignment: 65535
+ m_characterSpacing: 0
+ m_wordSpacing: 0
+ m_lineSpacing: 0
+ m_lineSpacingMax: 0
+ m_paragraphSpacing: 0
+ m_charWidthMaxAdj: 0
+ m_enableWordWrapping: 1
+ m_wordWrappingRatios: 0.4
+ m_overflowMode: 0
+ m_linkedTextComponent: {fileID: 0}
+ parentLinkedComponent: {fileID: 0}
+ m_enableKerning: 1
+ m_enableExtraPadding: 0
+ checkPaddingRequired: 0
+ m_isRichText: 1
+ m_parseCtrlCharacters: 1
+ m_isOrthographic: 1
+ m_isCullingEnabled: 0
+ m_horizontalMapping: 0
+ m_verticalMapping: 0
+ m_uvLineOffset: 0
+ m_geometrySortingOrder: 0
+ m_IsTextObjectScaleStatic: 0
+ m_VertexBufferAutoSizeReduction: 0
+ m_useMaxVisibleDescender: 1
+ m_pageToDisplay: 1
+ m_margin: {x: 0, y: 0, z: 0, w: 0}
+ m_isUsingLegacyAnimationComponent: 0
+ m_isVolumetricText: 0
+ m_hasFontAssetChanged: 0
+ m_baseMaterial: {fileID: 0}
+ m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
+--- !u!222 &1404527753
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1404527750}
+ m_CullTransparentMesh: 1
+--- !u!1 &1618529780
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 1618529782}
+ - component: {fileID: 1618529781}
+ m_Layer: 0
+ m_Name: ItemAtlas
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!114 &1618529781
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1618529780}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 362c4fe8229e41c46b489ad07bfa9133, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ stoneSprite: {fileID: 21300000, guid: 475f050511847c0499c1ca4f47fcaefa, type: 3}
+ woodSprite: {fileID: 0}
+--- !u!4 &1618529782
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1618529780}
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+ m_LocalPosition: {x: -4.46076, y: 190.54059, z: 0.77190876}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 0}
+ m_RootOrder: 4
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1 &1632946788 stripped
+GameObject:
+ m_CorrespondingSourceObject: {fileID: 1031884711933943707, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ m_PrefabInstance: {fileID: 4215392547039679762}
+ m_PrefabAsset: {fileID: 0}
+--- !u!224 &1632946789 stripped
+RectTransform:
+ m_CorrespondingSourceObject: {fileID: 2917703646420147887, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ m_PrefabInstance: {fileID: 4215392547039679762}
+ m_PrefabAsset: {fileID: 0}
+--- !u!114 &1632946793
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1632946788}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 8e3ae0ca7d3fa0f4cb5a877a7f8183ec, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ index: 0
+--- !u!1 &1683721763
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 1683721766}
+ - component: {fileID: 1683721765}
+ - component: {fileID: 1683721764}
+ m_Layer: 0
+ m_Name: EventSystem
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!114 &1683721764
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1683721763}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 4f231c4fb786f3946a6b90b886c48677, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_HorizontalAxis: Horizontal
+ m_VerticalAxis: Vertical
+ m_SubmitButton: Submit
+ m_CancelButton: Cancel
+ m_InputActionsPerSecond: 10
+ m_RepeatDelay: 0.5
+ m_ForceModuleActive: 0
+--- !u!114 &1683721765
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1683721763}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_FirstSelected: {fileID: 0}
+ m_sendNavigationEvents: 1
+ m_DragThreshold: 10
+--- !u!4 &1683721766
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1683721763}
+ 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_RootOrder: 2
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1 &1858773271
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 1858773272}
+ - component: {fileID: 1858773274}
+ - component: {fileID: 1858773273}
+ m_Layer: 0
+ m_Name: Image
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &1858773272
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1858773271}
+ 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: 1270691017}
+ m_RootOrder: 0
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0, y: 0}
+ m_AnchorMax: {x: 1, y: 1}
+ m_AnchoredPosition: {x: 0, y: 0}
+ m_SizeDelta: {x: -0.000045776, y: 0.000015259}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!114 &1858773273
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1858773271}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Material: {fileID: 0}
+ m_Color: {r: 1, g: 1, b: 1, a: 1}
+ m_RaycastTarget: 1
+ m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+ m_Maskable: 1
+ m_OnCullStateChanged:
+ m_PersistentCalls:
+ m_Calls: []
+ m_Sprite: {fileID: 21300000, guid: bc5f789010615674bb9b456338ed4ad3, type: 3}
+ m_Type: 1
+ m_PreserveAspect: 0
+ m_FillCenter: 1
+ m_FillMethod: 4
+ m_FillAmount: 1
+ m_FillClockwise: 1
+ m_FillOrigin: 0
+ m_UseSpriteMesh: 0
+ m_PixelsPerUnitMultiplier: 1
+--- !u!222 &1858773274
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1858773271}
+ m_CullTransparentMesh: 1
+--- !u!1001 &4215392547039679762
+PrefabInstance:
+ m_ObjectHideFlags: 0
+ serializedVersion: 2
+ m_Modification:
+ m_TransformParent: {fileID: 1276161489}
+ m_Modifications:
+ - target: {fileID: 2310262034725730047, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 2310262034725730047, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode
+ value: 3
+ objectReference: {fileID: 0}
+ - target: {fileID: 2310262034725730047, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target
+ value:
+ objectReference: {fileID: 831773411}
+ - target: {fileID: 2310262034725730047, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState
+ value: 2
+ objectReference: {fileID: 0}
+ - target: {fileID: 2310262034725730047, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName
+ value: buttonEvent
+ objectReference: {fileID: 0}
+ - target: {fileID: 2310262034725730047, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName
+ value: UI_Inventory, Assembly-CSharp
+ objectReference: {fileID: 0}
+ - target: {fileID: 2310262034725730047, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName
+ value: UnityEngine.Object, UnityEngine
+ objectReference: {fileID: 0}
+ - target: {fileID: 4215392545672552185, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_IsActive
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 4215392545969358082, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_Pivot.x
+ value: 0.5
+ objectReference: {fileID: 0}
+ - target: {fileID: 4215392545969358082, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_Pivot.y
+ value: 0.5
+ objectReference: {fileID: 0}
+ - target: {fileID: 4215392545969358082, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_RootOrder
+ value: 1
+ objectReference: {fileID: 0}
+ - target: {fileID: 4215392545969358082, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_AnchorMax.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 4215392545969358082, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_AnchorMax.y
+ value: 1
+ objectReference: {fileID: 0}
+ - target: {fileID: 4215392545969358082, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_AnchorMin.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 4215392545969358082, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_AnchorMin.y
+ value: 1
+ objectReference: {fileID: 0}
+ - target: {fileID: 4215392545969358082, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_SizeDelta.x
+ value: 90
+ objectReference: {fileID: 0}
+ - target: {fileID: 4215392545969358082, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_SizeDelta.y
+ value: 90
+ objectReference: {fileID: 0}
+ - target: {fileID: 4215392545969358082, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_LocalPosition.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 4215392545969358082, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_LocalPosition.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 4215392545969358082, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_LocalPosition.z
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 4215392545969358082, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_LocalRotation.w
+ value: 1
+ objectReference: {fileID: 0}
+ - target: {fileID: 4215392545969358082, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_LocalRotation.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 4215392545969358082, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_LocalRotation.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 4215392545969358082, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_LocalRotation.z
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 4215392545969358082, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_AnchoredPosition.x
+ value: 66
+ objectReference: {fileID: 0}
+ - target: {fileID: 4215392545969358082, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_AnchoredPosition.y
+ value: -62
+ objectReference: {fileID: 0}
+ - target: {fileID: 4215392545969358082, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 4215392545969358082, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 4215392545969358082, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.z
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 4215392545969358109, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_Name
+ value: ContainerTemplate
+ objectReference: {fileID: 0}
+ - target: {fileID: 4215392545969358109, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
+ propertyPath: m_IsActive
+ value: 0
+ objectReference: {fileID: 0}
+ m_RemovedComponents: []
+ m_SourcePrefab: {fileID: 100100000, guid: ac29b266608f92b419b28a16d8ee7c1b, type: 3}
diff --git a/Assets/Scene.unity.meta b/Assets/Scene.unity.meta
new file mode 100644
index 0000000..1cce305
--- /dev/null
+++ b/Assets/Scene.unity.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 5e7d834e74f65cc4d9aa775c80b8f79a
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/ButtonEventHandler.cs b/Assets/Scripts/ButtonEventHandler.cs
new file mode 100644
index 0000000..8e3f26e
--- /dev/null
+++ b/Assets/Scripts/ButtonEventHandler.cs
@@ -0,0 +1,10 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class ButtonEventHandler : MonoBehaviour
+{
+
+ [SerializeField] UI_Inventory inventory;
+
+}
diff --git a/Assets/Scripts/ButtonEventHandler.cs.meta b/Assets/Scripts/ButtonEventHandler.cs.meta
new file mode 100644
index 0000000..8f6bbcb
--- /dev/null
+++ b/Assets/Scripts/ButtonEventHandler.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 005d6c21020af7e41813cdc4202c886f
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Identity.cs b/Assets/Scripts/Identity.cs
new file mode 100644
index 0000000..6566834
--- /dev/null
+++ b/Assets/Scripts/Identity.cs
@@ -0,0 +1,8 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class Identity : MonoBehaviour
+{
+ public int index;
+}
diff --git a/Assets/Scripts/Identity.cs.meta b/Assets/Scripts/Identity.cs.meta
new file mode 100644
index 0000000..98d885e
--- /dev/null
+++ b/Assets/Scripts/Identity.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 8e3ae0ca7d3fa0f4cb5a877a7f8183ec
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Inventory.meta b/Assets/Scripts/Inventory.meta
new file mode 100644
index 0000000..1c64f9c
--- /dev/null
+++ b/Assets/Scripts/Inventory.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 27c09b7e7d0e7824f882a062a77737c2
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Inventory/FoodItem.cs b/Assets/Scripts/Inventory/FoodItem.cs
new file mode 100644
index 0000000..ef65e4c
--- /dev/null
+++ b/Assets/Scripts/Inventory/FoodItem.cs
@@ -0,0 +1,10 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+[CreateAssetMenu(fileName = "FoodItem", menuName = "Items/FoodItem", order = 2)]
+public class FoodItem : Item
+{
+ public int health;
+ public int water;
+ public int regeneration;
+}
diff --git a/Assets/Scripts/Inventory/FoodItem.cs.meta b/Assets/Scripts/Inventory/FoodItem.cs.meta
new file mode 100644
index 0000000..948f09e
--- /dev/null
+++ b/Assets/Scripts/Inventory/FoodItem.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 0f6fecdcda7efd84baa350f4c41432a6
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Inventory/Inventory.cs b/Assets/Scripts/Inventory/Inventory.cs
new file mode 100644
index 0000000..c3626c6
--- /dev/null
+++ b/Assets/Scripts/Inventory/Inventory.cs
@@ -0,0 +1,145 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class Inventory : MonoBehaviour
+{
+ ///
+ /// -------------------------------------------------------------------------------///
+ ///
+ /// Inventory holds a list of Slots where Items can be added.
+ ///
+ ///[IMPORTANT]
+ /// !!createEmptyInventory(int numberOfSlots, int maxSpaceOfSlots) : Has to be called after the Inventory has been initialized!!
+ ///
+ ///[Methods]
+ /// getInventory() : Gets the list of Slots.
+ /// addItemAt(int index, Item itemType,int count) : Adds a number (count) of items of type itemType (itemType) to an item slot(index).
+ /// removeItemAt(int index, int count) : Removes a number of items (count) from a specific slot (index).
+ /// addInventorySlots(int numberOfSlots, int maxSpaceOfSlots = 10)
+ ///
+ /// -------------------------------------------------------------------------------///
+ ///
+
+
+ public delegate void OnItemChanged();
+ public OnItemChanged onItemChangedCallback; //
+
+ List inventory = new List();
+
+ public List getInventory { get => inventory;}
+ public void createEmptyInventory(int numberOfSlots, int maxSpaceOfSlots = 10)
+ {
+ // Initializes the inventory with a specific number of slots and slotsize.
+ // !!!Has to be called bevore adding any items!!!
+ // Example createEmptyInventory(5, 10) : 5 Slots with space for 10 items each
+ inventory = new List();
+ for (int i = 0; i < numberOfSlots; i++)
+ {
+ inventory.Add(new Slot(maxSpaceOfSlots));
+ }
+ if (onItemChangedCallback != null)
+ onItemChangedCallback.Invoke();
+ }
+ public void addInventorySlots(int numberOfSlots, int maxSpaceOfSlots = 10)
+ {
+ // Adds a specific number of slots and slotsize to the inventory.
+ // Example addInventorySlots(5, 10) : Adds 5 Slots with space for 10 items each
+ for (int i = 0; i < numberOfSlots; i++)
+ {
+ inventory.Add(new Slot(maxSpaceOfSlots));
+ }
+ if (onItemChangedCallback != null)
+ onItemChangedCallback.Invoke();
+ }
+ public int addItemAt(int index, Item itemType,int count)
+ {
+ // Adds a number (count = 7) of items of type itemType (itemType = Stone) to an item slot(index = 3).
+ //Returns the number of items that could not be added because of unsufficent space in the specefied slot
+ //or Return -1 if the index is out of bound or the item slot is already filled with a different itemType.
+ //
+ // Example inventory.addItemAt(3,Stone,7);
+
+ if (indexIsInRange(index) && (inventory[index].ItemType == null || inventory[index].ItemType.id == itemType.id))
+ {
+ if (inventory[index].ItemType == null)
+ {
+ inventory[index].ItemType = Instantiate(itemType); // Set the itemType if the slot was empty.
+ }
+
+ if (inventory[index].MaxItems == inventory[index].Count)
+ {
+
+ if (onItemChangedCallback != null)
+ onItemChangedCallback.Invoke();
+ return count; // Can't add any items if the slot is full.
+ }
+ else if (inventory[index].MaxItems >= inventory[index].Count + count)
+ {
+ inventory[index].addItem(count); // Adds all items if there is enought space.
+ if(onItemChangedCallback != null)
+ onItemChangedCallback.Invoke();
+ return 0;
+ } else
+ {
+ int rest = count - inventory[index].MaxItems - inventory[index].Count;
+ inventory[index].addItem(inventory[index].MaxItems - inventory[index].Count); // Adds the number of items until the slot is full and returns the number of items that didn't fit.
+ if (onItemChangedCallback != null)
+ onItemChangedCallback.Invoke();
+ return rest;
+ }
+ }
+ else
+ {
+
+ return -1;//Wrong item or index not in range.
+ }
+ }
+ public int removeItemAt(int index, int count)
+ {
+ // Removes a number of items (count = 5) from a specific slot (index = 4).
+ // Example inventory.removeItemAt(4,5)
+ if (indexIsInRange(index))
+ {
+ if (inventory[index].ItemType == null)
+ {
+ return count;// Can't remove any items if the slot is empty.
+ }
+ else if (inventory[index].Count > count)
+ {
+ inventory[index].removeItem(count);// Removes the number of items if there are more or equal items in the slot.
+ return 0;
+ }
+ else if (inventory[index].Count <= count)
+ {
+ int rest = count - inventory[index].Count;
+ inventory[index].Count = 0; // Removes all the items from the slot and returns the number of items that could not be removed.
+ inventory[index].ItemType = null; // When the slot is empty the itemType can also be removed.
+ return rest;
+ }
+ else
+ {
+ return -1; // Something went wrong (you should never end up in here).
+ }
+
+ }
+ else
+ {
+ return -1;//Index not in range.
+ }
+ }
+ private bool indexIsInRange(int index)
+ {
+ // Returns true if a given index is in the bounds of the inventory.
+ // Example (maxSize = 10) index = -10 : false , index = 100: false, index = 7 : true
+
+ if (index < inventory.Count && index >= 0)
+ {
+ return true;
+ }
+ else
+ {
+ return false;
+ }
+ }
+}
diff --git a/Assets/Scripts/Inventory/Inventory.cs.meta b/Assets/Scripts/Inventory/Inventory.cs.meta
new file mode 100644
index 0000000..8e85ac9
--- /dev/null
+++ b/Assets/Scripts/Inventory/Inventory.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: ee2fcb6d299019740bbede78bbc6a1d7
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Inventory/InventoryController.cs b/Assets/Scripts/Inventory/InventoryController.cs
new file mode 100644
index 0000000..2925274
--- /dev/null
+++ b/Assets/Scripts/Inventory/InventoryController.cs
@@ -0,0 +1,39 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class InventoryController : MonoBehaviour
+{
+ [SerializeField] Item item1;// not needed
+ [SerializeField] Item item2;// not needed
+ public Inventory inventory;
+ [SerializeField] UI_Inventory uiInventory;
+ private void Awake()
+ {
+ inventory = transform.GetComponent();
+ inventory.createEmptyInventory(8,10);
+
+ inventory.addItemAt(0, item1, 8);
+ inventory.addItemAt(0, item1, 1);
+ inventory.addItemAt(3, item2, 15);
+ inventory.addItemAt(4, item1, 3);
+
+ /*
+ Debug.Log(inventory.addItemAt(0, item2, 15));
+ Debug.Log(inventory.getInventory[0].Count);
+ Debug.Log(inventory.removeItemAt(0, 10));
+ Debug.Log(inventory.getInventory[0].Count);
+ */
+ uiInventory.setInventory(inventory);
+ }
+ void Start()
+ {
+
+ }
+
+ // Update is called once per frame
+ void Update()
+ {
+
+ }
+}
diff --git a/Assets/Scripts/Inventory/InventoryController.cs.meta b/Assets/Scripts/Inventory/InventoryController.cs.meta
new file mode 100644
index 0000000..4eccd65
--- /dev/null
+++ b/Assets/Scripts/Inventory/InventoryController.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: cff3b5ce3863a7442a86b400700ff131
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Inventory/Item.cs b/Assets/Scripts/Inventory/Item.cs
new file mode 100644
index 0000000..66753d1
--- /dev/null
+++ b/Assets/Scripts/Inventory/Item.cs
@@ -0,0 +1,12 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+[CreateAssetMenu(fileName = "Item", menuName = "Items/Item", order = 1)]
+public class Item : ScriptableObject
+{
+ public new string name;
+ public int id;
+ public bool isStackable;
+ public Sprite sprite;
+}
diff --git a/Assets/Scripts/Inventory/Item.cs.meta b/Assets/Scripts/Inventory/Item.cs.meta
new file mode 100644
index 0000000..de9863c
--- /dev/null
+++ b/Assets/Scripts/Inventory/Item.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: de55e2e3081d4ee4a9d0737e718a5b3b
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Inventory/ItemAtlas.cs b/Assets/Scripts/Inventory/ItemAtlas.cs
new file mode 100644
index 0000000..44e5ba4
--- /dev/null
+++ b/Assets/Scripts/Inventory/ItemAtlas.cs
@@ -0,0 +1,19 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class ItemAtlas : MonoBehaviour
+{
+ public static ItemAtlas Instance { get; private set; }
+
+ private void Awake()
+ {
+ Instance = this;
+ }
+ enum ItemTypes {
+ STONE,TOMATO
+
+ }
+ public Sprite stoneSprite;
+ public Sprite woodSprite;
+}
diff --git a/Assets/Scripts/Inventory/ItemAtlas.cs.meta b/Assets/Scripts/Inventory/ItemAtlas.cs.meta
new file mode 100644
index 0000000..eeeec63
--- /dev/null
+++ b/Assets/Scripts/Inventory/ItemAtlas.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 362c4fe8229e41c46b489ad07bfa9133
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Inventory/Items.meta b/Assets/Scripts/Inventory/Items.meta
new file mode 100644
index 0000000..ffadd7a
--- /dev/null
+++ b/Assets/Scripts/Inventory/Items.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: db274161008cc6a4a8c92d42b6a81832
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Inventory/Items/ContainerTemplate.prefab b/Assets/Scripts/Inventory/Items/ContainerTemplate.prefab
new file mode 100644
index 0000000..2095541
--- /dev/null
+++ b/Assets/Scripts/Inventory/Items/ContainerTemplate.prefab
@@ -0,0 +1,237 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!1 &1031884711933943707
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 2917703646420147887}
+ - component: {fileID: 9007524712572810876}
+ - component: {fileID: 5255690316907466923}
+ - component: {fileID: 2310262034725730047}
+ m_Layer: 0
+ m_Name: Button
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &2917703646420147887
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1031884711933943707}
+ 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: 4215392545672552190}
+ m_Father: {fileID: 4215392545969358082}
+ m_RootOrder: 0
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0.5, y: 0.5}
+ m_AnchorMax: {x: 0.5, y: 0.5}
+ m_AnchoredPosition: {x: -0, y: 0}
+ m_SizeDelta: {x: 85, y: 85}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &9007524712572810876
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1031884711933943707}
+ m_CullTransparentMesh: 1
+--- !u!114 &5255690316907466923
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1031884711933943707}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Material: {fileID: 0}
+ m_Color: {r: 1, g: 1, b: 1, a: 1}
+ m_RaycastTarget: 1
+ m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+ m_Maskable: 1
+ m_OnCullStateChanged:
+ m_PersistentCalls:
+ m_Calls: []
+ m_Sprite: {fileID: 21300000, guid: 0543fd6b654bedd4fa82b563887c0609, type: 3}
+ m_Type: 1
+ m_PreserveAspect: 0
+ m_FillCenter: 1
+ m_FillMethod: 4
+ m_FillAmount: 1
+ m_FillClockwise: 1
+ m_FillOrigin: 0
+ m_UseSpriteMesh: 0
+ m_PixelsPerUnitMultiplier: 1
+--- !u!114 &2310262034725730047
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1031884711933943707}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Navigation:
+ m_Mode: 0
+ m_WrapAround: 0
+ m_SelectOnUp: {fileID: 0}
+ m_SelectOnDown: {fileID: 0}
+ m_SelectOnLeft: {fileID: 0}
+ m_SelectOnRight: {fileID: 0}
+ m_Transition: 1
+ m_Colors:
+ m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
+ m_HighlightedColor: {r: 0.4811321, g: 0.4811321, b: 0.4811321, a: 1}
+ m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
+ m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+ m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
+ m_ColorMultiplier: 1
+ m_FadeDuration: 0.1
+ m_SpriteState:
+ m_HighlightedSprite: {fileID: 0}
+ m_PressedSprite: {fileID: 0}
+ m_SelectedSprite: {fileID: 0}
+ m_DisabledSprite: {fileID: 0}
+ m_AnimationTriggers:
+ m_NormalTrigger: Normal
+ m_HighlightedTrigger: Highlighted
+ m_PressedTrigger: Pressed
+ m_SelectedTrigger: Selected
+ m_DisabledTrigger: Disabled
+ m_Interactable: 1
+ m_TargetGraphic: {fileID: 5255690316907466923}
+ m_OnClick:
+ m_PersistentCalls:
+ m_Calls: []
+--- !u!1 &4215392545672552185
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 4215392545672552190}
+ - component: {fileID: 4215392545672552188}
+ - component: {fileID: 4215392545672552191}
+ m_Layer: 0
+ m_Name: Icon
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &4215392545672552190
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 4215392545672552185}
+ 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: 2917703646420147887}
+ m_RootOrder: 0
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0.5, y: 0.5}
+ m_AnchorMax: {x: 0.5, y: 0.5}
+ m_AnchoredPosition: {x: 0, y: 0}
+ m_SizeDelta: {x: 70, y: 70}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &4215392545672552188
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 4215392545672552185}
+ m_CullTransparentMesh: 1
+--- !u!114 &4215392545672552191
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 4215392545672552185}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Material: {fileID: 0}
+ m_Color: {r: 1, g: 1, b: 1, a: 1}
+ m_RaycastTarget: 1
+ m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+ m_Maskable: 1
+ m_OnCullStateChanged:
+ m_PersistentCalls:
+ m_Calls: []
+ m_Sprite: {fileID: 21300000, guid: 475f050511847c0499c1ca4f47fcaefa, type: 3}
+ m_Type: 0
+ m_PreserveAspect: 1
+ m_FillCenter: 1
+ m_FillMethod: 4
+ m_FillAmount: 1
+ m_FillClockwise: 1
+ m_FillOrigin: 0
+ m_UseSpriteMesh: 0
+ m_PixelsPerUnitMultiplier: 1
+--- !u!1 &4215392545969358109
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 4215392545969358082}
+ m_Layer: 0
+ m_Name: ContainerTemplate
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &4215392545969358082
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 4215392545969358109}
+ 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: 2917703646420147887}
+ m_Father: {fileID: 0}
+ m_RootOrder: 0
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0.5, y: 0.5}
+ m_AnchorMax: {x: 0.5, y: 0.5}
+ m_AnchoredPosition: {x: -443, y: 131.1}
+ m_SizeDelta: {x: 100, y: 100}
+ m_Pivot: {x: 0.5, y: 0.5}
diff --git a/Assets/Scripts/Inventory/Items/ContainerTemplate.prefab.meta b/Assets/Scripts/Inventory/Items/ContainerTemplate.prefab.meta
new file mode 100644
index 0000000..82145e9
--- /dev/null
+++ b/Assets/Scripts/Inventory/Items/ContainerTemplate.prefab.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: ac29b266608f92b419b28a16d8ee7c1b
+PrefabImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Inventory/Items/Lumber.asset b/Assets/Scripts/Inventory/Items/Lumber.asset
new file mode 100644
index 0000000..4ba876b
--- /dev/null
+++ b/Assets/Scripts/Inventory/Items/Lumber.asset
@@ -0,0 +1,18 @@
+%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: de55e2e3081d4ee4a9d0737e718a5b3b, type: 3}
+ m_Name: Lumber
+ m_EditorClassIdentifier:
+ name: Lumber
+ id: 3
+ isStackable: 1
+ sprite: {fileID: 21300000, guid: 636c61591a702914dadb6abf17d92f6f, type: 3}
diff --git a/Assets/Scripts/Inventory/Items/Lumber.asset.meta b/Assets/Scripts/Inventory/Items/Lumber.asset.meta
new file mode 100644
index 0000000..55d9f76
--- /dev/null
+++ b/Assets/Scripts/Inventory/Items/Lumber.asset.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 90fd8b1738596514f860a4ce5adaba88
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 11400000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Inventory/Items/Stone.asset b/Assets/Scripts/Inventory/Items/Stone.asset
new file mode 100644
index 0000000..7bea6e7
--- /dev/null
+++ b/Assets/Scripts/Inventory/Items/Stone.asset
@@ -0,0 +1,18 @@
+%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: de55e2e3081d4ee4a9d0737e718a5b3b, type: 3}
+ m_Name: Stone
+ m_EditorClassIdentifier:
+ name: Stone
+ id: 0
+ isStackable: 1
+ sprite: {fileID: 21300000, guid: 475f050511847c0499c1ca4f47fcaefa, type: 3}
diff --git a/Assets/Scripts/Inventory/Items/Stone.asset.meta b/Assets/Scripts/Inventory/Items/Stone.asset.meta
new file mode 100644
index 0000000..2e2e48f
--- /dev/null
+++ b/Assets/Scripts/Inventory/Items/Stone.asset.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: e04039a6cbed5e5439b605aeee90485f
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 11400000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Inventory/Items/Tomato.asset b/Assets/Scripts/Inventory/Items/Tomato.asset
new file mode 100644
index 0000000..4c0cc67
--- /dev/null
+++ b/Assets/Scripts/Inventory/Items/Tomato.asset
@@ -0,0 +1,21 @@
+%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: 0f6fecdcda7efd84baa350f4c41432a6, type: 3}
+ m_Name: Tomato
+ m_EditorClassIdentifier:
+ name: Tomato
+ id: 1
+ isStackable: 1
+ sprite: {fileID: 21300000, guid: 5ee3152fa9663e94092921b0bd6b4821, type: 3}
+ health: 15
+ water: 10
+ regeneration: 2
diff --git a/Assets/Scripts/Inventory/Items/Tomato.asset.meta b/Assets/Scripts/Inventory/Items/Tomato.asset.meta
new file mode 100644
index 0000000..2ac23e8
--- /dev/null
+++ b/Assets/Scripts/Inventory/Items/Tomato.asset.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: a29513e23691eb0408e3b0e1a8e99148
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 11400000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Inventory/Items/Wood.asset b/Assets/Scripts/Inventory/Items/Wood.asset
new file mode 100644
index 0000000..22176e0
--- /dev/null
+++ b/Assets/Scripts/Inventory/Items/Wood.asset
@@ -0,0 +1,18 @@
+%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: de55e2e3081d4ee4a9d0737e718a5b3b, type: 3}
+ m_Name: Wood
+ m_EditorClassIdentifier:
+ name: Wood
+ id: 2
+ isStackable: 1
+ sprite: {fileID: 21300000, guid: 30728ae26107dfe438d180ab175fdaca, type: 3}
diff --git a/Assets/Scripts/Inventory/Items/Wood.asset.meta b/Assets/Scripts/Inventory/Items/Wood.asset.meta
new file mode 100644
index 0000000..6206576
--- /dev/null
+++ b/Assets/Scripts/Inventory/Items/Wood.asset.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 8ac3fa2505f8292498c5c20cf4fea84d
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 11400000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Inventory/Slot.cs b/Assets/Scripts/Inventory/Slot.cs
new file mode 100644
index 0000000..2a5fe68
--- /dev/null
+++ b/Assets/Scripts/Inventory/Slot.cs
@@ -0,0 +1,54 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class Slot
+{
+ ///
+ /// Holds an itemType the number of items and the number of maxItems
+ /// this has no logic so everything has to be done from the outside
+ /// [Get/Set]
+ /// ItemType
+ /// Count
+ /// MaxItems
+ /// [Methods]
+ /// void addItem(int count = 1)
+ /// void removeItem(int count = 1)
+ /// void clear()
+ ///
+
+ Item item;
+ int maxItems = 1;
+ int count = 0;
+ public Item ItemType { get => item; set => item = value; }
+ public int Count { get => count; set => count = value; }
+ public int MaxItems { get => maxItems; set => maxItems = value; }
+ public Slot(int maxItems = 1)
+ {
+ item = null;
+ this.maxItems = maxItems;
+ }
+ public void addItem(int count = 1)
+ {
+ // adds any number of items to the slot will also go over the max items
+ this.count += count;
+ }
+ public void removeItem(int count = 1)
+ {
+ // removes any number of items from the slot will also go negative
+ this.count -= count;
+ }
+ public void clear()
+ {
+ item = null;
+ count = 0;
+ }
+ public Slot copy()
+ {
+ Slot slot = new Slot(maxItems);
+ slot.count = count;
+ slot.ItemType = ItemType;
+
+ return slot;
+ }
+}
diff --git a/Assets/Scripts/Inventory/Slot.cs.meta b/Assets/Scripts/Inventory/Slot.cs.meta
new file mode 100644
index 0000000..6a1248a
--- /dev/null
+++ b/Assets/Scripts/Inventory/Slot.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 497c0b5449a4c3141b273db4d97546c3
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Inventory/UI_Inventory.cs b/Assets/Scripts/Inventory/UI_Inventory.cs
new file mode 100644
index 0000000..2172cb8
--- /dev/null
+++ b/Assets/Scripts/Inventory/UI_Inventory.cs
@@ -0,0 +1,136 @@
+using System.Collections;
+using System.Collections.Generic;
+using TMPro;
+using UnityEngine;
+using UnityEngine.UI;
+
+public class UI_Inventory : MonoBehaviour
+{
+ Inventory playerInventory;
+ public Transform inventoryContainer;
+ public Transform itemSlotTemplate;
+ private RectTransform[] UIItemSlots;
+ private Button[] buttons;
+ private Slot pickedItem = new Slot();
+ private RectTransform pickedItemSlot;
+ private void Awake()
+ {
+ //itemSlotTemplate = inventoryContainer.Find("containerTemplate");
+ pickedItemSlot = Instantiate(itemSlotTemplate, this.transform).GetComponent();
+ }
+
+ void pickItem(int index)
+ {
+ pickedItem = playerInventory.getInventory[index].copy();
+ playerInventory.getInventory[index].clear();
+ UIItemSlots[index].GetChild(0).Find("Icon").gameObject.SetActive(false);
+ }
+ void placeItem()
+ {
+
+ }
+ public void buttonEvent(int index)
+ {
+ if (pickedItem.ItemType == null && playerInventory.getInventory[index].ItemType != null)
+ {
+ pickItem(index);
+ }
+ else
+ {
+ if (pickedItem.ItemType != null)
+ {
+ int rest = playerInventory.addItemAt(index, pickedItem.ItemType, pickedItem.Count);
+ if (rest == 0)
+ {
+ pickedItem.clear();
+ }
+ else
+ {
+ pickedItem.Count = rest;
+ }
+ //placeItem(index);
+ }
+
+ }
+
+ //Debug.Log("button " + index + " has been pressed!");
+ }
+ public void setInventory(Inventory inventory)
+ {
+ playerInventory = inventory;
+ inventory.onItemChangedCallback += updateInventory;
+ updateInventory();
+ }
+ private void Update()
+ {
+ //buttons[index] = itemSlotRectTransform.Find("Button").GetComponent