Fixed confict between null inventories, non conveyor inventories and conveyor
This commit is contained in:
parent
c566936cfc
commit
2f68d123d7
4 changed files with 17 additions and 1 deletions
|
@ -13,10 +13,14 @@ func _init() -> void:
|
|||
## Tries to add an item into inventory. Returns not stored stack of item.
|
||||
@abstract
|
||||
func add(stack : Stack) -> Stack
|
||||
@abstract
|
||||
func add_from_side(stack : Stack, ang_diff : float) -> Stack
|
||||
|
||||
## Returns if conditions of adding are met
|
||||
@abstract
|
||||
func can_add() -> bool
|
||||
@abstract
|
||||
func can_add_from_side(ang_diff : float) -> bool
|
||||
|
||||
## Tries to take first item. Returns null if no items in inventory
|
||||
@abstract
|
||||
|
|
|
@ -44,12 +44,18 @@ func add(stack: Stack) -> Stack:
|
|||
return null
|
||||
return stack
|
||||
|
||||
func add_from_side(stack : Stack, _ang_diff : float) -> Stack:
|
||||
return add(stack)
|
||||
|
||||
func can_add() -> bool:
|
||||
for i in range(capacity):
|
||||
if internal_array[i].amount == 0:
|
||||
return true
|
||||
return false
|
||||
|
||||
func can_add_from_side(_ang_diff : float) -> bool:
|
||||
return can_add()
|
||||
|
||||
## Tries to take first item. Returns null if no items in inventory
|
||||
func pop() -> Stack:
|
||||
if internal_array[0].held_item == null:
|
||||
|
|
|
@ -48,12 +48,18 @@ func add(stack: Stack) -> Stack:
|
|||
return null
|
||||
return stack
|
||||
|
||||
func add_from_side(stack : Stack, _ang_diff : float) -> Stack:
|
||||
return add(stack)
|
||||
|
||||
func can_add() -> bool:
|
||||
for i in range(capacity):
|
||||
if internal_array[i].amount == 0:
|
||||
return true
|
||||
return false
|
||||
|
||||
func can_add_from_side(_ang_diff : float) -> bool:
|
||||
return can_add()
|
||||
|
||||
## Tries to take first item. Returns null if no items in inventory
|
||||
func pop() -> Stack:
|
||||
for i in range(len(internal_array)):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue