added paralax, etc

This commit is contained in:
StevenSoroka committed 2025-08-25 21:07:20 -04:00
1 parent 37cc95175e
commit b824c5eb64
34 files changed
+870 -29

No files matched your search

+6 -1
View File
@@ -1,10 +1,15 @@
class_name Bullet extends Area2D
@onready var sprite_2d: Sprite2D = $Sprite2D
var speed: float = 700
var speed: float = 500
signal bulletDamageSignal(target: Node2D, bullet: Node2D)
func setSpeed(val: float):
speed = val
if val > 0:
sprite_2d.flip_h = true
else:
sprite_2d.flip_h = false
func _physics_process(delta: float) -> void:
position += transform.x * speed * delta
+7
View File
@@ -0,0 +1,7 @@
class_name Coin extends Area2D
signal coin_collected(coin: Coin)
func _on_body_entered(body: Node2D) -> void:
if body is Player:
coin_collected.emit(self)
+1
View File
@@ -0,0 +1 @@
uid://cervcsnoq87m5
+5 -10
View File
@@ -2,16 +2,6 @@ extends Node2D
signal playerDamage
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
pass # Replace with function body.
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta: float) -> void:
pass
func _on_area_2d_area_trigger_signal(effect: String, body: Node2D) -> void:
if body.name == "world-boundary":
return
@@ -20,6 +10,8 @@ func _on_area_2d_area_trigger_signal(effect: String, body: Node2D) -> void:
body.health -= 1
print(body.health)
return
if body is Player:
return
print("GC sees trigger " + effect + " on " + body.name)
body.queue_free()
@@ -27,3 +19,6 @@ func bulletDamage(target: Node2D, bullet: Node2D):
print("game controller sees hit")
target.queue_free()
bullet.visible = false
func coin_collected(coin: Coin):
coin.queue_free()
+1
View File
@@ -23,6 +23,7 @@ var state: State = State.IDLE
var facing: FaceDirection = FaceDirection.RIGHT
var pushTarget: Object
var pushEnabled: bool = false
var score = 0
func _physics_process(delta: float) -> void:
handle_input(delta)
+5
View File
@@ -3,6 +3,7 @@ class_name SceneManager extends Node2D
const BulletScn = preload("res://scenes/bullet.tscn")
@onready var game: Node2D = $".."
@onready var triggers: Node2D = $"../triggers"
@onready var coins: Node = $"../coins"
var bullets: Array[Bullet] = []
const MAX_BULLETS = 10
@@ -13,6 +14,10 @@ func _ready() -> void:
for obj in triggers.get_children():
if obj is Trigger:
obj.areaTriggerSignal.connect(game._on_area_2d_area_trigger_signal)
if coins:
for obj in coins.get_children():
if obj is Coin:
obj.coin_collected.connect(game.coin_collected)
# makes and recycles bullets
func bulletFactory() -> Bullet: