forked from team-sg/hero-mark-2
add noise shader to laser graphics
This commit is contained in:
parent
90cc0f0550
commit
5a9751946c
3 changed files with 51 additions and 2 deletions
|
@ -6,6 +6,7 @@ export var laser_time = 0.5
|
|||
onready var line = $Laser
|
||||
onready var cast = $RayCast2D
|
||||
onready var timer = $Timer
|
||||
onready var sparks = $SparkParticles
|
||||
|
||||
func _ready():
|
||||
_disable_laser()
|
||||
|
@ -14,11 +15,15 @@ func _physics_process(delta):
|
|||
if cast.is_colliding():
|
||||
line.points[1].y = line.to_local(cast.get_collision_point()).y
|
||||
line.visible = true
|
||||
sparks.global_position.y = cast.get_collision_point().y
|
||||
sparks.emitting = true
|
||||
|
||||
var collider = cast.get_collider()
|
||||
if collider.is_in_group("player"):
|
||||
collider.get_parent().die()
|
||||
else:
|
||||
line.visible = false
|
||||
sparks.emitting = false
|
||||
|
||||
func _enable_laser():
|
||||
cast.enabled = true
|
||||
|
|
|
@ -1,11 +1,22 @@
|
|||
[gd_scene load_steps=3 format=2]
|
||||
[gd_scene load_steps=7 format=2]
|
||||
|
||||
[ext_resource path="res://graphics/enemy/laser_wall.png" type="Texture" id=1]
|
||||
[ext_resource path="res://objects/enemy/laser_wall.gd" type="Script" id=2]
|
||||
[ext_resource path="res://shaders/color_noise.gdshader" type="Shader" id=3]
|
||||
[ext_resource path="res://graphics/particles/dust.png" type="Texture" id=4]
|
||||
|
||||
[sub_resource type="ShaderMaterial" id=1]
|
||||
shader = ExtResource( 3 )
|
||||
shader_param/animate_noise = true
|
||||
shader_param/noise_intensity = 0.5
|
||||
|
||||
[sub_resource type="Curve" id=2]
|
||||
_data = [ Vector2( 0, 1 ), 0.0, -1.45746, 0, 0, Vector2( 1, 0 ), 0.00323196, 0.0, 0, 0 ]
|
||||
|
||||
[node name="LaserWall" type="Node2D"]
|
||||
script = ExtResource( 2 )
|
||||
blood = false
|
||||
speed = 16
|
||||
flip_sprite = false
|
||||
|
||||
[node name="Sprite" type="Sprite" parent="."]
|
||||
|
@ -13,7 +24,7 @@ texture = ExtResource( 1 )
|
|||
centered = false
|
||||
|
||||
[node name="Laser" type="Line2D" parent="."]
|
||||
visible = false
|
||||
material = SubResource( 1 )
|
||||
position = Vector2( 4, 2 )
|
||||
points = PoolVector2Array( 0, 0, 0, 8 )
|
||||
width = 2.0
|
||||
|
@ -27,3 +38,19 @@ collide_with_areas = true
|
|||
[node name="Timer" type="Timer" parent="."]
|
||||
process_mode = 0
|
||||
one_shot = true
|
||||
|
||||
[node name="SparkParticles" type="CPUParticles2D" parent="."]
|
||||
position = Vector2( 4, 0 )
|
||||
amount = 16
|
||||
lifetime = 0.5
|
||||
texture = ExtResource( 4 )
|
||||
spread = 180.0
|
||||
gravity = Vector2( 0, 0 )
|
||||
initial_velocity = 30.0
|
||||
initial_velocity_random = 0.5
|
||||
damping = 50.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount = 0.3
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 1, 1, 0.290196, 1 )
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue