Reworked weapons and projectiles
This commit is contained in:
@@ -18,11 +18,6 @@ func _physics_process(delta: float) -> void:
|
||||
shoot()
|
||||
|
||||
|
||||
func _add_weapon(weapon: AbstractWeapon, weapon_position: Vector2) -> void:
|
||||
super._add_weapon(weapon, weapon_position)
|
||||
weapon.set_belonging(AbstractWeapon.Belonging.ENEMY)
|
||||
|
||||
|
||||
func _on_visible_on_screen_notifier_2d_screen_entered() -> void:
|
||||
is_on_screen = true
|
||||
|
||||
@@ -42,12 +37,6 @@ func _set_enemy_data(data: EnemyData) -> void:
|
||||
positions.remove_at(0)
|
||||
|
||||
for i in range(min(enemy_data.weapon_count, positions.size())):
|
||||
var weapon : AbstractWeapon = enemy_data.weapon.scene.instantiate()
|
||||
_add_weapon(weapon, weapon_positions[i])
|
||||
|
||||
|
||||
func _create_weapon(weapon_id : String) -> AbstractWeapon:
|
||||
var weapon_scene : PackedScene = load(WEAPON_SCENES[weapon_id])
|
||||
var weapon : AbstractWeapon = weapon_scene.instantiate()
|
||||
weapon_type = weapon.type
|
||||
return weapon
|
||||
var weapon_scene := enemy_data.weapon.enemy_scene
|
||||
var weapon : AbstractWeapon = weapon_scene.instantiate()
|
||||
_add_weapon(weapon, positions[i])
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=6 format=3 uid="uid://dwsn0lf1e3578"]
|
||||
[gd_scene load_steps=7 format=3 uid="uid://dwsn0lf1e3578"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://jvyagshykmgb" path="res://game/entities/ships/abstract_ship.tscn" id="1_28j6l"]
|
||||
[ext_resource type="Script" uid="uid://byicf1t0807pq" path="res://game/entities/ships/enemies/abstract_enemy_ship.gd" id="2_fwvrd"]
|
||||
@@ -12,15 +12,24 @@ shader_parameter/speed = 0.0
|
||||
shader_parameter/scale = 20.0
|
||||
shader_parameter/intensity = 1.0
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_l8c0n"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("3_6nnf4")
|
||||
shader_parameter/speed = 5.0
|
||||
shader_parameter/scale = 20.0
|
||||
shader_parameter/intensity = 1.0
|
||||
|
||||
[node name="AbstractEnemyShip" groups=["enemies"] instance=ExtResource("1_28j6l")]
|
||||
collision_layer = 4
|
||||
collision_mask = 6
|
||||
script = ExtResource("2_fwvrd")
|
||||
weapon_rotation = 180
|
||||
|
||||
[node name="ArmorSprite" parent="." index="1"]
|
||||
material = SubResource("ShaderMaterial_dlmr1")
|
||||
|
||||
[node name="ShieldSprite" parent="." index="2"]
|
||||
material = SubResource("ShaderMaterial_l8c0n")
|
||||
|
||||
[node name="EnemyController" parent="." index="4" node_paths=PackedStringArray("ship") instance=ExtResource("3_l8c0n")]
|
||||
ship = NodePath("..")
|
||||
|
||||
|
||||
@@ -1,17 +1,32 @@
|
||||
[gd_scene load_steps=7 format=3 uid="uid://d3epy8w15qmjm"]
|
||||
[gd_scene load_steps=10 format=3 uid="uid://d3epy8w15qmjm"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://dwsn0lf1e3578" path="res://game/entities/ships/enemies/abstract_enemy_ship.tscn" id="1_wvvpj"]
|
||||
[ext_resource type="Script" uid="uid://cxomr1oojcrcl" path="res://game/entities/ships/enemies/heavy/heavy_enemy_ship.gd" id="2_3umer"]
|
||||
[ext_resource type="Texture2D" uid="uid://5cgq8o5oqunq" path="res://images/ships/enemies/heavy.png" id="3_xqe8d"]
|
||||
[ext_resource type="Shader" uid="uid://dwh22f35u5qqi" path="res://game/entities/ships/shield.gdshader" id="4_qawoi"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_xqe8d"]
|
||||
atlas = ExtResource("3_xqe8d")
|
||||
region = Rect2(0, 0, 64, 48)
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_c4do6"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("4_qawoi")
|
||||
shader_parameter/speed = 0.0
|
||||
shader_parameter/scale = 20.0
|
||||
shader_parameter/intensity = 1.0
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_qawoi"]
|
||||
atlas = ExtResource("3_xqe8d")
|
||||
region = Rect2(0, 48, 64, 48)
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_6d574"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("4_qawoi")
|
||||
shader_parameter/speed = 5.0
|
||||
shader_parameter/scale = 20.0
|
||||
shader_parameter/intensity = 1.0
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_c4do6"]
|
||||
atlas = ExtResource("3_xqe8d")
|
||||
region = Rect2(0, 96, 64, 48)
|
||||
@@ -27,9 +42,11 @@ mass = 600
|
||||
texture = SubResource("AtlasTexture_xqe8d")
|
||||
|
||||
[node name="ArmorSprite" parent="." index="1"]
|
||||
material = SubResource("ShaderMaterial_c4do6")
|
||||
texture = SubResource("AtlasTexture_qawoi")
|
||||
|
||||
[node name="ShieldSprite" parent="." index="2"]
|
||||
material = SubResource("ShaderMaterial_6d574")
|
||||
texture = SubResource("AtlasTexture_c4do6")
|
||||
|
||||
[node name="CollisionPolygon2D" parent="." index="3"]
|
||||
|
||||
Reference in New Issue
Block a user