diff --git a/Nodes/game.tscn b/Nodes/game.tscn index 799212b..0db6867 100644 --- a/Nodes/game.tscn +++ b/Nodes/game.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=7 format=3 uid="uid://db0pxwq1hvs45"] +[gd_scene load_steps=8 format=3 uid="uid://db0pxwq1hvs45"] [ext_resource type="Script" path="res://scripts/Logic/Game.gd" id="1_iox18"] [ext_resource type="PackedScene" uid="uid://bqe8ucbruto1j" path="res://Nodes/StartNode.tscn" id="2_61aog"] @@ -6,6 +6,7 @@ [ext_resource type="PackedScene" uid="uid://md2ofbviios3" path="res://Nodes/Train_P1.tscn" id="3_0be5n"] [ext_resource type="PackedScene" uid="uid://cys06pnxfjl2m" path="res://Nodes/UI.tscn" id="4_kxuy0"] [ext_resource type="PackedScene" uid="uid://bikdn7ep2vpxw" path="res://Nodes/Train_P2.tscn" id="4_lmu0s"] +[ext_resource type="PackedScene" uid="uid://bw3yluhr72n2t" path="res://Nodes/InfiniteScroller.tscn" id="7_yyvws"] [node name="Game" type="Node"] script = ExtResource("1_iox18") @@ -32,3 +33,5 @@ transform = Transform3D(0.875944, -0.294781, 0.381872, -0.0210188, 0.767515, 0.6 visible = false [node name="Control" parent="." instance=ExtResource("4_kxuy0")] + +[node name="InfiniteScroller" parent="." instance=ExtResource("7_yyvws")] diff --git a/scripts/Logic/InfiniteScroller.gd b/scripts/Logic/InfiniteScroller.gd index 9fabb41..74aa7ac 100644 --- a/scripts/Logic/InfiniteScroller.gd +++ b/scripts/Logic/InfiniteScroller.gd @@ -1,11 +1,28 @@ extends Node3D -@onready var rails -# Called when the node enters the scene tree for the first time. +@onready var rails = preload("res://Assets/Model/Objects/rail_tracks.glb") +# Called when the node enters the scene tree for the first time +var offset = 0 func _ready(): - pass # Replace with function body. + var timer = Timer.new() + self.add_child(timer) + timer.timeout.connect(create_rail) + timer.set_wait_time(0.2) + timer.start() +func create_rail(): + var obj = rails.instantiate() + obj.rotation.y = deg_to_rad(90) + obj.position = Vector3(0,0,13) + offset -= 13 + add_child(obj) + + var timer = Timer.new() + obj.add_child(timer) +# Connect the timer to make it call "queue_free" after two seconds + timer.timeout.connect(obj.queue_free) + timer.set_wait_time(2) + timer.start() -# Called every frame. 'delta' is the elapsed time since the previous frame. func _process(delta): - pass + position.z += delta * 40