This commit is contained in:
j.mei7
2022-02-22 21:31:04 +01:00
parent 7d055be8d1
commit f5f3154c95
12 changed files with 231 additions and 134 deletions

View File

@@ -920,6 +920,7 @@ GameObject:
- component: {fileID: 310196958}
- component: {fileID: 310196957}
- component: {fileID: 310196963}
- component: {fileID: 310196964}
m_Layer: 3
m_Name: Player
m_TagString: Player
@@ -1114,9 +1115,9 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: ee2fcb6d299019740bbede78bbc6a1d7, type: 3}
m_Name:
m_EditorClassIdentifier:
testItemType: {fileID: 11400000, guid: e04039a6cbed5e5439b605aeee90485f, type: 2}
numberOfSlots: 20
maxSpaceOfSlots: 60
isPlayerInventory: 1
inventory: []
--- !u!95 &310196963
Animator:
@@ -1138,6 +1139,19 @@ Animator:
m_HasTransformHierarchy: 1
m_AllowConstantClipSamplingOptimization: 1
m_KeepAnimatorControllerStateOnDisable: 0
--- !u!114 &310196964
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 310196950}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: cff3b5ce3863a7442a86b400700ff131, type: 3}
m_Name:
m_EditorClassIdentifier:
selectedSlotIndex: 0
--- !u!1 &360525550
GameObject:
m_ObjectHideFlags: 0
@@ -6335,8 +6349,11 @@ MonoBehaviour:
interactionType: 2
holdDuration: 1
radius: 3
centerPoint: {fileID: 0}
harvestDuration: 3
centerPoint: {fileID: 1335747188}
harvestDuration: 1
toolType: 0
isHarvested: 0
dropItem: {fileID: 11400000, guid: e6de4c0f524fecd418672a51c89d547e, type: 2}
--- !u!1 &1357469793
GameObject:
m_ObjectHideFlags: 0

View File

@@ -13,6 +13,9 @@ public abstract class Harvestable : Interactable
float harvestTime = 0f;// time for how long the player already "harvested" the object
public ToolType toolType = ToolType.AXE;
public bool isHarvested = false;
/// <summary>
/// <c>IncreaseHarvestTime</c> increases the harvestTime by Time.deltaTime.
/// <code>harvestTime += Time.deltaTime;</code>

View File

@@ -30,6 +30,8 @@ public class Inventory : MonoBehaviour
[SerializeField]
List<Slot> inventory = new List<Slot>();
public static Inventory PlayerInstance { get; private set; } // instance of PlayerInventory
public List<Slot> GetInventory() => inventory;
/// <summary>
@@ -119,7 +121,7 @@ public class Inventory : MonoBehaviour
/// </summary>
/// <param name="index"></param>
/// <returns>True: Is in range. False: Is not in range.</returns>
bool IndexIsInRange(int index)
public 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
@@ -260,9 +262,12 @@ public class Inventory : MonoBehaviour
}
void Start()
void Awake()
{
// Initialize Inventory Slots
AddSlots(numberOfSlots);
if (isPlayerInventory)
PlayerInstance = this;
}
}

View File

@@ -4,35 +4,39 @@ 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()
[SerializeField]
int selectedSlotIndex;
Inventory inventory;
public static InventoryController PlayerInstance { get; private set; }
public Slot GetSelectedSlot()
{
inventory = transform.GetComponent<Inventory>();
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);
return inventory.GetInventory()[selectedSlotIndex];
}
void Start()
{
PlayerInstance = this;
inventory = Inventory.PlayerInstance;
selectedSlotIndex = 0;
}
// Update is called once per frame
void Update()
{
}*/
if (Input.GetAxis("Mouse ScrollWheel") < 0)
{
if (inventory.IndexIsInRange(selectedSlotIndex - 1))
{
selectedSlotIndex -= 1;
}
}
if (Input.GetAxis("Mouse ScrollWheel") > 0)
{
if (inventory.IndexIsInRange(selectedSlotIndex + 1))
{
selectedSlotIndex += 1;
}
}
}
}

View File

