make actual death animation for fami
This commit is contained in:
parent
06a4541f27
commit
ded320d2dc
6 changed files with 324 additions and 6 deletions
BIN
graphics/enemy/boss/famira_dissolve.png
Normal file
BIN
graphics/enemy/boss/famira_dissolve.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.4 KiB |
35
graphics/enemy/boss/famira_dissolve.png.import
Normal file
35
graphics/enemy/boss/famira_dissolve.png.import
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/famira_dissolve.png-fc21beac8113424467a72a3beb454de9.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://graphics/enemy/boss/famira_dissolve.png"
|
||||||
|
dest_files=[ "res://.import/famira_dissolve.png-fc21beac8113424467a72a3beb454de9.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/bptc_ldr=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=false
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
process/invert_color=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
Binary file not shown.
|
@ -1,4 +1,4 @@
|
||||||
[gd_scene load_steps=34 format=2]
|
[gd_scene load_steps=38 format=2]
|
||||||
|
|
||||||
[ext_resource path="res://objects/enemy/boss/famira.gd" type="Script" id=1]
|
[ext_resource path="res://objects/enemy/boss/famira.gd" type="Script" id=1]
|
||||||
[ext_resource path="res://shaders/scale3x.gdshader" type="Shader" id=2]
|
[ext_resource path="res://shaders/scale3x.gdshader" type="Shader" id=2]
|
||||||
|
@ -17,10 +17,18 @@
|
||||||
[ext_resource path="res://graphics/particles/dust.png" type="Texture" id=15]
|
[ext_resource path="res://graphics/particles/dust.png" type="Texture" id=15]
|
||||||
[ext_resource path="res://graphics/enemy/antlion_body_border.png" type="Texture" id=16]
|
[ext_resource path="res://graphics/enemy/antlion_body_border.png" type="Texture" id=16]
|
||||||
[ext_resource path="res://objects/enemy/boss/fami_transform.material" type="Material" id=17]
|
[ext_resource path="res://objects/enemy/boss/fami_transform.material" type="Material" id=17]
|
||||||
|
[ext_resource path="res://shaders/1px_border.gdshader" type="Shader" id=18]
|
||||||
|
[ext_resource path="res://graphics/collectibles/shard.png" type="Texture" id=19]
|
||||||
|
[ext_resource path="res://graphics/enemy/boss/famira_dissolve.png" type="Texture" id=20]
|
||||||
|
|
||||||
[sub_resource type="RectangleShape2D" id=11]
|
[sub_resource type="RectangleShape2D" id=11]
|
||||||
extents = Vector2( 28, 64 )
|
extents = Vector2( 28, 64 )
|
||||||
|
|
||||||
|
[sub_resource type="ShaderMaterial" id=18]
|
||||||
|
shader = ExtResource( 18 )
|
||||||
|
shader_param/border_color = Color( 0, 0, 0, 1 )
|
||||||
|
shader_param/border_corners = false
|
||||||
|
|
||||||
[sub_resource type="Animation" id=2]
|
[sub_resource type="Animation" id=2]
|
||||||
length = 0.001
|
length = 0.001
|
||||||
tracks/0/type = "value"
|
tracks/0/type = "value"
|
||||||
|
@ -275,6 +283,42 @@ tracks/20/keys = {
|
||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( 1, 1 ) ]
|
"values": [ Vector2( 1, 1 ) ]
|
||||||
}
|
}
|
||||||
|
tracks/21/type = "value"
|
||||||
|
tracks/21/path = NodePath("../DissolveMask:position")
|
||||||
|
tracks/21/interp = 1
|
||||||
|
tracks/21/loop_wrap = true
|
||||||
|
tracks/21/imported = false
|
||||||
|
tracks/21/enabled = true
|
||||||
|
tracks/21/keys = {
|
||||||
|
"times": PoolRealArray( 0 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ Vector2( -63, -322 ) ]
|
||||||
|
}
|
||||||
|
tracks/22/type = "value"
|
||||||
|
tracks/22/path = NodePath("../ShardParticles:position")
|
||||||
|
tracks/22/interp = 1
|
||||||
|
tracks/22/loop_wrap = true
|
||||||
|
tracks/22/imported = false
|
||||||
|
tracks/22/enabled = true
|
||||||
|
tracks/22/keys = {
|
||||||
|
"times": PoolRealArray( 0 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ Vector2( 4, -165 ) ]
|
||||||
|
}
|
||||||
|
tracks/23/type = "value"
|
||||||
|
tracks/23/path = NodePath("../ShardParticles:emitting")
|
||||||
|
tracks/23/interp = 1
|
||||||
|
tracks/23/loop_wrap = true
|
||||||
|
tracks/23/imported = false
|
||||||
|
tracks/23/enabled = true
|
||||||
|
tracks/23/keys = {
|
||||||
|
"times": PoolRealArray( 0 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ false ]
|
||||||
|
}
|
||||||
|
|
||||||
[sub_resource type="Animation" id=4]
|
[sub_resource type="Animation" id=4]
|
||||||
resource_name = "chasing"
|
resource_name = "chasing"
|
||||||
|
@ -439,8 +483,7 @@ tracks/12/keys = {
|
||||||
|
|
||||||
[sub_resource type="Animation" id=12]
|
[sub_resource type="Animation" id=12]
|
||||||
resource_name = "die"
|
resource_name = "die"
|
||||||
length = 0.2
|
length = 8.0
|
||||||
loop = true
|
|
||||||
tracks/0/type = "value"
|
tracks/0/type = "value"
|
||||||
tracks/0/path = NodePath("Hip/Body:rotation_degrees")
|
tracks/0/path = NodePath("Hip/Body:rotation_degrees")
|
||||||
tracks/0/interp = 1
|
tracks/0/interp = 1
|
||||||
|
@ -580,10 +623,10 @@ tracks/11/loop_wrap = true
|
||||||
tracks/11/imported = false
|
tracks/11/imported = false
|
||||||
tracks/11/enabled = true
|
tracks/11/enabled = true
|
||||||
tracks/11/keys = {
|
tracks/11/keys = {
|
||||||
"times": PoolRealArray( 0, 0.1 ),
|
"times": PoolRealArray( 0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, 1.9, 2, 2.1, 2.2, 2.3, 2.4, 2.5, 2.6, 2.7, 2.8, 2.9, 3, 3.1, 3.2, 3.3, 3.4, 3.5, 3.6, 3.7, 3.8, 3.9, 4, 4.1, 4.2, 4.3, 4.4, 4.5, 4.6, 4.7, 4.8, 4.9, 5, 5.1, 5.2, 5.3, 5.4, 5.5, 5.6, 5.7, 5.8, 5.9, 6, 6.1, 6.2, 6.3, 6.4, 6.5, 6.6, 6.7, 6.8, 6.9, 7, 7.1, 7.2, 7.3, 7.4, 7.5, 7.6, 7.7, 7.8, 7.9 ),
|
||||||
"transitions": PoolRealArray( 1, 1 ),
|
"transitions": PoolRealArray( 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ),
|
||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( 4, 39 ), Vector2( 12, 39 ) ]
|
"values": [ Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ), Vector2( 4, 39 ), Vector2( 12, 39 ) ]
|
||||||
}
|
}
|
||||||
tracks/12/type = "value"
|
tracks/12/type = "value"
|
||||||
tracks/12/path = NodePath("Hip/Body/Neck/BreathParticles:emitting")
|
tracks/12/path = NodePath("Hip/Body/Neck/BreathParticles:emitting")
|
||||||
|
@ -597,6 +640,66 @@ tracks/12/keys = {
|
||||||
"update": 1,
|
"update": 1,
|
||||||
"values": [ false ]
|
"values": [ false ]
|
||||||
}
|
}
|
||||||
|
tracks/13/type = "value"
|
||||||
|
tracks/13/path = NodePath("../DissolveMask:position")
|
||||||
|
tracks/13/interp = 1
|
||||||
|
tracks/13/loop_wrap = true
|
||||||
|
tracks/13/imported = false
|
||||||
|
tracks/13/enabled = true
|
||||||
|
tracks/13/keys = {
|
||||||
|
"times": PoolRealArray( 0, 8 ),
|
||||||
|
"transitions": PoolRealArray( 1, 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ Vector2( -28, -300 ), Vector2( 58, -84 ) ]
|
||||||
|
}
|
||||||
|
tracks/14/type = "value"
|
||||||
|
tracks/14/path = NodePath(".:material:shader_param/arc_color")
|
||||||
|
tracks/14/interp = 1
|
||||||
|
tracks/14/loop_wrap = true
|
||||||
|
tracks/14/imported = false
|
||||||
|
tracks/14/enabled = true
|
||||||
|
tracks/14/keys = {
|
||||||
|
"times": PoolRealArray( 0, 2, 8 ),
|
||||||
|
"transitions": PoolRealArray( 1, 1, 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ Color( 0.345098, 0.74902, 0.878431, 0 ), Color( 0.345098, 0.74902, 0.878431, 1 ), Color( 0.345098, 0.74902, 0.878431, 1 ) ]
|
||||||
|
}
|
||||||
|
tracks/15/type = "value"
|
||||||
|
tracks/15/path = NodePath(".:material:shader_param/background_color")
|
||||||
|
tracks/15/interp = 1
|
||||||
|
tracks/15/loop_wrap = true
|
||||||
|
tracks/15/imported = false
|
||||||
|
tracks/15/enabled = true
|
||||||
|
tracks/15/keys = {
|
||||||
|
"times": PoolRealArray( 0, 2, 8 ),
|
||||||
|
"transitions": PoolRealArray( 1, 1, 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ Color( 0.396078, 1, 1, 0 ), Color( 0.396078, 1, 1, 1 ), Color( 0.396078, 1, 1, 1 ) ]
|
||||||
|
}
|
||||||
|
tracks/16/type = "value"
|
||||||
|
tracks/16/path = NodePath("../ShardParticles:position")
|
||||||
|
tracks/16/interp = 1
|
||||||
|
tracks/16/loop_wrap = true
|
||||||
|
tracks/16/imported = false
|
||||||
|
tracks/16/enabled = true
|
||||||
|
tracks/16/keys = {
|
||||||
|
"times": PoolRealArray( 0, 8 ),
|
||||||
|
"transitions": PoolRealArray( 1, 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ Vector2( 4, -197 ), Vector2( 4, 19 ) ]
|
||||||
|
}
|
||||||
|
tracks/17/type = "value"
|
||||||
|
tracks/17/path = NodePath("../ShardParticles:emitting")
|
||||||
|
tracks/17/interp = 1
|
||||||
|
tracks/17/loop_wrap = true
|
||||||
|
tracks/17/imported = false
|
||||||
|
tracks/17/enabled = true
|
||||||
|
tracks/17/keys = {
|
||||||
|
"times": PoolRealArray( 0.2, 7 ),
|
||||||
|
"transitions": PoolRealArray( 1, 1 ),
|
||||||
|
"update": 1,
|
||||||
|
"values": [ true, false ]
|
||||||
|
}
|
||||||
|
|
||||||
[sub_resource type="Animation" id=17]
|
[sub_resource type="Animation" id=17]
|
||||||
resource_name = "grow"
|
resource_name = "grow"
|
||||||
|
@ -1610,7 +1713,31 @@ collision_mask = 128
|
||||||
position = Vector2( 12, -64 )
|
position = Vector2( 12, -64 )
|
||||||
shape = SubResource( 11 )
|
shape = SubResource( 11 )
|
||||||
|
|
||||||
|
[node name="ShardParticles" type="CPUParticles2D" parent="."]
|
||||||
|
material = SubResource( 18 )
|
||||||
|
position = Vector2( 4, -165 )
|
||||||
|
emitting = false
|
||||||
|
amount = 48
|
||||||
|
lifetime = 4.0
|
||||||
|
local_coords = false
|
||||||
|
texture = ExtResource( 19 )
|
||||||
|
emission_shape = 2
|
||||||
|
emission_rect_extents = Vector2( 16, 0 )
|
||||||
|
direction = Vector2( 0, -2 )
|
||||||
|
spread = 60.0
|
||||||
|
gravity = Vector2( 0, 24 )
|
||||||
|
initial_velocity = 250.0
|
||||||
|
initial_velocity_random = 0.35
|
||||||
|
linear_accel = -30.19
|
||||||
|
|
||||||
|
[node name="DissolveMask" type="Light2D" parent="."]
|
||||||
|
position = Vector2( -63, -322 )
|
||||||
|
texture = ExtResource( 20 )
|
||||||
|
mode = 3
|
||||||
|
range_item_cull_mask = 32
|
||||||
|
|
||||||
[node name="ChickenMan" type="Node2D" parent="."]
|
[node name="ChickenMan" type="Node2D" parent="."]
|
||||||
|
light_mask = 33
|
||||||
material = ExtResource( 17 )
|
material = ExtResource( 17 )
|
||||||
position = Vector2( 0, -96 )
|
position = Vector2( 0, -96 )
|
||||||
|
|
||||||
|
@ -1626,10 +1753,12 @@ anims/roar = SubResource( 3 )
|
||||||
anims/shooting = SubResource( 7 )
|
anims/shooting = SubResource( 7 )
|
||||||
|
|
||||||
[node name="Hip" type="Node2D" parent="ChickenMan"]
|
[node name="Hip" type="Node2D" parent="ChickenMan"]
|
||||||
|
light_mask = 33
|
||||||
use_parent_material = true
|
use_parent_material = true
|
||||||
position = Vector2( 8, 39 )
|
position = Vector2( 8, 39 )
|
||||||
|
|
||||||
[node name="LegBack" type="Sprite" parent="ChickenMan/Hip"]
|
[node name="LegBack" type="Sprite" parent="ChickenMan/Hip"]
|
||||||
|
light_mask = 33
|
||||||
use_parent_material = true
|
use_parent_material = true
|
||||||
position = Vector2( -9.49483, 5.9499 )
|
position = Vector2( -9.49483, 5.9499 )
|
||||||
rotation = -0.0114762
|
rotation = -0.0114762
|
||||||
|
@ -1638,6 +1767,7 @@ texture = ExtResource( 11 )
|
||||||
offset = Vector2( -7.02542, -13.2616 )
|
offset = Vector2( -7.02542, -13.2616 )
|
||||||
|
|
||||||
[node name="Body" type="Sprite" parent="ChickenMan/Hip"]
|
[node name="Body" type="Sprite" parent="ChickenMan/Hip"]
|
||||||
|
light_mask = 33
|
||||||
use_parent_material = true
|
use_parent_material = true
|
||||||
position = Vector2( -1, 1 )
|
position = Vector2( -1, 1 )
|
||||||
rotation = 1.55932
|
rotation = 1.55932
|
||||||
|
@ -1647,12 +1777,14 @@ offset = Vector2( -14.8861, -10.6454 )
|
||||||
flip_v = true
|
flip_v = true
|
||||||
|
|
||||||
[node name="HitboxTransform" type="RemoteTransform2D" parent="ChickenMan/Hip/Body"]
|
[node name="HitboxTransform" type="RemoteTransform2D" parent="ChickenMan/Hip/Body"]
|
||||||
|
light_mask = 33
|
||||||
position = Vector2( -10.255, -0.546865 )
|
position = Vector2( -10.255, -0.546865 )
|
||||||
rotation = -1.57079
|
rotation = -1.57079
|
||||||
remote_path = NodePath("../../../../Hitbox/Body")
|
remote_path = NodePath("../../../../Hitbox/Body")
|
||||||
update_scale = false
|
update_scale = false
|
||||||
|
|
||||||
[node name="BackArm" type="Node2D" parent="ChickenMan/Hip/Body"]
|
[node name="BackArm" type="Node2D" parent="ChickenMan/Hip/Body"]
|
||||||
|
light_mask = 33
|
||||||
use_parent_material = true
|
use_parent_material = true
|
||||||
position = Vector2( -15.0905, 7.09585 )
|
position = Vector2( -15.0905, 7.09585 )
|
||||||
rotation = -1.55929
|
rotation = -1.55929
|
||||||
|
@ -1664,6 +1796,7 @@ segments = 4
|
||||||
target = NodePath("HandBack")
|
target = NodePath("HandBack")
|
||||||
|
|
||||||
[node name="HandBack" type="Sprite" parent="ChickenMan/Hip/Body/BackArm"]
|
[node name="HandBack" type="Sprite" parent="ChickenMan/Hip/Body/BackArm"]
|
||||||
|
light_mask = 33
|
||||||
material = SubResource( 1 )
|
material = SubResource( 1 )
|
||||||
use_parent_material = true
|
use_parent_material = true
|
||||||
position = Vector2( -34, 6 )
|
position = Vector2( -34, 6 )
|
||||||
|
@ -1675,6 +1808,7 @@ region_rect = Rect2( 0, 0, 16, 12 )
|
||||||
|
|
||||||
[node name="BackArmBorder" type="Node2D" parent="ChickenMan/Hip/Body/BackArm"]
|
[node name="BackArmBorder" type="Node2D" parent="ChickenMan/Hip/Body/BackArm"]
|
||||||
show_behind_parent = true
|
show_behind_parent = true
|
||||||
|
light_mask = 33
|
||||||
use_parent_material = true
|
use_parent_material = true
|
||||||
script = ExtResource( 12 )
|
script = ExtResource( 12 )
|
||||||
texture = ExtResource( 16 )
|
texture = ExtResource( 16 )
|
||||||
|
@ -1682,6 +1816,7 @@ segments = 4
|
||||||
target = NodePath("../HandBack")
|
target = NodePath("../HandBack")
|
||||||
|
|
||||||
[node name="FrontArm" type="Node2D" parent="ChickenMan/Hip/Body"]
|
[node name="FrontArm" type="Node2D" parent="ChickenMan/Hip/Body"]
|
||||||
|
light_mask = 33
|
||||||
use_parent_material = true
|
use_parent_material = true
|
||||||
position = Vector2( -15.3626, -6.5891 )
|
position = Vector2( -15.3626, -6.5891 )
|
||||||
rotation = -1.55929
|
rotation = -1.55929
|
||||||
|
@ -1693,6 +1828,7 @@ segments = 4
|
||||||
target = NodePath("HandFront")
|
target = NodePath("HandFront")
|
||||||
|
|
||||||
[node name="HandFront" type="Sprite" parent="ChickenMan/Hip/Body/FrontArm"]
|
[node name="HandFront" type="Sprite" parent="ChickenMan/Hip/Body/FrontArm"]
|
||||||
|
light_mask = 33
|
||||||
material = SubResource( 1 )
|
material = SubResource( 1 )
|
||||||
use_parent_material = true
|
use_parent_material = true
|
||||||
position = Vector2( -31.9996, 22.0018 )
|
position = Vector2( -31.9996, 22.0018 )
|
||||||
|
@ -1704,6 +1840,7 @@ region_rect = Rect2( 0, 0, 16, 12 )
|
||||||
|
|
||||||
[node name="FrontArmBorder" type="Node2D" parent="ChickenMan/Hip/Body/FrontArm"]
|
[node name="FrontArmBorder" type="Node2D" parent="ChickenMan/Hip/Body/FrontArm"]
|
||||||
show_behind_parent = true
|
show_behind_parent = true
|
||||||
|
light_mask = 33
|
||||||
use_parent_material = true
|
use_parent_material = true
|
||||||
script = ExtResource( 12 )
|
script = ExtResource( 12 )
|
||||||
texture = ExtResource( 16 )
|
texture = ExtResource( 16 )
|
||||||
|
@ -1712,6 +1849,7 @@ target = NodePath("../HandFront")
|
||||||
|
|
||||||
[node name="Neck" type="Sprite" parent="ChickenMan/Hip/Body"]
|
[node name="Neck" type="Sprite" parent="ChickenMan/Hip/Body"]
|
||||||
show_behind_parent = true
|
show_behind_parent = true
|
||||||
|
light_mask = 33
|
||||||
use_parent_material = true
|
use_parent_material = true
|
||||||
position = Vector2( -25.8929, -8.09683 )
|
position = Vector2( -25.8929, -8.09683 )
|
||||||
rotation = -2.40547
|
rotation = -2.40547
|
||||||
|
@ -1721,12 +1859,14 @@ texture = ExtResource( 10 )
|
||||||
offset = Vector2( -12.5338, -3.19571 )
|
offset = Vector2( -12.5338, -3.19571 )
|
||||||
|
|
||||||
[node name="HitboxTransform" type="RemoteTransform2D" parent="ChickenMan/Hip/Body/Neck"]
|
[node name="HitboxTransform" type="RemoteTransform2D" parent="ChickenMan/Hip/Body/Neck"]
|
||||||
|
light_mask = 33
|
||||||
position = Vector2( 7.47667, -8.4856 )
|
position = Vector2( 7.47667, -8.4856 )
|
||||||
rotation = -2.96856
|
rotation = -2.96856
|
||||||
remote_path = NodePath("../../../../../Hitbox/Brain")
|
remote_path = NodePath("../../../../../Hitbox/Brain")
|
||||||
update_scale = false
|
update_scale = false
|
||||||
|
|
||||||
[node name="BreathParticles" type="CPUParticles2D" parent="ChickenMan/Hip/Body/Neck"]
|
[node name="BreathParticles" type="CPUParticles2D" parent="ChickenMan/Hip/Body/Neck"]
|
||||||
|
light_mask = 33
|
||||||
position = Vector2( 2.97876, -8.17331 )
|
position = Vector2( 2.97876, -8.17331 )
|
||||||
rotation = 0.437951
|
rotation = 0.437951
|
||||||
scale = Vector2( 0.724233, 0.497597 )
|
scale = Vector2( 0.724233, 0.497597 )
|
||||||
|
@ -1758,6 +1898,7 @@ scale_amount_curve = SubResource( 8 )
|
||||||
color_ramp = SubResource( 9 )
|
color_ramp = SubResource( 9 )
|
||||||
|
|
||||||
[node name="Headlower" type="Sprite" parent="ChickenMan/Hip/Body/Neck"]
|
[node name="Headlower" type="Sprite" parent="ChickenMan/Hip/Body/Neck"]
|
||||||
|
light_mask = 33
|
||||||
use_parent_material = true
|
use_parent_material = true
|
||||||
position = Vector2( 6.09458, -5.24508 )
|
position = Vector2( 6.09458, -5.24508 )
|
||||||
rotation = 0.964506
|
rotation = 0.964506
|
||||||
|
@ -1767,12 +1908,14 @@ texture = ExtResource( 8 )
|
||||||
offset = Vector2( -23.6288, 1.97347 )
|
offset = Vector2( -23.6288, 1.97347 )
|
||||||
|
|
||||||
[node name="HitboxTransform" type="RemoteTransform2D" parent="ChickenMan/Hip/Body/Neck/Headlower"]
|
[node name="HitboxTransform" type="RemoteTransform2D" parent="ChickenMan/Hip/Body/Neck/Headlower"]
|
||||||
|
light_mask = 33
|
||||||
position = Vector2( -15.6932, 6.83872 )
|
position = Vector2( -15.6932, 6.83872 )
|
||||||
rotation = -4.70641
|
rotation = -4.70641
|
||||||
remote_path = NodePath("../../../../../../Hitbox/LowerJaw")
|
remote_path = NodePath("../../../../../../Hitbox/LowerJaw")
|
||||||
update_scale = false
|
update_scale = false
|
||||||
|
|
||||||
[node name="Headupper" type="Sprite" parent="ChickenMan/Hip/Body/Neck"]
|
[node name="Headupper" type="Sprite" parent="ChickenMan/Hip/Body/Neck"]
|
||||||
|
light_mask = 33
|
||||||
use_parent_material = true
|
use_parent_material = true
|
||||||
position = Vector2( 6.70938, -6.04151 )
|
position = Vector2( 6.70938, -6.04151 )
|
||||||
rotation = 0.801398
|
rotation = 0.801398
|
||||||
|
@ -1782,18 +1925,21 @@ texture = ExtResource( 9 )
|
||||||
offset = Vector2( -21.4816, 1.20875 )
|
offset = Vector2( -21.4816, 1.20875 )
|
||||||
|
|
||||||
[node name="HitboxTransform" type="RemoteTransform2D" parent="ChickenMan/Hip/Body/Neck/Headupper"]
|
[node name="HitboxTransform" type="RemoteTransform2D" parent="ChickenMan/Hip/Body/Neck/Headupper"]
|
||||||
|
light_mask = 33
|
||||||
position = Vector2( -15.711, -8.80663 )
|
position = Vector2( -15.711, -8.80663 )
|
||||||
rotation = -1.57994
|
rotation = -1.57994
|
||||||
remote_path = NodePath("../../../../../../Hitbox/UpperJaw")
|
remote_path = NodePath("../../../../../../Hitbox/UpperJaw")
|
||||||
update_scale = false
|
update_scale = false
|
||||||
|
|
||||||
[node name="Eye" type="Sprite" parent="ChickenMan/Hip/Body/Neck/Headupper"]
|
[node name="Eye" type="Sprite" parent="ChickenMan/Hip/Body/Neck/Headupper"]
|
||||||
|
light_mask = 33
|
||||||
use_parent_material = true
|
use_parent_material = true
|
||||||
position = Vector2( -22.5774, -9.61752 )
|
position = Vector2( -22.5774, -9.61752 )
|
||||||
texture = ExtResource( 7 )
|
texture = ExtResource( 7 )
|
||||||
offset = Vector2( 20.9715, 12.1291 )
|
offset = Vector2( 20.9715, 12.1291 )
|
||||||
|
|
||||||
[node name="LegFront" type="Sprite" parent="ChickenMan/Hip"]
|
[node name="LegFront" type="Sprite" parent="ChickenMan/Hip"]
|
||||||
|
light_mask = 33
|
||||||
use_parent_material = true
|
use_parent_material = true
|
||||||
position = Vector2( 12.9916, 6.2433 )
|
position = Vector2( 12.9916, 6.2433 )
|
||||||
rotation = -0.0114762
|
rotation = -0.0114762
|
||||||
|
|
|
@ -1384,6 +1384,7 @@ update_scale = false
|
||||||
[node name="Head" type="Sprite" parent="Axle"]
|
[node name="Head" type="Sprite" parent="Axle"]
|
||||||
unique_name_in_owner = true
|
unique_name_in_owner = true
|
||||||
position = Vector2( 0, -4 )
|
position = Vector2( 0, -4 )
|
||||||
|
z_index = 5
|
||||||
texture = ExtResource( 6 )
|
texture = ExtResource( 6 )
|
||||||
offset = Vector2( -13, -25 )
|
offset = Vector2( -13, -25 )
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
|
@ -1490,6 +1491,7 @@ region_rect = Rect2( 0, 0, 256, 16 )
|
||||||
|
|
||||||
[node name="BeamShape" type="CollisionShape2D" parent="Axle/Head/Beam/Hitbox"]
|
[node name="BeamShape" type="CollisionShape2D" parent="Axle/Head/Beam/Hitbox"]
|
||||||
position = Vector2( -128, 0 )
|
position = Vector2( -128, 0 )
|
||||||
|
z_index = 10
|
||||||
shape = SubResource( 6 )
|
shape = SubResource( 6 )
|
||||||
disabled = true
|
disabled = true
|
||||||
|
|
||||||
|
@ -1551,6 +1553,7 @@ rotation = 3.40339
|
||||||
|
|
||||||
[node name="JointFront" type="Sprite" parent="Axle"]
|
[node name="JointFront" type="Sprite" parent="Axle"]
|
||||||
position = Vector2( 11, -4 )
|
position = Vector2( 11, -4 )
|
||||||
|
z_index = 5
|
||||||
texture = ExtResource( 7 )
|
texture = ExtResource( 7 )
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
"_edit_bone_": true,
|
"_edit_bone_": true,
|
||||||
|
@ -1619,6 +1622,7 @@ rotation_lock = 0.0
|
||||||
|
|
||||||
[node name="KneeFront" type="Sprite" parent="Axle"]
|
[node name="KneeFront" type="Sprite" parent="Axle"]
|
||||||
position = Vector2( 27.2509, 28.1233 )
|
position = Vector2( 27.2509, 28.1233 )
|
||||||
|
z_index = 5
|
||||||
texture = ExtResource( 8 )
|
texture = ExtResource( 8 )
|
||||||
hframes = 8
|
hframes = 8
|
||||||
script = ExtResource( 10 )
|
script = ExtResource( 10 )
|
||||||
|
|
133
shaders/elecricity_no_blood.tres
Normal file
133
shaders/elecricity_no_blood.tres
Normal file
|
@ -0,0 +1,133 @@
|
||||||
|
[gd_resource type="Shader" format=2]
|
||||||
|
|
||||||
|
[resource]
|
||||||
|
code = "shader_type canvas_item;
|
||||||
|
|
||||||
|
const float TAU = 6.28319;
|
||||||
|
|
||||||
|
uniform float arc_speed = 4.0;
|
||||||
|
uniform float arc_fps = 10.0;
|
||||||
|
uniform float arc_scale = 8.0;
|
||||||
|
uniform float arc_threshold = 0.15;
|
||||||
|
uniform vec4 arc_color : hint_color = vec4(1.0, 0.93, 0.0, 1.0);
|
||||||
|
uniform float gamma = 2.0;
|
||||||
|
uniform float flash_rate = 3.0;
|
||||||
|
uniform float flash_intensity = 0.2;
|
||||||
|
uniform vec4 background_color : hint_color = vec4(0.0, 0.0, 0.0, 0.0);
|
||||||
|
|
||||||
|
// Description : Array and textureless GLSL 2D/3D/4D simplex
|
||||||
|
// noise functions.
|
||||||
|
// Author : Ian McEwan, Ashima Arts.
|
||||||
|
// Maintainer : stegu
|
||||||
|
// Lastmod : 20110822 (ijm)
|
||||||
|
// License : Copyright (C) 2011 Ashima Arts. All rights reserved.
|
||||||
|
// Distributed under the MIT License. See LICENSE file.
|
||||||
|
// https://github.com/ashima/webgl-noise
|
||||||
|
// https://github.com/stegu/webgl-noise
|
||||||
|
//
|
||||||
|
|
||||||
|
vec3 mod289_3(vec3 x) {
|
||||||
|
return x - floor(x * (1.0 / 289.0)) * 289.0;
|
||||||
|
}
|
||||||
|
|
||||||
|
vec4 mod289_4(vec4 x) {
|
||||||
|
return x - floor(x * (1.0 / 289.0)) * 289.0;
|
||||||
|
}
|
||||||
|
|
||||||
|
vec4 permute(vec4 x) {
|
||||||
|
return mod289_4(((x * 34.0) + 1.0) * x);
|
||||||
|
}
|
||||||
|
|
||||||
|
vec4 taylorInvSqrt(vec4 r) {
|
||||||
|
return 2.79284291400159 - 0.85373472095314 * r;
|
||||||
|
}
|
||||||
|
|
||||||
|
float snoise(vec3 v) {
|
||||||
|
vec2 C = vec2(1.0/6.0, 1.0/3.0) ;
|
||||||
|
vec4 D = vec4(0.0, 0.5, 1.0, 2.0);
|
||||||
|
|
||||||
|
// First corner
|
||||||
|
vec3 i = floor(v + dot(v, vec3(C.y)) );
|
||||||
|
vec3 x0 = v - i + dot(i, vec3(C.x)) ;
|
||||||
|
|
||||||
|
// Other corners
|
||||||
|
vec3 g = step(x0.yzx, x0.xyz);
|
||||||
|
vec3 l = 1.0 - g;
|
||||||
|
vec3 i1 = min( g.xyz, l.zxy );
|
||||||
|
vec3 i2 = max( g.xyz, l.zxy );
|
||||||
|
|
||||||
|
// x0 = x0 - 0.0 + 0.0 * C.xxx;
|
||||||
|
// x1 = x0 - i1 + 1.0 * C.xxx;
|
||||||
|
// x2 = x0 - i2 + 2.0 * C.xxx;
|
||||||
|
// x3 = x0 - 1.0 + 3.0 * C.xxx;
|
||||||
|
vec3 x1 = x0 - i1 + vec3(C.x);
|
||||||
|
vec3 x2 = x0 - i2 + vec3(C.y); // 2.0*C.x = 1/3 = C.y
|
||||||
|
vec3 x3 = x0 - D.yyy; // -1.0+3.0*C.x = -0.5 = -D.y
|
||||||
|
|
||||||
|
// Permutations
|
||||||
|
i = mod289_3(i);
|
||||||
|
vec4 p = permute( permute( permute(
|
||||||
|
i.z + vec4(0.0, i1.z, i2.z, 1.0 ))
|
||||||
|
+ i.y + vec4(0.0, i1.y, i2.y, 1.0 ))
|
||||||
|
+ i.x + vec4(0.0, i1.x, i2.x, 1.0 ));
|
||||||
|
|
||||||
|
// Gradients: 7x7 points over a square, mapped onto an octahedron.
|
||||||
|
// The ring size 17*17 = 289 is close to a multiple of 49 (49*6 = 294)
|
||||||
|
float n_ = 0.142857142857; // 1.0/7.0
|
||||||
|
vec3 ns = n_ * D.wyz - D.xzx;
|
||||||
|
|
||||||
|
vec4 j = p - 49.0 * floor(p * ns.z * ns.z); // mod(p,7*7)
|
||||||
|
|
||||||
|
vec4 x_ = floor(j * ns.z);
|
||||||
|
vec4 y_ = floor(j - 7.0 * x_ ); // mod(j,N)
|
||||||
|
|
||||||
|
vec4 x = x_ *ns.x + vec4(ns.y);
|
||||||
|
vec4 y = y_ *ns.x + vec4(ns.y);
|
||||||
|
vec4 h = 1.0 - abs(x) - abs(y);
|
||||||
|
|
||||||
|
vec4 b0 = vec4( x.xy, y.xy );
|
||||||
|
vec4 b1 = vec4( x.zw, y.zw );
|
||||||
|
|
||||||
|
//vec4 s0 = vec4(lessThan(b0,0.0))*2.0 - 1.0;
|
||||||
|
//vec4 s1 = vec4(lessThan(b1,0.0))*2.0 - 1.0;
|
||||||
|
vec4 s0 = floor(b0)*2.0 + 1.0;
|
||||||
|
vec4 s1 = floor(b1)*2.0 + 1.0;
|
||||||
|
vec4 sh = -step(h, vec4(0.0));
|
||||||
|
|
||||||
|
vec4 a0 = b0.xzyw + s0.xzyw*sh.xxyy ;
|
||||||
|
vec4 a1 = b1.xzyw + s1.xzyw*sh.zzww ;
|
||||||
|
|
||||||
|
vec3 p0 = vec3(a0.xy,h.x);
|
||||||
|
vec3 p1 = vec3(a0.zw,h.y);
|
||||||
|
vec3 p2 = vec3(a1.xy,h.z);
|
||||||
|
vec3 p3 = vec3(a1.zw,h.w);
|
||||||
|
|
||||||
|
//Normalise gradients
|
||||||
|
vec4 norm = taylorInvSqrt(vec4(dot(p0,p0), dot(p1,p1), dot(p2, p2), dot(p3,p3)));
|
||||||
|
p0 *= norm.x;
|
||||||
|
p1 *= norm.y;
|
||||||
|
p2 *= norm.z;
|
||||||
|
p3 *= norm.w;
|
||||||
|
|
||||||
|
// Mix final noise value
|
||||||
|
vec4 m = max(0.6 - vec4(dot(x0,x0), dot(x1,x1), dot(x2,x2), dot(x3,x3)), vec4(0.0));
|
||||||
|
m = m * m;
|
||||||
|
return 22.0 * dot( m*m, vec4( dot(p0,x0), dot(p1,x1), dot(p2,x2), dot(p3,x3) ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void fragment() {
|
||||||
|
vec4 tex_color = texture(TEXTURE, UV);
|
||||||
|
tex_color.rgb = pow(tex_color.rgb, vec3(1.0 / (gamma + sin(fract(TIME * floor(flash_rate)) * TAU) * flash_intensity)));
|
||||||
|
tex_color.rgb = mix(tex_color.rgb, background_color.rgb, background_color.a);
|
||||||
|
// tex_color.rgb = pow(tex_color.rgb, vec3(0.5 + sin(TIME * 20.0) * 0.1));
|
||||||
|
// tex_color.rgb = pow(tex_color.rgb, vec3(1.0 / 2.0));
|
||||||
|
// tex_color.rgb += (round(sin(TIME * 20.0) * 4.0)) * 0.25 * 0.05;
|
||||||
|
float n = snoise(vec3(SCREEN_UV / SCREEN_PIXEL_SIZE / arc_scale, (floor(TIME) + (floor(fract(TIME) * arc_fps)) / arc_fps) * arc_speed));
|
||||||
|
// float n = snoise(vec3(SCREEN_UV / SCREEN_PIXEL_SIZE / arc_scale, floor(fract(TIME) * arc_fps) * arc_speed / arc_fps));
|
||||||
|
n = step(abs(n), arc_threshold);
|
||||||
|
COLOR = vec4(mix(tex_color.rgb, arc_color.rgb, n * arc_color.a), tex_color.a);
|
||||||
|
// float worley = worley(SCREEN_UV, 128.0, 96.0);
|
||||||
|
// vec4 tex_color = texture(TEXTURE, UV);
|
||||||
|
// COLOR = vec4(mix(vec3(1.0, 1.0, 0.2), tex_color.rgb, step(worley, 0.5)), tex_color.a);
|
||||||
|
}"
|
Loading…
Add table
Add a link
Reference in a new issue