summaryrefslogtreecommitdiff
path: root/Towers/Components
diff options
context:
space:
mode:
Diffstat (limited to 'Towers/Components')
-rw-r--r--Towers/Components/Assets/poison-component.pngbin0 -> 176 bytes
-rw-r--r--Towers/Components/Assets/poison-component.png.import34
-rw-r--r--Towers/Components/AttackComponent.gd.uid1
-rw-r--r--Towers/Components/AttackComponent.tscn2
-rw-r--r--Towers/Components/BurnComponent.gd.uid1
-rw-r--r--Towers/Components/BurnComponent.tscn4
-rw-r--r--Towers/Components/FrostComponent.gd.uid1
-rw-r--r--Towers/Components/FrostComponent.tscn2
-rw-r--r--Towers/Components/PoisonComponent.gd7
-rw-r--r--Towers/Components/PoisonComponent.gd.uid1
-rw-r--r--Towers/Components/PoisonComponent.tscn12
-rw-r--r--Towers/Components/RangeComponent.gd.uid1
-rw-r--r--Towers/Components/RangeComponent.tscn2
-rw-r--r--Towers/Components/TowerComponent.gd7
-rw-r--r--Towers/Components/TowerComponent.gd.uid1
-rw-r--r--Towers/Components/TowerComponent.tscn3
16 files changed, 72 insertions, 7 deletions
diff --git a/Towers/Components/Assets/poison-component.png b/Towers/Components/Assets/poison-component.png
new file mode 100644
index 0000000..76f561d
--- /dev/null
+++ b/Towers/Components/Assets/poison-component.png
Binary files differ
diff --git a/Towers/Components/Assets/poison-component.png.import b/Towers/Components/Assets/poison-component.png.import
new file mode 100644
index 0000000..8a1c383
--- /dev/null
+++ b/Towers/Components/Assets/poison-component.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://rkeldjv41ww8"
+path="res://.godot/imported/poison-component.png-83d1bbb149be90a9cdae02ce5657d8f9.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Towers/Components/Assets/poison-component.png"
+dest_files=["res://.godot/imported/poison-component.png-83d1bbb149be90a9cdae02ce5657d8f9.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+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=1
diff --git a/Towers/Components/AttackComponent.gd.uid b/Towers/Components/AttackComponent.gd.uid
new file mode 100644
index 0000000..5505517
--- /dev/null
+++ b/Towers/Components/AttackComponent.gd.uid
@@ -0,0 +1 @@
+uid://drm6inokng5c7
diff --git a/Towers/Components/AttackComponent.tscn b/Towers/Components/AttackComponent.tscn
index 2cad794..e251f0a 100644
--- a/Towers/Components/AttackComponent.tscn
+++ b/Towers/Components/AttackComponent.tscn
@@ -1,7 +1,7 @@
[gd_scene load_steps=5 format=3 uid="uid://4nd1npteqvh3"]
[ext_resource type="PackedScene" uid="uid://cly4agfoqhq2q" path="res://Towers/Components/TowerComponent.tscn" id="1_j2cqy"]
-[ext_resource type="Script" path="res://Towers/Components/AttackComponent.gd" id="2_dbyck"]
+[ext_resource type="Script" uid="uid://drm6inokng5c7" path="res://Towers/Components/AttackComponent.gd" id="2_dbyck"]
[ext_resource type="Texture2D" uid="uid://gbknvb38euuq" path="res://Towers/Components/Assets/attack-component.png" id="2_vr0du"]
[ext_resource type="AudioStream" uid="uid://cpkwvp5llf7x6" path="res://Towers/Assets/shoot.ogg" id="4_ytht8"]
diff --git a/Towers/Components/BurnComponent.gd.uid b/Towers/Components/BurnComponent.gd.uid
new file mode 100644
index 0000000..f52a67d
--- /dev/null
+++ b/Towers/Components/BurnComponent.gd.uid
@@ -0,0 +1 @@
+uid://br4sqt6lj7wyo
diff --git a/Towers/Components/BurnComponent.tscn b/Towers/Components/BurnComponent.tscn
index 285cfa0..fdf4ae4 100644
--- a/Towers/Components/BurnComponent.tscn
+++ b/Towers/Components/BurnComponent.tscn
@@ -1,10 +1,10 @@
[gd_scene load_steps=4 format=3 uid="uid://c0xtty8n0lwpr"]
[ext_resource type="PackedScene" uid="uid://cly4agfoqhq2q" path="res://Towers/Components/TowerComponent.tscn" id="1_56lm4"]
-[ext_resource type="Script" path="res://Towers/Components/BurnComponent.gd" id="2_nevgj"]
+[ext_resource type="Script" uid="uid://br4sqt6lj7wyo" path="res://Towers/Components/BurnComponent.gd" id="2_nevgj"]
[ext_resource type="Texture2D" uid="uid://2djpswd6sgng" path="res://Towers/Components/Assets/burn-component.png" id="3_o6seh"]
-[node name="TowerComponent" instance=ExtResource("1_56lm4")]
+[node name="BurnTowerComponent" instance=ExtResource("1_56lm4")]
script = ExtResource("2_nevgj")
type = 4
diff --git a/Towers/Components/FrostComponent.gd.uid b/Towers/Components/FrostComponent.gd.uid
new file mode 100644
index 0000000..0b67e37
--- /dev/null
+++ b/Towers/Components/FrostComponent.gd.uid
@@ -0,0 +1 @@
+uid://djvbqs5e7wgpl
diff --git a/Towers/Components/FrostComponent.tscn b/Towers/Components/FrostComponent.tscn
index 976d3e8..e43806e 100644
--- a/Towers/Components/FrostComponent.tscn
+++ b/Towers/Components/FrostComponent.tscn
@@ -1,7 +1,7 @@
[gd_scene load_steps=4 format=3 uid="uid://b1opnngyr3de4"]
[ext_resource type="PackedScene" uid="uid://cly4agfoqhq2q" path="res://Towers/Components/TowerComponent.tscn" id="1_8hes5"]
-[ext_resource type="Script" path="res://Towers/Components/FrostComponent.gd" id="2_bsb0f"]
+[ext_resource type="Script" uid="uid://djvbqs5e7wgpl" path="res://Towers/Components/FrostComponent.gd" id="2_bsb0f"]
[ext_resource type="Texture2D" uid="uid://ba3dmlce1wv2p" path="res://Towers/Components/Assets/frost-component.png" id="3_qwp1n"]
[node name="FrostTowerComponent" instance=ExtResource("1_8hes5")]
diff --git a/Towers/Components/PoisonComponent.gd b/Towers/Components/PoisonComponent.gd
new file mode 100644
index 0000000..77ee4fb
--- /dev/null
+++ b/Towers/Components/PoisonComponent.gd
@@ -0,0 +1,7 @@
+extends TowerComponent
+
+
+func on_shoot(target: Unit):
+ var effect = preload("res://Effects/PoisonEffect.tscn").instantiate()
+ effect.level = level
+ target.add_effect(effect)
diff --git a/Towers/Components/PoisonComponent.gd.uid b/Towers/Components/PoisonComponent.gd.uid
new file mode 100644
index 0000000..76ca84c
--- /dev/null
+++ b/Towers/Components/PoisonComponent.gd.uid
@@ -0,0 +1 @@
+uid://cxdkv6sv0xeb3
diff --git a/Towers/Components/PoisonComponent.tscn b/Towers/Components/PoisonComponent.tscn
new file mode 100644
index 0000000..d7c257f
--- /dev/null
+++ b/Towers/Components/PoisonComponent.tscn
@@ -0,0 +1,12 @@
+[gd_scene load_steps=4 format=3 uid="uid://bx1bi1ko6tyqq"]
+
+[ext_resource type="PackedScene" uid="uid://cly4agfoqhq2q" path="res://Towers/Components/TowerComponent.tscn" id="1_euxd5"]
+[ext_resource type="Script" uid="uid://cxdkv6sv0xeb3" path="res://Towers/Components/PoisonComponent.gd" id="2_dnmjy"]
+[ext_resource type="Texture2D" uid="uid://rkeldjv41ww8" path="res://Towers/Components/Assets/poison-component.png" id="3_3hijl"]
+
+[node name="PoisonTowerComponent" instance=ExtResource("1_euxd5")]
+script = ExtResource("2_dnmjy")
+type = 5
+
+[node name="Sprite" parent="." index="0"]
+texture = ExtResource("3_3hijl")
diff --git a/Towers/Components/RangeComponent.gd.uid b/Towers/Components/RangeComponent.gd.uid
new file mode 100644
index 0000000..d0d6a99
--- /dev/null
+++ b/Towers/Components/RangeComponent.gd.uid
@@ -0,0 +1 @@
+uid://027mfhg737fc
diff --git a/Towers/Components/RangeComponent.tscn b/Towers/Components/RangeComponent.tscn
index 1047529..f22f71e 100644
--- a/Towers/Components/RangeComponent.tscn
+++ b/Towers/Components/RangeComponent.tscn
@@ -1,7 +1,7 @@
[gd_scene load_steps=5 format=3 uid="uid://b0bdw5n6p5k8u"]
[ext_resource type="PackedScene" uid="uid://cly4agfoqhq2q" path="res://Towers/Components/TowerComponent.tscn" id="1_738xf"]
-[ext_resource type="Script" path="res://Towers/Components/RangeComponent.gd" id="2_4fk2a"]
+[ext_resource type="Script" uid="uid://027mfhg737fc" path="res://Towers/Components/RangeComponent.gd" id="2_4fk2a"]
[ext_resource type="Texture2D" uid="uid://dx07y4scyi5a1" path="res://Towers/Components/Assets/range-component.png" id="3_7nqma"]
[sub_resource type="CircleShape2D" id="CircleShape2D_q388v"]
diff --git a/Towers/Components/TowerComponent.gd b/Towers/Components/TowerComponent.gd
index 30b1c44..e9ecb94 100644
--- a/Towers/Components/TowerComponent.gd
+++ b/Towers/Components/TowerComponent.gd
@@ -13,6 +13,9 @@ enum ComponentType {
Frost,
Burn,
Poison,
+
+ Splash,
+ Aura,
}
@export var type: ComponentType
@@ -66,7 +69,9 @@ func update_with_network_data(data: NetworkData):
level = data.level
static func from_network_data(data: NetworkData) -> TowerComponent:
- var component = preload("res://Towers/Components/TowerComponent.gd").new()
+ var component = load(
+ "res://Towers/Components/%sComponent.tscn" % [ComponentType.keys()[data.type]]
+ ).instantiate()
component.type = data.type
component.level = data.level
diff --git a/Towers/Components/TowerComponent.gd.uid b/Towers/Components/TowerComponent.gd.uid
new file mode 100644
index 0000000..7f2813e
--- /dev/null
+++ b/Towers/Components/TowerComponent.gd.uid
@@ -0,0 +1 @@
+uid://btc4vor3b2tkj
diff --git a/Towers/Components/TowerComponent.tscn b/Towers/Components/TowerComponent.tscn
index 6b1d7b2..0ac2702 100644
--- a/Towers/Components/TowerComponent.tscn
+++ b/Towers/Components/TowerComponent.tscn
@@ -1,6 +1,6 @@
[gd_scene load_steps=2 format=3 uid="uid://cly4agfoqhq2q"]
-[ext_resource type="Script" path="res://Towers/Components/TowerComponent.gd" id="1_jb46t"]
+[ext_resource type="Script" uid="uid://btc4vor3b2tkj" path="res://Towers/Components/TowerComponent.gd" id="1_jb46t"]
[node name="TowerComponent" type="Node2D"]
visible = false
@@ -10,5 +10,6 @@ script = ExtResource("1_jb46t")
texture_filter = 1
offset_right = 40.0
offset_bottom = 40.0
+mouse_filter = 2
stretch_mode = 5
metadata/_edit_use_anchors_ = true