@@ -0,0 +1,20 @@
%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: c9a450f431b33414ab3a1f3b08250700, type: 3}
m_Name: Axe
m_EditorClassIdentifier:
name: Axe
id: 3
isStackable: 0
sprite: {fileID: 21300000, guid: 475f050511847c0499c1ca4f47fcaefa, type: 3}
isSelected: 0
toolType: 0

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 83d7c41047fbb504bb67f024912542e6
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,19 @@
%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: 0fae7bba50a98204883e78d8d6c96fc2, type: 3}
m_Name: Wood
m_EditorClassIdentifier:
name: Wood
id: 2
isStackable: 1
sprite: {fileID: 0}
isSelected: 0

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: e6de4c0f524fecd418672a51c89d547e
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -81,14 +81,17 @@ public class PlayerInteraction : MonoBehaviour
break;
case Interactable.InteractionType.Harvest:
Harvestable harvestable = interactable.GetComponent<Harvestable>();
ToolItem toolItem = (ToolItem)InventoryController.PlayerInstance.GetSelectedSlot().GetItem();
bool isCorrectTool = (toolItem != null && toolItem.toolType == harvestable.toolType);
if (Input.GetButton("Interact") && interactable.isInRange())
if (Input.GetButton("Interact") && interactable.isInRange() && isCorrectTool)
{
harvestable.IncreaseHarvestTime();
if (harvestable.GetHarvestTime() >= harvestable.GetHarvestDuration())
{
harvestable.Interact();
harvestable.ResetHarvestTime();
}
}
break;

View File

@@ -1,7 +1,11 @@
using UnityEngine;
public class TreeInteraction : Harvestable
{
[SerializeField]
Item dropItem;
public override string GetDescription()
{
@@ -11,7 +15,13 @@ public class TreeInteraction : Harvestable
return "Tree is not in range";
}
public override void Interact()
{
if (!isHarvested)
{
Debug.Log("Harvest BAUM");
Inventory.PlayerInstance.Add(dropItem, Random.Range(1, 10));
isHarvested = true;
}
}
}

View File

@@ -70,14 +70,14 @@ InputManager:
axis: 0
joyNum: 0
- serializedVersion: 3
m_Name: Fire3
m_Name:
descriptiveName:
descriptiveNegativeName:
negativeButton:
positiveButton: left shift
positiveButton:
altNegativeButton:
altPositiveButton: mouse 2
gravity: 1000
altPositiveButton:
gravity: 0
dead: 0.001
sensitivity: 1000
snap: 0

View File

