New art assets, work on implementing more adventurer behavior and making them work better together, and steps towards completing the first quest loop.

This commit is contained in:
2025-07-31 08:44:26 -04:00
parent c0a2c058ba
commit 38a7ed85b0
66 changed files with 1112 additions and 658 deletions

View File

@@ -5,11 +5,18 @@ var length : int :
return len(members)
@export var direction : Vector2 = Vector2.ZERO
var members : Array[Adventurer] = []
var front : Adventurer :
get: return null if len(members) == 0 else members[0]
signal advanced()
func add_member(member : Adventurer) -> void:
members.append(member)
#TODO: Instead retrieve the array length with a getter
func remove_member(member : Adventurer) -> void:
members.erase(member)
func try_advance() -> Adventurer:
if length > 0:
@@ -18,6 +25,18 @@ func try_advance() -> Adventurer:
return null
func advance() -> Adventurer:
var member = members.pop_front()
advanced.emit()
return member
return front
func get_last_position() -> Vector2:
return get_index_position(length - 1)
func get_index_position(idx : int) -> Vector2:
return global_position + idx * 100 * direction
func get_member_position(member) -> Vector2:
var idx = members.find(member)
if idx == -1:
return Vector2.ZERO
else:
return get_index_position(idx)