Some code style fixes. Fixed enemy spawning
This commit is contained in:
@@ -2,13 +2,13 @@ class_name Blast
|
||||
extends Area2D
|
||||
|
||||
|
||||
const FALLOFF_FACTOR = 3
|
||||
|
||||
|
||||
@export var damage : AbstractDamage
|
||||
@export var shape : CircleShape2D
|
||||
|
||||
|
||||
const FALLOFF_FACTOR = 3
|
||||
|
||||
|
||||
@onready var collision : CollisionShape2D = $CollisionShape2D
|
||||
|
||||
|
||||
|
||||
@@ -9,14 +9,8 @@ signal finished
|
||||
@export_range(0, 1) var amount_ratio: float = 1
|
||||
|
||||
|
||||
@onready var particles_huge : GPUParticles2D = $ParticlesHuge
|
||||
@onready var particles_large : GPUParticles2D = $ParticlesLarge
|
||||
@onready var particles_medium : GPUParticles2D = $ParticlesMedium
|
||||
|
||||
|
||||
var _emiting_count := 0
|
||||
|
||||
|
||||
var emitting : bool = false:
|
||||
set(value):
|
||||
emitting = value
|
||||
@@ -25,6 +19,11 @@ var emitting : bool = false:
|
||||
if particles_medium: particles_medium.emitting = emitting; _emiting_count += 1
|
||||
|
||||
|
||||
@onready var particles_huge : GPUParticles2D = $ParticlesHuge
|
||||
@onready var particles_large : GPUParticles2D = $ParticlesLarge
|
||||
@onready var particles_medium : GPUParticles2D = $ParticlesMedium
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
particles_huge.amount_ratio = amount_ratio
|
||||
particles_large.amount_ratio = amount_ratio
|
||||
|
||||
@@ -2,6 +2,9 @@ class_name AbstractShip
|
||||
extends CharacterBody2D
|
||||
|
||||
|
||||
signal destroyed
|
||||
|
||||
|
||||
const CANNON = preload("res://game/entities/weapons/cannon/cannon_weapon.tscn")
|
||||
const GATLING = preload("res://game/entities/weapons/gatling/gatling_weapon.tscn")
|
||||
const LASER = preload("res://game/entities/weapons/laser/laser_weapon.tscn")
|
||||
@@ -19,9 +22,6 @@ const WEAPONS := [
|
||||
]
|
||||
|
||||
|
||||
signal destroyed
|
||||
|
||||
|
||||
@export_range(0, 250) var acceleration : int = 0
|
||||
@export_range(0, 250) var deceleration : int = 0
|
||||
@export_range(0, 250) var max_speed : int = 0
|
||||
@@ -30,6 +30,11 @@ signal destroyed
|
||||
@export_range(0, 360) var weapon_rotation : int = 0
|
||||
|
||||
|
||||
var weapon_positions: Array[Vector2]
|
||||
|
||||
var _weapons : Array[AbstractWeapon]
|
||||
|
||||
|
||||
@onready var ship_sprite : Sprite2D = $ShipSprite
|
||||
@onready var armor_sprite : Sprite2D = $ArmorSprite
|
||||
@onready var shield_sprite : Sprite2D = $ShieldSprite
|
||||
@@ -37,12 +42,6 @@ signal destroyed
|
||||
@onready var health : Health = $Health
|
||||
|
||||
|
||||
var weapon_positions: Array[Vector2]
|
||||
|
||||
|
||||
var _weapons : Array[AbstractWeapon]
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
shield_sprite.visible = health.shield != 0
|
||||
armor_sprite.visible = health.armor != 0
|
||||
|
||||
@@ -2,13 +2,13 @@ class_name AbstractEnemyShip
|
||||
extends AbstractShip
|
||||
|
||||
|
||||
@onready var controller : EnemyController = $EnemyController
|
||||
|
||||
|
||||
var is_on_screen : bool = false
|
||||
var weapon_type : AbstractWeapon.Type = AbstractWeapon.Type.NONE
|
||||
|
||||
|
||||
@onready var controller : EnemyController = $EnemyController
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
super._ready()
|
||||
|
||||
|
||||
@@ -2,12 +2,12 @@ class_name PlayerShip
|
||||
extends AbstractShip
|
||||
|
||||
|
||||
@export_range(0, 200) var blink_range := 0
|
||||
|
||||
|
||||
const ENEMY_LAYER = 4
|
||||
|
||||
|
||||
@export_range(0, 200) var blink_range := 0
|
||||
|
||||
|
||||
@onready var blink_timer : Timer = $BlinkTimer
|
||||
@onready var blink_shadow : GPUParticles2D = $BlinkShadow
|
||||
|
||||
|
||||
@@ -11,10 +11,6 @@ const ENEMY_PROJECTILE_LAYER = 16
|
||||
@export_range(0, 1000) var speed : int = 0
|
||||
|
||||
|
||||
@onready var collision : CollisionShape2D = $CollisionShape2D
|
||||
@onready var out_of_screen_timer : Timer = $OutOfScreenTimer
|
||||
|
||||
|
||||
var direction : Vector2
|
||||
var ship_velocity: Vector2
|
||||
|
||||
@@ -32,6 +28,10 @@ var collide_enemies: bool:
|
||||
var _velocity: Vector2
|
||||
|
||||
|
||||
@onready var collision : CollisionShape2D = $CollisionShape2D
|
||||
@onready var out_of_screen_timer : Timer = $OutOfScreenTimer
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
_velocity = direction.normalized() * speed + ship_velocity
|
||||
_update_collision_rotation(_velocity)
|
||||
|
||||
@@ -6,16 +6,6 @@ enum Belonging { PLAYER, ENEMY }
|
||||
enum Type { NONE, SHORT_RANGE, MEDIUM_RANGE, LONG_RANGE, HOMING, MINES }
|
||||
|
||||
|
||||
@export_range(1, 100) var bullet_per_shot : int = 1
|
||||
@export_range(0, 360) var sector_angle : int = 0
|
||||
|
||||
@export var Projectile : PackedScene
|
||||
@export var type := Type.NONE
|
||||
|
||||
|
||||
@onready var muzzle : Node2D = $Muzzle
|
||||
|
||||
|
||||
const PREFIXES := {
|
||||
Belonging.PLAYER: "player",
|
||||
Belonging.ENEMY: "enemy",
|
||||
@@ -26,10 +16,19 @@ const IDLE_POSTFIX = "_idle"
|
||||
const RELOAD_POSTFIX = "_reloading"
|
||||
|
||||
|
||||
@export_range(1, 100) var bullet_per_shot : int = 1
|
||||
@export_range(0, 360) var sector_angle : int = 0
|
||||
|
||||
@export var Projectile : PackedScene
|
||||
@export var type := Type.NONE
|
||||
|
||||
|
||||
var _belonging: Belonging
|
||||
var _can_shoot := true
|
||||
|
||||
|
||||
@onready var muzzle : Node2D = $Muzzle
|
||||
|
||||
|
||||
func set_belonging(belonging: Belonging) -> void:
|
||||
_belonging = belonging
|
||||
|
||||
@@ -5,14 +5,15 @@ extends BlastProjectile
|
||||
@export_range(0, 360) var rotation_speed: int
|
||||
|
||||
|
||||
var target : AbstractShip = null
|
||||
|
||||
|
||||
@onready var sprites : Array[Sprite2D] = [
|
||||
$Sprite2D_E, $Sprite2D_SE, $Sprite2D_S, $Sprite2D_SW,
|
||||
$Sprite2D_W, $Sprite2D_NW, $Sprite2D_N, $Sprite2D_NE,
|
||||
]
|
||||
@onready var explosion_particles : ExplosionParticles = $ExplosionParticles
|
||||
|
||||
var target : AbstractShip = null
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
_acquire_target()
|
||||
|
||||
@@ -5,15 +5,18 @@ extends AbstractWeapon
|
||||
@onready var enemy_sprite : Sprite2D = $EnemySprite
|
||||
@onready var cooldown_timer : Timer = $CooldownTimer
|
||||
|
||||
|
||||
var _particles_index := 0
|
||||
var _muzzle_index := 0
|
||||
|
||||
|
||||
@onready var particles : Array[GPUParticles2D] = [
|
||||
$LeftParticles, $RightParticles,
|
||||
]
|
||||
var _particles_index := 0
|
||||
|
||||
@onready var muzzles : Array[Node2D] = [
|
||||
$Muzzle, $SecondMuzzle,
|
||||
]
|
||||
var _muzzle_index := 0
|
||||
|
||||
|
||||
func set_belonging(belonging: Belonging) -> void:
|
||||
|
||||
@@ -2,14 +2,11 @@ class_name MinelayerProjectile
|
||||
extends BlastProjectile
|
||||
|
||||
|
||||
@export var deceleration : int
|
||||
|
||||
|
||||
@onready var sprite_on := $Sprite2D_On
|
||||
@onready var sprite_off := $Sprite2D_Off
|
||||
@onready var sprite_on_timer := $SpriteOnTimer
|
||||
@onready var sprite_off_timer := $SpriteOffTimer
|
||||
@onready var explosion_particles : ExplosionParticles = $ExplosionParticles
|
||||
enum SpriteState {
|
||||
ON,
|
||||
OFF,
|
||||
Disabled,
|
||||
}
|
||||
|
||||
|
||||
const OFF_TIMES = [
|
||||
@@ -20,11 +17,7 @@ const ON_TIME = 0.05
|
||||
const SCROLL_VELOCITY = Vector2(-50, 0)
|
||||
|
||||
|
||||
enum SpriteState {
|
||||
ON,
|
||||
OFF,
|
||||
Disabled,
|
||||
}
|
||||
@export var deceleration : int
|
||||
|
||||
|
||||
var _bodies_inside: Array[Node2D] = []
|
||||
@@ -33,6 +26,13 @@ var _current_sprite_state : SpriteState:
|
||||
set = _switch_sprite
|
||||
|
||||
|
||||
@onready var sprite_on := $Sprite2D_On
|
||||
@onready var sprite_off := $Sprite2D_Off
|
||||
@onready var sprite_on_timer := $SpriteOnTimer
|
||||
@onready var sprite_off_timer := $SpriteOffTimer
|
||||
@onready var explosion_particles : ExplosionParticles = $ExplosionParticles
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
_current_sprite_state = SpriteState.OFF
|
||||
super._ready()
|
||||
|
||||
@@ -8,6 +8,9 @@ extends DirectHitProjectile
|
||||
@export_range(0, 1000) var no_deviation_distance: int = 0
|
||||
|
||||
|
||||
var _collided_foes : Array[AbstractShip] = []
|
||||
|
||||
|
||||
@onready var jinkTimer : Timer = $JinkTimer
|
||||
|
||||
@onready var particles_huge : GPUParticles2D = $ParticlesHuge
|
||||
@@ -16,9 +19,6 @@ extends DirectHitProjectile
|
||||
@onready var particles_small : GPUParticles2D = $ParticlesSmall
|
||||
|
||||
|
||||
var _collided_foes : Array[AbstractShip] = []
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
super._ready()
|
||||
_start_jink_timer()
|
||||
|
||||
Reference in New Issue
Block a user