tie fami cutscene into boss3 level
This commit is contained in:
parent
7cf99cb510
commit
87973f77e0
12 changed files with 568 additions and 60 deletions
3
cutscenes/fami_cutscene.gd
Normal file
3
cutscenes/fami_cutscene.gd
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
extends Node2D
|
||||||
|
|
||||||
|
signal cutscene_finished
|
|
@ -1,4 +1,4 @@
|
||||||
[gd_scene load_steps=34 format=2]
|
[gd_scene load_steps=42 format=2]
|
||||||
|
|
||||||
[ext_resource path="res://shaders/recolor_border.shader" type="Shader" id=1]
|
[ext_resource path="res://shaders/recolor_border.shader" type="Shader" id=1]
|
||||||
[ext_resource path="res://graphics/player/palettes/default.png" type="Texture" id=2]
|
[ext_resource path="res://graphics/player/palettes/default.png" type="Texture" id=2]
|
||||||
|
@ -9,7 +9,7 @@
|
||||||
[ext_resource path="res://tilesets/t_station.tres" type="TileSet" id=7]
|
[ext_resource path="res://tilesets/t_station.tres" type="TileSet" id=7]
|
||||||
[ext_resource path="res://tilesets/t_laboratory.tres" type="TileSet" id=8]
|
[ext_resource path="res://tilesets/t_laboratory.tres" type="TileSet" id=8]
|
||||||
[ext_resource path="res://graphics/npc/fami_human.png" type="Texture" id=9]
|
[ext_resource path="res://graphics/npc/fami_human.png" type="Texture" id=9]
|
||||||
[ext_resource path="res://graphics/backgrounds/fami_rooftop.png" type="Texture" id=10]
|
[ext_resource path="res://cutscenes/fami_cutscene.gd" type="Script" id=10]
|
||||||
[ext_resource path="res://audio/sounds/fami_voice.ogg" type="AudioStream" id=11]
|
[ext_resource path="res://audio/sounds/fami_voice.ogg" type="AudioStream" id=11]
|
||||||
[ext_resource path="res://shaders/1px_border.gdshader" type="Shader" id=12]
|
[ext_resource path="res://shaders/1px_border.gdshader" type="Shader" id=12]
|
||||||
[ext_resource path="res://graphics/collectibles/shard.png" type="Texture" id=13]
|
[ext_resource path="res://graphics/collectibles/shard.png" type="Texture" id=13]
|
||||||
|
@ -17,6 +17,8 @@
|
||||||
[ext_resource path="res://graphics/enemy/cop/cop_shoot.png" type="Texture" id=15]
|
[ext_resource path="res://graphics/enemy/cop/cop_shoot.png" type="Texture" id=15]
|
||||||
[ext_resource path="res://graphics/npc/fami_human_walk.png" type="Texture" id=16]
|
[ext_resource path="res://graphics/npc/fami_human_walk.png" type="Texture" id=16]
|
||||||
[ext_resource path="res://graphics/npc/fami_human_punch.png" type="Texture" id=17]
|
[ext_resource path="res://graphics/npc/fami_human_punch.png" type="Texture" id=17]
|
||||||
|
[ext_resource path="res://graphics/npc/fami_human_transform.png" type="Texture" id=18]
|
||||||
|
[ext_resource path="res://objects/enemy/boss/fami_transform.material" type="Material" id=19]
|
||||||
|
|
||||||
[sub_resource type="ShaderMaterial" id=1]
|
[sub_resource type="ShaderMaterial" id=1]
|
||||||
shader = ExtResource( 1 )
|
shader = ExtResource( 1 )
|
||||||
|
@ -24,6 +26,30 @@ shader_param/border_color = Color( 0, 0, 0, 1 )
|
||||||
shader_param/border_corners = true
|
shader_param/border_corners = true
|
||||||
shader_param/palette = ExtResource( 2 )
|
shader_param/palette = ExtResource( 2 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=17]
|
||||||
|
atlas = ExtResource( 18 )
|
||||||
|
region = Rect2( 42, 0, 14, 24 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=18]
|
||||||
|
atlas = ExtResource( 18 )
|
||||||
|
region = Rect2( 56, 0, 14, 24 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=19]
|
||||||
|
atlas = ExtResource( 18 )
|
||||||
|
region = Rect2( 70, 0, 14, 24 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=20]
|
||||||
|
atlas = ExtResource( 18 )
|
||||||
|
region = Rect2( 0, 0, 14, 24 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=21]
|
||||||
|
atlas = ExtResource( 18 )
|
||||||
|
region = Rect2( 14, 0, 14, 24 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=22]
|
||||||
|
atlas = ExtResource( 18 )
|
||||||
|
region = Rect2( 28, 0, 14, 24 )
|
||||||
|
|
||||||
[sub_resource type="AtlasTexture" id=3]
|
[sub_resource type="AtlasTexture" id=3]
|
||||||
atlas = ExtResource( 16 )
|
atlas = ExtResource( 16 )
|
||||||
region = Rect2( 0, 0, 14, 24 )
|
region = Rect2( 0, 0, 14, 24 )
|
||||||
|
@ -47,11 +73,21 @@ animations = [ {
|
||||||
"name": "idle",
|
"name": "idle",
|
||||||
"speed": 5.0
|
"speed": 5.0
|
||||||
}, {
|
}, {
|
||||||
|
"frames": [ SubResource( 17 ), SubResource( 18 ), SubResource( 19 ) ],
|
||||||
|
"loop": true,
|
||||||
|
"name": "orb",
|
||||||
|
"speed": 8.0
|
||||||
|
}, {
|
||||||
"frames": [ ExtResource( 17 ) ],
|
"frames": [ ExtResource( 17 ) ],
|
||||||
"loop": true,
|
"loop": true,
|
||||||
"name": "punch",
|
"name": "punch",
|
||||||
"speed": 5.0
|
"speed": 5.0
|
||||||
}, {
|
}, {
|
||||||
|
"frames": [ SubResource( 20 ), SubResource( 21 ), SubResource( 22 ) ],
|
||||||
|
"loop": false,
|
||||||
|
"name": "shrink",
|
||||||
|
"speed": 8.0
|
||||||
|
}, {
|
||||||
"frames": [ SubResource( 3 ), SubResource( 4 ), SubResource( 5 ), SubResource( 6 ) ],
|
"frames": [ SubResource( 3 ), SubResource( 4 ), SubResource( 5 ), SubResource( 6 ) ],
|
||||||
"loop": true,
|
"loop": true,
|
||||||
"name": "walk",
|
"name": "walk",
|
||||||
|
@ -96,11 +132,35 @@ tracks/2/keys = {
|
||||||
"update": 1,
|
"update": 1,
|
||||||
"values": [ false ]
|
"values": [ false ]
|
||||||
}
|
}
|
||||||
|
tracks/3/type = "value"
|
||||||
|
tracks/3/path = NodePath("FamiHuman:material:shader_param/background_color")
|
||||||
|
tracks/3/interp = 1
|
||||||
|
tracks/3/loop_wrap = true
|
||||||
|
tracks/3/imported = false
|
||||||
|
tracks/3/enabled = true
|
||||||
|
tracks/3/keys = {
|
||||||
|
"times": PoolRealArray( 0 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ Color( 0.396078, 1, 1, 0 ) ]
|
||||||
|
}
|
||||||
|
tracks/4/type = "value"
|
||||||
|
tracks/4/path = NodePath("FamiHuman:material:shader_param/arc_color")
|
||||||
|
tracks/4/interp = 1
|
||||||
|
tracks/4/loop_wrap = true
|
||||||
|
tracks/4/imported = false
|
||||||
|
tracks/4/enabled = true
|
||||||
|
tracks/4/keys = {
|
||||||
|
"times": PoolRealArray( 0 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ Color( 0.345098, 0.74902, 0.878431, 0 ) ]
|
||||||
|
}
|
||||||
|
|
||||||
[sub_resource type="Animation" id=2]
|
[sub_resource type="Animation" id=2]
|
||||||
resource_name = "cutscene"
|
resource_name = "cutscene"
|
||||||
length = 100.0
|
length = 92.0
|
||||||
step = 1.0
|
step = 0.5
|
||||||
tracks/0/type = "value"
|
tracks/0/type = "value"
|
||||||
tracks/0/path = NodePath("Label:text")
|
tracks/0/path = NodePath("Label:text")
|
||||||
tracks/0/interp = 1
|
tracks/0/interp = 1
|
||||||
|
@ -110,7 +170,7 @@ tracks/0/enabled = true
|
||||||
tracks/0/keys = {
|
tracks/0/keys = {
|
||||||
"times": PoolRealArray( 0.1, 4.95088, 14.1874, 20.9397, 30.797, 40.2982, 49.7601, 59.7868, 64.7672, 71.5391, 72.2 ),
|
"times": PoolRealArray( 0.1, 4.95088, 14.1874, 20.9397, 30.797, 40.2982, 49.7601, 59.7868, 64.7672, 71.5391, 72.2 ),
|
||||||
"transitions": PoolRealArray( 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ),
|
"transitions": PoolRealArray( 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ),
|
||||||
"update": 1,
|
"update": 2,
|
||||||
"values": [ "Aha so you've made it this far, however your efforts are all in vain.
|
"values": [ "Aha so you've made it this far, however your efforts are all in vain.
|
||||||
", "You see, SG,
|
", "You see, SG,
|
||||||
I plan to use the shards to power my spaceship, its exhaust will be so powerful, you peasants will all be vaporized. ", "Me and all of the wonderful billionaires of the world will head to planet X, the newly discovered planet beyond pluto.", "I've heard you want to start a revolution. Well, I'll have you know I kicked off my own revolution in 2068, and to be honest I don't quite see why you want my revolution to end.", "You know what they say, the freer the market, the freer the people, and ever since then I've never felt so free! I think your revolution is a foolish pipe dream! ", "Adam Smith once said \"Nobody but a beggar chooses to depend chiefly upon the benevolence of his fellow citizens\", your commie society could never work!", "I will defend my status quo as fiercly as possible! It was not by my hand that our society was erected, but it will be by mine that it is upheld!", "Oh? How will i reconstruct the Zircon Ultima? You're just the perfect tool for that. ", "While you've been on your gay little adventure collecting shards I've been waiting for this very moment to take them all from you!", "Have at you!", "" ]
|
I plan to use the shards to power my spaceship, its exhaust will be so powerful, you peasants will all be vaporized. ", "Me and all of the wonderful billionaires of the world will head to planet X, the newly discovered planet beyond pluto.", "I've heard you want to start a revolution. Well, I'll have you know I kicked off my own revolution in 2068, and to be honest I don't quite see why you want my revolution to end.", "You know what they say, the freer the market, the freer the people, and ever since then I've never felt so free! I think your revolution is a foolish pipe dream! ", "Adam Smith once said \"Nobody but a beggar chooses to depend chiefly upon the benevolence of his fellow citizens\", your commie society could never work!", "I will defend my status quo as fiercly as possible! It was not by my hand that our society was erected, but it will be by mine that it is upheld!", "Oh? How will i reconstruct the Zircon Ultima? You're just the perfect tool for that. ", "While you've been on your gay little adventure collecting shards I've been waiting for this very moment to take them all from you!", "Have at you!", "" ]
|
||||||
|
@ -134,10 +194,10 @@ tracks/2/loop_wrap = true
|
||||||
tracks/2/imported = false
|
tracks/2/imported = false
|
||||||
tracks/2/enabled = true
|
tracks/2/enabled = true
|
||||||
tracks/2/keys = {
|
tracks/2/keys = {
|
||||||
"times": PoolRealArray( 72.3, 74 ),
|
"times": PoolRealArray( 0, 72.3, 74 ),
|
||||||
"transitions": PoolRealArray( 1, 1 ),
|
"transitions": PoolRealArray( 1, 1, 1 ),
|
||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( -8, 169 ), Vector2( 72, 169 ) ]
|
"values": [ Vector2( -8, 169 ), Vector2( -8, 169 ), Vector2( 72, 169 ) ]
|
||||||
}
|
}
|
||||||
tracks/3/type = "value"
|
tracks/3/type = "value"
|
||||||
tracks/3/path = NodePath("Cop:animation")
|
tracks/3/path = NodePath("Cop:animation")
|
||||||
|
@ -158,10 +218,10 @@ tracks/4/loop_wrap = true
|
||||||
tracks/4/imported = false
|
tracks/4/imported = false
|
||||||
tracks/4/enabled = true
|
tracks/4/enabled = true
|
||||||
tracks/4/keys = {
|
tracks/4/keys = {
|
||||||
"times": PoolRealArray( 0, 75, 77, 77.4, 83, 85 ),
|
"times": PoolRealArray( 0, 75, 77, 77.4, 83, 85, 89, 89.375 ),
|
||||||
"transitions": PoolRealArray( 1, 1, 1, 1, 1, 1 ),
|
"transitions": PoolRealArray( 1, 1, 1, 1, 1, 1, 1, 1 ),
|
||||||
"update": 1,
|
"update": 1,
|
||||||
"values": [ "idle", "walk", "idle", "punch", "walk", "idle" ]
|
"values": [ "idle", "walk", "idle", "punch", "walk", "idle", "shrink", "orb" ]
|
||||||
}
|
}
|
||||||
tracks/5/type = "value"
|
tracks/5/type = "value"
|
||||||
tracks/5/path = NodePath("FamiHuman:position")
|
tracks/5/path = NodePath("FamiHuman:position")
|
||||||
|
@ -170,10 +230,10 @@ tracks/5/loop_wrap = true
|
||||||
tracks/5/imported = false
|
tracks/5/imported = false
|
||||||
tracks/5/enabled = true
|
tracks/5/enabled = true
|
||||||
tracks/5/keys = {
|
tracks/5/keys = {
|
||||||
"times": PoolRealArray( 75, 77, 83, 85 ),
|
"times": PoolRealArray( 75, 77, 83, 85, 89, 91, 92 ),
|
||||||
"transitions": PoolRealArray( 1, 1, 1, 1 ),
|
"transitions": PoolRealArray( 1, 1, 1, 1, 1, 1, 1 ),
|
||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( 160, 167 ), Vector2( 105, 167 ), Vector2( 105, 167 ), Vector2( 160, 167 ) ]
|
"values": [ Vector2( 160, 167 ), Vector2( 105, 167 ), Vector2( 105, 167 ), Vector2( 160, 167 ), Vector2( 160, 167 ), Vector2( 160, 167 ), Vector2( 160, 83 ) ]
|
||||||
}
|
}
|
||||||
tracks/6/type = "value"
|
tracks/6/type = "value"
|
||||||
tracks/6/path = NodePath("ShardParticles:emitting")
|
tracks/6/path = NodePath("ShardParticles:emitting")
|
||||||
|
@ -199,6 +259,44 @@ tracks/7/keys = {
|
||||||
"update": 1,
|
"update": 1,
|
||||||
"values": [ false, true, false ]
|
"values": [ false, true, false ]
|
||||||
}
|
}
|
||||||
|
tracks/8/type = "value"
|
||||||
|
tracks/8/path = NodePath("FamiHuman:material:shader_param/background_color")
|
||||||
|
tracks/8/interp = 1
|
||||||
|
tracks/8/loop_wrap = true
|
||||||
|
tracks/8/imported = false
|
||||||
|
tracks/8/enabled = true
|
||||||
|
tracks/8/keys = {
|
||||||
|
"times": PoolRealArray( 0, 88, 89 ),
|
||||||
|
"transitions": PoolRealArray( 1, 1, 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ Color( 0.396078, 1, 1, 0 ), Color( 0.396078, 1, 1, 0 ), Color( 0.396078, 1, 1, 1 ) ]
|
||||||
|
}
|
||||||
|
tracks/9/type = "value"
|
||||||
|
tracks/9/path = NodePath("FamiHuman:material:shader_param/arc_color")
|
||||||
|
tracks/9/interp = 1
|
||||||
|
tracks/9/loop_wrap = true
|
||||||
|
tracks/9/imported = false
|
||||||
|
tracks/9/enabled = true
|
||||||
|
tracks/9/keys = {
|
||||||
|
"times": PoolRealArray( 0, 88, 89 ),
|
||||||
|
"transitions": PoolRealArray( 1, 1, 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ Color( 0.345098, 0.74902, 0.878431, 0 ), Color( 0.345098, 0.74902, 0.878431, 0 ), Color( 0.345098, 0.74902, 0.878431, 1 ) ]
|
||||||
|
}
|
||||||
|
tracks/10/type = "method"
|
||||||
|
tracks/10/path = NodePath(".")
|
||||||
|
tracks/10/interp = 1
|
||||||
|
tracks/10/loop_wrap = true
|
||||||
|
tracks/10/imported = false
|
||||||
|
tracks/10/enabled = true
|
||||||
|
tracks/10/keys = {
|
||||||
|
"times": PoolRealArray( 92 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"values": [ {
|
||||||
|
"args": [ "cutscene_finished" ],
|
||||||
|
"method": "emit_signal"
|
||||||
|
} ]
|
||||||
|
}
|
||||||
|
|
||||||
[sub_resource type="ShaderMaterial" id=8]
|
[sub_resource type="ShaderMaterial" id=8]
|
||||||
shader = ExtResource( 12 )
|
shader = ExtResource( 12 )
|
||||||
|
@ -245,13 +343,7 @@ shader_param/border_color = Color( 0, 0, 0, 1 )
|
||||||
shader_param/border_corners = false
|
shader_param/border_corners = false
|
||||||
|
|
||||||
[node name="FamiCutscene" type="Node2D"]
|
[node name="FamiCutscene" type="Node2D"]
|
||||||
|
script = ExtResource( 10 )
|
||||||
[node name="Sprite" type="Sprite" parent="."]
|
|
||||||
position = Vector2( 0, 96 )
|
|
||||||
texture = ExtResource( 10 )
|
|
||||||
__meta__ = {
|
|
||||||
"_edit_lock_": true
|
|
||||||
}
|
|
||||||
|
|
||||||
[node name="TileMap" type="TileMap" parent="."]
|
[node name="TileMap" type="TileMap" parent="."]
|
||||||
tile_set = ExtResource( 7 )
|
tile_set = ExtResource( 7 )
|
||||||
|
@ -272,8 +364,8 @@ margin_top = 48.0
|
||||||
margin_right = 240.0
|
margin_right = 240.0
|
||||||
margin_bottom = 136.0
|
margin_bottom = 136.0
|
||||||
theme = ExtResource( 3 )
|
theme = ExtResource( 3 )
|
||||||
text = "Aha so you've made it this far, however your efforts are all in vain.
|
text = "You see, SG,
|
||||||
"
|
I plan to use the shards to power my spaceship, its exhaust will be so powerful, you peasants will all be vaporized. "
|
||||||
align = 1
|
align = 1
|
||||||
valign = 1
|
valign = 1
|
||||||
autowrap = true
|
autowrap = true
|
||||||
|
@ -285,6 +377,7 @@ texture = ExtResource( 6 )
|
||||||
script = ExtResource( 5 )
|
script = ExtResource( 5 )
|
||||||
|
|
||||||
[node name="FamiHuman" type="AnimatedSprite" parent="."]
|
[node name="FamiHuman" type="AnimatedSprite" parent="."]
|
||||||
|
material = ExtResource( 19 )
|
||||||
position = Vector2( 160, 167 )
|
position = Vector2( 160, 167 )
|
||||||
scale = Vector2( -1, 1 )
|
scale = Vector2( -1, 1 )
|
||||||
frames = SubResource( 7 )
|
frames = SubResource( 7 )
|
||||||
|
@ -296,12 +389,13 @@ stream = ExtResource( 11 )
|
||||||
|
|
||||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
|
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
|
||||||
autoplay = "cutscene"
|
autoplay = "cutscene"
|
||||||
|
playback_process_mode = 0
|
||||||
anims/RESET = SubResource( 16 )
|
anims/RESET = SubResource( 16 )
|
||||||
anims/cutscene = SubResource( 2 )
|
anims/cutscene = SubResource( 2 )
|
||||||
|
|
||||||
[node name="Cop" type="AnimatedSprite" parent="."]
|
[node name="Cop" type="AnimatedSprite" parent="."]
|
||||||
material = SubResource( 8 )
|
material = SubResource( 8 )
|
||||||
position = Vector2( 72, 169 )
|
position = Vector2( -8, 169 )
|
||||||
frames = SubResource( 13 )
|
frames = SubResource( 13 )
|
||||||
animation = "gun"
|
animation = "gun"
|
||||||
playing = true
|
playing = true
|
||||||
|
|
BIN
graphics/enemy/antlion_body_border.png
Normal file
BIN
graphics/enemy/antlion_body_border.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 4.6 KiB |
35
graphics/enemy/antlion_body_border.png.import
Normal file
35
graphics/enemy/antlion_body_border.png.import
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/antlion_body_border.png-eedaa961c8d23661449fab8f5d3562f5.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://graphics/enemy/antlion_body_border.png"
|
||||||
|
dest_files=[ "res://.import/antlion_body_border.png-eedaa961c8d23661449fab8f5d3562f5.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
|
BIN
graphics/npc/fami_human_transform.png
Normal file
BIN
graphics/npc/fami_human_transform.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 4.3 KiB |
35
graphics/npc/fami_human_transform.png.import
Normal file
35
graphics/npc/fami_human_transform.png.import
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/fami_human_transform.png-2f2a884b33decf15ad67d39c6798c5de.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://graphics/npc/fami_human_transform.png"
|
||||||
|
dest_files=[ "res://.import/fami_human_transform.png-2f2a884b33decf15ad67d39c6798c5de.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
|
|
@ -3,8 +3,14 @@ extends "res://maps/map.gd"
|
||||||
|
|
||||||
onready var sg_health: HSlider = $"%SGHealth"
|
onready var sg_health: HSlider = $"%SGHealth"
|
||||||
onready var fami_health: HSlider = $"%FamiHealth"
|
onready var fami_health: HSlider = $"%FamiHealth"
|
||||||
|
onready var sg2083: KinematicBody2D = $"2083"
|
||||||
|
onready var famira: Node2D = $Famira
|
||||||
|
|
||||||
|
|
||||||
|
func _ready() -> void:
|
||||||
|
sg2083.state = sg2083.State.INACTIVE
|
||||||
|
famira.animation_player.play("grow", -1.0, 0.0)
|
||||||
|
|
||||||
|
|
||||||
func _on_2083_health_changed(amount) -> void:
|
func _on_2083_health_changed(amount) -> void:
|
||||||
sg_health.value = amount
|
sg_health.value = amount
|
||||||
|
@ -12,3 +18,12 @@ func _on_2083_health_changed(amount) -> void:
|
||||||
|
|
||||||
func _on_Famira_health_changed(amount) -> void:
|
func _on_Famira_health_changed(amount) -> void:
|
||||||
fami_health.value = -amount
|
fami_health.value = -amount
|
||||||
|
|
||||||
|
|
||||||
|
func _on_cutscene_finished() -> void:
|
||||||
|
sg2083.visible = true
|
||||||
|
sg2083.state = sg2083.State.STAND
|
||||||
|
famira.visible = true
|
||||||
|
famira.animation_player.play("grow")
|
||||||
|
yield(get_tree().create_timer(0.5), "timeout")
|
||||||
|
$FamiCutscene/FamiHuman.visible = false
|
||||||
|
|
File diff suppressed because one or more lines are too long
|
@ -50,6 +50,7 @@ shader_param/arc_color = Color( 1, 0.93, 0, 1 )
|
||||||
shader_param/gamma = 2.0
|
shader_param/gamma = 2.0
|
||||||
shader_param/flash_rate = 3.0
|
shader_param/flash_rate = 3.0
|
||||||
shader_param/flash_intensity = 0.2
|
shader_param/flash_intensity = 0.2
|
||||||
|
shader_param/background_color = Color( 0, 0, 0, 0 )
|
||||||
|
|
||||||
[sub_resource type="RectangleShape2D" id=2]
|
[sub_resource type="RectangleShape2D" id=2]
|
||||||
extents = Vector2( 16.9355, 4.03226 )
|
extents = Vector2( 16.9355, 4.03226 )
|
||||||
|
|
BIN
objects/enemy/boss/fami_transform.material
Normal file
BIN
objects/enemy/boss/fami_transform.material
Normal file
Binary file not shown.
|
@ -1,4 +1,4 @@
|
||||||
[gd_scene load_steps=33 format=2]
|
[gd_scene load_steps=34 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]
|
||||||
|
@ -15,15 +15,12 @@
|
||||||
[ext_resource path="res://graphics/enemy/antlion_body.png" type="Texture" id=13]
|
[ext_resource path="res://graphics/enemy/antlion_body.png" type="Texture" id=13]
|
||||||
[ext_resource path="res://graphics/enemy/tentacle.png" type="Texture" id=14]
|
[ext_resource path="res://graphics/enemy/tentacle.png" type="Texture" id=14]
|
||||||
[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://shaders/1px_border.gdshader" type="Shader" 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]
|
||||||
|
|
||||||
[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=1]
|
|
||||||
shader = ExtResource( 2 )
|
|
||||||
shader_param/pixel_scale = 1.0
|
|
||||||
|
|
||||||
[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"
|
||||||
|
@ -168,7 +165,7 @@ tracks/11/keys = {
|
||||||
"times": PoolRealArray( 0 ),
|
"times": PoolRealArray( 0 ),
|
||||||
"transitions": PoolRealArray( 1 ),
|
"transitions": PoolRealArray( 1 ),
|
||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( 8, -57 ) ]
|
"values": [ Vector2( 8, 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")
|
||||||
|
@ -218,6 +215,66 @@ tracks/15/keys = {
|
||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ false ]
|
"values": [ false ]
|
||||||
}
|
}
|
||||||
|
tracks/16/type = "value"
|
||||||
|
tracks/16/path = NodePath("Hip:scale")
|
||||||
|
tracks/16/interp = 1
|
||||||
|
tracks/16/loop_wrap = true
|
||||||
|
tracks/16/imported = false
|
||||||
|
tracks/16/enabled = true
|
||||||
|
tracks/16/keys = {
|
||||||
|
"times": PoolRealArray( 0 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ Vector2( 1, 1 ) ]
|
||||||
|
}
|
||||||
|
tracks/17/type = "value"
|
||||||
|
tracks/17/path = NodePath("Hip:rotation_degrees")
|
||||||
|
tracks/17/interp = 1
|
||||||
|
tracks/17/loop_wrap = true
|
||||||
|
tracks/17/imported = false
|
||||||
|
tracks/17/enabled = true
|
||||||
|
tracks/17/keys = {
|
||||||
|
"times": PoolRealArray( 0 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ 0.0 ]
|
||||||
|
}
|
||||||
|
tracks/18/type = "value"
|
||||||
|
tracks/18/path = NodePath(".:material:shader_param/background_color")
|
||||||
|
tracks/18/interp = 1
|
||||||
|
tracks/18/loop_wrap = true
|
||||||
|
tracks/18/imported = false
|
||||||
|
tracks/18/enabled = true
|
||||||
|
tracks/18/keys = {
|
||||||
|
"times": PoolRealArray( 0 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ Color( 0.396078, 1, 1, 0 ) ]
|
||||||
|
}
|
||||||
|
tracks/19/type = "value"
|
||||||
|
tracks/19/path = NodePath(".:material:shader_param/arc_color")
|
||||||
|
tracks/19/interp = 1
|
||||||
|
tracks/19/loop_wrap = true
|
||||||
|
tracks/19/imported = false
|
||||||
|
tracks/19/enabled = true
|
||||||
|
tracks/19/keys = {
|
||||||
|
"times": PoolRealArray( 0 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ Color( 0.345098, 0.74902, 0.878431, 0 ) ]
|
||||||
|
}
|
||||||
|
tracks/20/type = "value"
|
||||||
|
tracks/20/path = NodePath(".:scale")
|
||||||
|
tracks/20/interp = 1
|
||||||
|
tracks/20/loop_wrap = true
|
||||||
|
tracks/20/imported = false
|
||||||
|
tracks/20/enabled = true
|
||||||
|
tracks/20/keys = {
|
||||||
|
"times": PoolRealArray( 0 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ Vector2( 1, 1 ) ]
|
||||||
|
}
|
||||||
|
|
||||||
[sub_resource type="Animation" id=4]
|
[sub_resource type="Animation" id=4]
|
||||||
resource_name = "chasing"
|
resource_name = "chasing"
|
||||||
|
@ -365,7 +422,7 @@ tracks/11/keys = {
|
||||||
"times": PoolRealArray( 0 ),
|
"times": PoolRealArray( 0 ),
|
||||||
"transitions": PoolRealArray( 1 ),
|
"transitions": PoolRealArray( 1 ),
|
||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( 8, -57 ) ]
|
"values": [ Vector2( 8, 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")
|
||||||
|
@ -526,7 +583,7 @@ tracks/11/keys = {
|
||||||
"times": PoolRealArray( 0, 0.1 ),
|
"times": PoolRealArray( 0, 0.1 ),
|
||||||
"transitions": PoolRealArray( 1, 1 ),
|
"transitions": PoolRealArray( 1, 1 ),
|
||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( 4, -57 ), Vector2( 12, -57 ) ]
|
"values": [ 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")
|
||||||
|
@ -541,6 +598,252 @@ tracks/12/keys = {
|
||||||
"values": [ false ]
|
"values": [ false ]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id=17]
|
||||||
|
resource_name = "grow"
|
||||||
|
length = 3.0
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/path = NodePath("Hip/Body:rotation_degrees")
|
||||||
|
tracks/0/interp = 1
|
||||||
|
tracks/0/loop_wrap = true
|
||||||
|
tracks/0/imported = false
|
||||||
|
tracks/0/enabled = true
|
||||||
|
tracks/0/keys = {
|
||||||
|
"times": PoolRealArray( 0 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ 89.3425 ]
|
||||||
|
}
|
||||||
|
tracks/1/type = "value"
|
||||||
|
tracks/1/path = NodePath("Hip/Body/BackArm/HandBack:position")
|
||||||
|
tracks/1/interp = 1
|
||||||
|
tracks/1/loop_wrap = true
|
||||||
|
tracks/1/imported = false
|
||||||
|
tracks/1/enabled = true
|
||||||
|
tracks/1/keys = {
|
||||||
|
"times": PoolRealArray( 0 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ Vector2( -34, 6 ) ]
|
||||||
|
}
|
||||||
|
tracks/2/type = "value"
|
||||||
|
tracks/2/path = NodePath("Hip/Body/FrontArm/HandFront:position")
|
||||||
|
tracks/2/interp = 1
|
||||||
|
tracks/2/loop_wrap = true
|
||||||
|
tracks/2/imported = false
|
||||||
|
tracks/2/enabled = true
|
||||||
|
tracks/2/keys = {
|
||||||
|
"times": PoolRealArray( 0 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ Vector2( -31.9996, 22.0018 ) ]
|
||||||
|
}
|
||||||
|
tracks/3/type = "value"
|
||||||
|
tracks/3/path = NodePath("Hip/Body/Neck:rotation_degrees")
|
||||||
|
tracks/3/interp = 1
|
||||||
|
tracks/3/loop_wrap = true
|
||||||
|
tracks/3/imported = false
|
||||||
|
tracks/3/enabled = true
|
||||||
|
tracks/3/keys = {
|
||||||
|
"times": PoolRealArray( 0 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ -137.823 ]
|
||||||
|
}
|
||||||
|
tracks/4/type = "value"
|
||||||
|
tracks/4/path = NodePath("Hip/Body/Neck/Headlower:rotation_degrees")
|
||||||
|
tracks/4/interp = 1
|
||||||
|
tracks/4/loop_wrap = true
|
||||||
|
tracks/4/imported = false
|
||||||
|
tracks/4/enabled = true
|
||||||
|
tracks/4/keys = {
|
||||||
|
"times": PoolRealArray( 0 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ 55.2621 ]
|
||||||
|
}
|
||||||
|
tracks/5/type = "value"
|
||||||
|
tracks/5/path = NodePath("Hip/Body/Neck/Headupper:rotation_degrees")
|
||||||
|
tracks/5/interp = 1
|
||||||
|
tracks/5/loop_wrap = true
|
||||||
|
tracks/5/imported = false
|
||||||
|
tracks/5/enabled = true
|
||||||
|
tracks/5/keys = {
|
||||||
|
"times": PoolRealArray( 0 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ 45.9167 ]
|
||||||
|
}
|
||||||
|
tracks/6/type = "value"
|
||||||
|
tracks/6/path = NodePath("Hip/LegFront:rotation_degrees")
|
||||||
|
tracks/6/interp = 1
|
||||||
|
tracks/6/loop_wrap = true
|
||||||
|
tracks/6/imported = false
|
||||||
|
tracks/6/enabled = true
|
||||||
|
tracks/6/keys = {
|
||||||
|
"times": PoolRealArray( 0 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ -0.657538 ]
|
||||||
|
}
|
||||||
|
tracks/7/type = "value"
|
||||||
|
tracks/7/path = NodePath("Hip/LegBack:rotation_degrees")
|
||||||
|
tracks/7/interp = 1
|
||||||
|
tracks/7/loop_wrap = true
|
||||||
|
tracks/7/imported = false
|
||||||
|
tracks/7/enabled = true
|
||||||
|
tracks/7/keys = {
|
||||||
|
"times": PoolRealArray( 0 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ -0.657538 ]
|
||||||
|
}
|
||||||
|
tracks/8/type = "value"
|
||||||
|
tracks/8/path = NodePath("Hip/Body/Neck:position")
|
||||||
|
tracks/8/interp = 1
|
||||||
|
tracks/8/loop_wrap = true
|
||||||
|
tracks/8/imported = false
|
||||||
|
tracks/8/enabled = true
|
||||||
|
tracks/8/keys = {
|
||||||
|
"times": PoolRealArray( 0 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ Vector2( -25.8929, -8.09683 ) ]
|
||||||
|
}
|
||||||
|
tracks/9/type = "value"
|
||||||
|
tracks/9/path = NodePath("Hip/Body/BackArm/HandBack:rotation_degrees")
|
||||||
|
tracks/9/interp = 1
|
||||||
|
tracks/9/loop_wrap = true
|
||||||
|
tracks/9/imported = false
|
||||||
|
tracks/9/enabled = true
|
||||||
|
tracks/9/keys = {
|
||||||
|
"times": PoolRealArray( 0 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ -102.737 ]
|
||||||
|
}
|
||||||
|
tracks/10/type = "value"
|
||||||
|
tracks/10/path = NodePath("Hip/Body/FrontArm/HandFront:rotation_degrees")
|
||||||
|
tracks/10/interp = 1
|
||||||
|
tracks/10/loop_wrap = true
|
||||||
|
tracks/10/imported = false
|
||||||
|
tracks/10/enabled = true
|
||||||
|
tracks/10/keys = {
|
||||||
|
"times": PoolRealArray( 0 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ -119.87 ]
|
||||||
|
}
|
||||||
|
tracks/11/type = "value"
|
||||||
|
tracks/11/path = NodePath("Hip:position")
|
||||||
|
tracks/11/interp = 1
|
||||||
|
tracks/11/loop_wrap = true
|
||||||
|
tracks/11/imported = false
|
||||||
|
tracks/11/enabled = true
|
||||||
|
tracks/11/keys = {
|
||||||
|
"times": PoolRealArray( 0 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ Vector2( 8, 39 ) ]
|
||||||
|
}
|
||||||
|
tracks/12/type = "value"
|
||||||
|
tracks/12/path = NodePath("Hip/Body/Neck/BreathParticles:emitting")
|
||||||
|
tracks/12/interp = 1
|
||||||
|
tracks/12/loop_wrap = true
|
||||||
|
tracks/12/imported = false
|
||||||
|
tracks/12/enabled = true
|
||||||
|
tracks/12/keys = {
|
||||||
|
"times": PoolRealArray( 0 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"update": 1,
|
||||||
|
"values": [ false ]
|
||||||
|
}
|
||||||
|
tracks/13/type = "value"
|
||||||
|
tracks/13/path = NodePath("Hip/Body/Neck/BreathParticles:initial_velocity")
|
||||||
|
tracks/13/interp = 1
|
||||||
|
tracks/13/loop_wrap = true
|
||||||
|
tracks/13/imported = false
|
||||||
|
tracks/13/enabled = true
|
||||||
|
tracks/13/keys = {
|
||||||
|
"times": PoolRealArray( 0 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ 230.0 ]
|
||||||
|
}
|
||||||
|
tracks/14/type = "value"
|
||||||
|
tracks/14/path = NodePath("Hip/Body/Neck/BreathParticles:lifetime")
|
||||||
|
tracks/14/interp = 1
|
||||||
|
tracks/14/loop_wrap = true
|
||||||
|
tracks/14/imported = false
|
||||||
|
tracks/14/enabled = true
|
||||||
|
tracks/14/keys = {
|
||||||
|
"times": PoolRealArray( 0 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ 2.0 ]
|
||||||
|
}
|
||||||
|
tracks/15/type = "value"
|
||||||
|
tracks/15/path = NodePath("..:hurting")
|
||||||
|
tracks/15/interp = 1
|
||||||
|
tracks/15/loop_wrap = true
|
||||||
|
tracks/15/imported = false
|
||||||
|
tracks/15/enabled = true
|
||||||
|
tracks/15/keys = {
|
||||||
|
"times": PoolRealArray( 0 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ false ]
|
||||||
|
}
|
||||||
|
tracks/16/type = "value"
|
||||||
|
tracks/16/path = NodePath(".:material:shader_param/background_color")
|
||||||
|
tracks/16/interp = 1
|
||||||
|
tracks/16/loop_wrap = true
|
||||||
|
tracks/16/imported = false
|
||||||
|
tracks/16/enabled = true
|
||||||
|
tracks/16/keys = {
|
||||||
|
"times": PoolRealArray( 0, 2, 3 ),
|
||||||
|
"transitions": PoolRealArray( 1, 1, 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ Color( 0.396078, 1, 1, 1 ), Color( 0.396078, 1, 1, 1 ), Color( 0.396078, 1, 1, 0 ) ]
|
||||||
|
}
|
||||||
|
tracks/17/type = "value"
|
||||||
|
tracks/17/path = NodePath(".:material:shader_param/arc_color")
|
||||||
|
tracks/17/interp = 1
|
||||||
|
tracks/17/loop_wrap = true
|
||||||
|
tracks/17/imported = false
|
||||||
|
tracks/17/enabled = true
|
||||||
|
tracks/17/keys = {
|
||||||
|
"times": PoolRealArray( 0, 2, 3 ),
|
||||||
|
"transitions": PoolRealArray( 1, 1, 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ Color( 0.345098, 0.74902, 0.878431, 1 ), Color( 0.345098, 0.74902, 0.878431, 1 ), Color( 0.345098, 0.74902, 0.878431, 0 ) ]
|
||||||
|
}
|
||||||
|
tracks/18/type = "value"
|
||||||
|
tracks/18/path = NodePath(".:scale")
|
||||||
|
tracks/18/interp = 2
|
||||||
|
tracks/18/loop_wrap = true
|
||||||
|
tracks/18/imported = false
|
||||||
|
tracks/18/enabled = true
|
||||||
|
tracks/18/keys = {
|
||||||
|
"times": PoolRealArray( 0, 2 ),
|
||||||
|
"transitions": PoolRealArray( 1, 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ Vector2( 1e-05, 1e-05 ), Vector2( 1, 1 ) ]
|
||||||
|
}
|
||||||
|
tracks/19/type = "method"
|
||||||
|
tracks/19/path = NodePath("../StateChart")
|
||||||
|
tracks/19/interp = 1
|
||||||
|
tracks/19/loop_wrap = true
|
||||||
|
tracks/19/imported = false
|
||||||
|
tracks/19/enabled = true
|
||||||
|
tracks/19/keys = {
|
||||||
|
"times": PoolRealArray( 2.9 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"values": [ {
|
||||||
|
"args": [ "transformed" ],
|
||||||
|
"method": "send_event"
|
||||||
|
} ]
|
||||||
|
}
|
||||||
|
|
||||||
[sub_resource type="Animation" id=5]
|
[sub_resource type="Animation" id=5]
|
||||||
resource_name = "punching"
|
resource_name = "punching"
|
||||||
loop = true
|
loop = true
|
||||||
|
@ -703,7 +1006,7 @@ tracks/12/keys = {
|
||||||
"times": PoolRealArray( 0 ),
|
"times": PoolRealArray( 0 ),
|
||||||
"transitions": PoolRealArray( 1 ),
|
"transitions": PoolRealArray( 1 ),
|
||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( 8, -57 ) ]
|
"values": [ Vector2( 8, 39 ) ]
|
||||||
}
|
}
|
||||||
tracks/13/type = "value"
|
tracks/13/type = "value"
|
||||||
tracks/13/path = NodePath("Hip/Body/Neck/BreathParticles:emitting")
|
tracks/13/path = NodePath("Hip/Body/Neck/BreathParticles:emitting")
|
||||||
|
@ -864,7 +1167,7 @@ tracks/11/keys = {
|
||||||
"times": PoolRealArray( 0, 0.1 ),
|
"times": PoolRealArray( 0, 0.1 ),
|
||||||
"transitions": PoolRealArray( 1, 1 ),
|
"transitions": PoolRealArray( 1, 1 ),
|
||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( 12, -43 ), Vector2( 4, -43 ) ]
|
"values": [ Vector2( 12, 53 ), Vector2( 4, 53 ) ]
|
||||||
}
|
}
|
||||||
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")
|
||||||
|
@ -1051,7 +1354,7 @@ tracks/12/keys = {
|
||||||
"times": PoolRealArray( 0 ),
|
"times": PoolRealArray( 0 ),
|
||||||
"transitions": PoolRealArray( 1 ),
|
"transitions": PoolRealArray( 1 ),
|
||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( 8, -57 ) ]
|
"values": [ Vector2( 8, 39 ) ]
|
||||||
}
|
}
|
||||||
tracks/13/type = "value"
|
tracks/13/type = "value"
|
||||||
tracks/13/path = NodePath("Hip/Body/Neck/BreathParticles:emitting")
|
tracks/13/path = NodePath("Hip/Body/Neck/BreathParticles:emitting")
|
||||||
|
@ -1225,7 +1528,7 @@ tracks/11/keys = {
|
||||||
"times": PoolRealArray( 0 ),
|
"times": PoolRealArray( 0 ),
|
||||||
"transitions": PoolRealArray( 1 ),
|
"transitions": PoolRealArray( 1 ),
|
||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( 8, -57 ) ]
|
"values": [ Vector2( 8, 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")
|
||||||
|
@ -1266,10 +1569,9 @@ tracks/14/keys = {
|
||||||
"values": [ false, true, false ]
|
"values": [ false, true, false ]
|
||||||
}
|
}
|
||||||
|
|
||||||
[sub_resource type="ShaderMaterial" id=10]
|
[sub_resource type="ShaderMaterial" id=1]
|
||||||
shader = ExtResource( 16 )
|
shader = ExtResource( 2 )
|
||||||
shader_param/border_color = Color( 0, 0, 0, 1 )
|
shader_param/pixel_scale = 1.0
|
||||||
shader_param/border_corners = false
|
|
||||||
|
|
||||||
[sub_resource type="Curve" id=8]
|
[sub_resource type="Curve" id=8]
|
||||||
_data = [ Vector2( 0, 0.5 ), 0.0, 0.890696, 0, 0, Vector2( 0.814474, 1 ), 0.0, 0.0, 0, 0, Vector2( 1, 0 ), -13.2988, 0.0, 0, 0 ]
|
_data = [ Vector2( 0, 0.5 ), 0.0, 0.890696, 0, 0, Vector2( 0.814474, 1 ), 0.0, 0.0, 0, 0, Vector2( 1, 0 ), -13.2988, 0.0, 0, 0 ]
|
||||||
|
@ -1309,20 +1611,23 @@ position = Vector2( 12, -64 )
|
||||||
shape = SubResource( 11 )
|
shape = SubResource( 11 )
|
||||||
|
|
||||||
[node name="ChickenMan" type="Node2D" parent="."]
|
[node name="ChickenMan" type="Node2D" parent="."]
|
||||||
material = SubResource( 1 )
|
material = ExtResource( 17 )
|
||||||
|
position = Vector2( 0, -96 )
|
||||||
|
|
||||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="ChickenMan"]
|
[node name="AnimationPlayer" type="AnimationPlayer" parent="ChickenMan"]
|
||||||
unique_name_in_owner = true
|
unique_name_in_owner = true
|
||||||
anims/RESET = SubResource( 2 )
|
anims/RESET = SubResource( 2 )
|
||||||
anims/chasing = SubResource( 4 )
|
anims/chasing = SubResource( 4 )
|
||||||
anims/die = SubResource( 12 )
|
anims/die = SubResource( 12 )
|
||||||
|
anims/grow = SubResource( 17 )
|
||||||
anims/punching = SubResource( 5 )
|
anims/punching = SubResource( 5 )
|
||||||
anims/pushed = SubResource( 6 )
|
anims/pushed = SubResource( 6 )
|
||||||
anims/roar = SubResource( 3 )
|
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"]
|
||||||
position = Vector2( 8, -57 )
|
use_parent_material = true
|
||||||
|
position = Vector2( 8, 39 )
|
||||||
|
|
||||||
[node name="LegBack" type="Sprite" parent="ChickenMan/Hip"]
|
[node name="LegBack" type="Sprite" parent="ChickenMan/Hip"]
|
||||||
use_parent_material = true
|
use_parent_material = true
|
||||||
|
@ -1359,6 +1664,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"]
|
||||||
|
material = SubResource( 1 )
|
||||||
use_parent_material = true
|
use_parent_material = true
|
||||||
position = Vector2( -34, 6 )
|
position = Vector2( -34, 6 )
|
||||||
rotation = -1.7931
|
rotation = -1.7931
|
||||||
|
@ -1369,9 +1675,9 @@ 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
|
||||||
material = SubResource( 10 )
|
use_parent_material = true
|
||||||
script = ExtResource( 12 )
|
script = ExtResource( 12 )
|
||||||
texture = ExtResource( 13 )
|
texture = ExtResource( 16 )
|
||||||
segments = 4
|
segments = 4
|
||||||
target = NodePath("../HandBack")
|
target = NodePath("../HandBack")
|
||||||
|
|
||||||
|
@ -1387,6 +1693,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"]
|
||||||
|
material = SubResource( 1 )
|
||||||
use_parent_material = true
|
use_parent_material = true
|
||||||
position = Vector2( -31.9996, 22.0018 )
|
position = Vector2( -31.9996, 22.0018 )
|
||||||
rotation = -2.09213
|
rotation = -2.09213
|
||||||
|
@ -1397,9 +1704,9 @@ 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
|
||||||
material = SubResource( 10 )
|
use_parent_material = true
|
||||||
script = ExtResource( 12 )
|
script = ExtResource( 12 )
|
||||||
texture = ExtResource( 13 )
|
texture = ExtResource( 16 )
|
||||||
segments = 4
|
segments = 4
|
||||||
target = NodePath("../HandFront")
|
target = NodePath("../HandFront")
|
||||||
|
|
||||||
|
@ -1416,7 +1723,6 @@ 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"]
|
||||||
position = Vector2( 7.47667, -8.4856 )
|
position = Vector2( 7.47667, -8.4856 )
|
||||||
rotation = -2.96856
|
rotation = -2.96856
|
||||||
scale = Vector2( 1, 1 )
|
|
||||||
remote_path = NodePath("../../../../../Hitbox/Brain")
|
remote_path = NodePath("../../../../../Hitbox/Brain")
|
||||||
update_scale = false
|
update_scale = false
|
||||||
|
|
||||||
|
@ -1463,7 +1769,6 @@ 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"]
|
||||||
position = Vector2( -15.6932, 6.83872 )
|
position = Vector2( -15.6932, 6.83872 )
|
||||||
rotation = -4.70641
|
rotation = -4.70641
|
||||||
scale = Vector2( 1, 1 )
|
|
||||||
remote_path = NodePath("../../../../../../Hitbox/LowerJaw")
|
remote_path = NodePath("../../../../../../Hitbox/LowerJaw")
|
||||||
update_scale = false
|
update_scale = false
|
||||||
|
|
||||||
|
@ -1479,7 +1784,6 @@ 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"]
|
||||||
position = Vector2( -15.711, -8.80663 )
|
position = Vector2( -15.711, -8.80663 )
|
||||||
rotation = -1.57994
|
rotation = -1.57994
|
||||||
scale = Vector2( 1, 1 )
|
|
||||||
remote_path = NodePath("../../../../../../Hitbox/UpperJaw")
|
remote_path = NodePath("../../../../../../Hitbox/UpperJaw")
|
||||||
update_scale = false
|
update_scale = false
|
||||||
|
|
||||||
|
@ -1504,8 +1808,8 @@ collision_mask = 128
|
||||||
monitorable = false
|
monitorable = false
|
||||||
|
|
||||||
[node name="Body" type="CollisionShape2D" parent="Hitbox"]
|
[node name="Body" type="CollisionShape2D" parent="Hitbox"]
|
||||||
position = Vector2( 0.0046196, -23.9291 )
|
position = Vector2( 0.00461769, -23.9291 )
|
||||||
rotation = -0.0114733
|
rotation = -0.0114693
|
||||||
shape = SubResource( 13 )
|
shape = SubResource( 13 )
|
||||||
|
|
||||||
[node name="Brain" type="CollisionShape2D" parent="Hitbox"]
|
[node name="Brain" type="CollisionShape2D" parent="Hitbox"]
|
||||||
|
@ -1516,7 +1820,7 @@ shape = SubResource( 14 )
|
||||||
|
|
||||||
[node name="LowerJaw" type="CollisionShape2D" parent="Hitbox"]
|
[node name="LowerJaw" type="CollisionShape2D" parent="Hitbox"]
|
||||||
position = Vector2( -21.3082, -76.1166 )
|
position = Vector2( -21.3082, -76.1166 )
|
||||||
rotation = 1.66396
|
rotation = 1.66395
|
||||||
z_index = 100
|
z_index = 100
|
||||||
shape = SubResource( 15 )
|
shape = SubResource( 15 )
|
||||||
|
|
||||||
|
@ -1531,7 +1835,7 @@ script = ExtResource( 3 )
|
||||||
|
|
||||||
[node name="Root" type="Node" parent="StateChart"]
|
[node name="Root" type="Node" parent="StateChart"]
|
||||||
script = ExtResource( 4 )
|
script = ExtResource( 4 )
|
||||||
initial_state = NodePath("Roar")
|
initial_state = NodePath("Growing")
|
||||||
|
|
||||||
[node name="On StartPush" type="Node" parent="StateChart/Root"]
|
[node name="On StartPush" type="Node" parent="StateChart/Root"]
|
||||||
script = ExtResource( 6 )
|
script = ExtResource( 6 )
|
||||||
|
@ -1548,6 +1852,14 @@ script = ExtResource( 6 )
|
||||||
to = NodePath("../Dying")
|
to = NodePath("../Dying")
|
||||||
event = "die"
|
event = "die"
|
||||||
|
|
||||||
|
[node name="Growing" type="Node" parent="StateChart/Root"]
|
||||||
|
script = ExtResource( 5 )
|
||||||
|
|
||||||
|
[node name="On Transformed" type="Node" parent="StateChart/Root/Growing"]
|
||||||
|
script = ExtResource( 6 )
|
||||||
|
to = NodePath("../../Roar")
|
||||||
|
event = "transformed"
|
||||||
|
|
||||||
[node name="Roar" type="Node" parent="StateChart/Root"]
|
[node name="Roar" type="Node" parent="StateChart/Root"]
|
||||||
script = ExtResource( 5 )
|
script = ExtResource( 5 )
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@ signal died()
|
||||||
signal health_changed(amount)
|
signal health_changed(amount)
|
||||||
|
|
||||||
|
|
||||||
enum State {DEAD, STAND, FORWARD, BACK, DUCK, BEAM}
|
enum State {DEAD, STAND, FORWARD, BACK, DUCK, BEAM, INACTIVE}
|
||||||
|
|
||||||
const Bullet = preload("res://objects/enemy/2083_bullet.tscn")
|
const Bullet = preload("res://objects/enemy/2083_bullet.tscn")
|
||||||
const SmallExplosion = preload("res://objects/enemy/boss/2600_small_explosion.tscn")
|
const SmallExplosion = preload("res://objects/enemy/boss/2600_small_explosion.tscn")
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue