small racing game im working on
Diffstat (limited to 'scenes/race_highlevel.gd')
| -rw-r--r-- | scenes/race_highlevel.gd | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/scenes/race_highlevel.gd b/scenes/race_highlevel.gd new file mode 100644 index 0000000..904a00b --- /dev/null +++ b/scenes/race_highlevel.gd @@ -0,0 +1,29 @@ +extends Splitscreen + +@export var race_scene: PackedScene +@export var hud_scene: PackedScene +@export var countdown_scene: PackedScene + +var race: Race +var huds: Array[HUD] + +func _ready() -> void: + race = race_scene.instantiate() + race.initialize(Globals.playing) + add_child(race) + add_player() + super() + +# cant call it join because of overriding and stuff +func add_player() -> void: + var c_cam := CarCamera.new(race.car) + var i_cam := IntroCam.new(Globals.playing, c_cam) + var v := join() + v.viewport.add_child(c_cam) + v.viewport.add_child(i_cam) + var hud = hud_scene.instantiate() + hud.assigned.emit(race.car, race.ghost, race.timer, race.track) + v.add_child(hud) + race.split.connect(hud.splits.update) + race.next_lap.connect(hud.laps.increment) + i_cam.finished.connect(func(): var countdown := countdown_scene.instantiate(); v.add_child(countdown); countdown.finished.connect(func(): race.start())) |