[gd_scene load_steps=6 format=3 uid="uid://dhh12jepm10m7"] [ext_resource type="Shader" path="res://shaders/shield.gdshader" id="1_0kl5j"] [ext_resource type="Texture2D" uid="uid://dbwvej0c5bl52" path="res://sprites/ship mk1.png" id="2_bxhdx"] [sub_resource type="ShaderMaterial" id="ShaderMaterial_j0js1"] shader = ExtResource("1_0kl5j") shader_parameter/wave_centers = null shader_parameter/wave_distances = null shader_parameter/color = Color(1, 1, 1, 1) shader_parameter/max_distance = 20.0 shader_parameter/bublic_size = 15.0 [sub_resource type="GDScript" id="GDScript_cl2gl"] resource_name = "perdej" script/source = "extends Sprite2D var tween func wave(pos): var pos_arr = [pos] if tween: tween.kill() tween = create_tween() tween.tween_method(set_wave,0,20,1.5) material.set_shader_parameter(\"wave_centers\",pos_arr) func set_wave(val): material.set_shader_parameter(\"wave_distances\",[val]) " [sub_resource type="GDScript" id="GDScript_lydqv"] resource_name = "Testicles" script/source = "extends RayCast2D func _process(delta): global_position = get_global_mouse_position().normalized()*target_position.x look_at(Vector2.ZERO) func _input(event): if event is InputEventMouseButton: if event.button_index == MOUSE_BUTTON_LEFT and event.pressed: $\"../Icon\".wave(get_collision_point()) print(\"test\") " [node name="Node2D" type="Node2D"] [node name="Icon" type="Sprite2D" parent="."] material = SubResource("ShaderMaterial_j0js1") position = Vector2(-48, 22) texture = ExtResource("2_bxhdx") script = SubResource("GDScript_cl2gl") [node name="Area2D" type="Area2D" parent="Icon"] [node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="Icon/Area2D"] polygon = PackedVector2Array(16, -5.2, 16, 5, 14.6, 5, -5.8, 16, -16, 16, -16, -16, -7.6, -16) [node name="RayCast2D" type="RayCast2D" parent="."] position = Vector2(0, -112) target_position = Vector2(112, 0) collide_with_areas = true script = SubResource("GDScript_lydqv") [node name="Camera2D" type="Camera2D" parent="."] zoom = Vector2(1.475, 1.475)