just reorganised files thats it

This commit is contained in:
2025-06-24 02:55:20 +10:00
parent 3c5c8f1a44
commit 2bfea6471c
198 changed files with 313 additions and 747 deletions

View File

@@ -1,6 +1,6 @@
[gd_scene load_steps=14 format=4 uid="uid://dq8v5e11rvyi6"]
[ext_resource type="Script" uid="uid://bj7oafusrrsk" path="res://card_item.gd" id="2_kobsv"]
[ext_resource type="Script" uid="uid://bj7oafusrrsk" path="res://Scripts/card_item.gd" id="2_kobsv"]
[ext_resource type="Script" uid="uid://cl2mi4bnpatwk" path="res://Scripts/float_and_spin.gd" id="3_b2a1t"]
[ext_resource type="Texture2D" uid="uid://dds48gjgiyjp6" path="res://Classes/Engineer/plan_plan_tex.png" id="4_75s6s"]
[ext_resource type="Material" uid="uid://dq30v3hgyi4da" path="res://Classes/Engineer/mouse_hover_material.tres" id="5_2u312"]

View File

@@ -1,6 +1,6 @@
[gd_scene load_steps=12 format=4 uid="uid://bfxgtf1v1okat"]
[ext_resource type="Script" uid="uid://bj7oafusrrsk" path="res://card_item.gd" id="1_rlle2"]
[ext_resource type="Script" uid="uid://bj7oafusrrsk" path="res://Scripts/card_item.gd" id="1_rlle2"]
[ext_resource type="PackedScene" uid="uid://dixtx38u4jhd7" path="res://Scenes/UI/card_hand.tscn" id="2_aiko0"]
[ext_resource type="Script" uid="uid://cl2mi4bnpatwk" path="res://Scripts/float_and_spin.gd" id="3_jjaja"]
[ext_resource type="Texture2D" uid="uid://b0sl2tvwle1m7" path="res://Classes/Mage/scroll2_paper.png" id="4_aiko0"]

View File

@@ -1,6 +1,6 @@
[gd_resource type="ShaderMaterial" load_steps=3 format=3 uid="uid://dylmoyx1tasat"]
[ext_resource type="Shader" uid="uid://c5bffujq0l70k" path="res://jitter.gdshader" id="1_4cwdh"]
[ext_resource type="Shader" uid="uid://c5bffujq0l70k" path="res://Shaders/jitter.gdshader" id="1_4cwdh"]
[ext_resource type="Texture2D" uid="uid://d01y8kogfuayr" path="res://Enemies/Crystalisk/crystal_enemy.png" id="2_l5awy"]
[resource]

View File

@@ -1,6 +1,6 @@
[gd_resource type="ShaderMaterial" load_steps=3 format=3 uid="uid://bo82o88d7vo1x"]
[ext_resource type="Shader" uid="uid://c5bffujq0l70k" path="res://jitter.gdshader" id="1_crvh7"]
[ext_resource type="Shader" uid="uid://c5bffujq0l70k" path="res://Shaders/jitter.gdshader" id="1_crvh7"]
[ext_resource type="Texture2D" uid="uid://wx4d2upch81n" path="res://Enemies/EyeDog/eyedog_eyedog_tex.png" id="2_j3hec"]
[resource]

View File

@@ -1,4 +1,5 @@
class_name PathEditTool extends Node3D
class_name PathEditTool
extends Node3D
@export var hero: Hero
@export var inventory: Inventory
@@ -16,7 +17,6 @@ var ray_collider: Object
var ray_point: Vector3
var last_point: FlowNode
var last_tower_base: TowerBase
var interact_key_held: bool = false
var interacted_once: bool = false
var interact_held_time: float = 0.0

View File

@@ -1,4 +1,5 @@
class_name Hero extends CharacterBody3D
class_name Hero
extends CharacterBody3D
signal ready_state_changed(state: bool)
@@ -39,13 +40,9 @@ var game_manager: GameManager
var hovering_item: InteractButton = null
var weapons_spawn_count: int = 0 #Used to prevent node name collisions for multiplayer
var inventory_selected_index: int = 0
#var equipped_card: Card
#var offhand_card: Card
var equipped_weapon: int = 0
var weapons: Array[Weapon] = [null, null]
var cards: Array[Card] = [null, null]
#var weapon: Weapon
#var offhand_weapon: Weapon
var weapons_active: bool = false
var paused: bool = false
var editing_mode: bool = true

View File

@@ -28,7 +28,7 @@
[ext_resource type="Texture2D" uid="uid://bs2mskoyvyehv" path="res://Assets/Textures/crosshair159.png" id="25_l7gpx"]
[ext_resource type="AudioStream" uid="uid://bxripx3suub1v" path="res://Audio/cardPlace3.ogg" id="26_7tm07"]
[ext_resource type="Texture2D" uid="uid://0x80ptif1diq" path="res://Assets/Textures/hand_small_point.png" id="26_dfkac"]
[ext_resource type="PackedScene" uid="uid://c2id8hjico4w8" path="res://energy_bar.tscn" id="27_14ugt"]
[ext_resource type="PackedScene" uid="uid://c2id8hjico4w8" path="res://UI/EnergyBar/energy_bar.tscn" id="27_14ugt"]
[ext_resource type="AudioStream" uid="uid://k1lsqkvohjpa" path="res://Audio/cardPlace4.ogg" id="27_xvxs8"]
[ext_resource type="AudioStream" uid="uid://bn8lkvy5wibvo" path="res://Audio/cardSlide1.ogg" id="28_1thk8"]
[ext_resource type="AudioStream" uid="uid://d32gpcu8w1yvn" path="res://Audio/cardSlide2.ogg" id="29_s0a0l"]

View File

@@ -1,6 +1,6 @@
class_name HUD extends CanvasLayer
class_name HUD
extends CanvasLayer
var last_lives_count: int = 120
@export var player: Hero
@export var wave_count: Label
@export var lives_count: Label
@@ -12,7 +12,6 @@ var last_lives_count: int = 120
@export var minimap_viewport: SubViewport
@export var fps_label: Label
@export var hover_text: RichTextLabel
var enemy_names: Array[String]
@export var enemy_sprites: Array[TextureRect]
@export var enemy_counts: Array[Label]
@export var pickup_notif_scene: PackedScene
@@ -24,6 +23,8 @@ var enemy_names: Array[String]
@export var enemy_card_scene: PackedScene
@export var new_energy_bar: EnergyBar
var last_lives_count: int = 120
var enemy_names: Array[String]
var map_anchor: Node3D
var audio_guard: bool = false
var cards: Array[EnemyCardUI] = []
@@ -155,6 +156,7 @@ func set_crosshair_visible(value: bool) -> void:
crosshair.set_visible(value)
#TODO: the fuck is audio_guard for?
@warning_ignore("unused_parameter")
func set_weapon_energy(value: int, energy_type: Data.EnergyType) -> void:
#weapon_energy_bar.value = value
if player.editing_mode:

View File

@@ -1,4 +1,5 @@
class_name PlayerMovement extends Node
class_name PlayerMovement
extends Node
@export var player: CharacterBody3D
@export var head: Node3D
@@ -58,7 +59,6 @@ var is_in_climb_zone: bool = false
var hold_climb: bool = false
var ragdoll_grace_period_length: float = 0.5
var ragdoll_grace_period_elapsed: float = 0.0
var crouching: bool = false
var prev_crouch_height: float = 0.0
var new_crouch_height: float = 0.0

View File

@@ -1,4 +1,5 @@
class_name ViewMovement extends Node3D
class_name ViewMovement
extends Node3D
@export var player: CharacterBody3D
@@ -19,7 +20,6 @@ class_name ViewMovement extends Node3D
var sample_point: float = 0.0
var speed_factor: float = 0.0
var trauma: float = 0.0
var trauma_recovery_speed: float = 0.7
var camera_shake: float = 0.0

View File

@@ -1,4 +1,5 @@
class_name BombProjectile extends ExplosiveProjectile
class_name BombProjectile
extends ExplosiveProjectile
var max_bounces: int = 1
var bounces: int = 0

View File

@@ -1,4 +1,5 @@
class_name FireballProjectile extends StatusApplyingProjectile
class_name FireballProjectile
extends StatusApplyingProjectile
func build_status_object() -> StatusEffect:

View File

@@ -1,4 +1,5 @@
class_name IcicleProjectile extends StatusApplyingProjectile
class_name IcicleProjectile
extends StatusApplyingProjectile
func build_status_object() -> StatusEffect:

View File

@@ -1 +1,2 @@
class_name RocketProjectile extends HomingProjectile
class_name RocketProjectile
extends HomingProjectile

View File

@@ -2,7 +2,7 @@
[ext_resource type="Script" uid="uid://bivtfdl3p1brv" path="res://Scenes/CardPrinter/card_printer.gd" id="1_qft15"]
[ext_resource type="Script" uid="uid://dkfswql8ui0bt" path="res://Scripts/interact_button.gd" id="4_eavi1"]
[ext_resource type="PackedScene" uid="uid://b6i5w3mowcfcs" path="res://drafting_table.glb" id="4_kpujb"]
[ext_resource type="PackedScene" uid="uid://b6i5w3mowcfcs" path="res://Scenes/DraftingTable/drafting_table.glb" id="4_kpujb"]
[ext_resource type="AudioStream" uid="uid://dknygn5eyuhxt" path="res://Audio/shot1.wav" id="5_m033a"]
[sub_resource type="BoxShape3D" id="BoxShape3D_0ebt5"]

View File

