conforms file names to consistant standard
This commit is contained in:
7
scripts/affectors/affector.gd
Normal file
7
scripts/affectors/affector.gd
Normal file
@@ -0,0 +1,7 @@
|
||||
class_name Affector
|
||||
extends Node
|
||||
|
||||
|
||||
@warning_ignore("unused_parameter")
|
||||
func apply_effect(effect: Effect, targets: Array[EnemyController]) -> void:
|
||||
pass
|
||||
1
scripts/affectors/affector.gd.uid
Normal file
1
scripts/affectors/affector.gd.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://5gl7yyrvjeow
|
||||
16
scripts/affectors/area_affector.gd
Normal file
16
scripts/affectors/area_affector.gd
Normal file
@@ -0,0 +1,16 @@
|
||||
class_name AreaAffector
|
||||
extends Affector
|
||||
|
||||
@export var shapecast: ShapeCast3D
|
||||
|
||||
|
||||
func apply_effect(effect: Effect, targets: Array[EnemyController]) -> void:
|
||||
if shapecast:
|
||||
for i: int in shapecast.get_collision_count():
|
||||
var enemy: EnemyController = shapecast.get_collider(i) as EnemyController
|
||||
#print(shapecast.get_collider(i))
|
||||
if targets.has(enemy):
|
||||
enemy.apply_effect(effect)
|
||||
else:
|
||||
for enemy: EnemyController in targets:
|
||||
enemy.apply_effect(effect)
|
||||
1
scripts/affectors/area_affector.gd.uid
Normal file
1
scripts/affectors/area_affector.gd.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://duvfverjdqodj
|
||||
7
scripts/affectors/direct_affect.gd
Normal file
7
scripts/affectors/direct_affect.gd
Normal file
@@ -0,0 +1,7 @@
|
||||
class_name DirectAffect
|
||||
extends Affector
|
||||
|
||||
|
||||
func apply_effect(effect: Effect, targets: Array[EnemyController]) -> void:
|
||||
for enemy: EnemyController in targets:
|
||||
enemy.apply_effect(effect)
|
||||
1
scripts/affectors/direct_affect.gd.uid
Normal file
1
scripts/affectors/direct_affect.gd.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://8d0a4uc2i0ti
|
||||
22
scripts/affectors/spawn_affect.gd
Normal file
22
scripts/affectors/spawn_affect.gd
Normal file
@@ -0,0 +1,22 @@
|
||||
class_name SpawnAffect
|
||||
extends Affector
|
||||
|
||||
@export var spawn_scene: PackedScene
|
||||
@export var tower: Tower
|
||||
|
||||
var force: float = 150.0
|
||||
var projectile_id: int = 0
|
||||
|
||||
|
||||
func apply_effect(effect: Effect, targets: Array[EnemyController]) -> void:
|
||||
for target: EnemyController in targets:
|
||||
var projectile: Projectile = spawn_scene.instantiate() as Projectile
|
||||
if projectile is HomingProjectile:
|
||||
projectile.target = target.model
|
||||
projectile.position = tower.yaw_model.global_position
|
||||
projectile.effect = effect
|
||||
projectile.direction = -tower.yaw_model.global_transform.basis.z
|
||||
projectile.force = force
|
||||
projectile.name = tower.base_name + str(tower.owner_id) + str(projectile_id)
|
||||
get_tree().root.add_child(projectile)
|
||||
projectile_id += 1
|
||||
1
scripts/affectors/spawn_affect.gd.uid
Normal file
1
scripts/affectors/spawn_affect.gd.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://ccu1u6nqkjxki
|
||||
Reference in New Issue
Block a user