Added parallax graphics, second terrain for veggies, start of custom player graphics, collectible coins.

This commit is contained in:
GabriellePipo committed 2026-07-13 20:57:36 -04:00
1 parent f916237426
commit d6e7ea87f8
33 files changed
+716 -3

No files matched your search

+7
View File
@@ -0,0 +1,7 @@
class_name Coin extends Area2D
signal coinCollectedSignal(body,coin)
func _on_body_entered(body: Node2D) -> void:
if body is Player:
print("Coin hit")
coinCollectedSignal.emit(body,self)
+1
View File
@@ -0,0 +1 @@
uid://b0yv2ybgsexuo
+13 -2
View File
@@ -6,6 +6,7 @@ signal teleportTriggerSignal(body)
var numberOfCrates = 2
var timeAvailable = 50
var timer = Timer.new()
var totalCoinsCollected = 0
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
@@ -31,8 +32,9 @@ func _process(delta: float) -> void:
func _on_trigger(body: Variant, trigger: Variant, intent: String) -> void:
print("Game controller knows trigger fired")
match intent:
"destroy":
destroySignal.emit(body)
"destroy":
if body is RigidBody2D:
destroySignal.emit(body)
"fan":
fanTriggerSignal.emit(body,Vector2(0,-1)*100*9)
print("fan effect")
@@ -40,12 +42,21 @@ func _on_trigger(body: Variant, trigger: Variant, intent: String) -> void:
print("teleport effect")
teleportTriggerSignal.emit(body)
func coinCollected(body,coin) -> void:
print("GC knows coin collected")
totalCoinsCollected += 1
destroySignal.emit(coin)
func crateTotal(numOfCrates):
numberOfCrates = numOfCrates
print("Game controller knows about crates - there are: " + str(numOfCrates))
if numberOfCrates == 0:
print("WINNER!!!")
get_tree().reload_current_scene()
func coinTotal(totalAmount) -> void:
print("GC knows total coins: "+str(totalAmount))
func bulletDamage(body, _bullet) -> void:
if body.is_in_group("shootable"):
+13
View File
@@ -2,6 +2,8 @@ extends Node2D
@onready var game: GameController = $".."
@onready var crates: Node2D = $"../Crates"
@onready var player: Player = $"../Player"
@onready var coin: Coin = $"../Coins/Coin"
@onready var coins: Node2D = $"../Coins"
var bullet = preload("res://scenes/bullet.tscn")
var bulletArray:Array[Bullet] = []
@@ -16,6 +18,8 @@ func _ready() -> void:
game.destroySignal.connect(destroy)
game.fanTriggerSignal.connect(pushTarget)
game.teleportTriggerSignal.connect(teleportTarget)
# signals from pickups
coin.coinCollectedSignal.connect(game.coinCollected)
buildLevel()
# Called every frame. 'delta' is the elapsed time since the previous frame.
@@ -24,6 +28,7 @@ func _process(delta: float) -> void:
func buildLevel() -> void:
updateCrates()
updateCoins()
func updateCrates() -> void:
var totalCrates = 0
@@ -34,6 +39,14 @@ func updateCrates() -> void:
obj.tree_exited.connect(updateCrates)
totalCrates += 1
game.crateTotal(totalCrates)
func updateCoins() -> void:
var totalCoins = 0
if coins:
for obj in coins.get_children():
if obj is Coin:
totalCoins += 1
game.coinTotal(totalCoins)
func pushTarget(body,pushDirection) -> void:
if body is RigidBody2D: