From 64197ae3c925ba1cc517a6449b1b94414bd89538 Mon Sep 17 00:00:00 2001 From: PfandBoss <68470553+PfandBoss@users.noreply.github.com> Date: Sat, 10 Dec 2022 11:44:43 +0100 Subject: [PATCH 1/3] Update Cannon.gd --- scripts/Modules/Cannon.gd | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/scripts/Modules/Cannon.gd b/scripts/Modules/Cannon.gd index 8711c12..a44d833 100644 --- a/scripts/Modules/Cannon.gd +++ b/scripts/Modules/Cannon.gd @@ -3,7 +3,8 @@ extends Module class_name Cannon enum STATE {INACTIVE, RELOADING, SHOOTING} - +enum AMMO {NORMAL, HEAVY, LIGHT} +var currentAmmo: AMMO var CAN_ENGAGE = true var DAMAGE = 5 @onready var train = get_parent() as Train @@ -15,6 +16,7 @@ func _ready(): currentState = STATE.INACTIVE #TODO: FINISH func interact(): + if currentState == STATE.INACTIVE: #TODO: RELOADING if currentStashValue < maxStashValue: From fbb96edc50d765f0d9069fba3e5ddfdb4031c3d5 Mon Sep 17 00:00:00 2001 From: Arthur Date: Sat, 10 Dec 2022 12:16:04 +0100 Subject: [PATCH 2/3] Engine.gd Speed dependencies --- Nodes/game.tscn | 3 +-- scripts/Modules/Cannon.gd | 1 - scripts/Modules/Engine.gd | 18 +++++++++++++----- scripts/Train.gd | 3 ++- 4 files changed, 16 insertions(+), 9 deletions(-) diff --git a/Nodes/game.tscn b/Nodes/game.tscn index f8a0e42..46eccae 100644 --- a/Nodes/game.tscn +++ b/Nodes/game.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=9 format=3 uid="uid://n7w0ff7u25yc"] +[gd_scene load_steps=9 format=3 uid="uid://cp2itfdd21cg2"] [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"] @@ -48,7 +48,6 @@ transform = Transform3D(0.999998, 0, 0, 0, 1, 0, 0, 0, 0.999998, 12, 0, 0) script = ExtResource("2_xl0he") [node name="MeshInstance3D" type="MeshInstance3D" parent="Player2"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) mesh = SubResource("BoxMesh_ognqx") [node name="StaticBody3D" type="StaticBody3D" parent="Player2/MeshInstance3D"] diff --git a/scripts/Modules/Cannon.gd b/scripts/Modules/Cannon.gd index a44d833..704b3ae 100644 --- a/scripts/Modules/Cannon.gd +++ b/scripts/Modules/Cannon.gd @@ -23,7 +23,6 @@ func interact(): currentState = STATE.RELOADING currentStashValue += 1 return - return func shoot(): diff --git a/scripts/Modules/Engine.gd b/scripts/Modules/Engine.gd index 58ac3e6..c43fce2 100644 --- a/scripts/Modules/Engine.gd +++ b/scripts/Modules/Engine.gd @@ -3,6 +3,10 @@ class_name TrainEngine enum STATE {RUNNING, DEAD} +const maxSpeed = 6 +const refuelRate = 0.5 + +@onready var train = get_parent() as Train #------------Methods-------------# func _ready(): @@ -13,13 +17,17 @@ func _ready(): #TODO: FINISH func interact(): if currentState == STATE.RUNNING: - if currentStashValue < maxStashValue: - currentStashValue += 10 - if currentStashValue > maxStashValue: - currentStashValue = maxStashValue + if (train.current_speed + refuelRate) <= maxSpeed: + train.current_speed += refuelRate + if train.current_speed >= maxSpeed: + train.current_speed = maxSpeed return #TODO: Repair Train currentState = STATE.RUNNING + +# +func _process(delta): + if not train.is_dead(): + train.current_speed -= 0.1 * delta - diff --git a/scripts/Train.gd b/scripts/Train.gd index 97e5ebd..d693502 100644 --- a/scripts/Train.gd +++ b/scripts/Train.gd @@ -30,4 +30,5 @@ func _on_signal_shooting(): func is_dead(): if current_speed <= 0: game_over.emit() - + return true + return false From c00792a8100670d36db09643849765ede99c62c8 Mon Sep 17 00:00:00 2001 From: Arthur Date: Sat, 10 Dec 2022 12:19:55 +0100 Subject: [PATCH 3/3] Engine logic update --- scripts/Modules/Engine.gd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/Modules/Engine.gd b/scripts/Modules/Engine.gd index c43fce2..4969c82 100644 --- a/scripts/Modules/Engine.gd +++ b/scripts/Modules/Engine.gd @@ -19,7 +19,7 @@ func interact(): if currentState == STATE.RUNNING: if (train.current_speed + refuelRate) <= maxSpeed: train.current_speed += refuelRate - if train.current_speed >= maxSpeed: + if train.current_speed >= maxSpeed: train.current_speed = maxSpeed return #TODO: Repair Train