@@ -15,11 +15,11 @@ MonoBehaviour:
m_PixelRect:
serializedVersion: 2
x: 0
y: 43.2
width: 1536
height: 772.8
y: 43
width: 1920
height: 989
m_ShowMode: 4
m_Title: Scene
m_Title: Inspector
m_RootView: {fileID: 2}
m_MinSize: {x: 875, y: 300}
m_MaxSize: {x: 10000, y: 10000}
@@ -44,8 +44,8 @@ MonoBehaviour:
serializedVersion: 2
x: 0
y: 0
width: 1536
height: 772.8
width: 1920
height: 989
m_MinSize: {x: 875, y: 300}
m_MaxSize: {x: 10000, y: 10000}
m_UseTopView: 1
@@ -69,7 +69,7 @@ MonoBehaviour:
serializedVersion: 2
x: 0
y: 0
width: 1536
width: 1920
height: 30
m_MinSize: {x: 0, y: 0}
m_MaxSize: {x: 0, y: 0}
@@ -90,8 +90,8 @@ MonoBehaviour:
m_Position:
serializedVersion: 2
x: 0
y: 752.8
width: 1536
y: 969
width: 1920
height: 20
m_MinSize: {x: 0, y: 0}
m_MaxSize: {x: 0, y: 0}
@@ -114,12 +114,12 @@ MonoBehaviour:
serializedVersion: 2
x: 0
y: 30
width: 1536
height: 722.8
width: 1920
height: 939
m_MinSize: {x: 300, y: 200}
m_MaxSize: {x: 24288, y: 16192}
vertical: 0
controlID: 114
controlID: 136
--- !u!114 &6
MonoBehaviour:
m_ObjectHideFlags: 52
@@ -139,12 +139,12 @@ MonoBehaviour:
serializedVersion: 2
x: 0
y: 0
width: 1132.8
height: 722.8
width: 1416
height: 939
m_MinSize: {x: 200, y: 200}
m_MaxSize: {x: 16192, y: 16192}
vertical: 1
controlID: 53
controlID: 66
--- !u!114 &7
MonoBehaviour:
m_ObjectHideFlags: 52
@@ -164,12 +164,12 @@ MonoBehaviour:
serializedVersion: 2
x: 0
y: 0
width: 1132.8
height: 488.8
width: 1416
height: 635
m_MinSize: {x: 200, y: 100}
m_MaxSize: {x: 16192, y: 8096}
vertical: 0
controlID: 54
controlID: 67
--- !u!114 &8
MonoBehaviour:
m_ObjectHideFlags: 52
@@ -187,10 +187,10 @@ MonoBehaviour:
serializedVersion: 2
x: 0
y: 0
width: 273.6
height: 488.8
m_MinSize: {x: 200, y: 200}
m_MaxSize: {x: 4000, y: 4000}
width: 342
height: 635
m_MinSize: {x: 201, y: 221}
m_MaxSize: {x: 4001, y: 4021}
m_ActualView: {fileID: 13}
m_Panes:
- {fileID: 13}
@@ -211,12 +211,12 @@ MonoBehaviour:
m_Children: []
m_Position:
serializedVersion: 2
x: 273.6
x: 342
y: 0
width: 859.2001
height: 488.8
m_MinSize: {x: 200, y: 200}
m_MaxSize: {x: 4000, y: 4000}
width: 1074
height: 635
m_MinSize: {x: 202, y: 221}
m_MaxSize: {x: 4002, y: 4021}
m_ActualView: {fileID: 14}
m_Panes:
- {fileID: 14}
@@ -233,23 +233,23 @@ MonoBehaviour:
m_Enabled: 1
m_EditorHideFlags: 1
m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0}
m_Name: ProjectBrowser
m_Name: ConsoleWindow
m_EditorClassIdentifier:
m_Children: []
m_Position:
serializedVersion: 2
x: 0
y: 488.8
width: 1132.8
height: 234
m_MinSize: {x: 231, y: 271}
m_MaxSize: {x: 10001, y: 10021}
m_ActualView: {fileID: 15}
y: 635
width: 1416
height: 304
m_MinSize: {x: 101, y: 121}
m_MaxSize: {x: 4001, y: 4021}
m_ActualView: {fileID: 16}
m_Panes:
- {fileID: 15}
- {fileID: 16}
m_Selected: 0
m_LastSelected: 1
m_Selected: 1
m_LastSelected: 0
--- !u!114 &11
MonoBehaviour:
m_ObjectHideFlags: 52
@@ -265,12 +265,12 @@ MonoBehaviour:
m_Children: []
m_Position:
serializedVersion: 2
x: 1132.8
x: 1416
y: 0
width: 403.19995
height: 722.8
m_MinSize: {x: 275, y: 50}
m_MaxSize: {x: 4000, y: 4000}
width: 504
height: 939
m_MinSize: {x: 276, y: 71}
m_MaxSize: {x: 4001, y: 4021}
m_ActualView: {fileID: 17}
m_Panes:
- {fileID: 17}
@@ -292,14 +292,14 @@ MonoBehaviour:
m_MaxSize: {x: 4000, y: 4000}
m_TitleContent:
m_Text: Game
m_Image: {fileID: 4621777727084837110, guid: 0000000000000000d000000000000000, type: 0}
m_Image: {fileID: -6423792434712278376, guid: 0000000000000000d000000000000000, type: 0}
m_Tooltip:
m_Pos:
serializedVersion: 2
x: 273.6
y: 73.6
width: 857.2001
height: 467.8
x: 342
y: 73
width: 1072
height: 614
m_ViewDataDictionary: {fileID: 0}
m_OverlayCanvas:
m_LastAppliedPresetName: Default
@@ -310,7 +310,7 @@ MonoBehaviour:
m_ShowGizmos: 0
m_TargetDisplay: 0
m_ClearColor: {r: 0, g: 0, b: 0, a: 0}
m_TargetSize: {x: 794, y: 446.8}
m_TargetSize: {x: 1054, y: 593}
m_TextureFilterMode: 0
m_TextureHideFlags: 61
m_RenderIMGUI: 1
@@ -325,10 +325,10 @@ MonoBehaviour:
m_VRangeLocked: 0
hZoomLockedByDefault: 0
vZoomLockedByDefault: 0
m_HBaseRangeMin: -317.6
m_HBaseRangeMax: 317.6
m_VBaseRangeMin: -178.72
m_VBaseRangeMax: 178.72
m_HBaseRangeMin: -527
m_HBaseRangeMax: 527
m_VBaseRangeMin: -296.5
m_VBaseRangeMax: 296.5
m_HAllowExceedBaseRangeMin: 1
m_HAllowExceedBaseRangeMax: 1
m_VAllowExceedBaseRangeMin: 1
@@ -337,7 +337,7 @@ MonoBehaviour:
m_HSlider: 0
m_VSlider: 0
m_IgnoreScrollWheelUntilClicked: 0
m_EnableMouseInput: 0
m_EnableMouseInput: 1
m_EnableSliderZoomHorizontal: 0
m_EnableSliderZoomVertical: 0
m_UniformScale: 1
@@ -346,23 +346,23 @@ MonoBehaviour:
serializedVersion: 2
x: 0
y: 21
width: 857.2001
height: 446.8
width: 1072
height: 593
m_Scale: {x: 1, y: 1}
m_Translation: {x: 428.60004, y: 223.4}
m_Translation: {x: 536, y: 296.5}
m_MarginLeft: 0
m_MarginRight: 0
m_MarginTop: 0
m_MarginBottom: 0
m_LastShownAreaInsideMargins:
serializedVersion: 2
x: -428.60004
y: -223.4
width: 857.2001
height: 446.8
x: -536
y: -296.5
width: 1072
height: 593
m_MinimalGUI: 1
m_defaultScale: 1
m_LastWindowPixelSize: {x: 1071.5001, y: 584.75}
m_LastWindowPixelSize: {x: 1072, y: 614}
m_ClearInEditMode: 1
m_NoCameraWarning: 1
m_LowResolutionForAspectRatios: 01000000000000000000
@@ -384,14 +384,14 @@ MonoBehaviour:
m_MaxSize: {x: 4000, y: 4000}
m_TitleContent:
m_Text: Hierarchy
m_Image: {fileID: -3734745235275155857, guid: 0000000000000000d000000000000000, type: 0}
m_Image: {fileID: 7966133145522015247, guid: 0000000000000000d000000000000000, type: 0}
m_Tooltip:
m_Pos:
serializedVersion: 2
x: 0
y: 73.6
width: 272.6
height: 467.8
y: 73
width: 341
height: 614
m_ViewDataDictionary: {fileID: 0}
m_OverlayCanvas:
m_LastAppliedPresetName: Default
@@ -399,9 +399,9 @@ MonoBehaviour:
m_SceneHierarchy:
m_TreeViewState:
scrollPos: {x: 0, y: 0}
m_SelectedIDs: 4c730000
m_LastClickedID: 29516
m_ExpandedIDs: 6cf1ffff62f3ffffdafaffff186c00009072000094720000
m_SelectedIDs: 3c6b0000
m_LastClickedID: 27452
m_ExpandedIDs: 20fbffff
m_RenameOverlay:
m_UserAcceptedRename: 0
m_Name:
@@ -441,14 +441,14 @@ MonoBehaviour:
m_MaxSize: {x: 4000, y: 4000}
m_TitleContent:
m_Text: Scene
m_Image: {fileID: 8634526014445323508, guid: 0000000000000000d000000000000000, type: 0}
m_Image: {fileID: 2593428753322112591, guid: 0000000000000000d000000000000000, type: 0}
m_Tooltip:
m_Pos:
serializedVersion: 2
x: 273.6
y: 73.6
width: 857.2001
height: 467.8
x: 342
y: 73
width: 1072
height: 614
m_ViewDataDictionary: {fileID: 0}
m_OverlayCanvas:
m_LastAppliedPresetName: Default
@@ -459,7 +459,7 @@ MonoBehaviour:
collapsed: 0
displayed: 1
snapOffset: {x: 0, y: 0}
snapOffsetDelta: {x: -100, y: -25.600006}
snapOffsetDelta: {x: 0, y: 0}
snapCorner: 0
id: Tool Settings
index: 0
@@ -672,9 +672,9 @@ MonoBehaviour:
m_PlayAudio: 0
m_AudioPlay: 0
m_Position:
m_Target: {x: 12.007441, y: -2.8194184, z: -0.0014327094}
m_Target: {x: 4.669037, y: -2.1873548, z: -1.1641145}
speed: 2
m_Value: {x: 11.667122, y: -2.7686527, z: -0.012431897}
m_Value: {x: 5.290587, y: -2.2289233, z: -1.169934}
m_RenderMode: 0
m_CameraMode:
drawMode: 0
@@ -725,9 +725,9 @@ MonoBehaviour:
speed: 2
m_Value: {x: 0, y: 0, z: 0, w: 1}
m_Size:
m_Target: 23.342846
m_Target: 12.350506
speed: 2
m_Value: 24.44277
m_Value: 12.9324665
m_Ortho:
m_Target: 1
speed: 2
@@ -768,14 +768,14 @@ MonoBehaviour:
m_MaxSize: {x: 10000, y: 10000}
m_TitleContent:
m_Text: Project
m_Image: {fileID: -5179483145760003458, guid: 0000000000000000d000000000000000, type: 0}
m_Image: {fileID: -5467254957812901981, guid: 0000000000000000d000000000000000, type: 0}
m_Tooltip:
m_Pos:
serializedVersion: 2
x: 0
y: 562.4
width: 1131.8
height: 213
y: 708
width: 1415
height: 283
m_ViewDataDictionary: {fileID: 0}
m_OverlayCanvas:
m_LastAppliedPresetName: Default
@@ -801,14 +801,14 @@ MonoBehaviour:
m_LastFolders:
- Assets/Scripts/Inventory
m_LastFoldersGridSize: 63
m_LastProjectPath: C:\Users\Janis\Unity Projects\2d-top-down
m_LastProjectPath: M:\UnityProjects\2d-top-down
m_LockTracker:
m_IsLocked: 0
m_FolderTreeState:
scrollPos: {x: 0, y: 199}
m_SelectedIDs: 38720000
m_LastClickedID: 29240
m_ExpandedIDs: 00000000cc710000f27100003872000000ca9a3bffffff7f
scrollPos: {x: 0, y: 79}
m_SelectedIDs: 2e720000
m_LastClickedID: 29230
m_ExpandedIDs: 000000007471000076710000787100007a7100008c71000000ca9a3bffffff7f
m_RenameOverlay:
m_UserAcceptedRename: 0
m_Name:
@@ -836,7 +836,7 @@ MonoBehaviour:
scrollPos: {x: 0, y: 0}
m_SelectedIDs:
m_LastClickedID: 0
m_ExpandedIDs: 00000000cc710000
m_ExpandedIDs: 000000007471000076710000787100007a710000
m_RenameOverlay:
m_UserAcceptedRename: 0
m_Name:
@@ -861,9 +861,9 @@ MonoBehaviour:
m_Icon: {fileID: 0}
m_ResourceFile:
m_ListAreaState:
m_SelectedInstanceIDs:
m_LastClickedInstanceID: 0
m_HadKeyboardFocusLastEvent: 1
m_SelectedInstanceIDs: 3c6b0000
m_LastClickedInstanceID: 27452
m_HadKeyboardFocusLastEvent: 0
m_ExpandedInstanceIDs: c623000000000000d06e0000
m_RenameOverlay:
m_UserAcceptedRename: 0
@@ -908,14 +908,14 @@ MonoBehaviour:
m_MaxSize: {x: 4000, y: 4000}
m_TitleContent:
m_Text: Console
m_Image: {fileID: -4950941429401207979, guid: 0000000000000000d000000000000000, type: 0}
m_Image: {fileID: -4327648978806127646, guid: 0000000000000000d000000000000000, type: 0}
m_Tooltip:
m_Pos:
serializedVersion: 2
x: 0
y: 562.4
width: 1131.8
height: 213
y: 708
width: 1415
height: 283
m_ViewDataDictionary: {fileID: 0}
m_OverlayCanvas:
m_LastAppliedPresetName: Default
@@ -936,14 +936,14 @@ MonoBehaviour:
m_MaxSize: {x: 4000, y: 4000}
m_TitleContent:
m_Text: Inspector
m_Image: {fileID: -440750813802333266, guid: 0000000000000000d000000000000000, type: 0}
m_Image: {fileID: -2667387946076563598, guid: 0000000000000000d000000000000000, type: 0}
m_Tooltip:
m_Pos:
serializedVersion: 2
x: 1132.8
y: 73.6
width: 402.19995
height: 701.8
x: 1416
y: 73
width: 503
height: 918
m_ViewDataDictionary: {fileID: 0}
m_OverlayCanvas:
m_LastAppliedPresetName: Default