begun work on msx off level indicator
This commit is contained in:
parent
137f5ff414
commit
2774decaf9
10 changed files with 351 additions and 60 deletions
Binary file not shown.
Binary file not shown.
Before Width: | Height: | Size: 199 B After Width: | Height: | Size: 199 B |
BIN
graphics/hud/msx_head.png
Normal file
BIN
graphics/hud/msx_head.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.9 KiB |
35
graphics/hud/msx_head.png.import
Normal file
35
graphics/hud/msx_head.png.import
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/msx_head.png-fdcdc2eae8f1ff9e51eb57e0483b2b2f.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://graphics/hud/msx_head.png"
|
||||||
|
dest_files=[ "res://.import/msx_head.png-fdcdc2eae8f1ff9e51eb57e0483b2b2f.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
|
|
@ -267,7 +267,7 @@ position = Vector2( 712, 152 )
|
||||||
scale = Vector2( 1, 2 )
|
scale = Vector2( 1, 2 )
|
||||||
|
|
||||||
[node name="Button" parent="Environment" instance=ExtResource( 18 )]
|
[node name="Button" parent="Environment" instance=ExtResource( 18 )]
|
||||||
position = Vector2( 72, 168 )
|
position = Vector2( 736, 128 )
|
||||||
target_group = "cell"
|
target_group = "cell"
|
||||||
|
|
||||||
[node name="Button2" parent="Environment" instance=ExtResource( 18 )]
|
[node name="Button2" parent="Environment" instance=ExtResource( 18 )]
|
||||||
|
@ -275,7 +275,7 @@ position = Vector2( 312, 19 )
|
||||||
target_group = "yellow_star_laser"
|
target_group = "yellow_star_laser"
|
||||||
|
|
||||||
[node name="MsX" parent="Environment" groups=["cell"] instance=ExtResource( 22 )]
|
[node name="MsX" parent="Environment" groups=["cell"] instance=ExtResource( 22 )]
|
||||||
position = Vector2( 176, 158 )
|
position = Vector2( 744, 158 )
|
||||||
|
|
||||||
[node name="Barrier" parent="Environment" instance=ExtResource( 23 )]
|
[node name="Barrier" parent="Environment" instance=ExtResource( 23 )]
|
||||||
position = Vector2( 424, 112 )
|
position = Vector2( 424, 112 )
|
||||||
|
|
|
@ -803,7 +803,6 @@ position = Vector2( 3584, 0 )
|
||||||
material = SubResource( 7 )
|
material = SubResource( 7 )
|
||||||
position = Vector2( 74, 69 )
|
position = Vector2( 74, 69 )
|
||||||
frames = SubResource( 12 )
|
frames = SubResource( 12 )
|
||||||
frame = 1
|
|
||||||
playing = true
|
playing = true
|
||||||
script = ExtResource( 16 )
|
script = ExtResource( 16 )
|
||||||
|
|
||||||
|
@ -834,6 +833,7 @@ align = 1
|
||||||
material = SubResource( 8 )
|
material = SubResource( 8 )
|
||||||
position = Vector2( 106, 69 )
|
position = Vector2( 106, 69 )
|
||||||
frames = SubResource( 18 )
|
frames = SubResource( 18 )
|
||||||
|
frame = 3
|
||||||
playing = true
|
playing = true
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="Control/RollCall1/MsX"]
|
[node name="Label" type="Label" parent="Control/RollCall1/MsX"]
|
||||||
|
@ -936,6 +936,7 @@ align = 1
|
||||||
[node name="TheScrump" type="AnimatedSprite" parent="Control/RollCall2"]
|
[node name="TheScrump" type="AnimatedSprite" parent="Control/RollCall2"]
|
||||||
position = Vector2( 2992, 128 )
|
position = Vector2( 2992, 128 )
|
||||||
frames = SubResource( 27 )
|
frames = SubResource( 27 )
|
||||||
|
frame = 1
|
||||||
playing = true
|
playing = true
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="Control/RollCall2/TheScrump"]
|
[node name="Label" type="Label" parent="Control/RollCall2/TheScrump"]
|
||||||
|
@ -952,7 +953,6 @@ align = 1
|
||||||
material = SubResource( 13 )
|
material = SubResource( 13 )
|
||||||
position = Vector2( 2880, 102 )
|
position = Vector2( 2880, 102 )
|
||||||
frames = SubResource( 30 )
|
frames = SubResource( 30 )
|
||||||
frame = 1
|
|
||||||
playing = true
|
playing = true
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="Control/RollCall2/RollingFiend"]
|
[node name="Label" type="Label" parent="Control/RollCall2/RollingFiend"]
|
||||||
|
@ -968,7 +968,6 @@ align = 1
|
||||||
[node name="ChipIt" type="AnimatedSprite" parent="Control/RollCall2"]
|
[node name="ChipIt" type="AnimatedSprite" parent="Control/RollCall2"]
|
||||||
position = Vector2( 2960, 62 )
|
position = Vector2( 2960, 62 )
|
||||||
frames = SubResource( 33 )
|
frames = SubResource( 33 )
|
||||||
frame = 1
|
|
||||||
playing = true
|
playing = true
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="Control/RollCall2/ChipIt"]
|
[node name="Label" type="Label" parent="Control/RollCall2/ChipIt"]
|
||||||
|
@ -985,6 +984,7 @@ align = 1
|
||||||
material = SubResource( 34 )
|
material = SubResource( 34 )
|
||||||
position = Vector2( 3024, 62 )
|
position = Vector2( 3024, 62 )
|
||||||
frames = SubResource( 43 )
|
frames = SubResource( 43 )
|
||||||
|
frame = 3
|
||||||
playing = true
|
playing = true
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="Control/RollCall2/Skelarcher"]
|
[node name="Label" type="Label" parent="Control/RollCall2/Skelarcher"]
|
||||||
|
@ -1017,6 +1017,7 @@ align = 1
|
||||||
material = SubResource( 47 )
|
material = SubResource( 47 )
|
||||||
position = Vector2( 3016, 24 )
|
position = Vector2( 3016, 24 )
|
||||||
frames = SubResource( 50 )
|
frames = SubResource( 50 )
|
||||||
|
frame = 1
|
||||||
playing = true
|
playing = true
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="Control/RollCall2/BioSlime"]
|
[node name="Label" type="Label" parent="Control/RollCall2/BioSlime"]
|
||||||
|
@ -1047,7 +1048,6 @@ position = Vector2( 4096, 0 )
|
||||||
[node name="Shedge" type="AnimatedSprite" parent="Control/RollCall3"]
|
[node name="Shedge" type="AnimatedSprite" parent="Control/RollCall3"]
|
||||||
position = Vector2( 60, 25 )
|
position = Vector2( 60, 25 )
|
||||||
frames = SubResource( 54 )
|
frames = SubResource( 54 )
|
||||||
frame = 1
|
|
||||||
playing = true
|
playing = true
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="Control/RollCall3/Shedge"]
|
[node name="Label" type="Label" parent="Control/RollCall3/Shedge"]
|
||||||
|
@ -1063,6 +1063,7 @@ align = 1
|
||||||
[node name="TheScrumpsTongue" type="AnimatedSprite" parent="Control/RollCall3"]
|
[node name="TheScrumpsTongue" type="AnimatedSprite" parent="Control/RollCall3"]
|
||||||
position = Vector2( 156, 20 )
|
position = Vector2( 156, 20 )
|
||||||
frames = SubResource( 57 )
|
frames = SubResource( 57 )
|
||||||
|
frame = 1
|
||||||
playing = true
|
playing = true
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="Control/RollCall3/TheScrumpsTongue"]
|
[node name="Label" type="Label" parent="Control/RollCall3/TheScrumpsTongue"]
|
||||||
|
@ -1108,7 +1109,7 @@ align = 1
|
||||||
material = SubResource( 71 )
|
material = SubResource( 71 )
|
||||||
position = Vector2( 72, 152 )
|
position = Vector2( 72, 152 )
|
||||||
frames = SubResource( 80 )
|
frames = SubResource( 80 )
|
||||||
frame = 1
|
frame = 4
|
||||||
playing = true
|
playing = true
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="Control/RollCall3/Hellarcher"]
|
[node name="Label" type="Label" parent="Control/RollCall3/Hellarcher"]
|
||||||
|
@ -1125,6 +1126,7 @@ align = 1
|
||||||
material = SubResource( 66 )
|
material = SubResource( 66 )
|
||||||
position = Vector2( 68, 104 )
|
position = Vector2( 68, 104 )
|
||||||
frames = SubResource( 70 )
|
frames = SubResource( 70 )
|
||||||
|
frame = 2
|
||||||
playing = true
|
playing = true
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="Control/RollCall3/Turchin"]
|
[node name="Label" type="Label" parent="Control/RollCall3/Turchin"]
|
||||||
|
@ -1311,7 +1313,6 @@ align = 1
|
||||||
material = SubResource( 82 )
|
material = SubResource( 82 )
|
||||||
position = Vector2( 3362, 122.5 )
|
position = Vector2( 3362, 122.5 )
|
||||||
frames = SubResource( 87 )
|
frames = SubResource( 87 )
|
||||||
frame = 3
|
|
||||||
playing = true
|
playing = true
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="Control/RollCall4/Famicop"]
|
[node name="Label" type="Label" parent="Control/RollCall4/Famicop"]
|
||||||
|
|
210
objects/hud/msx_off_level_indicator.tscn
Normal file
210
objects/hud/msx_off_level_indicator.tscn
Normal file
|
@ -0,0 +1,210 @@
|
||||||
|
[gd_scene load_steps=7 format=2]
|
||||||
|
|
||||||
|
[ext_resource path="res://graphics/hud/off_level_indicator.png" type="Texture" id=1]
|
||||||
|
[ext_resource path="res://graphics/hud/msx_head.png" type="Texture" id=2]
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id=2]
|
||||||
|
length = 0.001
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/path = NodePath("Head:visible")
|
||||||
|
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": [ false ]
|
||||||
|
}
|
||||||
|
tracks/1/type = "value"
|
||||||
|
tracks/1/path = NodePath("ArrowR:visible")
|
||||||
|
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": [ false ]
|
||||||
|
}
|
||||||
|
tracks/2/type = "value"
|
||||||
|
tracks/2/path = NodePath("ArrowL:visible")
|
||||||
|
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": [ false ]
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id=3]
|
||||||
|
resource_name = "left"
|
||||||
|
loop = true
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/path = NodePath("Head:visible")
|
||||||
|
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": [ true ]
|
||||||
|
}
|
||||||
|
tracks/1/type = "value"
|
||||||
|
tracks/1/path = NodePath("ArrowL:visible")
|
||||||
|
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": [ true ]
|
||||||
|
}
|
||||||
|
tracks/2/type = "value"
|
||||||
|
tracks/2/path = NodePath("ArrowL:position")
|
||||||
|
tracks/2/interp = 2
|
||||||
|
tracks/2/loop_wrap = true
|
||||||
|
tracks/2/imported = false
|
||||||
|
tracks/2/enabled = true
|
||||||
|
tracks/2/keys = {
|
||||||
|
"times": PoolRealArray( 0, 0.5, 1 ),
|
||||||
|
"transitions": PoolRealArray( 1, 1, 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ Vector2( -11, 0 ), Vector2( -13, 0 ), Vector2( -11, 0 ) ]
|
||||||
|
}
|
||||||
|
tracks/3/type = "value"
|
||||||
|
tracks/3/path = NodePath("ArrowR:visible")
|
||||||
|
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": 1,
|
||||||
|
"values": [ false ]
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id=1]
|
||||||
|
resource_name = "onscreen"
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/path = NodePath("Head:visible")
|
||||||
|
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": [ false ]
|
||||||
|
}
|
||||||
|
tracks/1/type = "value"
|
||||||
|
tracks/1/path = NodePath("ArrowR:visible")
|
||||||
|
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": [ false ]
|
||||||
|
}
|
||||||
|
tracks/2/type = "value"
|
||||||
|
tracks/2/path = NodePath("ArrowL:visible")
|
||||||
|
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": [ false ]
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id=4]
|
||||||
|
resource_name = "right"
|
||||||
|
loop = true
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/path = NodePath("ArrowR:visible")
|
||||||
|
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": [ true ]
|
||||||
|
}
|
||||||
|
tracks/1/type = "value"
|
||||||
|
tracks/1/path = NodePath("Head:visible")
|
||||||
|
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": [ true ]
|
||||||
|
}
|
||||||
|
tracks/2/type = "value"
|
||||||
|
tracks/2/path = NodePath("ArrowR:position")
|
||||||
|
tracks/2/interp = 2
|
||||||
|
tracks/2/loop_wrap = true
|
||||||
|
tracks/2/imported = false
|
||||||
|
tracks/2/enabled = true
|
||||||
|
tracks/2/keys = {
|
||||||
|
"times": PoolRealArray( 0, 0.5, 1 ),
|
||||||
|
"transitions": PoolRealArray( 1, 1, 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ Vector2( 11, 1 ), Vector2( 13, 1 ), Vector2( 11, 1 ) ]
|
||||||
|
}
|
||||||
|
tracks/3/type = "value"
|
||||||
|
tracks/3/path = NodePath("ArrowL:visible")
|
||||||
|
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": 1,
|
||||||
|
"values": [ false ]
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="MsxOffLevelIndicator" type="Node2D"]
|
||||||
|
|
||||||
|
[node name="Head" type="Sprite" parent="."]
|
||||||
|
visible = false
|
||||||
|
texture = ExtResource( 2 )
|
||||||
|
|
||||||
|
[node name="ArrowR" type="Sprite" parent="."]
|
||||||
|
visible = false
|
||||||
|
position = Vector2( 12.4551, 1 )
|
||||||
|
rotation = 1.5708
|
||||||
|
texture = ExtResource( 1 )
|
||||||
|
|
||||||
|
[node name="ArrowL" type="Sprite" parent="."]
|
||||||
|
visible = false
|
||||||
|
position = Vector2( -11.336, 0 )
|
||||||
|
rotation = -1.5708
|
||||||
|
texture = ExtResource( 1 )
|
||||||
|
|
||||||
|
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
|
||||||
|
anims/RESET = SubResource( 2 )
|
||||||
|
anims/left = SubResource( 3 )
|
||||||
|
anims/onscreen = SubResource( 1 )
|
||||||
|
anims/right = SubResource( 4 )
|
|
@ -38,7 +38,7 @@ texture = ExtResource( 4 )
|
||||||
script = ExtResource( 5 )
|
script = ExtResource( 5 )
|
||||||
|
|
||||||
[node name="Arrow" type="Sprite" parent="."]
|
[node name="Arrow" type="Sprite" parent="."]
|
||||||
position = Vector2( 1, 3.9185 )
|
position = Vector2( 1, 5 )
|
||||||
texture = ExtResource( 3 )
|
texture = ExtResource( 3 )
|
||||||
|
|
||||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
|
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
|
||||||
|
|
|
@ -13,8 +13,7 @@ onready var respawn_raycast = $RespawnRaycast
|
||||||
onready var shard_position = $Position2D
|
onready var shard_position = $Position2D
|
||||||
onready var start_position = position
|
onready var start_position = position
|
||||||
onready var blink_timer = $BlinkTimer
|
onready var blink_timer = $BlinkTimer
|
||||||
onready var text_anim = $TextAnim
|
onready var text_anims = $TextAnim
|
||||||
onready var cop_detector = $CopDetector
|
|
||||||
const shard = preload("res://objects/collectibles/shard.tscn")
|
const shard = preload("res://objects/collectibles/shard.tscn")
|
||||||
const BloodSpray := preload("res://objects/environment/blood/blood_spray.tscn")
|
const BloodSpray := preload("res://objects/environment/blood/blood_spray.tscn")
|
||||||
#DIALOGUE
|
#DIALOGUE
|
||||||
|
@ -26,6 +25,11 @@ const fucking_cop = preload("res://audio/sounds/msx_fucking_cop.ogg")
|
||||||
const goddammit = preload("res://audio/sounds/msx_goddammit.ogg")
|
const goddammit = preload("res://audio/sounds/msx_goddammit.ogg")
|
||||||
const motherfucker = preload("res://audio/sounds/msx_motherfucker.ogg")
|
const motherfucker = preload("res://audio/sounds/msx_motherfucker.ogg")
|
||||||
const shit = preload("res://audio/sounds/msx_shit.ogg")
|
const shit = preload("res://audio/sounds/msx_shit.ogg")
|
||||||
|
const death_sounds = [
|
||||||
|
Audio.a_msx_die,
|
||||||
|
fuck,
|
||||||
|
shit
|
||||||
|
]
|
||||||
|
|
||||||
func _ready():
|
func _ready():
|
||||||
raycast.add_exception($Hitbox)
|
raycast.add_exception($Hitbox)
|
||||||
|
@ -43,14 +47,14 @@ func _physics_process(delta):
|
||||||
if raycast.get_collider().is_in_group("player_hitbox"):
|
if raycast.get_collider().is_in_group("player_hitbox"):
|
||||||
if first_lead == true:
|
if first_lead == true:
|
||||||
Audio.play_sound(help_me,Audio.ac_voice)
|
Audio.play_sound(help_me,Audio.ac_voice)
|
||||||
text_anim.play("help me")
|
text_anims.play("help me")
|
||||||
first_lead = false
|
first_lead = false
|
||||||
is_moving = true
|
is_moving = true
|
||||||
velocity.y += 128 * delta
|
velocity.y += 128 * delta
|
||||||
velocity = move_and_slide_with_snap(velocity, Vector2.DOWN, Vector2.UP, true)
|
velocity = move_and_slide_with_snap(velocity, Vector2.DOWN, Vector2.UP, true)
|
||||||
#Anims
|
#Anims
|
||||||
if velocity.x == 0:
|
if velocity.x == 0:
|
||||||
if !anims.get_current_animation() == "give" && !anims.get_current_animation() == "respawn" && !anims.get_current_animation() == "blink" && !anims.get_current_animation() == "come here" && !anims.get_current_animation() == "help me": anims.play("idle")
|
if !anims.get_current_animation() == "give" && !anims.get_current_animation() == "respawn" && !anims.get_current_animation() == "blink": anims.play("idle")
|
||||||
else:
|
else:
|
||||||
anims.play("walk")
|
anims.play("walk")
|
||||||
#Stop at the end of path and give shard
|
#Stop at the end of path and give shard
|
||||||
|
@ -59,12 +63,10 @@ func _physics_process(delta):
|
||||||
velocity.x = 0
|
velocity.x = 0
|
||||||
if is_holding_shard:
|
if is_holding_shard:
|
||||||
anims.play("give")
|
anims.play("give")
|
||||||
#Cop detector
|
|
||||||
if cop_detector.is_colliding():
|
|
||||||
print(cop_detector.get_collider())
|
|
||||||
|
|
||||||
func spawn_shard():
|
func spawn_shard():
|
||||||
Audio.play_sound(here_take_this,Audio.ac_voice)
|
Audio.play_sound(here_take_this,Audio.ac_voice)
|
||||||
|
text_anims.play("here take this")
|
||||||
var ShardInstance = shard.instance()
|
var ShardInstance = shard.instance()
|
||||||
ShardInstance.global_position = Vector2(shard_position.global_position.x,shard_position.global_position.y)
|
ShardInstance.global_position = Vector2(shard_position.global_position.x,shard_position.global_position.y)
|
||||||
ShardInstance.number = 1
|
ShardInstance.number = 1
|
||||||
|
@ -73,7 +75,7 @@ func spawn_shard():
|
||||||
|
|
||||||
func switch_action():
|
func switch_action():
|
||||||
Audio.play_sound(come_here,Audio.ac_voice)
|
Audio.play_sound(come_here,Audio.ac_voice)
|
||||||
anims.play("come here")
|
text_anims.play("come here")
|
||||||
|
|
||||||
func spray_blood():
|
func spray_blood():
|
||||||
for i in 16:
|
for i in 16:
|
||||||
|
@ -92,7 +94,7 @@ func die():
|
||||||
death_particles.global_position = global_position
|
death_particles.global_position = global_position
|
||||||
death_particles.emitting = true
|
death_particles.emitting = true
|
||||||
spray_blood()
|
spray_blood()
|
||||||
Audio.play_sound(Audio.a_msx_die,Audio.ac_die)
|
Audio.play_sound(death_sounds[randi() % death_sounds.size()],Audio.ac_voice)
|
||||||
is_moving = false
|
is_moving = false
|
||||||
velocity.x = 0
|
velocity.x = 0
|
||||||
position = start_position
|
position = start_position
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
[gd_scene load_steps=26 format=2]
|
[gd_scene load_steps=28 format=2]
|
||||||
|
|
||||||
[ext_resource path="res://shaders/1px_border.gdshader" type="Shader" id=1]
|
[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_respawn.png" type="Texture" id=2]
|
||||||
|
@ -51,7 +51,7 @@ tracks/2/keys = {
|
||||||
"values": [ 0 ]
|
"values": [ 0 ]
|
||||||
}
|
}
|
||||||
tracks/3/type = "value"
|
tracks/3/type = "value"
|
||||||
tracks/3/path = NodePath("HereTakeThis:visible")
|
tracks/3/path = NodePath("Dialogue/HereTakeThis:visible")
|
||||||
tracks/3/interp = 1
|
tracks/3/interp = 1
|
||||||
tracks/3/loop_wrap = true
|
tracks/3/loop_wrap = true
|
||||||
tracks/3/imported = false
|
tracks/3/imported = false
|
||||||
|
@ -63,7 +63,7 @@ tracks/3/keys = {
|
||||||
"values": [ false ]
|
"values": [ false ]
|
||||||
}
|
}
|
||||||
tracks/4/type = "value"
|
tracks/4/type = "value"
|
||||||
tracks/4/path = NodePath("ComeHere:visible")
|
tracks/4/path = NodePath("Dialogue/ComeHere:visible")
|
||||||
tracks/4/interp = 1
|
tracks/4/interp = 1
|
||||||
tracks/4/loop_wrap = true
|
tracks/4/loop_wrap = true
|
||||||
tracks/4/imported = false
|
tracks/4/imported = false
|
||||||
|
@ -75,7 +75,7 @@ tracks/4/keys = {
|
||||||
"values": [ false ]
|
"values": [ false ]
|
||||||
}
|
}
|
||||||
tracks/5/type = "value"
|
tracks/5/type = "value"
|
||||||
tracks/5/path = NodePath("HelpMe:visible")
|
tracks/5/path = NodePath("Dialogue/HelpMe:visible")
|
||||||
tracks/5/interp = 1
|
tracks/5/interp = 1
|
||||||
tracks/5/loop_wrap = true
|
tracks/5/loop_wrap = true
|
||||||
tracks/5/imported = false
|
tracks/5/imported = false
|
||||||
|
@ -169,7 +169,7 @@ tracks/2/keys = {
|
||||||
"values": [ 0 ]
|
"values": [ 0 ]
|
||||||
}
|
}
|
||||||
tracks/3/type = "value"
|
tracks/3/type = "value"
|
||||||
tracks/3/path = NodePath("ComeHere:visible")
|
tracks/3/path = NodePath("Dialogue/ComeHere:visible")
|
||||||
tracks/3/interp = 1
|
tracks/3/interp = 1
|
||||||
tracks/3/loop_wrap = true
|
tracks/3/loop_wrap = true
|
||||||
tracks/3/imported = false
|
tracks/3/imported = false
|
||||||
|
@ -235,18 +235,6 @@ tracks/3/keys = {
|
||||||
"method": "spawn_shard"
|
"method": "spawn_shard"
|
||||||
} ]
|
} ]
|
||||||
}
|
}
|
||||||
tracks/4/type = "value"
|
|
||||||
tracks/4/path = NodePath("HereTakeThis:visible")
|
|
||||||
tracks/4/interp = 1
|
|
||||||
tracks/4/loop_wrap = true
|
|
||||||
tracks/4/imported = false
|
|
||||||
tracks/4/enabled = true
|
|
||||||
tracks/4/keys = {
|
|
||||||
"times": PoolRealArray( 0, 2.52 ),
|
|
||||||
"transitions": PoolRealArray( 1, 1 ),
|
|
||||||
"update": 1,
|
|
||||||
"values": [ true, false ]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id=20]
|
[sub_resource type="Animation" id=20]
|
||||||
resource_name = "help me"
|
resource_name = "help me"
|
||||||
|
@ -289,7 +277,7 @@ tracks/2/keys = {
|
||||||
"values": [ 0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 2, 3 ]
|
"values": [ 0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 2, 3 ]
|
||||||
}
|
}
|
||||||
tracks/3/type = "value"
|
tracks/3/type = "value"
|
||||||
tracks/3/path = NodePath("ComeHere:visible")
|
tracks/3/path = NodePath("Dialogue/ComeHere:visible")
|
||||||
tracks/3/interp = 1
|
tracks/3/interp = 1
|
||||||
tracks/3/loop_wrap = true
|
tracks/3/loop_wrap = true
|
||||||
tracks/3/imported = false
|
tracks/3/imported = false
|
||||||
|
@ -301,7 +289,7 @@ tracks/3/keys = {
|
||||||
"values": [ false ]
|
"values": [ false ]
|
||||||
}
|
}
|
||||||
tracks/4/type = "value"
|
tracks/4/type = "value"
|
||||||
tracks/4/path = NodePath("HelpMe:visible")
|
tracks/4/path = NodePath("Dialogue/HelpMe:visible")
|
||||||
tracks/4/interp = 1
|
tracks/4/interp = 1
|
||||||
tracks/4/loop_wrap = true
|
tracks/4/loop_wrap = true
|
||||||
tracks/4/imported = false
|
tracks/4/imported = false
|
||||||
|
@ -354,7 +342,7 @@ tracks/2/keys = {
|
||||||
"values": [ 0 ]
|
"values": [ 0 ]
|
||||||
}
|
}
|
||||||
tracks/3/type = "value"
|
tracks/3/type = "value"
|
||||||
tracks/3/path = NodePath("ComeHere:visible")
|
tracks/3/path = NodePath("Dialogue/ComeHere:visible")
|
||||||
tracks/3/interp = 1
|
tracks/3/interp = 1
|
||||||
tracks/3/loop_wrap = true
|
tracks/3/loop_wrap = true
|
||||||
tracks/3/imported = false
|
tracks/3/imported = false
|
||||||
|
@ -467,7 +455,7 @@ _data = [ Vector2( 0, 1 ), 0.0, -0.113537, 0, 0, Vector2( 1, 0 ), -3.35032, 0.0,
|
||||||
[sub_resource type="Animation" id=21]
|
[sub_resource type="Animation" id=21]
|
||||||
length = 0.001
|
length = 0.001
|
||||||
tracks/0/type = "value"
|
tracks/0/type = "value"
|
||||||
tracks/0/path = NodePath("HelpMe:visible")
|
tracks/0/path = NodePath("Dialogue/HelpMe:visible")
|
||||||
tracks/0/interp = 1
|
tracks/0/interp = 1
|
||||||
tracks/0/loop_wrap = true
|
tracks/0/loop_wrap = true
|
||||||
tracks/0/imported = false
|
tracks/0/imported = false
|
||||||
|
@ -478,18 +466,74 @@ tracks/0/keys = {
|
||||||
"update": 1,
|
"update": 1,
|
||||||
"values": [ false ]
|
"values": [ false ]
|
||||||
}
|
}
|
||||||
|
tracks/1/type = "value"
|
||||||
|
tracks/1/path = NodePath("Dialogue/HereTakeThis:visible")
|
||||||
|
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": [ false ]
|
||||||
|
}
|
||||||
|
tracks/2/type = "value"
|
||||||
|
tracks/2/path = NodePath("Dialogue/ComeHere:visible")
|
||||||
|
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": [ false ]
|
||||||
|
}
|
||||||
|
|
||||||
[sub_resource type="Animation" id=22]
|
[sub_resource type="Animation" id=23]
|
||||||
resource_name = "help me"
|
resource_name = "come here"
|
||||||
length = 3.0
|
length = 1.5
|
||||||
tracks/0/type = "value"
|
tracks/0/type = "value"
|
||||||
tracks/0/path = NodePath("HelpMe:visible")
|
tracks/0/path = NodePath("Dialogue/ComeHere:visible")
|
||||||
tracks/0/interp = 1
|
tracks/0/interp = 1
|
||||||
tracks/0/loop_wrap = true
|
tracks/0/loop_wrap = true
|
||||||
tracks/0/imported = false
|
tracks/0/imported = false
|
||||||
tracks/0/enabled = true
|
tracks/0/enabled = true
|
||||||
tracks/0/keys = {
|
tracks/0/keys = {
|
||||||
"times": PoolRealArray( 0, 2.9 ),
|
"times": PoolRealArray( 0, 1.5 ),
|
||||||
|
"transitions": PoolRealArray( 1, 1 ),
|
||||||
|
"update": 1,
|
||||||
|
"values": [ true, false ]
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id=22]
|
||||||
|
resource_name = "help me"
|
||||||
|
length = 1.5
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/path = NodePath("Dialogue/HelpMe:visible")
|
||||||
|
tracks/0/interp = 1
|
||||||
|
tracks/0/loop_wrap = true
|
||||||
|
tracks/0/imported = false
|
||||||
|
tracks/0/enabled = true
|
||||||
|
tracks/0/keys = {
|
||||||
|
"times": PoolRealArray( 0, 1.5 ),
|
||||||
|
"transitions": PoolRealArray( 1, 1 ),
|
||||||
|
"update": 1,
|
||||||
|
"values": [ true, false ]
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id=24]
|
||||||
|
resource_name = "here take this"
|
||||||
|
length = 1.5
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/path = NodePath("Dialogue/HereTakeThis:visible")
|
||||||
|
tracks/0/interp = 1
|
||||||
|
tracks/0/loop_wrap = true
|
||||||
|
tracks/0/imported = false
|
||||||
|
tracks/0/enabled = true
|
||||||
|
tracks/0/keys = {
|
||||||
|
"times": PoolRealArray( 0, 1.5 ),
|
||||||
"transitions": PoolRealArray( 1, 1 ),
|
"transitions": PoolRealArray( 1, 1 ),
|
||||||
"update": 1,
|
"update": 1,
|
||||||
"values": [ true, false ]
|
"values": [ true, false ]
|
||||||
|
@ -575,7 +619,15 @@ __meta__ = {
|
||||||
|
|
||||||
[node name="BlinkTimer" type="Timer" parent="."]
|
[node name="BlinkTimer" type="Timer" parent="."]
|
||||||
|
|
||||||
[node name="HereTakeThis" type="Label" parent="."]
|
[node name="TextAnim" type="AnimationPlayer" parent="."]
|
||||||
|
anims/RESET = SubResource( 21 )
|
||||||
|
"anims/come here" = SubResource( 23 )
|
||||||
|
"anims/help me" = SubResource( 22 )
|
||||||
|
"anims/here take this" = SubResource( 24 )
|
||||||
|
|
||||||
|
[node name="Dialogue" type="Node2D" parent="."]
|
||||||
|
|
||||||
|
[node name="HereTakeThis" type="Label" parent="Dialogue"]
|
||||||
visible = false
|
visible = false
|
||||||
material = ExtResource( 6 )
|
material = ExtResource( 6 )
|
||||||
margin_left = -48.0
|
margin_left = -48.0
|
||||||
|
@ -586,35 +638,26 @@ theme = ExtResource( 5 )
|
||||||
text = "Here, take this"
|
text = "Here, take this"
|
||||||
align = 1
|
align = 1
|
||||||
|
|
||||||
[node name="ComeHere" type="Label" parent="."]
|
[node name="ComeHere" type="Label" parent="Dialogue"]
|
||||||
visible = false
|
visible = false
|
||||||
material = ExtResource( 6 )
|
material = ExtResource( 6 )
|
||||||
margin_left = -47.0
|
margin_left = -96.0
|
||||||
margin_top = -22.0
|
margin_top = -22.0
|
||||||
margin_right = 58.0
|
margin_right = 9.0
|
||||||
margin_bottom = -8.0
|
margin_bottom = -8.0
|
||||||
theme = ExtResource( 5 )
|
theme = ExtResource( 5 )
|
||||||
text = "Hey, come here!"
|
text = "Hey, come here!"
|
||||||
|
|
||||||
[node name="HelpMe" type="Label" parent="."]
|
[node name="HelpMe" type="Label" parent="Dialogue"]
|
||||||
visible = false
|
visible = false
|
||||||
material = ExtResource( 6 )
|
material = ExtResource( 6 )
|
||||||
margin_left = -41.0
|
margin_left = -76.0
|
||||||
margin_top = -33.0
|
margin_top = -33.0
|
||||||
margin_right = 43.0
|
margin_right = 8.0
|
||||||
margin_bottom = -10.0
|
margin_bottom = -10.0
|
||||||
theme = ExtResource( 5 )
|
theme = ExtResource( 5 )
|
||||||
text = "Help me get
|
text = "Help me get
|
||||||
outta here!"
|
outta here!"
|
||||||
align = 1
|
align = 1
|
||||||
|
|
||||||
[node name="TextAnim" type="AnimationPlayer" parent="."]
|
|
||||||
anims/RESET = SubResource( 21 )
|
|
||||||
"anims/help me" = SubResource( 22 )
|
|
||||||
|
|
||||||
[node name="CopDetector" type="RayCast2D" parent="."]
|
|
||||||
enabled = true
|
|
||||||
cast_to = Vector2( -135, 0 )
|
|
||||||
collision_mask = 3
|
|
||||||
|
|
||||||
[connection signal="timeout" from="BlinkTimer" to="." method="_on_BlinkTimer_timeout"]
|
[connection signal="timeout" from="BlinkTimer" to="." method="_on_BlinkTimer_timeout"]
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue