Diffstat (limited to 'enemy/scripts/EnemyClass.gd')
| -rw-r--r-- | enemy/scripts/EnemyClass.gd | 97 |
1 files changed, 0 insertions, 97 deletions
diff --git a/enemy/scripts/EnemyClass.gd b/enemy/scripts/EnemyClass.gd deleted file mode 100644 index 9970a08..0000000 --- a/enemy/scripts/EnemyClass.gd +++ /dev/null @@ -1,97 +0,0 @@ -class_name Enemy -extends Area2D - -var count = 0 -var target -export var drop_power_up = false -export var missile = false -export var ARMOR = 20 -export var score_on_kill = 10 -const ExplosionEffect = preload("res://effects/ExplosionEffect.tscn") -export var Laser = preload("res://bullets/scenes/EnemyLaser.tscn") -export var SPEED = 25 -onready var timer = $Timer -export var shootspeed = 1.5 -var target_destination = Vector2.ZERO -var damagetobesubtracted -export var stop_pos = Vector2(200, 0) -onready var tween = $Tween - - -func _ready(): - target = get_parent().target - timer.wait_time = shootspeed - target_destination = global_position - - -func _process(delta): - if global_position.x > stop_pos.x: - global_position.x -= SPEED * delta - - -func _exit_tree(): - if drop_power_up and randi() % 10 == 2: - var powerUp = preload("res://PowerUp.tscn") - Game.instance_scene_on_main(powerUp, global_position) - - -func damage(): - damagetobesubtracted = rand_range(enemy_damage.min_damage, enemy_damage.max_damage) - damagetobesubtracted = round(damagetobesubtracted) - ARMOR -= damagetobesubtracted - if ARMOR <= 0: - add_to_score() - create_explosion() - queue_free() - - -func _on_Enemy_body_entered(body): - body.create_hit_effect() - if not body.is_in_group("Player"): - body.queue_free() - damage() - - -func _on_Enemy_area_entered(area): - if not area.is_in_group("Player"): - area.create_hit_effect() - area.queue_free() - damage() - - -func add_to_score(): - var main = get_tree().current_scene - if main.is_in_group("World"): - main.score += score_on_kill - - -func create_explosion(): - Game.instance_scene_on_main(ExplosionEffect, global_position) - - -func _on_VisibilityNotifier2D_screen_exited(): - queue_free() - - -func _on_Timer_timeout(): - if not missile: - var laser = Game.instance_scene_on_main(Laser, global_position) - laser.apply_impulse(Vector2.ZERO, Vector2(-50, 0)) - elif missile == true: - var missiles = preload("res://bullets/scenes/missile.tscn") - var m = Game.instance_scene_on_main(missiles, global_position) - m.start(target) - - -func _on_sidestep_timeout(): - var choosing = randi() % 2 - var choice = [30, -30] - target_destination = global_position + Vector2(0, choice[choosing]) - if target_destination.y > 160: - target_destination.y = 160 - elif target_destination.y < 10: - target_destination.y = 10 - tween.interpolate_property( - self, "position", global_position, target_destination, 1, Tween.TRANS_LINEAR, Tween.EASE_IN_OUT - ) - tween.start() |