Added enemies

This commit is contained in:
2025-11-10 21:35:35 +03:00
parent 22aaeab0aa
commit 8bfe441226
22 changed files with 221 additions and 41 deletions
+29
View File
@@ -2,6 +2,26 @@ class_name AbstractShip
extends CharacterBody2D
const CANNON = preload("res://game/entities/weapons/cannon/cannon.tscn")
const GATLING = preload("res://game/entities/weapons/gatling/gatling.tscn")
const LASER = preload("res://game/entities/weapons/laser/laser.tscn")
const LAUNCHER = preload("res://game/entities/weapons/launcher/launcher.tscn")
const MINELAYER = preload("res://game/entities/weapons/minelayer/minelayer.tscn")
const PLASMA = preload("res://game/entities/weapons/plasma/plasma.tscn")
const RAILGUN = preload("res://game/entities/weapons/railgun/railgun.tscn")
const SHRAPNEL = preload("res://game/entities/weapons/shrapnel/shrapnel.tscn")
const TESLA = preload("res://game/entities/weapons/tesla/tesla.tscn")
const WEAPONS := [
CANNON, GATLING, LASER,
LAUNCHER, MINELAYER, PLASMA,
RAILGUN, SHRAPNEL, TESLA,
]
signal destroyed
@onready var sprite := $Sprite2D
@onready var collision := $CollisionShape2D
@@ -16,6 +36,14 @@ extends CharacterBody2D
var _weapons : Array[AbstractWeapon]
func _ready() -> void:
for pos in weapon_positions:
var weapon : AbstractWeapon = WEAPONS.pick_random().instantiate()
weapon.position = pos
add_child(weapon)
_weapons.append(weapon)
func _physics_process(_delta: float) -> void:
var was_collided := move_and_slide()
if was_collided:
@@ -57,3 +85,4 @@ func _get_new_speed(accel: float, decel: float, current_speed: float) -> float:
func _on_health_depleted() -> void:
queue_free()
destroyed.emit()