This commit is contained in:
PfandBoss
2022-12-10 12:45:45 +01:00
25 changed files with 287 additions and 32 deletions

BIN
Chest.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

36
Chest.png.import Normal file
View File

@@ -0,0 +1,36 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cjc4wohtjb73j"
path.s3tc="res://.godot/imported/Chest.png-017d8397062a17fb93a3b0c3debc27a2.s3tc.ctex"
path.etc2="res://.godot/imported/Chest.png-017d8397062a17fb93a3b0c3debc27a2.etc2.ctex"
metadata={
"imported_formats": ["s3tc", "etc2"],
"vram_texture": true
}
[deps]
source_file="res://Chest.png"
dest_files=["res://.godot/imported/Chest.png-017d8397062a17fb93a3b0c3debc27a2.s3tc.ctex", "res://.godot/imported/Chest.png-017d8397062a17fb93a3b0c3debc27a2.etc2.ctex"]
[params]
compress/mode=2
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/bptc_ldr=0
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

View File

@@ -1,3 +0,0 @@
[gd_scene load_steps=2 format=3]
[ext_resource type="Script" path="res://scripts/Modules/Module.gd" id="1_42v8k"]

View File

@@ -1,26 +1,50 @@
[gd_scene load_steps=5 format=3 uid="uid://vwjd5od63jgh"]
[gd_scene load_steps=9 format=3 uid="uid://vwjd5od63jgh"]
[ext_resource type="Script" path="res://scripts/Player.gd" id="1_dta8q"]
[ext_resource type="Texture2D" uid="uid://du7d6fk4dabd7" path="res://cVOQuID.png" id="2_pd1wl"]
[ext_resource type="Texture2D" uid="uid://cy6x8d3xe8lux" path="res://icon.svg" id="2_yjfj7"]
[ext_resource type="Texture2D" uid="uid://eg0k8esm2scp" path="res://p5lFkJY.png" id="3_hxw38"]
[ext_resource type="Texture2D" uid="uid://dsphpbpt27t1i" path="res://a3TCqhg.png" id="4_6puyx"]
[sub_resource type="SpriteFrames" id="SpriteFrames_liykb"]
animations = [{
"frames": [ExtResource("4_6puyx")],
"loop": true,
"name": &"idle",
"speed": 1.0
}, {
"frames": [ExtResource("3_hxw38"), ExtResource("2_pd1wl")],
"loop": true,
"name": &"walking",
"speed": 2.0
}]
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_p76ml"]
radius = 0.500599
height = 1.99403
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_ndwdl"]
radius = 0.567567
radius = 1.26679
height = 2.53358
[node name="CharacterBody3D" type="CharacterBody3D"]
script = ExtResource("1_dta8q")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
visible = false
shape = SubResource("CapsuleShape3D_p76ml")
[node name="AnimatedSprite3D" type="AnimatedSprite3D" parent="."]
transform = Transform3D(0.3, 0, 0, 0, -1.31134e-08, 0.3, 0, -0.3, -1.31134e-08, 0, 1, 0)
frames = SubResource("SpriteFrames_liykb")
animation = &"idle"
speed_scale = 2.0
playing = true
[node name="Sprite3D" type="Sprite3D" parent="."]
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, 1, 0, -1, -4.37114e-08, 0, 2, 0)
visible = false
texture = ExtResource("2_yjfj7")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = SubResource("CapsuleShape3D_p76ml")
[node name="HitBox" type="Area3D" parent="."]
collision_mask = 5

View File

@@ -1,6 +1,11 @@
[gd_scene load_steps=2 format=3 uid="uid://byo1m0n20yl45"]
[gd_scene load_steps=3 format=3 uid="uid://byo1m0n20yl45"]
[ext_resource type="Script" path="res://scripts/Modules/Cannon.gd" id="1_vdn0s"]
[node name="Cannon" type="Node"]
[sub_resource type="CylinderShape3D" id="CylinderShape3D_2geka"]
[node name="Cannon" type="StaticBody3D"]
script = ExtResource("1_vdn0s")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = SubResource("CylinderShape3D_2geka")

View File

