Merge branch 'main' into demo
This commit is contained in:
commit
651a677b15
20 changed files with 950 additions and 96 deletions
|
@ -223,3 +223,7 @@ func _enter_code():
|
|||
fast_punishment = 1
|
||||
"FASTERPUNISHMENT":
|
||||
fast_punishment = 2
|
||||
"WIGGLE":
|
||||
var player = get_tree().get_nodes_in_group("player").pop_back()
|
||||
player.sprite.material.set_shader_param("palette", load("res://graphics/player/palettes/costume_wriggle.png"))
|
||||
player.sprite.set_texture(load("res://graphics/player/costume_wriggle.png"))
|
||||
|
|
BIN
graphics/npc/msx_blink.png
Normal file
BIN
graphics/npc/msx_blink.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.1 KiB |
35
graphics/npc/msx_blink.png.import
Normal file
35
graphics/npc/msx_blink.png.import
Normal file
|
@ -0,0 +1,35 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/msx_blink.png-3e81cac31b42c7066c74bede693edca4.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://graphics/npc/msx_blink.png"
|
||||
dest_files=[ "res://.import/msx_blink.png-3e81cac31b42c7066c74bede693edca4.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/msx_respawn.png
Normal file
BIN
graphics/npc/msx_respawn.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.3 KiB |
35
graphics/npc/msx_respawn.png.import
Normal file
35
graphics/npc/msx_respawn.png.import
Normal file
|
@ -0,0 +1,35 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/msx_respawn.png-079d35100957fd3b65980cf58702fa84.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://graphics/npc/msx_respawn.png"
|
||||
dest_files=[ "res://.import/msx_respawn.png-079d35100957fd3b65980cf58702fa84.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/player/costume_wriggle.png
Normal file
BIN
graphics/player/costume_wriggle.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 4.1 KiB |
35
graphics/player/costume_wriggle.png.import
Normal file
35
graphics/player/costume_wriggle.png.import
Normal file
|
@ -0,0 +1,35 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/costume_wriggle.png-9a4503fad456a1616bc9300fa81a7e80.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://graphics/player/costume_wriggle.png"
|
||||
dest_files=[ "res://.import/costume_wriggle.png-9a4503fad456a1616bc9300fa81a7e80.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/player/palettes/costume_wriggle.png
Normal file
BIN
graphics/player/palettes/costume_wriggle.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 170 B |
35
graphics/player/palettes/costume_wriggle.png.import
Normal file
35
graphics/player/palettes/costume_wriggle.png.import
Normal file
|
@ -0,0 +1,35 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/costume_wriggle.png-fad3e57a7421b503255cab9833e11de8.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://graphics/player/palettes/costume_wriggle.png"
|
||||
dest_files=[ "res://.import/costume_wriggle.png-fad3e57a7421b503255cab9833e11de8.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
|
|
@ -1,4 +1,4 @@
|
|||
[gd_scene load_steps=32 format=2]
|
||||
[gd_scene load_steps=35 format=2]
|
||||
|
||||
[ext_resource path="res://objects/player/player.tscn" type="PackedScene" id=1]
|
||||
[ext_resource path="res://tilesets/t_cave.tres" type="TileSet" id=2]
|
||||
|
@ -30,6 +30,11 @@
|
|||
[ext_resource path="res://objects/lore/cave/the_scrumps_tongue.tscn" type="PackedScene" id=28]
|
||||
[ext_resource path="res://objects/lore/cave/blue_ray_cavern.tscn" type="PackedScene" id=29]
|
||||
[ext_resource path="res://objects/lore/mountain/rolling_fiend.tscn" type="PackedScene" id=30]
|
||||
[ext_resource path="res://scripts/randomize_particle_start.gd" type="Script" id=31]
|
||||
[ext_resource path="res://graphics/particles/shine.png" type="Texture" id=32]
|
||||
|
||||
[sub_resource type="Curve" id=2]
|
||||
_data = [ Vector2( 0, 0 ), 0.0, 0.100639, 0, 0, Vector2( 0.158257, 1 ), 7.51724, -6.83592, 0, 0, Vector2( 0.31422, 0 ), 0.0, 0.0, 0, 0 ]
|
||||
|
||||
[sub_resource type="RectangleShape2D" id=1]
|
||||
extents = Vector2( 4, 96 )
|
||||
|
@ -485,6 +490,636 @@ position = Vector2( 720, 72 )
|
|||
position = Vector2( 752, 112 )
|
||||
color = 4
|
||||
|
||||
[node name="Sparkles" type="Node2D" parent="."]
|
||||
|
||||
[node name="Green" type="Node2D" parent="Sparkles"]
|
||||
|
||||
[node name="Sparkles" type="CPUParticles2D" parent="Sparkles/Green"]
|
||||
position = Vector2( 108, 188 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 0.709804, 1, 0.74902, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles2" type="CPUParticles2D" parent="Sparkles/Green"]
|
||||
position = Vector2( 148, 188 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 0.709804, 1, 0.74902, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles3" type="CPUParticles2D" parent="Sparkles/Green"]
|
||||
position = Vector2( 76, 188 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 0.709804, 1, 0.74902, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles4" type="CPUParticles2D" parent="Sparkles/Green"]
|
||||
position = Vector2( 292, 180 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 0.709804, 1, 0.74902, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles5" type="CPUParticles2D" parent="Sparkles/Green"]
|
||||
position = Vector2( 300, 188 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 0.709804, 1, 0.74902, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles6" type="CPUParticles2D" parent="Sparkles/Green"]
|
||||
position = Vector2( 292, 188 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 0.709804, 1, 0.74902, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles7" type="CPUParticles2D" parent="Sparkles/Green"]
|
||||
position = Vector2( 308, 172 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 0.709804, 1, 0.74902, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles8" type="CPUParticles2D" parent="Sparkles/Green"]
|
||||
position = Vector2( 316, 172 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 0.709804, 1, 0.74902, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles9" type="CPUParticles2D" parent="Sparkles/Green"]
|
||||
position = Vector2( 340, 188 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 0.709804, 1, 0.74902, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles10" type="CPUParticles2D" parent="Sparkles/Green"]
|
||||
position = Vector2( 388, 188 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 0.709804, 1, 0.74902, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles11" type="CPUParticles2D" parent="Sparkles/Green"]
|
||||
position = Vector2( 396, 188 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 0.709804, 1, 0.74902, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles12" type="CPUParticles2D" parent="Sparkles/Green"]
|
||||
position = Vector2( 404, 188 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 0.709804, 1, 0.74902, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles13" type="CPUParticles2D" parent="Sparkles/Green"]
|
||||
position = Vector2( 468, 188 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 0.709804, 1, 0.74902, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles14" type="CPUParticles2D" parent="Sparkles/Green"]
|
||||
position = Vector2( 588, 188 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 0.709804, 1, 0.74902, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles15" type="CPUParticles2D" parent="Sparkles/Green"]
|
||||
position = Vector2( 596, 188 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 0.709804, 1, 0.74902, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles16" type="CPUParticles2D" parent="Sparkles/Green"]
|
||||
position = Vector2( 652, 188 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 0.709804, 1, 0.74902, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles17" type="CPUParticles2D" parent="Sparkles/Green"]
|
||||
position = Vector2( 660, 188 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 0.709804, 1, 0.74902, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles18" type="CPUParticles2D" parent="Sparkles/Green"]
|
||||
position = Vector2( 724, 188 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 0.709804, 1, 0.74902, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles19" type="CPUParticles2D" parent="Sparkles/Green"]
|
||||
position = Vector2( 652, 148 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 0.709804, 1, 0.74902, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles20" type="CPUParticles2D" parent="Sparkles/Green"]
|
||||
position = Vector2( 644, 148 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 0.709804, 1, 0.74902, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles21" type="CPUParticles2D" parent="Sparkles/Green"]
|
||||
position = Vector2( 292, 68 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 0.709804, 1, 0.74902, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles22" type="CPUParticles2D" parent="Sparkles/Green"]
|
||||
position = Vector2( 284, 68 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 0.709804, 1, 0.74902, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles23" type="CPUParticles2D" parent="Sparkles/Green"]
|
||||
position = Vector2( 244, 76 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 0.709804, 1, 0.74902, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Red" type="Node2D" parent="Sparkles"]
|
||||
|
||||
[node name="Sparkles24" type="CPUParticles2D" parent="Sparkles/Red"]
|
||||
position = Vector2( 156, 188 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 1, 0.741176, 0.709804, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles25" type="CPUParticles2D" parent="Sparkles/Red"]
|
||||
position = Vector2( 212, 188 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 1, 0.741176, 0.709804, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles26" type="CPUParticles2D" parent="Sparkles/Red"]
|
||||
position = Vector2( 260, 68 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 1, 0.741176, 0.709804, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles27" type="CPUParticles2D" parent="Sparkles/Red"]
|
||||
position = Vector2( 252, 124 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 1, 0.741176, 0.709804, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles28" type="CPUParticles2D" parent="Sparkles/Red"]
|
||||
position = Vector2( 372, 108 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 1, 0.741176, 0.709804, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles29" type="CPUParticles2D" parent="Sparkles/Red"]
|
||||
position = Vector2( 340, 172 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 1, 0.741176, 0.709804, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles30" type="CPUParticles2D" parent="Sparkles/Red"]
|
||||
position = Vector2( 364, 188 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 1, 0.741176, 0.709804, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles31" type="CPUParticles2D" parent="Sparkles/Red"]
|
||||
position = Vector2( 436, 180 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 1, 0.741176, 0.709804, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles32" type="CPUParticles2D" parent="Sparkles/Red"]
|
||||
position = Vector2( 476, 180 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 1, 0.741176, 0.709804, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles33" type="CPUParticles2D" parent="Sparkles/Red"]
|
||||
position = Vector2( 500, 68 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 1, 0.741176, 0.709804, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles34" type="CPUParticles2D" parent="Sparkles/Red"]
|
||||
position = Vector2( 548, 180 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 1, 0.741176, 0.709804, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles35" type="CPUParticles2D" parent="Sparkles/Red"]
|
||||
position = Vector2( 628, 188 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 1, 0.741176, 0.709804, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles36" type="CPUParticles2D" parent="Sparkles/Red"]
|
||||
position = Vector2( 676, 180 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 1, 0.741176, 0.709804, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles37" type="CPUParticles2D" parent="Sparkles/Red"]
|
||||
position = Vector2( 748, 188 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 1, 0.741176, 0.709804, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles38" type="CPUParticles2D" parent="Sparkles/Red"]
|
||||
position = Vector2( 716, 148 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 1, 0.741176, 0.709804, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="Sparkles39" type="CPUParticles2D" parent="Sparkles/Red"]
|
||||
position = Vector2( 692, 140 )
|
||||
amount = 1
|
||||
lifetime = 2.0
|
||||
texture = ExtResource( 32 )
|
||||
emission_shape = 2
|
||||
emission_rect_extents = Vector2( 4, 4 )
|
||||
gravity = Vector2( 0, 0 )
|
||||
angular_velocity = 720.0
|
||||
angular_velocity_random = 1.0
|
||||
angle = 720.0
|
||||
angle_random = 1.0
|
||||
scale_amount_curve = SubResource( 2 )
|
||||
color = Color( 1, 0.741176, 0.709804, 1 )
|
||||
script = ExtResource( 31 )
|
||||
|
||||
[node name="StaticBody2D" type="StaticBody2D" parent="."]
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D"]
|
||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -743,7 +743,7 @@ Wolfboy
|
|||
Rhidianruckus
|
||||
Wily Beast
|
||||
Maddy
|
||||
"
|
||||
Sylvan"
|
||||
align = 1
|
||||
valign = 1
|
||||
|
||||
|
@ -832,7 +832,7 @@ align = 1
|
|||
material = SubResource( 8 )
|
||||
position = Vector2( 106, 69 )
|
||||
frames = SubResource( 18 )
|
||||
frame = 1
|
||||
frame = 2
|
||||
playing = true
|
||||
|
||||
[node name="Label" type="Label" parent="Control/RollCall1/MsX"]
|
||||
|
@ -918,7 +918,6 @@ align = 1
|
|||
material = SubResource( 13 )
|
||||
position = Vector2( 2952, 24 )
|
||||
frames = SubResource( 24 )
|
||||
frame = 1
|
||||
playing = true
|
||||
|
||||
[node name="Label" type="Label" parent="Control/RollCall2/Catbat"]
|
||||
|
@ -934,7 +933,6 @@ align = 1
|
|||
[node name="TheScrump" type="AnimatedSprite" parent="Control/RollCall2"]
|
||||
position = Vector2( 2992, 128 )
|
||||
frames = SubResource( 27 )
|
||||
frame = 1
|
||||
playing = true
|
||||
|
||||
[node name="Label" type="Label" parent="Control/RollCall2/TheScrump"]
|
||||
|
@ -982,7 +980,7 @@ align = 1
|
|||
material = SubResource( 34 )
|
||||
position = Vector2( 3024, 62 )
|
||||
frames = SubResource( 43 )
|
||||
frame = 1
|
||||
frame = 6
|
||||
playing = true
|
||||
|
||||
[node name="Label" type="Label" parent="Control/RollCall2/Skelarcher"]
|
||||
|
@ -1107,7 +1105,7 @@ align = 1
|
|||
material = SubResource( 71 )
|
||||
position = Vector2( 72, 152 )
|
||||
frames = SubResource( 80 )
|
||||
frame = 2
|
||||
frame = 7
|
||||
playing = true
|
||||
|
||||
[node name="Label" type="Label" parent="Control/RollCall3/Hellarcher"]
|
||||
|
@ -1124,6 +1122,7 @@ align = 1
|
|||
material = SubResource( 66 )
|
||||
position = Vector2( 68, 104 )
|
||||
frames = SubResource( 70 )
|
||||
frame = 1
|
||||
playing = true
|
||||
|
||||
[node name="Label" type="Label" parent="Control/RollCall3/Turchin"]
|
||||
|
@ -1153,6 +1152,7 @@ position = Vector2( 4, 0 )
|
|||
z_index = 1
|
||||
frames = SubResource( 61 )
|
||||
animation = "chomp"
|
||||
frame = 1
|
||||
playing = true
|
||||
|
||||
[node name="Border" type="AnimatedSprite" parent="Control/RollCall3/Beel/Head/Sprite"]
|
||||
|
@ -1160,6 +1160,7 @@ material = SubResource( 62 )
|
|||
z_index = -1
|
||||
frames = SubResource( 61 )
|
||||
animation = "chomp"
|
||||
frame = 1
|
||||
playing = true
|
||||
|
||||
[node name="ShapeTransform" type="RemoteTransform2D" parent="Control/RollCall3/Beel/Head"]
|
||||
|
@ -1310,6 +1311,7 @@ align = 1
|
|||
material = SubResource( 82 )
|
||||
position = Vector2( 3362, 122.5 )
|
||||
frames = SubResource( 87 )
|
||||
frame = 2
|
||||
playing = true
|
||||
|
||||
[node name="Label" type="Label" parent="Control/RollCall4/Famicop"]
|
||||
|
|
|
@ -24,8 +24,6 @@ onready var filled_shards: Node2D = $"%FilledShards"
|
|||
onready var shard_title: Label = $"%ShardTitle"
|
||||
onready var shard_arrow: Sprite = $"%ShardArrow"
|
||||
onready var animation_player: AnimationPlayer = $AnimationPlayer
|
||||
onready var forward_status: TabContainer = $"%ForwardStatus"
|
||||
onready var shards_required: Label = $"%ShardsRequired"
|
||||
|
||||
func _ready() -> void:
|
||||
Fade.fade_in(0.4)
|
||||
|
@ -91,15 +89,7 @@ func _input(event: InputEvent) -> void:
|
|||
shard_arrow.position.x = filled_shards.get_child(selected_shard).position.x
|
||||
|
||||
func _select_level(level_id: int) -> void:
|
||||
var level: LevelEntry = LevelData.levels[level_id]
|
||||
# fail if required boss is not beaten
|
||||
if not level.boss_required.empty():
|
||||
var boss_save = Save.current_file.levels[level.boss_required]
|
||||
if not boss_save.completed:
|
||||
return
|
||||
# fail if not enough shards
|
||||
if Save.current_file.get_total_shards() < level.shards_required:
|
||||
return
|
||||
var level = LevelData.levels[level_id]
|
||||
selected_level = level_id
|
||||
# hide arrows at edges of leve set
|
||||
if level_id == 0:
|
||||
|
@ -107,19 +97,9 @@ func _select_level(level_id: int) -> void:
|
|||
else:
|
||||
back_arrow.modulate.a = 1.0
|
||||
if level_id == LevelData.levels.size() - 1:
|
||||
forward_status.current_tab = 0
|
||||
forward_arrow.modulate.a = 0.0
|
||||
else:
|
||||
forward_status.current_tab = 0
|
||||
forward_arrow.modulate.a = 1.0
|
||||
var next_level = LevelData.levels[level_id + 1]
|
||||
if Save.current_file.get_total_shards() < next_level.shards_required:
|
||||
forward_status.current_tab = 1
|
||||
shards_required.text = str(next_level.shards_required)
|
||||
if not next_level.boss_required.empty():
|
||||
var boss_save = Save.current_file.levels[next_level.boss_required]
|
||||
if not boss_save.completed:
|
||||
forward_status.current_tab = 2
|
||||
# set text
|
||||
level_title.text = level.title
|
||||
# initiate animation
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[gd_scene load_steps=22 format=2]
|
||||
[gd_scene load_steps=19 format=2]
|
||||
|
||||
[ext_resource path="res://menus/level_select_scholar.gd" type="Script" id=1]
|
||||
[ext_resource path="res://graphics/level_select/world_map.png" type="Texture" id=2]
|
||||
|
@ -7,11 +7,9 @@
|
|||
[ext_resource path="res://graphics/hud/pause_arrow.png" type="Texture" id=5]
|
||||
[ext_resource path="res://ui/2ndpuberty_outline.tres" type="Material" id=6]
|
||||
[ext_resource path="res://shaders/wibble_wobble.gdshader" type="Shader" id=7]
|
||||
[ext_resource path="res://ui/2ndpuberty_scholar_outline.fnt" type="BitmapFont" id=8]
|
||||
[ext_resource path="res://shaders/1px_border.gdshader" type="Shader" id=9]
|
||||
[ext_resource path="res://graphics/collectibles/shard.png" type="Texture" id=10]
|
||||
[ext_resource path="res://objects/collectibles/shard.tscn" type="PackedScene" id=11]
|
||||
[ext_resource path="res://graphics/falling_block/woeful_soul.png" type="Texture" id=12]
|
||||
[ext_resource path="res://graphics/hud/levelselect_arrow.png" type="Texture" id=14]
|
||||
|
||||
[sub_resource type="Curve2D" id=1]
|
||||
|
@ -33,10 +31,6 @@ shader_param/ammount = Vector2( 2, 0 )
|
|||
shader_param/offset = Vector2( 0, 0 )
|
||||
shader_param/delay = Vector2( 4, 0 )
|
||||
|
||||
[sub_resource type="AtlasTexture" id=9]
|
||||
atlas = ExtResource( 12 )
|
||||
region = Rect2( 8, 0, 8, 8 )
|
||||
|
||||
[sub_resource type="ShaderMaterial" id=5]
|
||||
shader = ExtResource( 9 )
|
||||
shader_param/border_color = Color( 0, 0, 0, 1 )
|
||||
|
@ -209,7 +203,6 @@ offset = 300.0
|
|||
[node name="CurrentLevel" type="HBoxContainer" parent="."]
|
||||
anchor_right = 1.0
|
||||
margin_bottom = 16.0
|
||||
theme = ExtResource( 4 )
|
||||
alignment = 1
|
||||
|
||||
[node name="BackArrow" type="TextureRect" parent="CurrentLevel"]
|
||||
|
@ -235,51 +228,15 @@ text = "Verdant Hills"
|
|||
align = 1
|
||||
valign = 1
|
||||
|
||||
[node name="ForwardStatus" type="TabContainer" parent="CurrentLevel"]
|
||||
unique_name_in_owner = true
|
||||
margin_left = 177.0
|
||||
margin_right = 183.0
|
||||
margin_bottom = 16.0
|
||||
tabs_visible = false
|
||||
|
||||
[node name="ForwardArrow" type="TextureRect" parent="CurrentLevel/ForwardStatus"]
|
||||
[node name="ForwardArrow" type="TextureRect" parent="CurrentLevel"]
|
||||
unique_name_in_owner = true
|
||||
material = SubResource( 3 )
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
margin_left = 177.0
|
||||
margin_top = 4.0
|
||||
margin_right = 183.0
|
||||
margin_bottom = 12.0
|
||||
size_flags_vertical = 4
|
||||
texture = ExtResource( 5 )
|
||||
stretch_mode = 4
|
||||
|
||||
[node name="NotEnoughShards" type="HBoxContainer" parent="CurrentLevel/ForwardStatus"]
|
||||
visible = false
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
|
||||
[node name="Shard" type="TextureRect" parent="CurrentLevel/ForwardStatus/NotEnoughShards"]
|
||||
material = ExtResource( 6 )
|
||||
margin_top = 2.0
|
||||
margin_right = 11.0
|
||||
margin_bottom = 13.0
|
||||
size_flags_vertical = 4
|
||||
texture = ExtResource( 10 )
|
||||
|
||||
[node name="ShardsRequired" type="Label" parent="CurrentLevel/ForwardStatus/NotEnoughShards"]
|
||||
unique_name_in_owner = true
|
||||
margin_left = 15.0
|
||||
margin_top = 3.0
|
||||
margin_right = 29.0
|
||||
margin_bottom = 13.0
|
||||
custom_colors/font_color = Color( 0.960784, 0.2, 0.258824, 1 )
|
||||
custom_fonts/font = ExtResource( 8 )
|
||||
text = "20"
|
||||
|
||||
[node name="BossNotBeaten" type="TextureRect" parent="CurrentLevel/ForwardStatus"]
|
||||
visible = false
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
texture = SubResource( 9 )
|
||||
stretch_mode = 4
|
||||
|
||||
[node name="LevelStats" type="Panel" parent="."]
|
||||
visible = false
|
||||
|
|
|
@ -9,5 +9,6 @@ func _on_ActivationArea_area_entered(area):
|
|||
if area.is_in_group("player_hitbox"):
|
||||
activate()
|
||||
$Sprite.frame = 1
|
||||
$StaticBody2D/CollisionPolygon2D.disabled = true
|
||||
pressed = true
|
||||
Audio.play_sound(sound,$AudioStreamPlayer)
|
||||
|
|
|
@ -8,7 +8,6 @@ extents = Vector2( 2, 0.5 )
|
|||
|
||||
[node name="Button" type="Node2D"]
|
||||
script = ExtResource( 2 )
|
||||
type = "button"
|
||||
|
||||
[node name="Sprite" type="Sprite" parent="."]
|
||||
position = Vector2( 4, 4 )
|
||||
|
|
|
@ -23,4 +23,4 @@ margin_bottom = 143.0
|
|||
margin_top = 3.0
|
||||
margin_bottom = 91.0
|
||||
text = "Ms. X (Marisa Xevious):
|
||||
born 10/21/2062, she was locked up for such trivial crimes as shoplifting and marijuana possession. her reliance on weed causes many issues in her life."
|
||||
born 10/21/2062, she was locked up for such trivial crimes as shoplifting and marijuana possession. her reliance on drugs causes many issues in her life."
|
||||
|
|
|
@ -3,25 +3,38 @@ extends KinematicBody2D
|
|||
var velocity = Vector2.ZERO
|
||||
var is_moving = false
|
||||
var is_holding_shard = true
|
||||
var has_respawned = false
|
||||
onready var death_particles = $DeathSplatter
|
||||
onready var sprite = $Sprite
|
||||
onready var anims = $AnimationPlayer
|
||||
onready var raycast = $RayCast2D
|
||||
onready var respawn_raycast = $RespawnRaycast
|
||||
onready var shard_position = $Position2D
|
||||
onready var start_position = position
|
||||
onready var blink_timer = $BlinkTimer
|
||||
const shard = preload("res://objects/collectibles/shard.tscn")
|
||||
const BloodSpray := preload("res://objects/environment/blood/blood_spray.tscn")
|
||||
|
||||
func _ready():
|
||||
raycast.add_exception($Hitbox)
|
||||
blink_timer.start(rand_range(5.0,7.0))
|
||||
|
||||
func _physics_process(delta):
|
||||
print(respawn_raycast.get_collider())
|
||||
if is_moving: velocity.x = -50
|
||||
#Stop when see something
|
||||
if raycast.is_colliding(): velocity.x = 0
|
||||
if raycast.is_colliding():
|
||||
#stop behind sg
|
||||
velocity.x = 0
|
||||
if respawn_raycast.is_colliding():
|
||||
#start moving again after respawning when seeing sg
|
||||
if raycast.get_collider() != null:
|
||||
if raycast.get_collider().is_in_group("player_hitbox"): is_moving = true
|
||||
velocity.y += 128 * delta
|
||||
velocity = move_and_slide_with_snap(velocity, Vector2.DOWN, Vector2.UP, true)
|
||||
#Anims
|
||||
if velocity.x == 0:
|
||||
if !anims.get_current_animation() == "give": anims.play("idle")
|
||||
if !anims.get_current_animation() == "give" && !anims.get_current_animation() == "respawn" && !anims.get_current_animation() == "blink": anims.play("idle")
|
||||
else:
|
||||
anims.play("walk")
|
||||
#Stop at the end of path and give shard
|
||||
|
@ -39,7 +52,18 @@ func spawn_shard():
|
|||
is_holding_shard = false
|
||||
|
||||
func switch_action():
|
||||
is_moving = true
|
||||
#is_moving = true
|
||||
pass
|
||||
|
||||
func spray_blood():
|
||||
for i in 16:
|
||||
var spray = BloodSpray.instance()
|
||||
spray.pause_mode = PAUSE_MODE_PROCESS
|
||||
Physics2DServer.set_active(true)
|
||||
spray.global_position = global_position
|
||||
spray.velocity = Vector2(randf() * 80.0, 0.0).rotated(randf() * TAU)
|
||||
spray.stains_player = false
|
||||
get_parent().add_child(spray)
|
||||
|
||||
func die():
|
||||
#Create particles
|
||||
|
@ -47,5 +71,15 @@ func die():
|
|||
get_parent().add_child(death_particles)
|
||||
death_particles.global_position = global_position
|
||||
death_particles.emitting = true
|
||||
spray_blood()
|
||||
Audio.play_sound(Audio.a_msx_die,Audio.ac_die)
|
||||
queue_free()
|
||||
is_moving = false
|
||||
velocity.x = 0
|
||||
position = start_position
|
||||
anims.play("respawn")
|
||||
has_respawned = true
|
||||
|
||||
|
||||
func _on_BlinkTimer_timeout():
|
||||
anims.play("blink")
|
||||
blink_timer.start(rand_range(5.0,7.0))
|
||||
|
|
|
@ -1,7 +1,9 @@
|
|||
[gd_scene load_steps=16 format=2]
|
||||
[gd_scene load_steps=20 format=2]
|
||||
|
||||
[ext_resource path="res://shaders/1px_border.gdshader" type="Shader" id=1]
|
||||
[ext_resource path="res://graphics/npc/msx_respawn.png" type="Texture" id=2]
|
||||
[ext_resource path="res://graphics/npc/msx_walk.png" type="Texture" id=3]
|
||||
[ext_resource path="res://graphics/npc/msx_blink.png" type="Texture" id=4]
|
||||
[ext_resource path="res://graphics/npc/msx_idle.png" type="Texture" id=11]
|
||||
[ext_resource path="res://scripts/snap_sprite.gd" type="Script" id=12]
|
||||
[ext_resource path="res://objects/npc/msx.gd" type="Script" id=13]
|
||||
|
@ -47,6 +49,47 @@ tracks/2/keys = {
|
|||
"values": [ 0 ]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id=18]
|
||||
resource_name = "blink"
|
||||
length = 0.7
|
||||
step = 0.06
|
||||
tracks/0/type = "value"
|
||||
tracks/0/path = NodePath("Sprite:texture")
|
||||
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": 1,
|
||||
"values": [ ExtResource( 4 ) ]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/path = NodePath("Sprite:hframes")
|
||||
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": 1,
|
||||
"values": [ 4 ]
|
||||
}
|
||||
tracks/2/type = "value"
|
||||
tracks/2/path = NodePath("Sprite:frame")
|
||||
tracks/2/interp = 1
|
||||
tracks/2/loop_wrap = true
|
||||
tracks/2/imported = false
|
||||
tracks/2/enabled = true
|
||||
tracks/2/keys = {
|
||||
"times": PoolRealArray( 0, 0.12, 0.24, 0.54, 0.66 ),
|
||||
"transitions": PoolRealArray( 1, 1, 1, 1, 1 ),
|
||||
"update": 1,
|
||||
"values": [ 0, 1, 2, 3, 0 ]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id=15]
|
||||
resource_name = "give"
|
||||
length = 0.5
|
||||
|
@ -143,6 +186,47 @@ tracks/2/keys = {
|
|||
"values": [ 0 ]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id=17]
|
||||
resource_name = "respawn"
|
||||
length = 0.4
|
||||
step = 0.05
|
||||
tracks/0/type = "value"
|
||||
tracks/0/path = NodePath("Sprite:frame")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/keys = {
|
||||
"times": PoolRealArray( 0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35 ),
|
||||
"transitions": PoolRealArray( 1, 1, 1, 1, 1, 1, 1, 1 ),
|
||||
"update": 1,
|
||||
"values": [ 0, 1, 2, 3, 4, 5, 6, 7 ]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/path = NodePath("Sprite:texture")
|
||||
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": 1,
|
||||
"values": [ ExtResource( 2 ) ]
|
||||
}
|
||||
tracks/2/type = "value"
|
||||
tracks/2/path = NodePath("Sprite:hframes")
|
||||
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": 1,
|
||||
"values": [ 8 ]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id=9]
|
||||
resource_name = "walk"
|
||||
length = 0.4
|
||||
|
@ -206,8 +290,10 @@ script = ExtResource( 13 )
|
|||
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
|
||||
autoplay = "idle"
|
||||
anims/RESET = SubResource( 16 )
|
||||
anims/blink = SubResource( 18 )
|
||||
anims/give = SubResource( 15 )
|
||||
anims/idle = SubResource( 4 )
|
||||
anims/respawn = SubResource( 17 )
|
||||
anims/walk = SubResource( 9 )
|
||||
|
||||
[node name="Sprite" type="Sprite" parent="."]
|
||||
|
@ -260,8 +346,19 @@ cast_to = Vector2( 32, 0 )
|
|||
collision_mask = 3
|
||||
collide_with_areas = true
|
||||
|
||||
[node name="RespawnRaycast" type="RayCast2D" parent="."]
|
||||
position = Vector2( 16, 0 )
|
||||
enabled = true
|
||||
cast_to = Vector2( 56, 0 )
|
||||
collision_mask = 8
|
||||
collide_with_areas = true
|
||||
|
||||
[node name="Position2D" type="Position2D" parent="."]
|
||||
position = Vector2( 17, 2 )
|
||||
__meta__ = {
|
||||
"_gizmo_extents_": 0.0
|
||||
}
|
||||
|
||||
[node name="BlinkTimer" type="Timer" parent="."]
|
||||
|
||||
[connection signal="timeout" from="BlinkTimer" to="." method="_on_BlinkTimer_timeout"]
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue