diff --git a/Assets/Art/Sprites/Spritesheets/Quarry/Tiles/TP_QuarryBG.prefab b/Assets/Art/Sprites/Spritesheets/Quarry/Tiles/TP_QuarryBG.prefab index e8d0f4da..59fe2961 100644 --- a/Assets/Art/Sprites/Spritesheets/Quarry/Tiles/TP_QuarryBG.prefab +++ b/Assets/Art/Sprites/Spritesheets/Quarry/Tiles/TP_QuarryBG.prefab @@ -46,9 +46,9 @@ Tilemap: second: serializedVersion: 2 m_TileIndex: 12 - m_TileSpriteIndex: 12 + m_TileSpriteIndex: 4294967295 m_TileMatrixIndex: 0 - m_TileColorIndex: 0 + m_TileColorIndex: 12 m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 @@ -56,9 +56,9 @@ Tilemap: second: serializedVersion: 2 m_TileIndex: 13 - m_TileSpriteIndex: 13 + m_TileSpriteIndex: 4294967295 m_TileMatrixIndex: 0 - m_TileColorIndex: 0 + m_TileColorIndex: 12 m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 @@ -66,9 +66,9 @@ Tilemap: second: serializedVersion: 2 m_TileIndex: 14 - m_TileSpriteIndex: 14 + m_TileSpriteIndex: 4294967295 m_TileMatrixIndex: 0 - m_TileColorIndex: 0 + m_TileColorIndex: 12 m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 @@ -76,9 +76,9 @@ Tilemap: second: serializedVersion: 2 m_TileIndex: 8 - m_TileSpriteIndex: 8 + m_TileSpriteIndex: 4294967295 m_TileMatrixIndex: 0 - m_TileColorIndex: 0 + m_TileColorIndex: 12 m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 @@ -86,9 +86,9 @@ Tilemap: second: serializedVersion: 2 m_TileIndex: 9 - m_TileSpriteIndex: 9 + m_TileSpriteIndex: 4294967295 m_TileMatrixIndex: 0 - m_TileColorIndex: 0 + m_TileColorIndex: 12 m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 @@ -96,9 +96,9 @@ Tilemap: second: serializedVersion: 2 m_TileIndex: 10 - m_TileSpriteIndex: 10 + m_TileSpriteIndex: 4294967295 m_TileMatrixIndex: 0 - m_TileColorIndex: 0 + m_TileColorIndex: 12 m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 @@ -106,9 +106,9 @@ Tilemap: second: serializedVersion: 2 m_TileIndex: 11 - m_TileSpriteIndex: 11 + m_TileSpriteIndex: 4294967295 m_TileMatrixIndex: 0 - m_TileColorIndex: 0 + m_TileColorIndex: 12 m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 @@ -116,9 +116,9 @@ Tilemap: second: serializedVersion: 2 m_TileIndex: 4 - m_TileSpriteIndex: 4 + m_TileSpriteIndex: 4294967295 m_TileMatrixIndex: 0 - m_TileColorIndex: 0 + m_TileColorIndex: 12 m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 @@ -126,9 +126,9 @@ Tilemap: second: serializedVersion: 2 m_TileIndex: 5 - m_TileSpriteIndex: 5 + m_TileSpriteIndex: 4294967295 m_TileMatrixIndex: 0 - m_TileColorIndex: 0 + m_TileColorIndex: 12 m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 @@ -136,9 +136,9 @@ Tilemap: second: serializedVersion: 2 m_TileIndex: 6 - m_TileSpriteIndex: 6 + m_TileSpriteIndex: 4294967295 m_TileMatrixIndex: 0 - m_TileColorIndex: 0 + m_TileColorIndex: 12 m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 @@ -146,9 +146,9 @@ Tilemap: second: serializedVersion: 2 m_TileIndex: 7 - m_TileSpriteIndex: 7 + m_TileSpriteIndex: 4294967295 m_TileMatrixIndex: 0 - m_TileColorIndex: 0 + m_TileColorIndex: 12 m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 @@ -156,9 +156,9 @@ Tilemap: second: serializedVersion: 2 m_TileIndex: 0 - m_TileSpriteIndex: 0 + m_TileSpriteIndex: 4294967295 m_TileMatrixIndex: 0 - m_TileColorIndex: 0 + m_TileColorIndex: 12 m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 @@ -166,9 +166,9 @@ Tilemap: second: serializedVersion: 2 m_TileIndex: 1 - m_TileSpriteIndex: 1 + m_TileSpriteIndex: 4294967295 m_TileMatrixIndex: 0 - m_TileColorIndex: 0 + m_TileColorIndex: 12 m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 @@ -176,9 +176,9 @@ Tilemap: second: serializedVersion: 2 m_TileIndex: 2 - m_TileSpriteIndex: 2 + m_TileSpriteIndex: 4294967295 m_TileMatrixIndex: 0 - m_TileColorIndex: 0 + m_TileColorIndex: 12 m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 @@ -186,75 +186,75 @@ Tilemap: second: serializedVersion: 2 m_TileIndex: 3 - m_TileSpriteIndex: 3 + m_TileSpriteIndex: 4294967295 m_TileMatrixIndex: 0 - m_TileColorIndex: 0 + m_TileColorIndex: 12 m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 m_AnimatedTiles: {} m_TileAssetArray: - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: c8d9f78ebac845548ad07373c0fb5d4d, type: 2} + m_Data: {fileID: 11400000, guid: 947eb38d48ece064da924975bea695ff, type: 2} - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: 745c0c73275d6db4187c60d92797d748, type: 2} + m_Data: {fileID: 11400000, guid: 07d871749103c144ea29788f769b5513, type: 2} - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: f5c974b134d6bd84cb1038c41ca3c825, type: 2} + m_Data: {fileID: 11400000, guid: 28f3f46a9f9bc4641aafb261bb9c68b2, type: 2} - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: 62fe659d317d1294cbc3349a7a39964d, type: 2} + m_Data: {fileID: 11400000, guid: 7cba8a24df17b3e4e9ad7c8581e0fca3, type: 2} - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: bae23ba4d188a3d468515cd73098ad95, type: 2} + m_Data: {fileID: 11400000, guid: 2a22e670f9226d0498e7e4554244ae63, type: 2} - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: 383feee47db75874b909f86f4eb6d77f, type: 2} + m_Data: {fileID: 11400000, guid: a06e342419b153042a9bd4bb2c521fd1, type: 2} - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: 1934663cd98e2b1488cb6dabb2dbb389, type: 2} + m_Data: {fileID: 11400000, guid: 64ada481887766540aa733572f564673, type: 2} - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: c50612087b839064d8b61a8dc4870803, type: 2} + m_Data: {fileID: 11400000, guid: 7081db514bd80894b8135932c4c0055e, type: 2} - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: b98491e68ad63a74d85117884fffbaee, type: 2} + m_Data: {fileID: 11400000, guid: 28c1e24788bfc2a4da6f75aa243467ea, type: 2} - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: 432046d371d89c7408e2ce4d79b547cd, type: 2} + m_Data: {fileID: 11400000, guid: 3e3ac7c238ffe1d41993e74d8d81b9dd, type: 2} - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: af84cde7923661c4dbe7d6592e3b9191, type: 2} + m_Data: {fileID: 11400000, guid: e4a8e67293fef4547965951a14bff39b, type: 2} - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: a8f602e4afc99e54ebf93871c518caea, type: 2} + m_Data: {fileID: 11400000, guid: ae7626705f8ffff47a0491142387f6dd, type: 2} - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: ca266041757e7f64e8683efef11a139c, type: 2} + m_Data: {fileID: 11400000, guid: d5d7a2e70cc6c874183609fe85115eab, type: 2} - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: 8d1a89553b8141b4eb487d23341a5a3f, type: 2} + m_Data: {fileID: 11400000, guid: 6817036893022ed489435662b4f66ea4, type: 2} - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: a056e729ab7809a4e93efe6b430aa728, type: 2} + m_Data: {fileID: 11400000, guid: 9efa35d556656274faf601eb35700b16, type: 2} m_TileSpriteArray: - - m_RefCount: 1 - m_Data: {fileID: 355903446, guid: f645c2346e0520143900b4af52c5f2e3, type: 3} - - m_RefCount: 1 - m_Data: {fileID: -1909826217, guid: f645c2346e0520143900b4af52c5f2e3, type: 3} - - m_RefCount: 1 - m_Data: {fileID: -1697670758, guid: f645c2346e0520143900b4af52c5f2e3, type: 3} - - m_RefCount: 1 - m_Data: {fileID: 1331303124, guid: f645c2346e0520143900b4af52c5f2e3, type: 3} - - m_RefCount: 1 - m_Data: {fileID: -117631983, guid: f645c2346e0520143900b4af52c5f2e3, type: 3} - - m_RefCount: 1 - m_Data: {fileID: 1470954947, guid: f645c2346e0520143900b4af52c5f2e3, type: 3} - - m_RefCount: 1 - m_Data: {fileID: 761471927, guid: f645c2346e0520143900b4af52c5f2e3, type: 3} - - m_RefCount: 1 - m_Data: {fileID: -1847333017, guid: f645c2346e0520143900b4af52c5f2e3, type: 3} - - m_RefCount: 1 - m_Data: {fileID: 993327092, guid: f645c2346e0520143900b4af52c5f2e3, type: 3} - - m_RefCount: 1 - m_Data: {fileID: -2063027066, guid: f645c2346e0520143900b4af52c5f2e3, type: 3} - - m_RefCount: 1 - m_Data: {fileID: -1864523310, guid: f645c2346e0520143900b4af52c5f2e3, type: 3} - - m_RefCount: 1 - m_Data: {fileID: 74126612, guid: f645c2346e0520143900b4af52c5f2e3, type: 3} - - m_RefCount: 1 - m_Data: {fileID: -1301810067, guid: f645c2346e0520143900b4af52c5f2e3, type: 3} - - m_RefCount: 1 - m_Data: {fileID: -1265349035, guid: f645c2346e0520143900b4af52c5f2e3, type: 3} - - m_RefCount: 1 - m_Data: {fileID: -1352671296, guid: f645c2346e0520143900b4af52c5f2e3, type: 3} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} m_TileMatrixArray: - m_RefCount: 15 m_Data: @@ -275,8 +275,36 @@ Tilemap: e32: 0 e33: 1 m_TileColorArray: + - m_RefCount: 0 + m_Data: {r: NaN, g: NaN, b: NaN, a: NaN} + - m_RefCount: 0 + m_Data: {r: NaN, g: NaN, b: NaN, a: NaN} + - m_RefCount: 0 + m_Data: {r: NaN, g: NaN, b: NaN, a: NaN} + - m_RefCount: 0 + m_Data: {r: NaN, g: NaN, b: NaN, a: NaN} + - m_RefCount: 0 + m_Data: {r: NaN, g: NaN, b: NaN, a: NaN} + - m_RefCount: 0 + m_Data: {r: NaN, g: NaN, b: NaN, a: NaN} + - m_RefCount: 0 + m_Data: {r: NaN, g: NaN, b: NaN, a: NaN} + - m_RefCount: 0 + m_Data: {r: NaN, g: NaN, b: NaN, a: NaN} + - m_RefCount: 0 + m_Data: {r: NaN, g: NaN, b: NaN, a: NaN} + - m_RefCount: 0 + m_Data: {r: NaN, g: NaN, b: NaN, a: NaN} + - m_RefCount: 0 + m_Data: {r: NaN, g: NaN, b: NaN, a: NaN} + - m_RefCount: 0 + m_Data: {r: NaN, g: NaN, b: NaN, a: NaN} - m_RefCount: 15 m_Data: {r: 1, g: 1, b: 1, a: 1} + - m_RefCount: 0 + m_Data: {r: NaN, g: NaN, b: NaN, a: NaN} + - m_RefCount: 0 + m_Data: {r: NaN, g: NaN, b: NaN, a: NaN} m_TileObjectToInstantiateArray: [] m_AnimationFrameRate: 1 m_Color: {r: 1, g: 1, b: 1, a: 1} @@ -398,7 +426,7 @@ Grid: m_CellGap: {x: 0, y: 0, z: 0} m_CellLayout: 0 m_CellSwizzle: 0 ---- !u!114 &8462677019423016220 +--- !u!114 &4033649851822960553 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} diff --git a/Assets/Data/ExamplePickupItem.asset b/Assets/Data/ExamplePickupItem.asset new file mode 100644 index 00000000..12707547 --- /dev/null +++ b/Assets/Data/ExamplePickupItem.asset @@ -0,0 +1,17 @@ +%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: 951b5c8af5114086a865d4bb7eae4548, type: 3} + m_Name: ExamplePickupItem + m_EditorClassIdentifier: + itemName: TestApple + description: Well... how do you like 'em? + mapSprite: {fileID: -5471482676633547895, guid: 77ab3d770c92d5344b36eee3293a0f94, type: 3} diff --git a/Assets/Prefabs/Items/BasePickup.prefab b/Assets/Prefabs/Items/BasePickup.prefab new file mode 100644 index 00000000..758e5a3f --- /dev/null +++ b/Assets/Prefabs/Items/BasePickup.prefab @@ -0,0 +1,164 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &7447346505753002421 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1730119453103664125} + - component: {fileID: 7494677664706785084} + - component: {fileID: 3070149615425714466} + - component: {fileID: 7616859841301711022} + - component: {fileID: 592045584872845087} + m_Layer: 0 + m_Name: BasePickup + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1730119453103664125 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7447346505753002421} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 3.405, 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!212 &7494677664706785084 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7447346505753002421} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10754, 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: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1, y: 1} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 0 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!61 &3070149615425714466 +BoxCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7447346505753002421} + m_Enabled: 1 + serializedVersion: 3 + m_Density: 1 + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ForceSendLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ForceReceiveLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ContactCaptureLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_CallbackLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_IsTrigger: 0 + m_UsedByEffector: 0 + m_CompositeOperation: 0 + m_CompositeOrder: 0 + m_Offset: {x: 0, y: 0} + m_SpriteTilingProperty: + border: {x: 0, y: 0, z: 0, w: 0} + pivot: {x: 0, y: 0} + oldSize: {x: 0, y: 0} + newSize: {x: 0, y: 0} + adaptiveTilingThreshold: 0 + drawMode: 0 + adaptiveTiling: 0 + m_AutoTiling: 0 + m_Size: {x: 1, y: 1} + m_EdgeRadius: 0 +--- !u!114 &7616859841301711022 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7447346505753002421} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 73d6494a73174ffabc6a7d3089d51e73, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &592045584872845087 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7447346505753002421} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7846448751da4bdbaaa5cb87890dca42, type: 3} + m_Name: + m_EditorClassIdentifier: + itemData: {fileID: 0} + iconRenderer: {fileID: 7494677664706785084} diff --git a/Assets/Prefabs/Items/ExamplePickup.prefab b/Assets/Prefabs/Items/ExamplePickup.prefab new file mode 100644 index 00000000..1cced185 --- /dev/null +++ b/Assets/Prefabs/Items/ExamplePickup.prefab @@ -0,0 +1,107 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1001 &8776298620046750008 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 592045584872845087, guid: bf4b9d7045397f946b2125b1ad4a3fbd, type: 3} + propertyPath: itemData + value: + objectReference: {fileID: 11400000, guid: 33e7ca06b22108d4e802486e08bcdfd1, type: 2} + - target: {fileID: 1730119453103664125, guid: bf4b9d7045397f946b2125b1ad4a3fbd, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1730119453103664125, guid: bf4b9d7045397f946b2125b1ad4a3fbd, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1730119453103664125, guid: bf4b9d7045397f946b2125b1ad4a3fbd, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1730119453103664125, guid: bf4b9d7045397f946b2125b1ad4a3fbd, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1730119453103664125, guid: bf4b9d7045397f946b2125b1ad4a3fbd, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1730119453103664125, guid: bf4b9d7045397f946b2125b1ad4a3fbd, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1730119453103664125, guid: bf4b9d7045397f946b2125b1ad4a3fbd, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1730119453103664125, guid: bf4b9d7045397f946b2125b1ad4a3fbd, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1730119453103664125, guid: bf4b9d7045397f946b2125b1ad4a3fbd, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1730119453103664125, guid: bf4b9d7045397f946b2125b1ad4a3fbd, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3070149615425714466, guid: bf4b9d7045397f946b2125b1ad4a3fbd, type: 3} + propertyPath: m_SpriteTilingProperty.pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 3070149615425714466, guid: bf4b9d7045397f946b2125b1ad4a3fbd, type: 3} + propertyPath: m_SpriteTilingProperty.pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 3070149615425714466, guid: bf4b9d7045397f946b2125b1ad4a3fbd, type: 3} + propertyPath: m_SpriteTilingProperty.newSize.x + value: 0.53125 + objectReference: {fileID: 0} + - target: {fileID: 3070149615425714466, guid: bf4b9d7045397f946b2125b1ad4a3fbd, type: 3} + propertyPath: m_SpriteTilingProperty.newSize.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 3070149615425714466, guid: bf4b9d7045397f946b2125b1ad4a3fbd, type: 3} + propertyPath: m_SpriteTilingProperty.oldSize.x + value: 0.53125 + objectReference: {fileID: 0} + - target: {fileID: 3070149615425714466, guid: bf4b9d7045397f946b2125b1ad4a3fbd, type: 3} + propertyPath: m_SpriteTilingProperty.oldSize.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 3070149615425714466, guid: bf4b9d7045397f946b2125b1ad4a3fbd, type: 3} + propertyPath: m_SpriteTilingProperty.adaptiveTilingThreshold + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 7447346505753002421, guid: bf4b9d7045397f946b2125b1ad4a3fbd, type: 3} + propertyPath: m_Name + value: TestApple + objectReference: {fileID: 0} + - target: {fileID: 7494677664706785084, guid: bf4b9d7045397f946b2125b1ad4a3fbd, type: 3} + propertyPath: m_Size.x + value: 0.53125 + objectReference: {fileID: 0} + - target: {fileID: 7494677664706785084, guid: bf4b9d7045397f946b2125b1ad4a3fbd, type: 3} + propertyPath: m_Size.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 7494677664706785084, guid: bf4b9d7045397f946b2125b1ad4a3fbd, type: 3} + propertyPath: m_Sprite + value: + objectReference: {fileID: -5471482676633547895, guid: 77ab3d770c92d5344b36eee3293a0f94, type: 3} + - target: {fileID: 7494677664706785084, guid: bf4b9d7045397f946b2125b1ad4a3fbd, type: 3} + propertyPath: m_WasSpriteAssigned + value: 1 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: bf4b9d7045397f946b2125b1ad4a3fbd, type: 3} diff --git a/Assets/Scenes/AppleHillsOverwold.unity b/Assets/Scenes/AppleHillsOverwold.unity index 6e9d90a0..8ad69790 100644 --- a/Assets/Scenes/AppleHillsOverwold.unity +++ b/Assets/Scenes/AppleHillsOverwold.unity @@ -151,6 +151,7 @@ MonoBehaviour: m_EditorClassIdentifier: m_Actions: {fileID: -944628639613478452, guid: 8c9d13383e51cd0459cddd33020db763, type: 3} m_NotificationBehavior: 3 + m_UIInputModule: {fileID: 0} m_DeviceLostEvent: m_PersistentCalls: m_Calls: [] @@ -193,6 +194,177 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &1067158016 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 2202795855638212749, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_Name + value: TestApple (2) + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalPosition.x + value: -4.201741 + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalPosition.y + value: -0.664581 + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} +--- !u!1001 &1244279152 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 2202795855638212749, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_Name + value: TestApple + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalPosition.x + value: 3.0165906 + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalPosition.y + value: 1.5146115 + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} +--- !u!1001 &1335103842 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 2202795855638212749, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_Name + value: TestApple (1) + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalPosition.x + value: -1.2993424 + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalPosition.y + value: 2.7097523 + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7046219584904338117, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 5e0579453a4cbae438cf2422f6786a48, type: 3} --- !u!1 &1728894744 GameObject: m_ObjectHideFlags: 0 @@ -22178,3 +22350,6 @@ SceneRoots: - {fileID: 1728894746} - {fileID: 8865498003578620591} - {fileID: 954512636} + - {fileID: 1244279152} + - {fileID: 1335103842} + - {fileID: 1067158016} diff --git a/Assets/Scripts/InputManager.cs b/Assets/Scripts/InputManager.cs index dbf96d55..8b69d44a 100644 --- a/Assets/Scripts/InputManager.cs +++ b/Assets/Scripts/InputManager.cs @@ -67,10 +67,19 @@ public class InputManager : MonoBehaviour defaultConsumer?.OnTouchPosition(pos); } - private bool TryDelegateToInteractable(Vector2 screenPos) + private bool TryDelegateToInteractable(Vector2 worldPos) { - // TODO: Raycast logic to find ITouchInputConsumer at screenPos - // For now, always return false (no interactable found) + // Raycast at the world position to find an Interactable + Collider2D hit = Physics2D.OverlapPoint(worldPos); + if (hit != null) + { + var interactable = hit.GetComponent(); + if (interactable != null) + { + interactable.OnTouchPress(worldPos); + return true; + } + } return false; } } diff --git a/Assets/Scripts/Interactable.cs b/Assets/Scripts/Interactable.cs new file mode 100644 index 00000000..ae9b2dc1 --- /dev/null +++ b/Assets/Scripts/Interactable.cs @@ -0,0 +1,20 @@ +using UnityEngine; +using System; + +public class Interactable : MonoBehaviour, ITouchInputConsumer +{ + public event Action Interacted; + + // Called by InputManager when this interactable is clicked/touched + public void OnTouchPress(Vector2 worldPosition) + { + Debug.Log($"Interactable.OnTouchPress at {worldPosition} on {gameObject.name}"); + Interacted?.Invoke(); + } + + public void OnTouchPosition(Vector2 screenPosition) + { + // Optionally handle drag/move here + } +} + diff --git a/Assets/Scripts/LevelSwitch.cs b/Assets/Scripts/LevelSwitch.cs new file mode 100644 index 00000000..7e7246c2 --- /dev/null +++ b/Assets/Scripts/LevelSwitch.cs @@ -0,0 +1,50 @@ +using UnityEngine; + +public class LevelSwitch : MonoBehaviour +{ + public LevelSwitchData switchData; + public SpriteRenderer iconRenderer; + private Interactable interactable; + + void Awake() + { + interactable = GetComponent(); + if (interactable != null) + { + interactable.Interacted += OnInteracted; + } + ApplySwitchData(); + } + + void OnDestroy() + { + if (interactable != null) + { + interactable.Interacted -= OnInteracted; + } + } + +#if UNITY_EDITOR + void OnValidate() + { + ApplySwitchData(); + } +#endif + + public void ApplySwitchData() + { + if (switchData != null) + { + if (iconRenderer != null) + iconRenderer.sprite = switchData.mapSprite; + gameObject.name = switchData.targetLevelSceneName; + // Optionally update other fields, e.g. description + } + } + + private void OnInteracted() + { + Debug.Log($"LevelSwitch.OnInteracted: Switching to level {switchData?.targetLevelSceneName}"); + // TODO: Add scene loading logic here, e.g. UnityEngine.SceneManagement.SceneManager.LoadScene(switchData.targetLevelSceneName); + } +} diff --git a/Assets/Scripts/LevelSwitchData.cs b/Assets/Scripts/LevelSwitchData.cs new file mode 100644 index 00000000..7f3ab719 --- /dev/null +++ b/Assets/Scripts/LevelSwitchData.cs @@ -0,0 +1,11 @@ +using UnityEngine; + +[CreateAssetMenu(fileName = "LevelSwitchData", menuName = "Game/Level Switch Data")] +public class LevelSwitchData : ScriptableObject +{ + public string targetLevelSceneName; + [TextArea] + public string description; + public Sprite mapSprite; +} + diff --git a/Assets/Scripts/Pickup.cs b/Assets/Scripts/Pickup.cs new file mode 100644 index 00000000..84a57e38 --- /dev/null +++ b/Assets/Scripts/Pickup.cs @@ -0,0 +1,55 @@ +using UnityEngine; + +public class Pickup : MonoBehaviour +{ + public PickupItemData itemData; + public SpriteRenderer iconRenderer; + private Interactable interactable; + + void Awake() + { + if (iconRenderer == null) + iconRenderer = GetComponent(); + interactable = GetComponent(); + if (interactable != null) + { + interactable.Interacted += OnInteracted; + } + ApplyItemData(); + } + + void OnDestroy() + { + if (interactable != null) + { + interactable.Interacted -= OnInteracted; + } + } + +#if UNITY_EDITOR + void OnValidate() + { + if (iconRenderer == null) + iconRenderer = GetComponent(); + ApplyItemData(); + } +#endif + + public void ApplyItemData() + { + if (itemData != null) + { + if (iconRenderer != null) + iconRenderer.sprite = itemData.mapSprite; + gameObject.name = itemData.itemName; + // Optionally update other fields, e.g. description + } + } + + private void OnInteracted() + { + Debug.Log($"Pickup.OnInteracted: Picked up {itemData?.itemName}"); + // TODO: Add item to inventory manager here + Destroy(gameObject); + } +} diff --git a/Assets/Scripts/PickupItemData.cs b/Assets/Scripts/PickupItemData.cs new file mode 100644 index 00000000..0982549d --- /dev/null +++ b/Assets/Scripts/PickupItemData.cs @@ -0,0 +1,10 @@ +using UnityEngine; + +[CreateAssetMenu(fileName = "PickupItemData", menuName = "Game/Pickup Item Data")] +public class PickupItemData : ScriptableObject +{ + public string itemName; + [TextArea] + public string description; + public Sprite mapSprite; +}