@@ -49,10 +49,13 @@ mesh = SubResource("BoxMesh_ognqx")
shape = SubResource("ConcavePolygonShape3D_p3d4e")
[node name="CharacterBody3D" parent="Player1" instance=ExtResource("4_1ipcp")]
transform = Transform3D(1, 0, -3.55271e-15, 0, 1, 0, 3.55271e-15, 0, 1, 0, 0, 0)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 5, 0)
[node name="Cannon2" parent="Player1" instance=ExtResource("2_vrf6k")]
[node name="Storage" parent="Player1" instance=ExtResource("6_8ef51")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.84663, 0, 3.75554)
[node name="Player2" type="Node3D" parent="."]
transform = Transform3D(0.999998, 0, 0, 0, 1, 0, 0, 0, 0.999998, 12, 0, 0)
script = ExtResource("2_xl0he")
@@ -67,7 +70,6 @@ transform = Transform3D(1, 8.23952e-25, 0, -1.6479e-25, 1, 0, 0, -1.65436e-24, 1
shape = SubResource("ConcavePolygonShape3D_l76gd")
[node name="CharacterBody3D" parent="Player2" instance=ExtResource("4_1ipcp")]
transform = Transform3D(-0.0154457, -5.21527e-12, 0.999882, -6.75147e-10, 1, -5.21524e-12, -0.999882, -6.75146e-10, -0.0154457, 0, 0, 0)
[node name="DirectionalLight3D" type="DirectionalLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 0.258819, 0.965926, 0, -0.965926, 0.258819, 0, 0, 0)

View File

@@ -1,7 +1,19 @@
[gd_scene load_steps=2 format=3 uid="uid://cet80w4yr8rse"]
[gd_scene load_steps=4 format=3 uid="uid://cet80w4yr8rse"]
[ext_resource type="Script" path="res://scripts/Modules/Storage.gd" id="1_guwoh"]
[ext_resource type="Texture2D" uid="uid://cjc4wohtjb73j" path="res://Chest.png" id="2_a5kei"]
[node name="Storage" type="Node"]
[sub_resource type="CylinderShape3D" id="CylinderShape3D_c1ipa"]
height = 3.60519
radius = 1.29067
[node name="Storage" type="StaticBody3D"]
script = ExtResource("1_guwoh")
currentType = 0
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = SubResource("CylinderShape3D_c1ipa")
[node name="Sprite3D" type="Sprite3D" parent="."]
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, 1, 0, -1, -4.37114e-08, 0, 2, 0)
texture = ExtResource("2_a5kei")

BIN
a3TCqhg.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 182 KiB

36
a3TCqhg.png.import Normal file
View File

@@ -0,0 +1,36 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dsphpbpt27t1i"
path.s3tc="res://.godot/imported/a3TCqhg.png-031224344752835081acfff9846aed1e.s3tc.ctex"
path.etc2="res://.godot/imported/a3TCqhg.png-031224344752835081acfff9846aed1e.etc2.ctex"
metadata={
"imported_formats": ["s3tc", "etc2"],
"vram_texture": true
}
[deps]
source_file="res://a3TCqhg.png"
dest_files=["res://.godot/imported/a3TCqhg.png-031224344752835081acfff9846aed1e.s3tc.ctex", "res://.godot/imported/a3TCqhg.png-031224344752835081acfff9846aed1e.etc2.ctex"]
[params]
compress/mode=2
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/bptc_ldr=0
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

BIN
cVOQuID.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 185 KiB

36
cVOQuID.png.import Normal file
View File

@@ -0,0 +1,36 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://du7d6fk4dabd7"
path.s3tc="res://.godot/imported/cVOQuID.png-c6edf1a885780ea1abcf4e27549a73e1.s3tc.ctex"
path.etc2="res://.godot/imported/cVOQuID.png-c6edf1a885780ea1abcf4e27549a73e1.etc2.ctex"
metadata={
"imported_formats": ["s3tc", "etc2"],
"vram_texture": true
}
[deps]
source_file="res://cVOQuID.png"
dest_files=["res://.godot/imported/cVOQuID.png-c6edf1a885780ea1abcf4e27549a73e1.s3tc.ctex", "res://.godot/imported/cVOQuID.png-c6edf1a885780ea1abcf4e27549a73e1.etc2.ctex"]
[params]
compress/mode=2
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/bptc_ldr=0
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

View File

@@ -1,4 +1,4 @@
[gd_resource type="AudioBusLayout" load_steps=3 format=3 uid="uid://crf8d0b3y6o3w"]
[gd_resource type="AudioBusLayout" load_steps=3 format=3 uid="uid://s5g8eu8aqxig"]
[sub_resource type="AudioEffectPanner" id="AudioEffectPanner_bp6bg"]
resource_name = "Panner"

View File

@@ -13,7 +13,6 @@ grow_vertical = 2
script = ExtResource("1_hyw8p")
[node name="ColorRect" type="ColorRect" parent="."]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
@@ -22,7 +21,6 @@ grow_vertical = 2
color = Color(0.513726, 0.403922, 0.27451, 1)
[node name="VBoxContainer" type="VBoxContainer" parent="."]
layout_mode = 1
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
@@ -36,27 +34,22 @@ grow_horizontal = 2
grow_vertical = 2
[node name="Start" type="Button" parent="VBoxContainer"]
layout_mode = 2
text = "Start
"
[node name="Tutorial" type="Button" parent="VBoxContainer"]
layout_mode = 2
text = "Tutorial
"
[node name="Settings" type="Button" parent="VBoxContainer"]
layout_mode = 2
text = "Volume:"
[node name="VolSlider" type="HSlider" parent="VBoxContainer"]
layout_mode = 2
min_value = -30.0
max_value = 0.0
script = ExtResource("2_h85ei")
[node name="Quit" type="Button" parent="VBoxContainer"]
layout_mode = 2
text = "Quit"
[connection signal="pressed" from="VBoxContainer/Start" to="." method="_on_start_pressed"]

BIN
p5lFkJY.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 185 KiB

36
p5lFkJY.png.import Normal file
View File

@@ -0,0 +1,36 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://eg0k8esm2scp"
path.s3tc="res://.godot/imported/p5lFkJY.png-befd11338f5b393fdd205b3204b7d5b1.s3tc.ctex"
path.etc2="res://.godot/imported/p5lFkJY.png-befd11338f5b393fdd205b3204b7d5b1.etc2.ctex"
metadata={
"imported_formats": ["s3tc", "etc2"],
"vram_texture": true
}
[deps]
source_file="res://p5lFkJY.png"
dest_files=["res://.godot/imported/p5lFkJY.png-befd11338f5b393fdd205b3204b7d5b1.s3tc.ctex", "res://.godot/imported/p5lFkJY.png-befd11338f5b393fdd205b3204b7d5b1.etc2.ctex"]
[params]
compress/mode=2
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/bptc_ldr=0
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

View File

@@ -10,6 +10,11 @@ config_version=5
_global_script_classes=[{
"base": "Module",
"class": &"Bin",
"language": &"GDScript",
"path": "res://scripts/Modules/Bin.gd"
}, {
"base": "Module",
"class": &"Cannon",
"language": &"GDScript",
"path": "res://scripts/Modules/Cannon.gd"
@@ -24,7 +29,7 @@ _global_script_classes=[{
"language": &"GDScript",
"path": "res://scripts/Logic/MapNode.gd"
}, {
"base": "Node",
"base": "StaticBody3D",
"class": &"Module",
"language": &"GDScript",
"path": "res://scripts/Modules/Module.gd"
@@ -55,6 +60,7 @@ _global_script_classes=[{
"path": "res://scripts/Logic/TurnMapNode.gd"
}]
_global_script_class_icons={
"Bin": "",
"Cannon": "",
"Game": "",
"MapNode": "",

BIN
sVaNs3z.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 417 KiB

36
sVaNs3z.png.import Normal file
View File

@@ -0,0 +1,36 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bqypsbceya4gb"
path.s3tc="res://.godot/imported/sVaNs3z.png-b93cbe626f7639daaa9d5a0bb4692287.s3tc.ctex"
path.etc2="res://.godot/imported/sVaNs3z.png-b93cbe626f7639daaa9d5a0bb4692287.etc2.ctex"
metadata={
"imported_formats": ["s3tc", "etc2"],
"vram_texture": true
}
[deps]
source_file="res://sVaNs3z.png"
dest_files=["res://.godot/imported/sVaNs3z.png-b93cbe626f7639daaa9d5a0bb4692287.s3tc.ctex", "res://.godot/imported/sVaNs3z.png-b93cbe626f7639daaa9d5a0bb4692287.etc2.ctex"]
[params]
compress/mode=2
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/bptc_ldr=0
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

View File

@@ -44,7 +44,14 @@ func _on_hit_player(player1,dmg):
func _process(delta):
p1_train.current_distance += p1_train.current_speed * delta
p2_train.current_distance += p2_train.current_speed * delta
p1_train.distance_from_start += p1_train.current_speed * delta
p2_train.distance_from_start += p1_train.current_speed * delta
if(p1_node == StartNode && p1_train.distance_from_start > 5):
p1_train.distance_from_start = 0
if(p2_node == StartNode && p2_train.distance_from_start > 5):
p2_train.distance_from_start = 0
if(p1_train.current_distance >= p1_node.LENGTH):
var distance_delta = p1_train.current_distance - p1_node.LENGTH
p1_node = p1_node._on_train_exit(p1_train)

9
scripts/Modules/Bin.gd Normal file
View File

@@ -0,0 +1,9 @@
extends Module
class_name Bin
@onready var train = get_parent() as Train
#------------Methods-------------#
func interact():
train.get_node("CharacterBody3D").inventory = 0

View File

@@ -23,7 +23,6 @@ func interact():
currentState = STATE.RELOADING
currentStashValue += 1
return
return
func shoot():

View File

@@ -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

View File

@@ -1,4 +1,4 @@
extends Node
extends StaticBody3D
class_name Module
#-----------Parameters----------------'

View File

@@ -13,12 +13,23 @@ var is_alive = true
#---------------Methods--------------#
func _physics_process(delta):
if(velocity.length() > 0):
$AnimatedSprite3D.play("walking")
else:
$AnimatedSprite3D.play("idle")
movement = Vector3(0,0,0)
check_interaction()
check_input()
velocity = movement * SPEED
if velocity.x < 0:
$AnimatedSprite3D.rotation.y = deg_to_rad(90)
if velocity.x > 0:
$AnimatedSprite3D.rotation.y = deg_to_rad(-90)
if velocity.z > 0:
$AnimatedSprite3D.rotation.y = deg_to_rad(-180)
if velocity.z < 0:
$AnimatedSprite3D.rotation.y = deg_to_rad(0)
move_and_slide()
func check_input():

View File

@@ -6,6 +6,7 @@ signal game_over
var is_P1 = true
var current_distance = 0
var distance_from_start = 0
var current_speed = 5
var CANNONS = []
var STORAGES = []
@@ -30,4 +31,5 @@ func _on_signal_shooting():
func is_dead():
if current_speed <= 0:
game_over.emit()
return true
return false