started adding completion system
This commit is contained in:
16
scripts/completion_counter.gd
Normal file
16
scripts/completion_counter.gd
Normal file
@@ -0,0 +1,16 @@
|
||||
extends Node
|
||||
|
||||
signal unlock
|
||||
|
||||
@export var nodes_needed: Array[Completer]
|
||||
var uncompleted: int
|
||||
|
||||
func _ready():
|
||||
uncompleted = nodes_needed.size()
|
||||
for node in nodes_needed:
|
||||
node.completed.connect(complete)
|
||||
|
||||
func complete():
|
||||
uncompleted -= 1
|
||||
if uncompleted == 0:
|
||||
unlock.emit()
|
5
scripts/door.gd
Normal file
5
scripts/door.gd
Normal file
@@ -0,0 +1,5 @@
|
||||
extends Node3D
|
||||
|
||||
@onready var anim: AnimationPlayer = $AnimationPlayer
|
||||
|
||||
func open(): anim.play("open")
|
@@ -1,6 +1,7 @@
|
||||
extends StaticBody3D
|
||||
extends Completer
|
||||
|
||||
@onready var animation_player: AnimationPlayer = $AnimationPlayer
|
||||
|
||||
func _on_interaction_area_interacted():
|
||||
animation_player.play("press")
|
||||
completed.emit()
|
4
scripts/interactables/completer/completer_base.gd
Normal file
4
scripts/interactables/completer/completer_base.gd
Normal file
@@ -0,0 +1,4 @@
|
||||
extends Node
|
||||
class_name Completer
|
||||
|
||||
signal completed
|
@@ -15,6 +15,7 @@ var camera_senitivity: float = 0.5
|
||||
func _ready() -> void:
|
||||
capture()
|
||||
camera.make_current()
|
||||
$Camera3D/DDOF.show() # Würde den spieler im editor unsichtbar machen
|
||||
|
||||
func _physics_process(delta: float) -> void:
|
||||
gun_cam.transform = camera.transform
|
||||
|
Reference in New Issue
Block a user