@@ -4,12 +4,12 @@ importer="scene"
importer_version=1
type="PackedScene"
uid="uid://b6i5w3mowcfcs"
path="res://.godot/imported/drafting_table.glb-6807c68da9d7f556812db63743d38b57.scn"
path="res://.godot/imported/drafting_table.glb-9a5f41e6bf4edcc8c042380f52a70575.scn"
[deps]
source_file="res://drafting_table.glb"
dest_files=["res://.godot/imported/drafting_table.glb-6807c68da9d7f556812db63743d38b57.scn"]
source_file="res://Scenes/DraftingTable/drafting_table.glb"
dest_files=["res://.godot/imported/drafting_table.glb-9a5f41e6bf4edcc8c042380f52a70575.scn"]
[params]

View File

Before

Width:  |  Height:  |  Size: 80 KiB

After

Width:  |  Height:  |  Size: 80 KiB

View File

@@ -3,7 +3,7 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://cx3u2fj5cniac"
path.s3tc="res://.godot/imported/drafting_table_plan_tex.png-1699462a730246cc6031e19c5449ed7d.s3tc.ctex"
path.s3tc="res://.godot/imported/drafting_table_plan_tex.png-7b1786af0562d78c6bd0327df564d184.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
@@ -14,8 +14,8 @@ generator_parameters={
[deps]
source_file="res://drafting_table_plan_tex.png"
dest_files=["res://.godot/imported/drafting_table_plan_tex.png-1699462a730246cc6031e19c5449ed7d.s3tc.ctex"]
source_file="res://Scenes/DraftingTable/drafting_table_plan_tex.png"
dest_files=["res://.godot/imported/drafting_table_plan_tex.png-7b1786af0562d78c6bd0327df564d184.s3tc.ctex"]
[params]

View File

@@ -3,13 +3,13 @@
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://bvoygakisxw4i"
path="res://.godot/imported/cube.glb-ec927bc01951d93b2130ba52799eca7c.scn"
uid="uid://bkokjrjns7l6j"
path="res://.godot/imported/cube.glb-8c7fddad925be67dc400ce95d4de5b99.scn"
[deps]
source_file="res://cube.glb"
dest_files=["res://.godot/imported/cube.glb-ec927bc01951d93b2130ba52799eca7c.scn"]
source_file="res://Scenes/FlowField/cube.glb"
dest_files=["res://.godot/imported/cube.glb-8c7fddad925be67dc400ce95d4de5b99.scn"]
[params]

View File

@@ -1,6 +1,6 @@
[gd_scene load_steps=3 format=3 uid="uid://ravcalfsha76"]
[ext_resource type="PackedScene" uid="uid://bvoygakisxw4i" path="res://cube.glb" id="1_7p7qy"]
[ext_resource type="PackedScene" uid="uid://bkokjrjns7l6j" path="res://Scenes/FlowField/cube.glb" id="1_7p7qy"]
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_d8upr"]
resource_local_to_scene = true

View File

@@ -1,4 +1,5 @@
class_name FlowField extends Node3D
class_name FlowField
extends Node3D
signal path_updated()
@@ -15,6 +16,7 @@ func _ready() -> void:
node.visible = false
@warning_ignore("unused_parameter")
func _process(delta: float) -> void:
if !nodes_visible:
return

View File

@@ -1,8 +1,8 @@
[gd_scene load_steps=4 format=3 uid="uid://b7dwsqfmdqr8"]
[ext_resource type="Script" uid="uid://r4nmfr8jfcjx" path="res://flow_field.gd" id="1_l46ob"]
[ext_resource type="PackedScene" uid="uid://bssfvyxv5uo1f" path="res://flow_node.tscn" id="2_d6vkn"]
[ext_resource type="PackedScene" uid="uid://cccowrgelgswj" path="res://flow_field_tool.tscn" id="3_apokv"]
[ext_resource type="Script" uid="uid://r4nmfr8jfcjx" path="res://Scenes/FlowField/flow_field.gd" id="1_l46ob"]
[ext_resource type="PackedScene" uid="uid://bssfvyxv5uo1f" path="res://Scenes/FlowField/flow_node.tscn" id="2_d6vkn"]
[ext_resource type="PackedScene" uid="uid://cccowrgelgswj" path="res://Scenes/FlowField/flow_field_tool.tscn" id="3_apokv"]
[node name="FlowField" type="Node3D"]
script = ExtResource("1_l46ob")

View File

@@ -1,7 +1,7 @@
[gd_scene load_steps=3 format=3 uid="uid://2vv6mrxiwibf"]
[ext_resource type="Script" uid="uid://r4nmfr8jfcjx" path="res://flow_field.gd" id="1_ca7vt"]
[ext_resource type="PackedScene" uid="uid://bssfvyxv5uo1f" path="res://flow_node.tscn" id="2_s6hwk"]
[ext_resource type="Script" uid="uid://r4nmfr8jfcjx" path="res://Scenes/FlowField/flow_field.gd" id="1_ca7vt"]
[ext_resource type="PackedScene" uid="uid://bssfvyxv5uo1f" path="res://Scenes/FlowField/flow_node.tscn" id="2_s6hwk"]
[node name="FlowField" type="Node3D" node_paths=PackedStringArray("nodes", "goals")]
script = ExtResource("1_ca7vt")

View File

@@ -4,12 +4,12 @@ importer="scene"
importer_version=1
type="PackedScene"
uid="uid://bs4en6twugqjl"
path="res://.godot/imported/flow_node.glb-590e85013ddaf9dde846990416b040e0.scn"
path="res://.godot/imported/flow_node.glb-6ba2ba2afb1294cefafdb385a7532688.scn"
[deps]
source_file="res://flow_node.glb"
dest_files=["res://.godot/imported/flow_node.glb-590e85013ddaf9dde846990416b040e0.scn"]
source_file="res://Scenes/FlowField/flow_node.glb"
dest_files=["res://.godot/imported/flow_node.glb-6ba2ba2afb1294cefafdb385a7532688.scn"]
[params]

View File

@@ -1,7 +1,7 @@
[gd_scene load_steps=4 format=3 uid="uid://bssfvyxv5uo1f"]
[ext_resource type="Script" uid="uid://c86ygtor5tksd" path="res://Scripts/flow_node.gd" id="1_ng65h"]
[ext_resource type="PackedScene" uid="uid://h7el2c2awv6" path="res://flow_node2.tscn" id="2_bmgs5"]
[ext_resource type="PackedScene" uid="uid://h7el2c2awv6" path="res://Scenes/FlowField/flow_node2.tscn" id="2_bmgs5"]
[sub_resource type="SphereShape3D" id="SphereShape3D_bmgs5"]
radius = 0.4

View File

@@ -1,6 +1,6 @@
[gd_scene load_steps=3 format=3 uid="uid://h7el2c2awv6"]
[ext_resource type="PackedScene" uid="uid://bs4en6twugqjl" path="res://flow_node.glb" id="1_tnepb"]
[ext_resource type="PackedScene" uid="uid://bs4en6twugqjl" path="res://Scenes/FlowField/flow_node.glb" id="1_tnepb"]
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_16gtg"]
resource_local_to_scene = true

View File

@@ -1,4 +1,5 @@
class_name Ladder extends Area3D
class_name Ladder
extends Area3D
func _on_body_entered(body: Node3D) -> void:

View File

@@ -1,6 +1,6 @@
[gd_scene load_steps=2 format=3 uid="uid://cx8f6tsipvmls"]
[ext_resource type="Script" uid="uid://7pd2edvb845w" path="res://ladder.gd" id="1_cq4ai"]
[ext_resource type="Script" uid="uid://7pd2edvb845w" path="res://Scenes/Ladder/ladder.gd" id="1_cq4ai"]
[node name="Ladder" type="Area3D"]
collision_mask = 2

View File

@@ -2,7 +2,7 @@
[ext_resource type="Theme" uid="uid://b6a0ip4p72tgx" path="res://UI/new_theme.tres" id="1_p1cib"]
[ext_resource type="Script" uid="uid://ci8vq73u23viy" path="res://Scenes/Menus/MainMenu/main_menu.gd" id="2_ivytu"]
[ext_resource type="PackedScene" uid="uid://y1qa1g3ic8sp" path="res://Worlds/GreenPlanet/Levels/first_level.tscn" id="3_l8r4a"]
[ext_resource type="PackedScene" uid="uid://y1qa1g3ic8sp" path="res://Worlds/GreenPlanet/Levels/Bridge/bridge.tscn" id="3_l8r4a"]
[ext_resource type="AudioStream" uid="uid://cp6ph4ra7u5rk" path="res://Scenes/UI/drop_003.ogg" id="5_cwn2i"]
[ext_resource type="Script" uid="uid://cbwxa2a4hfcy4" path="res://Scripts/Resources/enemy.gd" id="5_u514r"]
[ext_resource type="Texture2D" uid="uid://cdnhe2mi5c5ln" path="res://Assets/Textures/dead_eye_dog.png" id="6_rsxwm"]
@@ -17,7 +17,7 @@
[ext_resource type="Script" uid="uid://cjr0pbqisd51v" path="res://Scenes/Menus/MainMenu/achievements_menu.gd" id="15_sv1gy"]
[ext_resource type="Texture2D" uid="uid://cpa1hl36xfplg" path="res://Assets/Textures/first_scroll_seen.png" id="16_sv1gy"]
[ext_resource type="Texture2D" uid="uid://ctbi3gm1me1t5" path="res://Assets/Textures/unlock_mage_achievement.png" id="17_6t4jd"]
[ext_resource type="Script" uid="uid://cxrm2naq75jo1" path="res://mod_menu.gd" id="19_6t4jd"]
[ext_resource type="Script" uid="uid://cxrm2naq75jo1" path="res://Scripts/mod_menu.gd" id="19_6t4jd"]
[ext_resource type="FontFile" uid="uid://c3hwdjscf2hnk" path="res://Assets/Fonts/OpenType (.otf)/Kaph-Regular.otf" id="20_y5bw6"]
[sub_resource type="ViewportTexture" id="ViewportTexture_5u75i"]

Binary file not shown.

View File

@@ -3,7 +3,7 @@
[ext_resource type="Script" uid="uid://si58bm4r7r2i" path="res://Scenes/TowerBase/tower_base.gd" id="1_kalmg"]
[ext_resource type="Script" uid="uid://do24iuot0j7d7" path="res://Scripts/inventory.gd" id="2_m0oxx"]
[ext_resource type="Material" uid="uid://bi0grduhgdma4" path="res://Scenes/TowerBase/new_shader_material.tres" id="3_ueedj"]
[ext_resource type="ArrayMesh" uid="uid://cm5xjp442ew0y" path="res://textmesh.res" id="4_8j8ue"]
[ext_resource type="ArrayMesh" uid="uid://cr83c74ys8rll" path="res://Scenes/TowerBase/textmesh.res" id="4_8j8ue"]
[ext_resource type="Texture2D" uid="uid://ba85u6i558x4w" path="res://Assets/Textures/minimap_node.png" id="4_lbvtm"]
[sub_resource type="BoxShape3D" id="BoxShape3D_lc72v"]

View File

@@ -1,20 +1,14 @@
[gd_scene load_steps=5 format=3 uid="uid://d2yv447trxkwt"]
[gd_scene load_steps=4 format=3 uid="uid://d2yv447trxkwt"]
[ext_resource type="Script" uid="uid://dkuxg6ek5us4f" path="res://Scripts/enemy_spawner.gd" id="1_23wuv"]
[ext_resource type="PackedScene" uid="uid://b0nady5xm88bo" path="res://Worlds/GreenPlanet/Enemies/land_enemy.tscn" id="2_muaoj"]
[ext_resource type="PackedScene" uid="uid://bjo2q6vca5qlv" path="res://Worlds/GreenPlanet/Enemies/air_enemy.tscn" id="3_nh55v"]
[ext_resource type="Script" uid="uid://cd500cyj1tdyw" path="res://Scripts/visualized_path.gd" id="4_tdwud"]
[node name="Node3D" type="Node3D" node_paths=PackedStringArray("path")]
[node name="Node3D" type="Node3D"]
script = ExtResource("1_23wuv")
land_enemy_scene = ExtResource("2_muaoj")
air_enemy_scene = ExtResource("3_nh55v")
path = NodePath("VisualizedPath")
[node name="CSGBox3D" type="CSGBox3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0)
visible = false
[node name="VisualizedPath" type="Path3D" parent="."]
script = ExtResource("4_tdwud")
metadata/_custom_type_script = "uid://cd500cyj1tdyw"

View File

@@ -1,24 +0,0 @@
[gd_scene load_steps=4 format=3 uid="uid://clbw3osqy2ww2"]
[ext_resource type="Script" uid="uid://cr3sfjjo6l6n2" path="res://Scripts/path_visual_thing.gd" id="1_pgun7"]
[ext_resource type="Texture2D" uid="uid://cy786nrpcdr5o" path="res://Assets/Textures/minimap_path_visual.png" id="2_0gsds"]
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_lutld"]
albedo_color = Color(0.0509804, 0.337255, 0.709804, 1)
[node name="PathFollow3D" type="PathFollow3D" node_paths=PackedStringArray("world_model", "minimap_model")]
use_model_front = true
script = ExtResource("1_pgun7")
world_model = NodePath("CSGSphere3D")
minimap_model = NodePath("Sprite3D")
[node name="CSGSphere3D" type="CSGSphere3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.401382, 0)
radius = 0.05
material = SubResource("StandardMaterial3D_lutld")
[node name="Sprite3D" type="Sprite3D" parent="."]
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, 1, 0, -1, -4.37114e-08, 0, 0.620933, 0)
layers = 4
texture_filter = 0
texture = ExtResource("2_0gsds")

View File

@@ -1,14 +0,0 @@
[gd_scene load_steps=3 format=3 uid="uid://dtfw0tefhb6qq"]
[ext_resource type="Script" uid="uid://cd500cyj1tdyw" path="res://Scripts/visualized_path.gd" id="1_34oex"]
[sub_resource type="Curve3D" id="Curve3D_tcut2"]
_data = {
"points": PackedVector3Array(0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, -0.894202, 0.687927, -2.77275, 0, 0, -2),
"tilts": PackedFloat32Array(0, 0)
}
point_count = 2
[node name="Node3D" type="Path3D"]
curve = SubResource("Curve3D_tcut2")
script = ExtResource("1_34oex")

View File

@@ -1,8 +1,10 @@
class_name Affector extends Node
class_name Affector
extends Node
var damage_particle_scene: PackedScene = preload("res://Scenes/damage_particle.tscn")
@warning_ignore("unused_parameter")
func apply_effect(effect: Effect, targets: Array[EnemyController]) -> void:
pass

View File

@@ -1,4 +1,5 @@
class_name AreaAffector extends Affector
class_name AreaAffector
extends Affector
@export var shapecast: ShapeCast3D

View File

@@ -1,4 +1,5 @@
class_name DirectAffect extends Affector
class_name DirectAffect
extends Affector
func apply_effect(effect: Effect, targets: Array[EnemyController]) -> void:

View File

@@ -1,4 +1,5 @@
class_name SpawnAffect extends Affector
class_name SpawnAffect
extends Affector
@export var spawn_scene: PackedScene
@export var tower: Tower

View File

@@ -1,4 +1,5 @@
class_name BeeliningController extends EnemyMovement
class_name BeeliningController
extends EnemyMovement
var goal: Node3D
var direction: Vector3

View File

@@ -1,4 +1,5 @@
class_name EnemyMovement extends Node
class_name EnemyMovement
extends Node
@export var character: EnemyController

View File

@@ -1,4 +1,5 @@
class_name LeapingController extends PathingController
class_name LeapingController
extends PathingController
@export var eastl: Label
@export var westl: Label

View File

@@ -1,4 +1,5 @@
class_name PathingController extends EnemyMovement
class_name PathingController
extends EnemyMovement
#var path: Curve3D
#var path_progress: float = 0.0

View File

@@ -1,4 +1,5 @@
class_name ExplosiveProjectile extends Projectile
class_name ExplosiveProjectile
extends Projectile
@export var explosion_range: float = 3.0

View File

@@ -1,4 +1,5 @@
class_name HomingProjectile extends ExplosiveProjectile
class_name HomingProjectile
extends ExplosiveProjectile
var target: Node3D
var acceleration: float = 50.0

View File

@@ -1,4 +1,5 @@
class_name Projectile extends RigidBody3D
class_name Projectile
extends RigidBody3D
@export var collision_shape: CollisionShape3D

View File

@@ -1,4 +1,5 @@
class_name StatusApplyingProjectile extends ExplosiveProjectile
class_name StatusApplyingProjectile
extends ExplosiveProjectile
@export var status_stats: StatusStats

View File

@@ -1,4 +1,5 @@
class_name Card extends Item
class_name Card
extends Item
enum Faction {
GENERIC = 0,

View File

@@ -1,4 +1,5 @@
class_name CardText extends Resource
class_name CardText
extends Resource
@export var target_type: Data.TargetType
@export var energy_type: Data.EnergyType

View File

@@ -1,4 +1,5 @@
class_name Enemy extends Resource
class_name Enemy
extends Resource
@export var title: String = "dog"
@export var target_type: Data.EnemyType

View File

@@ -1,4 +1,5 @@
class_name HeroClass extends Resource
class_name HeroClass
extends Resource
@export var hero_name: String = "Default"
@export var texture: Texture

View File

@@ -1,4 +1,5 @@
class_name Item extends Resource
class_name Item
extends Resource
@export var display_name: String
@export var icon: Texture

View File

@@ -1,4 +1,5 @@
class_name PlayerAudioSettings extends Resource
class_name PlayerAudioSettings
extends Resource
const SAVE_PATH: String = "user://audio_settings.tres"
@@ -19,4 +20,3 @@ static func load_profile_from_disk() -> PlayerAudioSettings:
if ResourceLoader.exists(SAVE_PATH):
return ResourceLoader.load(SAVE_PATH)
return PlayerAudioSettings.new()

View File

@@ -1,4 +1,5 @@
class_name PlayerGraphicsSettings extends Resource
class_name PlayerGraphicsSettings
extends Resource
const SAVE_PATH: String = "user://graphics_settings.tres"

View File

@@ -1,4 +1,5 @@
class_name PlayerPreferences extends Resource
class_name PlayerPreferences
extends Resource
const SAVE_PATH: String = "user://preferences.tres"

View File

@@ -1,4 +1,5 @@
class_name PlayerProfile extends Resource
class_name PlayerProfile
extends Resource
signal display_name_changed(old_name: String, new_name: String)
signal preferred_class_changed(old_class: int, new_class: int)

View File

@@ -1,4 +1,5 @@
class_name SaveData extends RefCounted
class_name SaveData
extends RefCounted
var save_slot: int = 0

View File

@@ -1,4 +1,5 @@
class_name StatAttribute extends Resource
class_name StatAttribute
extends Resource
@export var key: String
@export var value: float

View File

@@ -1,4 +1,5 @@
class_name StatusStats extends Resource
class_name StatusStats
extends Resource
@export var name: String
@export var max_stacks: int = 0

View File

@@ -1,4 +1,5 @@
class_name StatusDoT extends StatusEffect
class_name StatusDoT
extends StatusEffect
func proc(affected: EnemyController, stacks: int, _existing_effects: Dictionary) -> void:

View File

@@ -1,4 +1,5 @@
class_name StatusEffect extends Resource
class_name StatusEffect
extends Resource
@export var stats: StatusStats

View File

@@ -1,4 +1,5 @@
class_name StatusSlow extends StatusEffect
class_name StatusSlow
extends StatusEffect
func on_attached(affected: EnemyController, _existing_effects: Dictionary) -> void:

View File

@@ -1,4 +1,5 @@
class_name HitscanWeapon extends Weapon
class_name HitscanWeapon
extends Weapon
@export var raycast: RayCast3D
@export var range_debug_indicator: CSGSphere3D

View File

@@ -1,4 +1,5 @@
class_name ProjectileWeapon extends Weapon
class_name ProjectileWeapon
extends Weapon
@export var projectile_scene: PackedScene

View File

@@ -1,4 +1,5 @@
class_name ShapecastWeapon extends Weapon
class_name ShapecastWeapon
extends Weapon
@export var shapecast: ShapeCast3D
@export var range_debug_indicator: CSGSphere3D

View File

@@ -1,4 +1,5 @@
class_name StatusApplyingWeapon extends HitscanWeapon
class_name StatusApplyingWeapon
extends HitscanWeapon
@export var status_stats: StatusStats

View File

@@ -1,4 +1,5 @@
class_name Weapon extends Node3D
class_name Weapon
extends Node3D
signal energy_spent(energy: int, type: Data.EnergyType)
signal energy_recharged(energy: int, type: Data.EnergyType)
@@ -54,6 +55,7 @@ func _process(delta: float) -> void:
energy_spent.emit(delta, stats.energy_type)
@warning_ignore("unused_parameter")
func _physics_process(delta: float) -> void:
if trigger_held and current_energy >= energy_cost and time_since_firing >= time_between_shots:
if stats.energy_type == Data.EnergyType.DISCRETE:

View File

@@ -1,4 +1,5 @@
class_name AlertPopup extends PanelContainer
class_name AlertPopup
extends PanelContainer
signal completed()

View File

@@ -1,4 +1,5 @@
class_name AudioOptions extends VBoxContainer
class_name AudioOptions
extends VBoxContainer
@export var master_input: SpinBox
@export var master_slider: HSlider

View File

@@ -1,3 +1,4 @@
class_name BindButton extends Button
class_name BindButton
extends Button
var trigger_event: InputEvent

View File

@@ -1,4 +1,5 @@
class_name BootLogo extends TextureRect
class_name BootLogo
extends TextureRect
signal animation_finished()

View File

@@ -1,4 +1,5 @@
class_name CardInHand extends Node2D
class_name CardInHand
extends Node2D
var stats: Card
@export var rarity_sprite: Sprite2D

View File

@@ -1,4 +1,5 @@
class_name CardItem extends InteractButton
class_name CardItem
extends InteractButton
signal pressed(card_item: CardItem)

View File

@@ -1,4 +1,5 @@
class_name Chatbox extends Control
class_name Chatbox
extends Control
signal opened
signal closed

View File

@@ -1,4 +1,5 @@
class_name CinematicCamManager extends Node3D
class_name CinematicCamManager
extends Node3D
@export var path_follows: Array[PathFollow3D]
@export var cameras: Array[Camera3D]

View File

@@ -1,4 +1,5 @@
class_name ConfirmationPopup extends PanelContainer
class_name ConfirmationPopup
extends PanelContainer
signal completed(outcome: bool)

View File

@@ -1,4 +1,5 @@
class_name Corpse extends RigidBody3D
class_name Corpse
extends RigidBody3D
func set_sprite(tex: Texture) -> void:

View File

@@ -1,4 +1,5 @@
class_name DamageParticle extends Sprite3D
class_name DamageParticle
extends Sprite3D
@onready var label: Label = $SubViewport/Label
var time_alive: float = 0.0

View File

@@ -1,4 +1,5 @@
class_name Effect extends Resource
class_name Effect
extends Resource
@export var damage: int = 0

View File

@@ -1,4 +1,5 @@
class_name EightDirectionSprite3D extends Sprite3D
class_name EightDirectionSprite3D
extends Sprite3D
func _process(_delta: float) -> void:

View File

@@ -1,4 +1,5 @@
class_name EnemyCard extends RefCounted
class_name EnemyCard
extends RefCounted
var enemy: Enemy = null

View File

@@ -1,4 +1,5 @@
class_name EnemyGoal extends Node3D
class_name EnemyGoal
extends Node3D
@export var audio_player: AudioStreamPlayer3D

View File

@@ -1,11 +1,11 @@
class_name EnemySpawner extends Node3D
class_name EnemySpawner
extends Node3D
signal enemy_spawned()
@export var land_enemy_scene: PackedScene
@export var leap_enemy_scene: PackedScene
@export var air_enemy_scene: PackedScene
@export var path: VisualizedPath
@export var flow_field: FlowField
@export var own_id: int = 0
@export var type: Data.EnemyType
@@ -21,7 +21,7 @@ var enemies_spawned: Dictionary = {}
var enemies_to_spawn: int = 0
var done_spawning: bool = true
var enemy_id: int = 0
var new_path: Path3D
var path: Path3D
var path_polygon: PackedScene = preload("res://path_polygon.tscn")
var game_manager: GameManager
@@ -82,14 +82,14 @@ func networked_spawn_land_enemy(enemy_stats: String, id1: int, id2: int) -> void
func create_path() -> void:
if type != Data.EnemyType.LAND:
return
new_path = Path3D.new()
new_path.curve = Curve3D.new()
add_child(new_path)
path = Path3D.new()
path.curve = Curve3D.new()
add_child(path)
var polygon: CSGPolygon3D = path_polygon.instantiate()
new_path.add_child(polygon)
path.add_child(polygon)
polygon.mode = CSGPolygon3D.MODE_PATH
polygon.path_node = new_path.get_path()
new_path.global_position = Vector3.ZERO
polygon.path_node = path.get_path()
path.global_position = Vector3.ZERO
update_path()
@@ -97,13 +97,13 @@ func create_path() -> void:
func update_path() -> void:
if type != Data.EnemyType.LAND:
return
new_path.curve.add_point(global_position + Vector3(0, 0.5, 0))
new_path.curve = Curve3D.new()
path.curve.add_point(global_position + Vector3(0, 0.5, 0))
path.curve = Curve3D.new()
var node: FlowNode = flow_field.get_closest_traversable_point(global_position)
new_path.curve.add_point(node.global_position + Vector3(0, 0.5, 0))
path.curve.add_point(node.global_position + Vector3(0, 0.5, 0))
while node.best_path:
node = node.best_path
new_path.curve.add_point(node.global_position + Vector3(0, 0.5, 0))
path.curve.add_point(node.global_position + Vector3(0, 0.5, 0))

View File

@@ -1,4 +1,5 @@
class_name FloatAndSpin extends RayCast3D
class_name FloatAndSpin
extends RayCast3D
@export_range(0.0, 3.0) var float_height: float = 1.5
@export_range(0.0, 2.0) var bounce_dist: float = 0.5

View File

@@ -1,4 +1,5 @@
class_name FlowFieldTool extends Node
class_name FlowFieldTool
extends Node
@export var flow_field: FlowField
@export var raycast: RayCast3D

View File

@@ -1,8 +1,9 @@
class_name FlowNode extends StaticBody3D
class_name FlowNode
extends StaticBody3D
@export var connections: Array[FlowNode]
@export var visualisers: Array[Node3D]
var visual_scene: PackedScene = preload("res://cube2.tscn")
var visual_scene: PackedScene = preload("res://Scenes/FlowField/cube2.tscn")
@export var traversable: bool = true
@export var buildable: bool = true
var best_path: FlowNode :
@@ -24,6 +25,7 @@ func _ready() -> void:
set_connector_color(node, Color.WEB_GRAY)
@warning_ignore("unused_parameter")
func _process(delta: float) -> void:
if visible:
for i: int in connections.size():

View File

@@ -13,7 +13,7 @@ signal switch_to_single_player
signal switch_to_multi_player
signal switch_to_main_menu
var level_scene: PackedScene = load("res://Worlds/GreenPlanet/Levels/first_level.tscn")
var level_scene: PackedScene = load("res://Worlds/GreenPlanet/Levels/Bridge/bridge.tscn")
var player_scene: PackedScene = load("res://PCs/hero.tscn")
var game_end_scene: PackedScene = load("res://Scenes/Menus/GameEndScreen/game_end_screen.tscn")
var connected_players_nodes: Dictionary = {}

View File

@@ -1,4 +1,5 @@
class_name GameMode extends RefCounted
class_name GameMode
extends RefCounted
var multiplayer: bool = false
var seeded: bool = false

View File

@@ -1,4 +1,5 @@
class_name GameplayOptionsMenu extends VBoxContainer
class_name GameplayOptionsMenu
extends VBoxContainer
@export var look_sens_slider: HSlider
@export var look_sens_input: SpinBox

View File

@@ -1,4 +1,5 @@
class_name GraphicsOptionsMenu extends VBoxContainer
class_name GraphicsOptionsMenu
extends VBoxContainer
@export var fov_input: SpinBox
@export var fov_slider: HSlider

View File

@@ -1,4 +1,5 @@
class_name Health extends Node
class_name Health
extends Node
signal health_depleted
signal health_changed(health: int)

View File

@@ -1,4 +1,5 @@
class_name HealthBar extends TextureProgressBar
class_name HealthBar
extends TextureProgressBar
@export var health_bar_gradient: Gradient

View File

@@ -1,4 +1,5 @@
class_name Hitbox extends CollisionShape3D
class_name Hitbox
extends CollisionShape3D
@export var critical_zone: bool = false

Some files were not shown because too many files have changed in this diff Show More