add props

This commit is contained in:
2025-07-04 00:03:54 -05:00
parent 58126341ba
commit 7ae9d534ab
341 changed files with 212952 additions and 156 deletions

View File

@@ -1,3 +1,27 @@
class_name InteractableArea extends Area3D
signal interactEvent(playerEntity:Player)
signal interactEvent(playerEntity:Player)
signal interactable(playerEntity:Player)
signal notInteractable(playerEntity:Player)
func _enter_tree() -> void:
area_entered.connect(onAreaEntered)
area_exited.connect(onAreaExited)
func _exit_tree() -> void:
area_entered.disconnect(onAreaEntered)
area_exited.disconnect(onAreaExited)
func onAreaEntered(area:Area3D) -> void:
if !area.get_parent() or !(area.get_parent() is Player):
return
var player:Player = area.get_parent() as Player
interactable.emit(player)
func onAreaExited(area:Area3D) -> void:
if !area.get_parent() or !(area.get_parent() is Player):
return
var player:Player = area.get_parent() as Player
notInteractable.emit(player)

View File

@@ -0,0 +1,43 @@
class_name MapChangeInteract extends Node3D
var interactableArea:InteractableArea
var shapeChild:CollisionShape3D
func _enter_tree() -> void:
interactableArea = $InteractableArea
# Needs to be exactly one child.
if get_child_count() != 2:
push_error("MapChangeInteract must have exactly one child InteractableArea node.")
return
var child = get_child(1)
if not (child is CollisionShape3D):
push_error("MapChangeInteract's child must be an CollisionShape3D node.")
shapeChild = child
remove_child(shapeChild)
interactableArea.add_child(shapeChild)
interactableArea.interactEvent.connect(onInteract)
interactableArea.interactable.connect(onInteractable)
interactableArea.notInteractable.connect(onNotInteractable)
func _exit_tree() -> void:
interactableArea.interactEvent.disconnect(onInteract)
interactableArea.interactable.disconnect(onInteractable)
interactableArea.notInteractable.disconnect(onNotInteractable)
interactableArea.remove_child(shapeChild)
add_child(shapeChild)
func onInteract(ent:Player) -> void:
print("MapChangeInteract: onInteract called")
func onInteractable(ent:Player) -> void:
print("Able to leave map")
pass
func onNotInteractable(ent:Player) -> void:
print("Not able to leave map")
pass

View File

@@ -0,0 +1 @@
uid://cpqmjomfpyifw

10
scripts/OverworldScene.gd Normal file
View File

@@ -0,0 +1,10 @@
class_name OverworldScene extends Node
func _enter_tree() -> void:
OVERWORLD.mapChanged.connect(onMapChanged)
func _exit_tree() -> void:
OVERWORLD.mapChanged.disconnect(onMapChanged)
func onMapChanged() -> void:
pass

View File

@@ -0,0 +1 @@
uid://dpvccegdmn7s6

7
scripts/map/Map.gd Normal file
View File

@@ -0,0 +1,7 @@
class_name Map extends Node
enum MapKey {
TEST_MAP
}
@export var mapKey:MapKey

1
scripts/map/Map.gd.uid Normal file
View File

@@ -0,0 +1 @@
uid://3uibvxplc48

View File

@@ -0,0 +1,19 @@
class_name OverworldSingleton extends Node
signal mapChanged
func _init() -> void:
pass
func _exit_tree() -> void:
TRANSITION.fadeOutEnd.disconnect(onFadeOutEnd)
func mapChange(map:Map.MapKey) -> void:
TRANSITION.fade(TransitionSingleton.FadeType.FADE_OUT)
TRANSITION.fadeOutEnd.connect(onFadeOutEnd)
print("OverworldSingleton: mapChange called with map:", map)
func onFadeOutEnd() -> void:
TRANSITION.fadtOutEnd.disconnect(onFadeOutEnd)
TRANSITION.fade(TransitionSingleton.FadeType.FADE_IN)
mapChanged.emit()

View File

@@ -0,0 +1 @@
uid://dqtt405nifbhq

View File

@@ -23,4 +23,7 @@ func isMovementPaused() -> bool:
func menuPause() -> void:
UI.PAUSE.open()
if UI.PAUSE.isOpen():
UI.PAUSE.close()
else:
UI.PAUSE.open()

View File

@@ -0,0 +1 @@
class_name QuestSingleton extends Node

View File

@@ -0,0 +1 @@
uid://cd4lf5sm2aquv

View File

@@ -1,4 +1,18 @@
class_name PauseMain extends VBoxContainer
func _ready() -> void:
visible = true
visible = false
$HBoxContainer/ItemList.item_selected.connect(onItemSelected)
func open():
visible = true
$HBoxContainer/ItemList.clear()
func close():
visible = false
func isOpen() -> bool:
return visible
func onItemSelected(index:int) -> void:
print("Selected item index: ", index)

View File

@@ -1,17 +1,19 @@
class_name PauseMenu extends Control
@export var MAIN:PauseMain
@export var OPTIONS:PauseOptions
func _ready() -> void:
hide()
close()
func isOpen() -> bool:
return visible
func open() -> void:
visible = true
MAIN.visible = true
MAIN.open()
func close() -> void:
visible = false
MAIN.visible = false
MAIN.close()
OPTIONS.close()

View File

@@ -0,0 +1,10 @@
class_name PauseOptions extends Control
func open() -> void:
visible = true
func close() -> void:
visible = false
func isOpen() -> bool:
return visible

View File

@@ -0,0 +1 @@
uid://dno7duijupjj6