mirror of
https://github.com/JHDev2006/Super-Mario-Bros.-Remastered-Public.git
synced 2025-10-22 15:38:14 +00:00
Merge remote-tracking branch 'upstream/main' into pulls/small-crouch-hitbox-fix
This commit is contained in:
@@ -8,6 +8,21 @@
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_dnx1i"]
|
||||
size = Vector2(10, 8)
|
||||
|
||||
[sub_resource type="Animation" id="Animation_5y583"]
|
||||
length = 0.001
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("Sprite:offset")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(0, 0)]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_dnx1i"]
|
||||
resource_name = "Shake"
|
||||
length = 0.2
|
||||
@@ -25,21 +40,6 @@ tracks/0/keys = {
|
||||
"values": [Vector2(-1, 0), Vector2(1, 0)]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_5y583"]
|
||||
length = 0.001
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("Sprite:offset")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(0, 0)]
|
||||
}
|
||||
|
||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_2sios"]
|
||||
_data = {
|
||||
&"RESET": SubResource("Animation_5y583"),
|
||||
|
@@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=20 format=3 uid="uid://1rxw4k4wq3ni"]
|
||||
[gd_scene load_steps=22 format=3 uid="uid://1rxw4k4wq3ni"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://dbq6cn2hp6ijx" path="res://Assets/Sprites/Enemies/PiranhaPlant.png" id="1_2imih"]
|
||||
[ext_resource type="Script" uid="uid://d23hoj2qc2whq" path="res://Scripts/Classes/Entities/Enemies/PiranhaPlant.gd" id="1_jbk0f"]
|
||||
@@ -11,6 +11,7 @@
|
||||
[ext_resource type="Script" uid="uid://bbww34oiexbx2" path="res://Scripts/Classes/Components/ShellDetection.gd" id="10_uohcg"]
|
||||
[ext_resource type="Script" uid="uid://d0mqkvopasu8k" path="res://Scripts/Classes/Components/SecondQuestReplaceComponent.gd" id="10_xreuf"]
|
||||
[ext_resource type="Script" uid="uid://ba18grqjixded" path="res://Scripts/Classes/Components/ExplosionDetection.gd" id="11_8y1e5"]
|
||||
[ext_resource type="Script" uid="uid://ctfbuoxtnnl0q" path="res://Scripts/Classes/Components/EditorPropertyExposer.gd" id="12_ofvpu"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_xp8sq"]
|
||||
atlas = ExtResource("1_2imih")
|
||||
@@ -180,6 +181,25 @@ _data = {
|
||||
&"Rise": SubResource("Animation_t8k64")
|
||||
}
|
||||
|
||||
[sub_resource type="GDScript" id="GDScript_ofvpu"]
|
||||
script/source = "extends Node
|
||||
|
||||
var starting_position = Vector2(-1, -1)
|
||||
|
||||
func _ready() -> void:
|
||||
if starting_position == Vector2(-1, -1):
|
||||
starting_position = owner.global_position
|
||||
|
||||
func _process(_delta: float) -> void:
|
||||
const OFFSETS = [Vector2.ZERO, Vector2(0, -16), Vector2(-16, 0), Vector2.ZERO]
|
||||
if Global.level_editor != null:
|
||||
owner.global_rotation_degrees = [0, 180, 90, -90][owner.plant_direction]
|
||||
# guzlad: only do the offset calculations if the directions actually need them, stops wasting time for other directions
|
||||
if (owner.plant_direction == 1 or owner.plant_direction == 2):
|
||||
var offset = OFFSETS[owner.plant_direction]
|
||||
owner.global_position = Vector2((owner.get_meta(\"tile_position\") + Vector2i(1, 1)) * 16) + offset
|
||||
"
|
||||
|
||||
[node name="PirannhaPlant" type="CharacterBody2D" node_paths=PackedStringArray("on_screen_enabler", "score_note_adder") groups=["Enemies"]]
|
||||
z_index = -5
|
||||
script = ExtResource("1_jbk0f")
|
||||
@@ -279,6 +299,15 @@ script = ExtResource("11_8y1e5")
|
||||
hitbox = NodePath("../Sprite/Hitbox")
|
||||
metadata/_custom_type_script = "uid://ba18grqjixded"
|
||||
|
||||
[node name="EditorPropertyExposer" type="Node" parent="."]
|
||||
script = ExtResource("12_ofvpu")
|
||||
properties = Array[String](["plant_direction"])
|
||||
metadata/_custom_type_script = "uid://ctfbuoxtnnl0q"
|
||||
|
||||
[node name="Node" type="Node" parent="."]
|
||||
process_mode = 3
|
||||
script = SubResource("GDScript_ofvpu")
|
||||
|
||||
[connection signal="timeout" from="Timer" to="." method="on_timeout"]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="." method="die_from_object"]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
|
@@ -258,7 +258,7 @@ metadata/_custom_type_script = "uid://caq1qiwmy0mox"
|
||||
|
||||
[node name="ResourceSetterNew" type="Node" parent="Sprite" node_paths=PackedStringArray("node_to_affect")]
|
||||
script = ExtResource("4_dvv3e")
|
||||
node_to_affect = NodePath("")
|
||||
node_to_affect = NodePath("..")
|
||||
property_name = "sprite_frames"
|
||||
resource_json = ExtResource("5_hjivi")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
@@ -1,10 +1,12 @@
|
||||
[gd_scene load_steps=4 format=3 uid="uid://dplnidrqshecd"]
|
||||
[gd_scene load_steps=5 format=3 uid="uid://dplnidrqshecd"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://chjxyhlwohmi6" path="res://Scenes/Prefabs/Entities/Items/Coin.tscn" id="1_iq4uk"]
|
||||
[ext_resource type="PackedScene" uid="uid://bxuxtgn5wg108" path="res://Scenes/Prefabs/Entities/Items/SpinningBlueCoin.tscn" id="2_4rq0g"]
|
||||
[ext_resource type="PackedScene" uid="uid://2j5gl64gxbgy" path="res://Scenes/Prefabs/Particles/BlueCoinSparkle.tscn" id="2_mibmr"]
|
||||
[ext_resource type="JSON" path="res://Assets/Sprites/Items/BlueCoin.json" id="2_r2p65"]
|
||||
|
||||
[node name="Coin" instance=ExtResource("1_iq4uk")]
|
||||
COIN_SPARKLE = ExtResource("2_mibmr")
|
||||
spinning_coin_scene = ExtResource("2_4rq0g")
|
||||
|
||||
[node name="Sprite" parent="." index="0"]
|
||||
|
@@ -1,8 +1,9 @@
|
||||
[gd_scene load_steps=17 format=3 uid="uid://chjxyhlwohmi6"]
|
||||
[gd_scene load_steps=18 format=3 uid="uid://chjxyhlwohmi6"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://cexcll4frt0t6" path="res://Scripts/Classes/Entities/Items/Coin.gd" id="1_c6elg"]
|
||||
[ext_resource type="Texture2D" uid="uid://b6o28xa83npb1" path="res://Assets/Sprites/Items/StaticCoin.png" id="2_7vxr7"]
|
||||
[ext_resource type="PackedScene" uid="uid://clxssds8sj8pf" path="res://Scenes/Prefabs/Entities/Items/SpinningCoin.tscn" id="2_k3746"]
|
||||
[ext_resource type="PackedScene" uid="uid://b1ytbn4cu7msu" path="res://Scenes/Prefabs/Particles/CoinSparkle.tscn" id="2_nu35s"]
|
||||
[ext_resource type="Script" uid="uid://cmg61722ktg2m" path="res://Scripts/Classes/Components/BlockBouncingDetection.gd" id="3_korlu"]
|
||||
[ext_resource type="Script" uid="uid://cbal8ms2oe1ik" path="res://Scripts/Classes/Components/ResourceSetterNew.gd" id="3_uahob"]
|
||||
[ext_resource type="JSON" path="res://Assets/Sprites/Items/Coin.json" id="4_thymr"]
|
||||
@@ -55,6 +56,7 @@ size = Vector2(8, 8)
|
||||
[node name="Coin" type="Node2D" groups=["Coins"]]
|
||||
z_index = -2
|
||||
script = ExtResource("1_c6elg")
|
||||
COIN_SPARKLE = ExtResource("2_nu35s")
|
||||
spinning_coin_scene = ExtResource("2_k3746")
|
||||
|
||||
[node name="Sprite" type="AnimatedSprite2D" parent="."]
|
||||
@@ -62,9 +64,10 @@ sprite_frames = SubResource("SpriteFrames_nu35s")
|
||||
autoplay = "default"
|
||||
frame_progress = 0.487032
|
||||
|
||||
[node name="ResourceSetterNew" type="Node" parent="Sprite" node_paths=PackedStringArray("node_to_affect")]
|
||||
[node name="ResourceSetterNew" type="Node" parent="Sprite" node_paths=PackedStringArray("node_to_affect", "property_node")]
|
||||
script = ExtResource("3_uahob")
|
||||
node_to_affect = NodePath("..")
|
||||
property_node = NodePath("../..")
|
||||
property_name = "sprite_frames"
|
||||
resource_json = ExtResource("4_thymr")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
@@ -93,9 +93,10 @@ script = ExtResource("3_0r8d3")
|
||||
do_offset = false
|
||||
metadata/_custom_type_script = "uid://caq1qiwmy0mox"
|
||||
|
||||
[node name="ResourceSetterNew" type="Node" parent="Sprite" node_paths=PackedStringArray("node_to_affect")]
|
||||
[node name="ResourceSetterNew" type="Node" parent="Sprite" node_paths=PackedStringArray("node_to_affect", "property_node")]
|
||||
script = ExtResource("3_0xloa")
|
||||
node_to_affect = NodePath("..")
|
||||
property_node = NodePath("../..")
|
||||
property_name = "sprite_frames"
|
||||
resource_json = ExtResource("5_0fjrw")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
@@ -1,9 +1,11 @@
|
||||
[gd_scene load_steps=3 format=3 uid="uid://bxuxtgn5wg108"]
|
||||
[gd_scene load_steps=4 format=3 uid="uid://bxuxtgn5wg108"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://clxssds8sj8pf" path="res://Scenes/Prefabs/Entities/Items/SpinningCoin.tscn" id="1_8si4e"]
|
||||
[ext_resource type="JSON" path="res://Assets/Sprites/Items/BlueCoin.json" id="2_da77p"]
|
||||
[ext_resource type="PackedScene" uid="uid://2j5gl64gxbgy" path="res://Scenes/Prefabs/Particles/BlueCoinSparkle.tscn" id="2_vxiva"]
|
||||
|
||||
[node name="SpinningCoin" instance=ExtResource("1_8si4e")]
|
||||
particle = ExtResource("2_vxiva")
|
||||
|
||||
[node name="Sprite" parent="." index="0"]
|
||||
animation = &"Spin"
|
||||
|
@@ -1,7 +1,8 @@
|
||||
[gd_scene load_steps=11 format=3 uid="uid://clxssds8sj8pf"]
|
||||
[gd_scene load_steps=12 format=3 uid="uid://clxssds8sj8pf"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://dixhffcqfnyku" path="res://Scripts/Classes/Entities/Items/SpinningCoin.gd" id="1_pvx50"]
|
||||
[ext_resource type="Texture2D" uid="uid://bnomivkphlt60" path="res://Assets/Sprites/Items/SpinningCoin.png" id="2_6slgd"]
|
||||
[ext_resource type="PackedScene" uid="uid://b1ytbn4cu7msu" path="res://Scenes/Prefabs/Particles/CoinSparkle.tscn" id="2_b5lmc"]
|
||||
[ext_resource type="Script" uid="uid://5octqlf4ohel" path="res://Scripts/Classes/Components/ScoreNoteSpawner.gd" id="3_6slgd"]
|
||||
[ext_resource type="Script" uid="uid://cbal8ms2oe1ik" path="res://Scripts/Classes/Components/ResourceSetterNew.gd" id="3_7mdmn"]
|
||||
[ext_resource type="JSON" path="res://Assets/Sprites/Items/SpinningCoin.json" id="4_b5lmc"]
|
||||
@@ -44,6 +45,7 @@ animations = [{
|
||||
|
||||
[node name="SpinningCoin" type="Node2D"]
|
||||
script = ExtResource("1_pvx50")
|
||||
particle = ExtResource("2_b5lmc")
|
||||
metadata/block_spawn_offset = Vector2(0, -4)
|
||||
|
||||
[node name="Sprite" type="AnimatedSprite2D" parent="."]
|
||||
@@ -51,9 +53,10 @@ sprite_frames = SubResource("SpriteFrames_sax2u")
|
||||
autoplay = "default"
|
||||
frame_progress = 0.710764
|
||||
|
||||
[node name="ResourceSetterNew" type="Node" parent="Sprite" node_paths=PackedStringArray("node_to_affect")]
|
||||
[node name="ResourceSetterNew" type="Node" parent="Sprite" node_paths=PackedStringArray("node_to_affect", "property_node")]
|
||||
script = ExtResource("3_7mdmn")
|
||||
node_to_affect = NodePath("..")
|
||||
property_node = NodePath("../..")
|
||||
property_name = "sprite_frames"
|
||||
resource_json = ExtResource("4_b5lmc")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
@@ -90,9 +90,10 @@ speed_scale = 2.5
|
||||
script = ExtResource("3_rnpac")
|
||||
metadata/_custom_type_script = "uid://caq1qiwmy0mox"
|
||||
|
||||
[node name="ResourceSetterNew" type="Node" parent="Sprite" node_paths=PackedStringArray("node_to_affect")]
|
||||
[node name="ResourceSetterNew" type="Node" parent="Sprite" node_paths=PackedStringArray("node_to_affect", "property_node")]
|
||||
script = ExtResource("3_ke76m")
|
||||
node_to_affect = NodePath("..")
|
||||
property_node = NodePath("../..")
|
||||
property_name = "sprite_frames"
|
||||
resource_json = ExtResource("4_rnpac")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
@@ -36,7 +36,7 @@ tracks/0/path = NodePath("Sprite:scale")
|
||||
tracks/0/interp = 2
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0, 0.033333335, 0.1, 0.16666667),
|
||||
"times": PackedFloat32Array(0, 0.010294806, 0.06666667, 0.16666667),
|
||||
"transitions": PackedFloat32Array(1, 1, 1, 1),
|
||||
"update": 0,
|
||||
"values": [Vector2(1, 1), Vector2(0.8, 0.8), Vector2(1.2, 1.2), Vector2(1, 1)]
|
||||
|
@@ -1,10 +1,12 @@
|
||||
[gd_scene load_steps=8 format=3 uid="uid://4gxhnql5bjk6"]
|
||||
[gd_scene load_steps=10 format=3 uid="uid://4gxhnql5bjk6"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://50hm4xgnw8ks" path="res://Assets/Sprites/Tilesets/Tracks.png" id="1_84p4k"]
|
||||
[ext_resource type="Script" uid="uid://chhr6kgvstkod" path="res://Scripts/Classes/Entities/Objects/TrackPiece.gd" id="1_t2c2l"]
|
||||
[ext_resource type="Texture2D" uid="uid://barofu3g8jf00" path="res://Assets/Sprites/Tilesets/InvisibleTracks.png" id="2_5cc87"]
|
||||
[ext_resource type="Script" uid="uid://cbal8ms2oe1ik" path="res://Scripts/Classes/Components/ResourceSetterNew.gd" id="3_4ie33"]
|
||||
[ext_resource type="JSON" path="res://Assets/Sprites/Tilesets/Track.json" id="4_5cc87"]
|
||||
[ext_resource type="Script" uid="uid://cpwloakvp672a" path="res://Scripts/Parts/EditorVisibleNode.gd" id="6_yu1nf"]
|
||||
[ext_resource type="Texture2D" uid="uid://dp4b0cpisp5cs" path="res://Assets/Sprites/UI/Arrow.png" id="7_br4q4"]
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_4k6gi"]
|
||||
size = Vector2(12, 12)
|
||||
@@ -203,6 +205,16 @@ mode = 1
|
||||
resource_json = ExtResource("4_5cc87")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
||||
[node name="DirectionArrow" type="Node2D" parent="."]
|
||||
script = ExtResource("6_yu1nf")
|
||||
metadata/_custom_type_script = "uid://cpwloakvp672a"
|
||||
|
||||
[node name="Arrow" type="Sprite2D" parent="DirectionArrow"]
|
||||
modulate = Color(0, 1, 1, 1)
|
||||
rotation = -1.5707964
|
||||
texture = ExtResource("7_br4q4")
|
||||
hframes = 2
|
||||
|
||||
[connection signal="mouse_entered" from="PlacePreview/NW/MouseArea" to="." method="on_mouse_entered"]
|
||||
[connection signal="mouse_exited" from="PlacePreview/NW/MouseArea" to="." method="on_mouse_exited"]
|
||||
[connection signal="mouse_entered" from="PlacePreview/N/MouseArea" to="." method="on_mouse_entered" binds= [1]]
|
||||
|
@@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=84 format=3 uid="uid://cuh62hlq8errh"]
|
||||
[gd_scene load_steps=85 format=3 uid="uid://cuh62hlq8errh"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://dt4rosa5o35xr" path="res://Scripts/Classes/Entities/Player.gd" id="1_f6bau"]
|
||||
[ext_resource type="Script" uid="uid://uribh0f1jttq" path="res://Scripts/Classes/States/StateMachine.gd" id="2_1y62l"]
|
||||
@@ -23,6 +23,7 @@
|
||||
[ext_resource type="Script" uid="uid://c7kmriol0gj16" path="res://Scripts/Classes/States/Player/Climb.gd" id="10_shhao"]
|
||||
[ext_resource type="JSON" path="res://Assets/Sprites/Players/Mario/ColourPalette.json" id="10_xy8gq"]
|
||||
[ext_resource type="Script" uid="uid://b10ui1x45l6ly" path="res://Scripts/Classes/States/Player/WallSlide.gd" id="11_057py"]
|
||||
[ext_resource type="Texture2D" uid="uid://bqra7e5xsdg5r" path="res://Assets/Sprites/Particles/SkidParticles.png" id="11_vijl6"]
|
||||
[ext_resource type="Texture2D" uid="uid://dq58glgwf2l3" path="res://Assets/Sprites/UI/CheckpointIcon.png" id="13_uo1a1"]
|
||||
[ext_resource type="Script" uid="uid://ugfx3sb3h6rj" path="res://Scripts/Classes/States/Player/NoClip.gd" id="16_cekpg"]
|
||||
[ext_resource type="AudioStream" uid="uid://cbxnq518x3jqe" path="res://Assets/Audio/SFX/Skid.wav" id="18_hofol"]
|
||||
@@ -291,11 +292,11 @@ _data = {
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_nbkfn"]
|
||||
resource_local_to_scene = true
|
||||
size = Vector2(9, 14)
|
||||
size = Vector2(9.2, 14)
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_d20nf"]
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_vijl6"]
|
||||
resource_local_to_scene = true
|
||||
size = Vector2(9, 29.5)
|
||||
size = Vector2(9.2, 29.5)
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_f6bau"]
|
||||
resource_local_to_scene = true
|
||||
@@ -486,6 +487,12 @@ script = ExtResource("24_hu5lw")
|
||||
Overworld = ExtResource("40_o70e0")
|
||||
metadata/_custom_type_script = "uid://cmvlgsjmsk0v5"
|
||||
|
||||
[sub_resource type="CanvasItemMaterial" id="CanvasItemMaterial_pm4ir"]
|
||||
particles_animation = true
|
||||
particles_anim_h_frames = 5
|
||||
particles_anim_v_frames = 1
|
||||
particles_anim_loop = false
|
||||
|
||||
[node name="Player" type="CharacterBody2D" node_paths=PackedStringArray("power_state") groups=["Players"]]
|
||||
process_priority = 1
|
||||
process_physics_priority = 1
|
||||
@@ -495,7 +502,6 @@ collision_mask = 3
|
||||
collision_priority = 10000000.0
|
||||
slide_on_ceiling = false
|
||||
floor_constant_speed = true
|
||||
floor_max_angle = 0.872665
|
||||
floor_snap_length = 4.0
|
||||
platform_on_leave = 2
|
||||
script = ExtResource("1_f6bau")
|
||||
@@ -665,7 +671,6 @@ editor_draw_limits = true
|
||||
editor_draw_drag_margin = true
|
||||
|
||||
[node name="Hitbox" type="Area2D" parent="."]
|
||||
visible = false
|
||||
position = Vector2(0, -10)
|
||||
collision_mask = 5
|
||||
|
||||
@@ -678,7 +683,7 @@ offset = Vector2(0, -10)
|
||||
|
||||
[node name="BigShape" type="CollisionShape2D" parent="Hitbox" groups=["BigCollisions"]]
|
||||
position = Vector2(0, -4.75)
|
||||
shape = SubResource("RectangleShape2D_d20nf")
|
||||
shape = SubResource("RectangleShape2D_vijl6")
|
||||
disabled = true
|
||||
debug_color = Color(1, 0, 0, 0.419608)
|
||||
script = ExtResource("21_jl70t")
|
||||
@@ -1140,6 +1145,18 @@ property_name = "stream"
|
||||
themed_resource = SubResource("Resource_xy8gq")
|
||||
metadata/_custom_type_script = "uid://cq6f682453q6o"
|
||||
|
||||
[node name="SkidParticles" type="CPUParticles2D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
material = SubResource("CanvasItemMaterial_pm4ir")
|
||||
position = Vector2(0, -2)
|
||||
emitting = false
|
||||
amount = 2
|
||||
texture = ExtResource("11_vijl6")
|
||||
lifetime = 0.25
|
||||
gravity = Vector2(0, 0)
|
||||
anim_speed_min = 1.0
|
||||
anim_speed_max = 1.0
|
||||
|
||||
[connection signal="frame_changed" from="SpriteScaleJoint/Sprite" to="SpriteScaleJoint/Sprite" method="on_frame_changed"]
|
||||
[connection signal="sprite_frames_changed" from="SpriteScaleJoint/Sprite" to="SpriteScaleJoint/Sprite" method="on_frame_changed"]
|
||||
[connection signal="area_entered" from="SpriteScaleJoint/Sprite/HammerHitbox" to="." method="on_hammer_area_entered"]
|
||||
|
@@ -530,6 +530,7 @@ uppercase = true
|
||||
|
||||
[node name="Time" type="Label" parent="Main/TimeDisplay/TimeLabel"]
|
||||
unique_name_in_owner = true
|
||||
visible = false
|
||||
layout_mode = 1
|
||||
anchors_preset = -1
|
||||
offset_left = -12.0
|
||||
@@ -540,27 +541,41 @@ text = " 000"
|
||||
horizontal_alignment = 2
|
||||
uppercase = true
|
||||
|
||||
[node name="Stopwatch" type="Label" parent="Main/TimeDisplay/TimeLabel"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 1
|
||||
anchors_preset = -1
|
||||
offset_left = -16.0
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="Main/TimeDisplay/TimeLabel"]
|
||||
layout_mode = 0
|
||||
offset_left = -24.0
|
||||
offset_top = 8.0
|
||||
offset_right = 24.0
|
||||
offset_bottom = 16.0
|
||||
offset_right = 56.0
|
||||
offset_bottom = 40.0
|
||||
theme_override_constants/separation = -8
|
||||
alignment = 1
|
||||
|
||||
[node name="Stopwatch" type="Label" parent="Main/TimeDisplay/TimeLabel/VBoxContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 0
|
||||
text = "00:00:00"
|
||||
horizontal_alignment = 2
|
||||
uppercase = true
|
||||
|
||||
[node name="PB" type="Label" parent="Main/TimeDisplay/TimeLabel"]
|
||||
[node name="PB" type="Label" parent="Main/TimeDisplay/TimeLabel/VBoxContainer"]
|
||||
unique_name_in_owner = true
|
||||
visible = false
|
||||
layout_mode = 1
|
||||
anchors_preset = -1
|
||||
offset_left = -24.0
|
||||
offset_top = 16.0
|
||||
offset_right = 16.0
|
||||
offset_bottom = 24.0
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 0
|
||||
text = "+00:00:00"
|
||||
horizontal_alignment = 2
|
||||
uppercase = true
|
||||
|
||||
[node name="Control" type="Control" parent="Main/TimeDisplay/TimeLabel/VBoxContainer"]
|
||||
custom_minimum_size = Vector2(0, 12)
|
||||
layout_mode = 2
|
||||
|
||||
[node name="IGT" type="Label" parent="Main/TimeDisplay/TimeLabel/VBoxContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 2
|
||||
text = " ⏲000"
|
||||
horizontal_alignment = 2
|
||||
uppercase = true
|
||||
|
||||
[node name="Buffer5" type="Control" parent="Main"]
|
||||
@@ -918,7 +933,7 @@ grow_horizontal = 0
|
||||
grow_vertical = 2
|
||||
size_flags_horizontal = 10
|
||||
size_flags_vertical = 8
|
||||
text = "⏲000"
|
||||
text = "⏲00:00:00"
|
||||
horizontal_alignment = 2
|
||||
|
||||
[node name="ModernScore" type="Label" parent="ModernHUD/Right/ModernTime"]
|
||||
@@ -932,16 +947,27 @@ size_flags_horizontal = 8
|
||||
size_flags_vertical = 8
|
||||
text = "000000000"
|
||||
|
||||
[node name="ModernPB" type="Label" parent="ModernHUD/Right/ModernTime"]
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="ModernHUD/Right/ModernTime"]
|
||||
layout_mode = 0
|
||||
offset_top = 9.0
|
||||
offset_right = 80.0
|
||||
offset_bottom = 41.0
|
||||
theme_override_constants/separation = -4
|
||||
|
||||
[node name="ModernPB" type="Label" parent="ModernHUD/Right/ModernTime/VBoxContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 1
|
||||
anchors_preset = -1
|
||||
offset_top = 12.0
|
||||
offset_right = 40.0
|
||||
offset_bottom = 28.0
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 10
|
||||
size_flags_vertical = 8
|
||||
text = "⏲00"
|
||||
text = "⏲00:00:00"
|
||||
horizontal_alignment = 2
|
||||
|
||||
[node name="ModernIGT" type="Label" parent="ModernHUD/Right/ModernTime/VBoxContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 10
|
||||
size_flags_vertical = 8
|
||||
text = "⏲000"
|
||||
horizontal_alignment = 2
|
||||
|
||||
[node name="Timer" type="Timer" parent="."]
|
||||
@@ -1036,7 +1062,7 @@ metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
||||
[node name="TextShadowColourChanger" type="Node" parent="." node_paths=PackedStringArray("labels", "shadow_node")]
|
||||
script = ExtResource("18_jwl8o")
|
||||
labels = [NodePath("../Main/ScoreName/CharacterName"), NodePath("../Main/ScoreName/Score"), NodePath("../Main/CoinCount/CoinLabel"), NodePath("../Main/LevelDisplay/WorldTitle"), NodePath("../Main/LevelDisplay/WorldTitle/LevelNum"), NodePath("../Main/TimeDisplay/TimeLabel"), NodePath("../Main/TimeDisplay/TimeLabel/Time"), NodePath("../Main/TimeDisplay/TimeLabel/Stopwatch"), NodePath("../Main/TimeDisplay/TimeLabel/PB"), NodePath("../ModernHUD/TopLeft/CoinCount/ModernCoinCount"), NodePath("../ModernHUD/Right/ModernTime"), NodePath("../ModernHUD/Right/ModernTime/ModernScore"), NodePath("../Main/CoinCount/KeyCount/KeyAmount"), NodePath("../ModernHUD/TopLeft/ModernKeyCount/ModernKeyAmount"), NodePath("../ModernHUD/TopLeft/LifeCount/ModernLifeCount"), NodePath("../Combo/ComboAmount"), null, null, NodePath("../ModernHUD/Right/ModernTime/ModernPB")]
|
||||
labels = [NodePath("../Main/ScoreName/CharacterName"), NodePath("../Main/ScoreName/Score"), NodePath("../Main/CoinCount/CoinLabel"), NodePath("../Main/LevelDisplay/WorldTitle"), NodePath("../Main/LevelDisplay/WorldTitle/LevelNum"), NodePath("../Main/TimeDisplay/TimeLabel"), NodePath("../Main/TimeDisplay/TimeLabel/Time"), NodePath("../Main/TimeDisplay/TimeLabel/VBoxContainer/Stopwatch"), NodePath("../Main/TimeDisplay/TimeLabel/VBoxContainer/PB"), NodePath("../ModernHUD/TopLeft/CoinCount/ModernCoinCount"), NodePath("../ModernHUD/Right/ModernTime"), NodePath("../ModernHUD/Right/ModernTime/ModernScore"), NodePath("../Main/CoinCount/KeyCount/KeyAmount"), NodePath("../ModernHUD/TopLeft/ModernKeyCount/ModernKeyAmount"), NodePath("../ModernHUD/TopLeft/LifeCount/ModernLifeCount"), NodePath("../Combo/ComboAmount"), null, null, NodePath("../ModernHUD/Right/ModernTime/VBoxContainer/ModernPB"), NodePath("../Main/TimeDisplay/TimeLabel/VBoxContainer/IGT"), NodePath("../ModernHUD/Right/ModernTime/VBoxContainer/ModernIGT")]
|
||||
shadow_node = NodePath("../Main/RedCoins/BorderL/Shadow")
|
||||
|
||||
[node name="HudTemplate" type="Sprite2D" parent="."]
|
||||
@@ -1048,7 +1074,7 @@ centered = false
|
||||
|
||||
[node name="LabelFontChanger" type="Node" parent="." node_paths=PackedStringArray("labels")]
|
||||
script = ExtResource("15_jwl8o")
|
||||
labels = [NodePath("../Main/ScoreName/CharacterName"), NodePath("../Main/ScoreName/Score"), NodePath("../Main/CoinCount/CoinLabel"), NodePath("../Main/LevelDisplay/WorldTitle"), NodePath("../Main/LevelDisplay/WorldTitle/LevelNum"), NodePath("../Main/TimeDisplay/TimeLabel"), NodePath("../Main/TimeDisplay/TimeLabel/Time"), NodePath("../ModernHUD/TopLeft/CoinCount/ModernCoinCount"), NodePath("../ModernHUD/Right/ModernTime"), NodePath("../ModernHUD/Right/ModernTime/ModernScore"), NodePath("../Main/CoinCount/KeyCount/KeyAmount"), NodePath("../Main/TimeDisplay/TimeLabel/Stopwatch"), NodePath("../Main/TimeDisplay/TimeLabel/PB"), NodePath("../ModernHUD/TopLeft/LifeCount/ModernLifeCount"), NodePath("../Main/CoinCount/KeyCount/KeyAmount"), NodePath("../Combo/ComboAmount"), NodePath("../ModernHUD/TopLeft/ModernKeyCount/ModernKeyAmount"), NodePath("../Main/LevelDisplay/WorldTitle/LevelNum/Crown"), NodePath("../ModernHUD/Right/ModernTime/ModernPB")]
|
||||
labels = [NodePath("../Main/ScoreName/CharacterName"), NodePath("../Main/ScoreName/Score"), NodePath("../Main/CoinCount/CoinLabel"), NodePath("../Main/LevelDisplay/WorldTitle"), NodePath("../Main/LevelDisplay/WorldTitle/LevelNum"), NodePath("../Main/TimeDisplay/TimeLabel"), NodePath("../Main/TimeDisplay/TimeLabel/Time"), NodePath("../ModernHUD/TopLeft/CoinCount/ModernCoinCount"), NodePath("../ModernHUD/Right/ModernTime"), NodePath("../ModernHUD/Right/ModernTime/ModernScore"), NodePath("../Main/CoinCount/KeyCount/KeyAmount"), NodePath("../Main/TimeDisplay/TimeLabel/VBoxContainer/Stopwatch"), NodePath("../Main/TimeDisplay/TimeLabel/VBoxContainer/PB"), NodePath("../ModernHUD/TopLeft/LifeCount/ModernLifeCount"), NodePath("../Main/CoinCount/KeyCount/KeyAmount"), NodePath("../Combo/ComboAmount"), NodePath("../ModernHUD/TopLeft/ModernKeyCount/ModernKeyAmount"), NodePath("../Main/LevelDisplay/WorldTitle/LevelNum/Crown"), NodePath("../ModernHUD/Right/ModernTime/VBoxContainer/ModernPB"), NodePath("../Main/TimeDisplay/TimeLabel/VBoxContainer/IGT"), NodePath("../ModernHUD/Right/ModernTime/VBoxContainer/ModernIGT")]
|
||||
metadata/_custom_type_script = "uid://co6tjg3w6qpd8"
|
||||
|
||||
[node name="TextureUpdater" type="Node" parent="." node_paths=PackedStringArray("sprites")]
|
||||
|
@@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=82 format=4 uid="uid://bksxgpygrdjl7"]
|
||||
[gd_scene load_steps=78 format=4 uid="uid://bksxgpygrdjl7"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://erdjx03phltn" path="res://Scripts/Classes/LevelBGNew.gd" id="1_pkg8e"]
|
||||
[ext_resource type="Script" uid="uid://cq6f682453q6o" path="res://Scripts/Classes/Components/ResourceSetter.gd" id="3_6m0f5"]
|
||||
@@ -16,6 +16,7 @@
|
||||
[ext_resource type="Texture2D" uid="uid://cx54ubn3schon" path="res://Assets/Sprites/Backgrounds/SecondaryTrees/SnowTrees.png" id="13_kf1vm"]
|
||||
[ext_resource type="Script" uid="uid://ca3bew33g45eq" path="res://Scripts/Classes/UI/PackTextureRect.gd" id="13_q0lxs"]
|
||||
[ext_resource type="Texture2D" uid="uid://wyrrj7wts6xe" path="res://Assets/Sprites/Backgrounds/SecondaryTrees/SnowTreesLL.png" id="14_ob0l2"]
|
||||
[ext_resource type="Script" uid="uid://dmtw1jesw1vl7" path="res://Scripts/Classes/Components/PackStreamPlayer.gd" id="14_ugdi7"]
|
||||
[ext_resource type="Texture2D" uid="uid://d4kkcpn1bahcf" path="res://Assets/Sprites/Backgrounds/Hills/JungleLL.png" id="15_413gx"]
|
||||
[ext_resource type="AudioStream" uid="uid://mgub7yupxkau" path="res://Assets/Audio/SFX/ANNCheering1.wav" id="15_b1lev"]
|
||||
[ext_resource type="Texture2D" uid="uid://hiwsjulaojy1" path="res://Assets/Sprites/Backgrounds/CloudOverlays/CloudOverlay.png" id="15_whv0w"]
|
||||
@@ -251,41 +252,12 @@ _data = {
|
||||
&"Turn": SubResource("Animation_lvidp")
|
||||
}
|
||||
|
||||
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_413gx"]
|
||||
emission_shape = 3
|
||||
emission_box_extents = Vector3(256, 1, 1)
|
||||
direction = Vector3(0, 1, 0)
|
||||
spread = 15.0
|
||||
initial_velocity_min = 20.0
|
||||
initial_velocity_max = 50.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
|
||||
[sub_resource type="CanvasItemMaterial" id="CanvasItemMaterial_7urbp"]
|
||||
particles_animation = true
|
||||
particles_anim_h_frames = 2
|
||||
particles_anim_v_frames = 1
|
||||
particles_anim_loop = false
|
||||
|
||||
[sub_resource type="Curve" id="Curve_yxjfg"]
|
||||
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(0.738889, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0]
|
||||
point_count = 3
|
||||
|
||||
[sub_resource type="CurveTexture" id="CurveTexture_e4hrf"]
|
||||
curve = SubResource("Curve_yxjfg")
|
||||
|
||||
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_b8hji"]
|
||||
particle_flag_disable_z = true
|
||||
emission_shape = 3
|
||||
emission_box_extents = Vector3(512, 1, 1)
|
||||
direction = Vector3(0, 1, 0)
|
||||
initial_velocity_min = 25.0
|
||||
initial_velocity_max = 100.0
|
||||
angular_velocity_min = -720.0
|
||||
angular_velocity_max = 720.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
alpha_curve = SubResource("CurveTexture_e4hrf")
|
||||
anim_offset_max = 1.0
|
||||
|
||||
[sub_resource type="CanvasItemMaterial" id="CanvasItemMaterial_dmpyo"]
|
||||
particles_animation = true
|
||||
particles_anim_h_frames = 3
|
||||
@@ -303,16 +275,6 @@ metadata/_snap_count = 3
|
||||
gradient = SubResource("Gradient_dmpyo")
|
||||
width = 3
|
||||
|
||||
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_dmpyo"]
|
||||
particle_flag_disable_z = true
|
||||
emission_shape = 3
|
||||
emission_box_extents = Vector3(256, 1, 1)
|
||||
direction = Vector3(0, -1, 0)
|
||||
initial_velocity_min = 5.0
|
||||
initial_velocity_max = 20.0
|
||||
gravity = Vector3(0, -10, 0)
|
||||
anim_offset_max = 1.0
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_qkl8a"]
|
||||
offsets = PackedFloat32Array(0)
|
||||
colors = PackedColorArray(0.266667, 0.137255, 0.0235294, 1)
|
||||
@@ -569,16 +531,22 @@ process_mode = 1
|
||||
process_mode = 1
|
||||
stream = ExtResource("15_b1lev")
|
||||
bus = &"SFX"
|
||||
script = ExtResource("14_ugdi7")
|
||||
metadata/_custom_type_script = "uid://dmtw1jesw1vl7"
|
||||
|
||||
[node name="Cheer2" type="AudioStreamPlayer" parent="DiscoBits"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("16_ugdi7")
|
||||
bus = &"SFX"
|
||||
script = ExtResource("14_ugdi7")
|
||||
metadata/_custom_type_script = "uid://dmtw1jesw1vl7"
|
||||
|
||||
[node name="Cheer3" type="AudioStreamPlayer" parent="DiscoBits"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("17_aw4cr")
|
||||
bus = &"SFX"
|
||||
script = ExtResource("14_ugdi7")
|
||||
metadata/_custom_type_script = "uid://dmtw1jesw1vl7"
|
||||
|
||||
[node name="SecondaryLayer" type="Parallax2D" parent="."]
|
||||
process_mode = 1
|
||||
@@ -704,7 +672,7 @@ process_mode = 1
|
||||
repeat_size = Vector2(512, 512)
|
||||
repeat_times = 4
|
||||
|
||||
[node name="Snow" type="GPUParticles2D" parent="OverlayLayer/Particles"]
|
||||
[node name="Snow" type="CPUParticles2D" parent="OverlayLayer/Particles"]
|
||||
process_mode = 1
|
||||
visible = false
|
||||
position = Vector2(256, 256)
|
||||
@@ -712,18 +680,24 @@ amount = 128
|
||||
lifetime = 20.0
|
||||
preprocess = 20.0
|
||||
local_coords = true
|
||||
process_material = SubResource("ParticleProcessMaterial_413gx")
|
||||
draw_order = 1
|
||||
emission_shape = 3
|
||||
emission_rect_extents = Vector2(256, 1)
|
||||
direction = Vector2(0, 1)
|
||||
spread = 15.0
|
||||
gravity = Vector2(0, 0)
|
||||
initial_velocity_min = 20.0
|
||||
initial_velocity_max = 50.0
|
||||
|
||||
[node name="ResourceSetter" type="Node" parent="OverlayLayer/Particles/Snow" node_paths=PackedStringArray("node_to_affect")]
|
||||
[node name="ResourceSetter" type="Node" parent="OverlayLayer/Particles/Snow"]
|
||||
process_mode = 1
|
||||
script = ExtResource("10_lvidp")
|
||||
node_to_affect = NodePath("..")
|
||||
property_name = "texture"
|
||||
mode = 1
|
||||
resource_json = ExtResource("25_aw4cr")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
||||
[node name="Leaves" type="GPUParticles2D" parent="OverlayLayer/Particles"]
|
||||
[node name="Leaves" type="CPUParticles2D" parent="OverlayLayer/Particles"]
|
||||
process_mode = 1
|
||||
visible = false
|
||||
material = SubResource("CanvasItemMaterial_7urbp")
|
||||
@@ -733,17 +707,25 @@ texture = ExtResource("25_q36g4")
|
||||
lifetime = 30.0
|
||||
preprocess = 20.0
|
||||
local_coords = true
|
||||
process_material = SubResource("ParticleProcessMaterial_b8hji")
|
||||
draw_order = 1
|
||||
emission_shape = 3
|
||||
emission_rect_extents = Vector2(512, 1)
|
||||
direction = Vector2(0, 1)
|
||||
gravity = Vector2(0, 0)
|
||||
initial_velocity_min = 25.0
|
||||
initial_velocity_max = 100.0
|
||||
angular_velocity_min = -720.0
|
||||
angular_velocity_max = 720.0
|
||||
anim_offset_max = 1.0
|
||||
|
||||
[node name="ResourceSetterNew" type="Node" parent="OverlayLayer/Particles/Leaves" node_paths=PackedStringArray("node_to_affect")]
|
||||
[node name="ResourceSetterNew" type="Node" parent="OverlayLayer/Particles/Leaves"]
|
||||
script = ExtResource("10_lvidp")
|
||||
node_to_affect = NodePath("..")
|
||||
property_name = "texture"
|
||||
mode = 1
|
||||
resource_json = ExtResource("28_ugdi7")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
||||
[node name="LavaEmber" type="GPUParticles2D" parent="OverlayLayer/Particles"]
|
||||
[node name="LavaEmber" type="CPUParticles2D" parent="OverlayLayer/Particles"]
|
||||
process_mode = 1
|
||||
visibility_layer = 2
|
||||
z_index = -50
|
||||
@@ -756,7 +738,14 @@ lifetime = 5.0
|
||||
preprocess = 10.0
|
||||
fract_delta = false
|
||||
local_coords = true
|
||||
process_material = SubResource("ParticleProcessMaterial_dmpyo")
|
||||
draw_order = 1
|
||||
emission_shape = 3
|
||||
emission_rect_extents = Vector2(256, 1)
|
||||
direction = Vector2(0, -1)
|
||||
gravity = Vector2(0, -10)
|
||||
initial_velocity_min = 5.0
|
||||
initial_velocity_max = 20.0
|
||||
anim_offset_max = 1.0
|
||||
|
||||
[node name="FGLayer" type="Parallax2D" parent="."]
|
||||
process_mode = 1
|
||||
|
@@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=16 format=3 uid="uid://d1wjw5tobpb3w"]
|
||||
[gd_scene load_steps=17 format=3 uid="uid://d1wjw5tobpb3w"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://toi3fh8d7cs4" path="res://Scripts/Classes/BooRaceHandler.gd" id="1_1pu8q"]
|
||||
[ext_resource type="Texture2D" uid="uid://d0jy2sbxh706d" path="res://Assets/Sprites/UI/RaceCountdown.png" id="2_csmob"]
|
||||
@@ -6,6 +6,7 @@
|
||||
[ext_resource type="Script" uid="uid://cq6f682453q6o" path="res://Scripts/Classes/Components/ResourceSetter.gd" id="4_qeaax"]
|
||||
[ext_resource type="Script" uid="uid://cmvlgsjmsk0v5" path="res://Scripts/Classes/Resources/ThemedResource.gd" id="5_reyer"]
|
||||
[ext_resource type="AudioStream" uid="uid://bri3u342yy5hk" path="res://Assets/Audio/SFX/RaceCountdown.wav" id="6_qeaax"]
|
||||
[ext_resource type="Script" uid="uid://dmtw1jesw1vl7" path="res://Scripts/Classes/Components/PackStreamPlayer.gd" id="7_reyer"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_5ptkl"]
|
||||
atlas = ExtResource("2_csmob")
|
||||
@@ -88,6 +89,18 @@ tracks/2/keys = {
|
||||
"update": 1,
|
||||
"values": [true, false]
|
||||
}
|
||||
tracks/3/type = "value"
|
||||
tracks/3/imported = false
|
||||
tracks/3/enabled = true
|
||||
tracks/3/path = NodePath("Countdown:playing")
|
||||
tracks/3/interp = 1
|
||||
tracks/3/loop_wrap = true
|
||||
tracks/3/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [true]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_axajb"]
|
||||
length = 0.001
|
||||
@@ -127,6 +140,18 @@ tracks/2/keys = {
|
||||
"update": 1,
|
||||
"values": [true]
|
||||
}
|
||||
tracks/3/type = "value"
|
||||
tracks/3/imported = false
|
||||
tracks/3/enabled = true
|
||||
tracks/3/path = NodePath("Countdown:playing")
|
||||
tracks/3/interp = 1
|
||||
tracks/3/loop_wrap = true
|
||||
tracks/3/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [false]
|
||||
}
|
||||
|
||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_qeaax"]
|
||||
_data = {
|
||||
@@ -166,8 +191,9 @@ metadata/_custom_type_script = "uid://cq6f682453q6o"
|
||||
|
||||
[node name="Countdown" type="AudioStreamPlayer" parent="."]
|
||||
stream = ExtResource("6_qeaax")
|
||||
autoplay = true
|
||||
bus = &"SFX"
|
||||
script = ExtResource("7_reyer")
|
||||
metadata/_custom_type_script = "uid://dmtw1jesw1vl7"
|
||||
|
||||
[node name="Animation" type="AnimationPlayer" parent="."]
|
||||
libraries = {
|
||||
|
@@ -9,9 +9,12 @@
|
||||
script/source = "extends Node2D
|
||||
|
||||
@export var text := \"\"
|
||||
@export_enum(\"Left\", \"Center\", \"Right\") var alignment := 0
|
||||
# guzlad: Do we even need the 4th option \"fill\"?
|
||||
|
||||
func _process(_delta: float) -> void:
|
||||
$TextLabel.text = text
|
||||
$TextLabel.horizontal_alignment = alignment
|
||||
"
|
||||
|
||||
[node name="TextLabelOBJ" type="Node2D"]
|
||||
@@ -26,7 +29,7 @@ offset_bottom = 8.0
|
||||
|
||||
[node name="EditorPropertyExposer" type="Node" parent="."]
|
||||
script = ExtResource("2_xh6kd")
|
||||
properties = Array[String](["text"])
|
||||
properties = Array[String](["text", "alignment"])
|
||||
metadata/_custom_type_script = "uid://ctfbuoxtnnl0q"
|
||||
|
||||
[node name="LevelEditorVisibleNode" type="Node2D" parent="."]
|
||||
|
@@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=14 format=3 uid="uid://ccxhom4wrgfv4"]
|
||||
[gd_scene load_steps=11 format=3 uid="uid://ccxhom4wrgfv4"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://dy3p03djelkb3" path="res://Assets/Sprites/Particles/Leaves.png" id="1_0tjo2"]
|
||||
[ext_resource type="Script" uid="uid://d3kftxro4bfnv" path="res://Scripts/Classes/Entities/Objects/WindArea.gd" id="1_68lil"]
|
||||
@@ -17,27 +17,6 @@ particles_anim_h_frames = 2
|
||||
particles_anim_v_frames = 1
|
||||
particles_anim_loop = false
|
||||
|
||||
[sub_resource type="Curve" id="Curve_0tjo2"]
|
||||
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(0.894444, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0]
|
||||
point_count = 3
|
||||
|
||||
[sub_resource type="CurveTexture" id="CurveTexture_8c2la"]
|
||||
curve = SubResource("Curve_0tjo2")
|
||||
|
||||
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_wu018"]
|
||||
particle_flag_disable_z = true
|
||||
emission_shape_scale = Vector3(1, 15, 1)
|
||||
emission_shape = 3
|
||||
emission_box_extents = Vector3(1, 8, 1)
|
||||
spread = 0.0
|
||||
initial_velocity_min = 100.0
|
||||
initial_velocity_max = 500.0
|
||||
angular_velocity_min = -720.0
|
||||
angular_velocity_max = 720.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
alpha_curve = SubResource("CurveTexture_8c2la")
|
||||
anim_offset_max = 1.0
|
||||
|
||||
[sub_resource type="Resource" id="Resource_sbjyn"]
|
||||
script = ExtResource("5_3arhp")
|
||||
Overworld = ExtResource("3_qar1j")
|
||||
@@ -61,7 +40,7 @@ anchor_bottom = 0.5
|
||||
grow_vertical = 2
|
||||
metadata/_edit_use_anchors_ = true
|
||||
|
||||
[node name="Particles" type="GPUParticles2D" parent="CanvasLayer/Control"]
|
||||
[node name="Particles" type="CPUParticles2D" parent="CanvasLayer/Control"]
|
||||
unique_name_in_owner = true
|
||||
material = SubResource("CanvasItemMaterial_qar1j")
|
||||
position = Vector2(-64, 0)
|
||||
@@ -69,11 +48,20 @@ emitting = false
|
||||
amount = 64
|
||||
texture = ExtResource("1_0tjo2")
|
||||
lifetime = 2.0
|
||||
process_material = SubResource("ParticleProcessMaterial_wu018")
|
||||
draw_order = 1
|
||||
emission_shape = 3
|
||||
emission_rect_extents = Vector2(1, 8)
|
||||
spread = 0.0
|
||||
gravity = Vector2(0, 0)
|
||||
initial_velocity_min = 100.0
|
||||
initial_velocity_max = 500.0
|
||||
angular_velocity_min = -720.0
|
||||
angular_velocity_max = 720.0
|
||||
anim_offset_max = 1.0
|
||||
|
||||
[node name="ResourceSetterNew" type="Node" parent="CanvasLayer/Control/Particles" node_paths=PackedStringArray("node_to_affect")]
|
||||
script = ExtResource("3_sbjyn")
|
||||
node_to_affect = NodePath("..")
|
||||
node_to_affect = NodePath("")
|
||||
property_name = "texture"
|
||||
mode = 1
|
||||
resource_json = ExtResource("4_qvx5e")
|
||||
|
40
Scenes/Prefabs/Particles/BlueCoinSparkle.tscn
Normal file
40
Scenes/Prefabs/Particles/BlueCoinSparkle.tscn
Normal file
@@ -0,0 +1,40 @@
|
||||
[gd_scene load_steps=5 format=3 uid="uid://2j5gl64gxbgy"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://dkebo0uw0dkkw" path="res://Assets/Sprites/Particles/CoinSparkle.png" id="1_l0o8p"]
|
||||
[ext_resource type="Script" uid="uid://cbal8ms2oe1ik" path="res://Scripts/Classes/Components/ResourceSetterNew.gd" id="2_sgb1m"]
|
||||
[ext_resource type="JSON" path="res://Assets/Sprites/Particles/BlueCoinSparkle.json" id="3_l0o8p"]
|
||||
|
||||
[sub_resource type="CanvasItemMaterial" id="CanvasItemMaterial_0guw6"]
|
||||
particles_animation = true
|
||||
particles_anim_h_frames = 8
|
||||
particles_anim_v_frames = 1
|
||||
particles_anim_loop = false
|
||||
|
||||
[node name="CoinSparkle" type="CPUParticles2D"]
|
||||
z_as_relative = false
|
||||
material = SubResource("CanvasItemMaterial_0guw6")
|
||||
emitting = false
|
||||
amount = 3
|
||||
texture = ExtResource("1_l0o8p")
|
||||
lifetime = 0.5
|
||||
one_shot = true
|
||||
explosiveness = 0.7
|
||||
fixed_fps = 30
|
||||
fract_delta = false
|
||||
draw_order = 1
|
||||
emission_shape = 1
|
||||
emission_sphere_radius = 16.0
|
||||
gravity = Vector2(0, 0)
|
||||
anim_speed_min = 2.0
|
||||
anim_speed_max = 2.0
|
||||
|
||||
[node name="ResourceSetterNew" type="Node" parent="." node_paths=PackedStringArray("node_to_affect", "property_node")]
|
||||
script = ExtResource("2_sgb1m")
|
||||
node_to_affect = NodePath("..")
|
||||
property_node = NodePath("..")
|
||||
property_name = "texture"
|
||||
mode = 1
|
||||
resource_json = ExtResource("3_l0o8p")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
||||
[connection signal="ready" from="." to="." method="set_emitting" binds= [true]]
|
36
Scenes/Prefabs/Particles/CoinSparkle.tscn
Executable file → Normal file
36
Scenes/Prefabs/Particles/CoinSparkle.tscn
Executable file → Normal file
@@ -1,4 +1,8 @@
|
||||
[gd_scene load_steps=3 format=3 uid="uid://b1ytbn4cu7msu"]
|
||||
[gd_scene load_steps=5 format=3 uid="uid://b1ytbn4cu7msu"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://dkebo0uw0dkkw" path="res://Assets/Sprites/Particles/CoinSparkle.png" id="1_4p5kk"]
|
||||
[ext_resource type="Script" uid="uid://cbal8ms2oe1ik" path="res://Scripts/Classes/Components/ResourceSetterNew.gd" id="2_wdqt2"]
|
||||
[ext_resource type="JSON" path="res://Assets/Sprites/Particles/CoinSparkle.json" id="3_igsqc"]
|
||||
|
||||
[sub_resource type="CanvasItemMaterial" id="CanvasItemMaterial_0guw6"]
|
||||
particles_animation = true
|
||||
@@ -6,27 +10,29 @@ particles_anim_h_frames = 8
|
||||
particles_anim_v_frames = 1
|
||||
particles_anim_loop = false
|
||||
|
||||
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_wdqt2"]
|
||||
particle_flag_disable_z = true
|
||||
emission_shape = 1
|
||||
emission_sphere_radius = 16.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
anim_speed_min = 2.0
|
||||
anim_speed_max = 2.0
|
||||
|
||||
[node name="CoinSparkle" type="GPUParticles2D"]
|
||||
[node name="CoinSparkle" type="CPUParticles2D"]
|
||||
z_as_relative = false
|
||||
material = SubResource("CanvasItemMaterial_0guw6")
|
||||
emitting = false
|
||||
amount = 3
|
||||
texture = ExtResource("1_4p5kk")
|
||||
lifetime = 0.5
|
||||
one_shot = true
|
||||
explosiveness = 0.7
|
||||
interpolate = false
|
||||
fract_delta = false
|
||||
process_material = SubResource("ParticleProcessMaterial_wdqt2")
|
||||
emission_shape = 1
|
||||
emission_sphere_radius = 16.0
|
||||
gravity = Vector2(0, 0)
|
||||
anim_speed_min = 2.0
|
||||
anim_speed_max = 2.0
|
||||
|
||||
[node name="Timer" type="Timer" parent="."]
|
||||
autostart = true
|
||||
[node name="ResourceSetterNew" type="Node" parent="." node_paths=PackedStringArray("node_to_affect", "property_node")]
|
||||
script = ExtResource("2_wdqt2")
|
||||
node_to_affect = NodePath("..")
|
||||
property_node = NodePath("..")
|
||||
property_name = "texture"
|
||||
mode = 1
|
||||
resource_json = ExtResource("3_igsqc")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
||||
[connection signal="ready" from="." to="." method="set_emitting" binds= [true]]
|
||||
[connection signal="timeout" from="Timer" to="." method="queue_free"]
|
||||
|
40
Scenes/Prefabs/Particles/RedCoinSparkle.tscn
Normal file
40
Scenes/Prefabs/Particles/RedCoinSparkle.tscn
Normal file
@@ -0,0 +1,40 @@
|
||||
[gd_scene load_steps=5 format=3 uid="uid://ciif5kygsk0fu"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://c4ugewy0lof7v" path="res://Assets/Sprites/Particles/RedCoinSparkle.png" id="1_1cy2p"]
|
||||
[ext_resource type="Script" uid="uid://cbal8ms2oe1ik" path="res://Scripts/Classes/Components/ResourceSetterNew.gd" id="2_4yggt"]
|
||||
[ext_resource type="JSON" path="res://Assets/Sprites/Particles/RedCoinSparkle.json" id="3_1cy2p"]
|
||||
|
||||
[sub_resource type="CanvasItemMaterial" id="CanvasItemMaterial_0guw6"]
|
||||
particles_animation = true
|
||||
particles_anim_h_frames = 8
|
||||
particles_anim_v_frames = 1
|
||||
particles_anim_loop = false
|
||||
|
||||
[node name="CoinSparkle" type="CPUParticles2D"]
|
||||
z_as_relative = false
|
||||
material = SubResource("CanvasItemMaterial_0guw6")
|
||||
emitting = false
|
||||
amount = 3
|
||||
texture = ExtResource("1_1cy2p")
|
||||
lifetime = 0.5
|
||||
one_shot = true
|
||||
explosiveness = 0.7
|
||||
fixed_fps = 30
|
||||
fract_delta = false
|
||||
draw_order = 1
|
||||
emission_shape = 1
|
||||
emission_sphere_radius = 16.0
|
||||
gravity = Vector2(0, 0)
|
||||
anim_speed_min = 2.0
|
||||
anim_speed_max = 2.0
|
||||
|
||||
[node name="ResourceSetterNew" type="Node" parent="." node_paths=PackedStringArray("node_to_affect", "property_node")]
|
||||
script = ExtResource("2_4yggt")
|
||||
node_to_affect = NodePath("..")
|
||||
property_node = NodePath("..")
|
||||
property_name = "texture"
|
||||
mode = 1
|
||||
resource_json = ExtResource("3_1cy2p")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
||||
[connection signal="ready" from="." to="." method="set_emitting" binds= [true]]
|
@@ -105,6 +105,7 @@ visible = true
|
||||
[node name="LabelFontChanger" parent="SettingsMenu" index="1" node_paths=PackedStringArray("labels")]
|
||||
labels = [NodePath("../PanelContainer/MarginContainer/VBoxContainer/Title"), NodePath("../PanelContainer/MarginContainer/VBoxContainer/CategorySelect/HBoxContainer/Category"), null, null, null, null, null, null, null, NodePath("../PanelContainer/MarginContainer/VBoxContainer/Audio/SelectableOptionNode/Value"), null, NodePath("../PanelContainer/MarginContainer/VBoxContainer/Audio/SelectableOptionNode2/Value"), null, NodePath("../PanelContainer/MarginContainer/VBoxContainer/Audio/SelectableOptionNode3/Value"), NodePath("../PanelContainer/MarginContainer/VBoxContainer/Difficulty/Description/AutoScrollContainer/MarginContainer/Desc")]
|
||||
|
||||
[connection signal="closed" from="." to="SettingsMenu" method="close"]
|
||||
[connection signal="option_3_selected" from="." to="." method="open_settings"]
|
||||
|
||||
[editable path="SettingsMenu"]
|
||||
|
@@ -221,12 +221,14 @@ metadata/_custom_type_script = "uid://364rywt44hy6"
|
||||
[node name="6" type="Sprite2D" parent="Panel/MarginContainer/VBoxContainer/HBoxContainer/ScrollContainer/SlotContainer/Slot1/ChallengeModeBits"]
|
||||
position = Vector2(41, 4)
|
||||
texture = ExtResource("11_sk22j")
|
||||
region_enabled = true
|
||||
hframes = 3
|
||||
vframes = 2
|
||||
region_rect = Rect2(0, 0, 8, 8)
|
||||
script = ExtResource("6_x05vu")
|
||||
metadata/_custom_type_script = "uid://364rywt44hy6"
|
||||
|
||||
[node name="Full" type="Sprite2D" parent="Panel/MarginContainer/VBoxContainer/HBoxContainer/ScrollContainer/SlotContainer/Slot1/ChallengeModeBits/6"]
|
||||
visible = false
|
||||
texture = ExtResource("11_sk22j")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(8, 0, 8, 8)
|
||||
@@ -417,14 +419,17 @@ metadata/_custom_type_script = "uid://364rywt44hy6"
|
||||
[node name="6" type="Sprite2D" parent="Panel/MarginContainer/VBoxContainer/HBoxContainer/ScrollContainer/SlotContainer/Slot2/ChallengeModeBits"]
|
||||
position = Vector2(41, 4)
|
||||
texture = ExtResource("11_sk22j")
|
||||
region_enabled = true
|
||||
hframes = 3
|
||||
vframes = 2
|
||||
region_rect = Rect2(0, 0, 8, 8)
|
||||
script = ExtResource("6_x05vu")
|
||||
metadata/_custom_type_script = "uid://364rywt44hy6"
|
||||
|
||||
[node name="Full" type="Sprite2D" parent="Panel/MarginContainer/VBoxContainer/HBoxContainer/ScrollContainer/SlotContainer/Slot2/ChallengeModeBits/6"]
|
||||
texture = ExtResource("11_sk22j")
|
||||
region_enabled = true
|
||||
hframes = 3
|
||||
vframes = 2
|
||||
frame = 2
|
||||
region_rect = Rect2(16, 0, 8, 8)
|
||||
script = ExtResource("6_x05vu")
|
||||
metadata/_custom_type_script = "uid://364rywt44hy6"
|
||||
@@ -613,14 +618,17 @@ metadata/_custom_type_script = "uid://364rywt44hy6"
|
||||
[node name="6" type="Sprite2D" parent="Panel/MarginContainer/VBoxContainer/HBoxContainer/ScrollContainer/SlotContainer/Slot3/ChallengeModeBits"]
|
||||
position = Vector2(41, 4)
|
||||
texture = ExtResource("11_sk22j")
|
||||
region_enabled = true
|
||||
hframes = 3
|
||||
vframes = 2
|
||||
region_rect = Rect2(0, 0, 8, 8)
|
||||
script = ExtResource("6_x05vu")
|
||||
metadata/_custom_type_script = "uid://364rywt44hy6"
|
||||
|
||||
[node name="Full" type="Sprite2D" parent="Panel/MarginContainer/VBoxContainer/HBoxContainer/ScrollContainer/SlotContainer/Slot3/ChallengeModeBits/6"]
|
||||
texture = ExtResource("11_sk22j")
|
||||
region_enabled = true
|
||||
hframes = 3
|
||||
vframes = 2
|
||||
frame = 3
|
||||
region_rect = Rect2(0, 8, 8, 8)
|
||||
script = ExtResource("6_x05vu")
|
||||
metadata/_custom_type_script = "uid://364rywt44hy6"
|
||||
@@ -809,14 +817,17 @@ metadata/_custom_type_script = "uid://364rywt44hy6"
|
||||
[node name="6" type="Sprite2D" parent="Panel/MarginContainer/VBoxContainer/HBoxContainer/ScrollContainer/SlotContainer/Slot4/ChallengeModeBits"]
|
||||
position = Vector2(41, 4)
|
||||
texture = ExtResource("11_sk22j")
|
||||
region_enabled = true
|
||||
hframes = 3
|
||||
vframes = 2
|
||||
region_rect = Rect2(0, 0, 8, 8)
|
||||
script = ExtResource("6_x05vu")
|
||||
metadata/_custom_type_script = "uid://364rywt44hy6"
|
||||
|
||||
[node name="Full" type="Sprite2D" parent="Panel/MarginContainer/VBoxContainer/HBoxContainer/ScrollContainer/SlotContainer/Slot4/ChallengeModeBits/6"]
|
||||
texture = ExtResource("11_sk22j")
|
||||
region_enabled = true
|
||||
hframes = 3
|
||||
vframes = 2
|
||||
frame = 4
|
||||
region_rect = Rect2(8, 8, 8, 8)
|
||||
script = ExtResource("6_x05vu")
|
||||
metadata/_custom_type_script = "uid://364rywt44hy6"
|
||||
|
@@ -39,7 +39,7 @@ script/source = "extends Node
|
||||
|
||||
var input_nodes := []
|
||||
|
||||
var actions := [\"jump\", \"run\", \"action\", \"move_left\", \"move_right\", \"move_up\", \"move_down\"]
|
||||
var actions := [\"jump\", \"run\", \"action\", \"move_left\", \"move_right\", \"move_up\", \"move_down\", \"ui_accept\", \"ui_back\", \"pause\"]
|
||||
|
||||
@export_enum(\"Keyboard\", \"Controller\") var type := 0
|
||||
|
||||
@@ -53,41 +53,80 @@ func get_input_nodes() -> void:
|
||||
if i is SelectableInputOption:
|
||||
input_nodes.append(i)
|
||||
|
||||
func _process(_delta: float) -> void:
|
||||
if Input.is_action_just_pressed(\"ui_reset_keybindings\"):
|
||||
InputMap.load_from_project_settings()
|
||||
save_inputs()
|
||||
Settings.save_settings()
|
||||
load_inputs()
|
||||
|
||||
func load_inputs() -> void:
|
||||
for i in input_nodes:
|
||||
var action = i.action_name
|
||||
var value = Settings.file[[\"keyboard\", \"controller\"][type]].get(action, null)
|
||||
var event: InputEvent = null
|
||||
if value == null:
|
||||
continue
|
||||
if type == 0:
|
||||
event = InputEventKey.new()
|
||||
event.keycode = OS.find_keycode_from_string(value)
|
||||
elif type == 1:
|
||||
if value is String:
|
||||
var array = value.split(\",\")
|
||||
event = InputEventJoypadMotion.new()
|
||||
event.axis = int(array[0])
|
||||
event.axis_value = int(array[1])
|
||||
elif value is int:
|
||||
event = InputEventJoypadButton.new()
|
||||
event.button_index = value
|
||||
i.map_event_to_action(event)
|
||||
for action_name in i.action_names:
|
||||
var action = action_name
|
||||
var value = Settings.file[[\"keyboard\", \"controller\"][type]].get(action, null)
|
||||
if value == null:
|
||||
continue
|
||||
if value is Array:
|
||||
if value.size() < 2:
|
||||
value.append(null)
|
||||
var idx := 0
|
||||
for x in value:
|
||||
bind_value_to_event(i, x, idx)
|
||||
idx += 1
|
||||
else:
|
||||
bind_value_to_event(i, value, 0)
|
||||
i.update_value()
|
||||
|
||||
func bind_value_to_event(input_node, value, idx := 0) -> void:
|
||||
var event: InputEvent = null
|
||||
if value == null:
|
||||
return
|
||||
if value is String:
|
||||
if value == \"\":
|
||||
input_node.map_event_to_action(null, idx)
|
||||
return
|
||||
if type == 0:
|
||||
event = InputEventKey.new()
|
||||
event.keycode = OS.find_keycode_from_string(value)
|
||||
elif type == 1:
|
||||
if value is String:
|
||||
var array = value.split(\",\")
|
||||
event = InputEventJoypadMotion.new()
|
||||
event.axis = int(array[0])
|
||||
event.axis_value = int(array[1])
|
||||
elif value is int:
|
||||
event = InputEventJoypadButton.new()
|
||||
event.button_index = value
|
||||
input_node.map_event_to_action(event, idx)
|
||||
|
||||
func update_starting_values() -> void:
|
||||
load_inputs()
|
||||
|
||||
|
||||
func save_inputs() -> void:
|
||||
for i in actions:
|
||||
var event = InputMap.action_get_events(i + \"_0\")[type]
|
||||
var rep
|
||||
if event is InputEventKey:
|
||||
rep = OS.get_keycode_string(event.keycode)
|
||||
elif event is InputEventJoypadButton:
|
||||
rep = event.button_index
|
||||
elif event is InputEventJoypadMotion:
|
||||
rep = str(event.axis) + \",\" + str(event.axis_value)
|
||||
Settings.file[[\"keyboard\", \"controller\"][type]][i] = rep
|
||||
var event = null
|
||||
var events := []
|
||||
if i.contains(\"ui\") or i == \"pause\":
|
||||
event = InputMap.action_get_events(i)
|
||||
else:
|
||||
event = InputMap.action_get_events(i + \"_0\")
|
||||
for x in event:
|
||||
if type == 0 and x is InputEventKey:
|
||||
events.append(get_str_for_event(x))
|
||||
elif type == 1 and (x is InputEventJoypadButton or x is InputEventJoypadMotion):
|
||||
events.append(get_str_for_event(x))
|
||||
Settings.file[[\"keyboard\", \"controller\"][type]][i] = events
|
||||
|
||||
func get_str_for_event(event: InputEvent):
|
||||
var rep = \"\"
|
||||
if event is InputEventKey:
|
||||
rep = OS.get_keycode_string(event.keycode)
|
||||
elif event is InputEventJoypadButton:
|
||||
rep = event.button_index
|
||||
elif event is InputEventJoypadMotion:
|
||||
rep = str(event.axis) + \",\" + str(event.axis_value)
|
||||
return rep
|
||||
"
|
||||
|
||||
[sub_resource type="StyleBoxLine" id="StyleBoxLine_k6yev"]
|
||||
@@ -104,31 +143,31 @@ func delete_story(campaign := \"SMB1\") -> void:
|
||||
save_json[i] = SaveManager.SAVE_TEMPLATE[i]
|
||||
if save_json.has(\"Ranks\"):
|
||||
save_json[\"Ranks\"] = \"ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ\"
|
||||
SaveManager.write_save_to_file(save_json, \"user://saves/\" + campaign + \".sav\")
|
||||
SaveManager.write_save_to_file(save_json, Global.config_path.path_join(\"saves/\" + campaign + \".sav\"))
|
||||
SaveManager.apply_save(save_json)
|
||||
|
||||
func delete_challenge(campaign := \"SMB1\") -> void:
|
||||
var save_json = SaveManager.load_save(campaign)
|
||||
for i in [\"ChallengeScores\", \"RedCoins\"]:
|
||||
save_json[i] = SaveManager.SAVE_TEMPLATE[i]
|
||||
SaveManager.write_save_to_file(save_json, \"user://saves/\" + campaign + \".sav\")
|
||||
SaveManager.write_save_to_file(save_json, Global.config_path.path_join(\"saves/\" + campaign + \".sav\"))
|
||||
SaveManager.apply_save(save_json)
|
||||
|
||||
func delete_boo(campaign := \"SMB1\") -> void:
|
||||
var save_json = SaveManager.load_save(campaign)
|
||||
for i in [\"ClearedBooLevels\", \"BooBestTimes\"]:
|
||||
save_json[i] = SaveManager.SAVE_TEMPLATE[i]
|
||||
SaveManager.write_save_to_file(save_json, \"user://saves/\" + campaign + \".sav\")
|
||||
SaveManager.write_save_to_file(save_json, Global.config_path.path_join(\"saves/\" + campaign + \".sav\"))
|
||||
SaveManager.apply_save(save_json)
|
||||
|
||||
func delete_marathon(campaign := \"SMB1\") -> void:
|
||||
var save_json = SaveManager.load_save(campaign)
|
||||
for i in [\"BestAnyTime\", \"BestWarplessTime\"]:
|
||||
save_json[i] = SaveManager.SAVE_TEMPLATE[i]
|
||||
SaveManager.write_save_to_file(save_json, \"user://saves/\" + campaign + \".sav\")
|
||||
SaveManager.write_save_to_file(save_json, Global.config_path.path_join(\"saves/\" + campaign + \".sav\"))
|
||||
SaveManager.apply_save(save_json)
|
||||
for i in DirAccess.get_files_at(\"user://marathon_recordings/\" + campaign + \"/\"):
|
||||
DirAccess.remove_absolute(\"user://marathon_recordings/\" + campaign + \"/\" + i)
|
||||
for i in DirAccess.get_files_at(Global.config_path.path_join(\"marathon_recordings/\" + campaign + \"/\")):
|
||||
DirAccess.remove_absolute(Global.config_path.path_join(\"marathon_recordings/\"+ campaign + \"/\" + i))
|
||||
for world in 8:
|
||||
for level in 4:
|
||||
SpeedrunHandler.best_level_warpless_times[world][level] = -1
|
||||
@@ -336,7 +375,7 @@ layout_mode = 2
|
||||
theme_override_constants/separation = -4
|
||||
script = ExtResource("4_avtty")
|
||||
category_name = "SETTINGS_AUDIO"
|
||||
options = [NodePath("SelectableOptionNode"), NodePath("SelectableOptionNode2"), NodePath("SelectableOptionNode3"), NodePath("AthleticMusic"), NodePath("SkidSFX"), NodePath("ExtraSFX"), NodePath("MenuBGM")]
|
||||
options = [NodePath("SelectableOptionNode"), NodePath("SelectableOptionNode2"), NodePath("SelectableOptionNode3"), NodePath("AthleticMusic"), NodePath("SkidSFX"), NodePath("ExtraSFX"), NodePath("PauseBGM"), NodePath("MenuBGM")]
|
||||
|
||||
[node name="Control" type="Control" parent="PanelContainer/MarginContainer/VBoxContainer/Audio"]
|
||||
custom_minimum_size = Vector2(0, 4)
|
||||
@@ -384,6 +423,13 @@ title = "AUDIO_EXTRA_SFX"
|
||||
values = ["SETTING_OFF", "SETTING_ON"]
|
||||
settings_category = "audio"
|
||||
|
||||
[node name="PauseBGM" parent="PanelContainer/MarginContainer/VBoxContainer/Audio" groups=["Options"] instance=ExtResource("3_dl6kk")]
|
||||
layout_mode = 2
|
||||
option_key = "pause_bgm"
|
||||
title = "AUDIO_PAUSE_BGM"
|
||||
values = ["SETTING_OFF", "SETTING_MUFFLED", "SETTING_ON"]
|
||||
settings_category = "audio"
|
||||
|
||||
[node name="MenuBGM" parent="PanelContainer/MarginContainer/VBoxContainer/Audio" groups=["Options"] instance=ExtResource("3_dl6kk")]
|
||||
layout_mode = 2
|
||||
option_key = "menu_bgm"
|
||||
@@ -401,7 +447,7 @@ size_flags_vertical = 3
|
||||
theme_override_constants/separation = -4
|
||||
script = ExtResource("4_avtty")
|
||||
category_name = "SETTINGS_VISUALS"
|
||||
options = [NodePath("ParallaxStyle"), NodePath("BGParticles"), NodePath("HUDStyle"), NodePath("RainbowEffect"), NodePath("TransformationEffect"), NodePath("TextShadows"), NodePath("BridgeDestructionAnimation"), NodePath("VisibleTimers"), NodePath("TransitionAnimation"), NodePath("ColourfulPipes"), NodePath("FirebarStyle")]
|
||||
options = [NodePath("ParallaxStyle"), NodePath("BGParticles"), NodePath("HUDStyle"), NodePath("RainbowEffect"), NodePath("TransformationEffect"), NodePath("TextShadows"), NodePath("BridgeDestructionAnimation"), NodePath("VisibleTimers"), NodePath("TransitionAnimation"), NodePath("ColourfulPipes"), NodePath("FirebarStyle"), NodePath("ExtraParticles")]
|
||||
|
||||
[node name="Control" type="Control" parent="PanelContainer/MarginContainer/VBoxContainer/Visuals"]
|
||||
custom_minimum_size = Vector2(0, 4)
|
||||
@@ -484,6 +530,13 @@ title = "FIREBAR STYLE"
|
||||
values = ["Classic", "Modern"]
|
||||
settings_category = "visuals"
|
||||
|
||||
[node name="ExtraParticles" parent="PanelContainer/MarginContainer/VBoxContainer/Visuals" groups=["Options"] instance=ExtResource("3_dl6kk")]
|
||||
layout_mode = 2
|
||||
option_key = "extra_particles"
|
||||
title = "EXTRA EFFECTS"
|
||||
values = ["SETTING_OFF", "SETTING_ON"]
|
||||
settings_category = "visuals"
|
||||
|
||||
[node name="VisualsSetter" type="Node" parent="PanelContainer/MarginContainer/VBoxContainer/Visuals"]
|
||||
script = ExtResource("9_kfq5n")
|
||||
|
||||
@@ -668,12 +721,12 @@ uppercase = true
|
||||
script = ExtResource("10_2qqpf")
|
||||
|
||||
[node name="KeyboardControls" type="VBoxContainer" parent="PanelContainer/MarginContainer/VBoxContainer" node_paths=PackedStringArray("options")]
|
||||
visible = false
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 3
|
||||
theme_override_constants/separation = -4
|
||||
script = ExtResource("4_avtty")
|
||||
category_name = "SETTINGS_KEYBOARD"
|
||||
options = [NodePath("Jump"), NodePath("Run"), NodePath("Action"), NodePath("Left"), NodePath("Right"), NodePath("Up"), NodePath("Down")]
|
||||
options = [NodePath("Jump"), NodePath("Run"), NodePath("Action"), NodePath("Left"), NodePath("Right"), NodePath("Up"), NodePath("Down"), NodePath("Accept"), NodePath("Back"), NodePath("Pause")]
|
||||
|
||||
[node name="Control" type="Control" parent="PanelContainer/MarginContainer/VBoxContainer/KeyboardControls"]
|
||||
custom_minimum_size = Vector2(0, 4)
|
||||
@@ -681,49 +734,72 @@ layout_mode = 2
|
||||
|
||||
[node name="Jump" parent="PanelContainer/MarginContainer/VBoxContainer/KeyboardControls" groups=["Options"] instance=ExtResource("9_ksnto")]
|
||||
layout_mode = 2
|
||||
action_name = "jump"
|
||||
action_names = ["jump"]
|
||||
title = "ACTION_JUMP"
|
||||
|
||||
[node name="Run" parent="PanelContainer/MarginContainer/VBoxContainer/KeyboardControls" groups=["Options"] instance=ExtResource("9_ksnto")]
|
||||
layout_mode = 2
|
||||
action_name = "run"
|
||||
action_names = ["run"]
|
||||
title = "ACTION_RUN"
|
||||
|
||||
[node name="Action" parent="PanelContainer/MarginContainer/VBoxContainer/KeyboardControls" groups=["Options"] instance=ExtResource("9_ksnto")]
|
||||
layout_mode = 2
|
||||
action_name = "action"
|
||||
action_names = ["action"]
|
||||
title = "ACTION_ACTION"
|
||||
|
||||
[node name="Left" parent="PanelContainer/MarginContainer/VBoxContainer/KeyboardControls" groups=["Options"] instance=ExtResource("9_ksnto")]
|
||||
layout_mode = 2
|
||||
action_name = "move_left"
|
||||
action_names = ["move_left", "ui_left"]
|
||||
title = "ACTION_LEFT"
|
||||
|
||||
[node name="Right" parent="PanelContainer/MarginContainer/VBoxContainer/KeyboardControls" groups=["Options"] instance=ExtResource("9_ksnto")]
|
||||
layout_mode = 2
|
||||
action_name = "move_right"
|
||||
action_names = ["move_right", "ui_right"]
|
||||
title = "ACTION_RIGHT"
|
||||
|
||||
[node name="Up" parent="PanelContainer/MarginContainer/VBoxContainer/KeyboardControls" groups=["Options"] instance=ExtResource("9_ksnto")]
|
||||
layout_mode = 2
|
||||
action_name = "move_up"
|
||||
action_names = ["move_up", "ui_up"]
|
||||
title = "ACTION_UP"
|
||||
|
||||
[node name="Down" parent="PanelContainer/MarginContainer/VBoxContainer/KeyboardControls" groups=["Options"] instance=ExtResource("9_ksnto")]
|
||||
layout_mode = 2
|
||||
action_name = "move_down"
|
||||
action_names = ["move_down", "ui_down"]
|
||||
title = "ACTION_DOWN"
|
||||
|
||||
[node name="Accept" parent="PanelContainer/MarginContainer/VBoxContainer/KeyboardControls" groups=["Options"] instance=ExtResource("9_ksnto")]
|
||||
layout_mode = 2
|
||||
action_names = ["ui_accept"]
|
||||
title = "ACCEPT"
|
||||
|
||||
[node name="Back" parent="PanelContainer/MarginContainer/VBoxContainer/KeyboardControls" groups=["Options"] instance=ExtResource("9_ksnto")]
|
||||
layout_mode = 2
|
||||
action_names = ["ui_back"]
|
||||
title = "BACK"
|
||||
|
||||
[node name="Pause" parent="PanelContainer/MarginContainer/VBoxContainer/KeyboardControls" groups=["Options"] instance=ExtResource("9_ksnto")]
|
||||
layout_mode = 2
|
||||
action_names = ["pause"]
|
||||
title = "PAUSE"
|
||||
|
||||
[node name="InputMapSaving" type="Node" parent="PanelContainer/MarginContainer/VBoxContainer/KeyboardControls" groups=["Options"]]
|
||||
process_mode = 3
|
||||
script = SubResource("GDScript_ksnto")
|
||||
|
||||
[node name="Label" type="Label" parent="PanelContainer/MarginContainer/VBoxContainer/KeyboardControls"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 10
|
||||
text = "PRESS F5 TO RESET BINDINGS."
|
||||
uppercase = true
|
||||
|
||||
[node name="Controller" type="VBoxContainer" parent="PanelContainer/MarginContainer/VBoxContainer" node_paths=PackedStringArray("options")]
|
||||
visible = false
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 3
|
||||
theme_override_constants/separation = -4
|
||||
script = ExtResource("4_avtty")
|
||||
category_name = "SETTINGS_CONTROLLER"
|
||||
options = [NodePath("Jump"), NodePath("Run"), NodePath("Action"), NodePath("Left"), NodePath("Right"), NodePath("Up"), NodePath("Down")]
|
||||
options = [NodePath("Jump"), NodePath("Run"), NodePath("Action"), NodePath("Left"), NodePath("Right"), NodePath("Up"), NodePath("Down"), NodePath("Accept"), NodePath("Back"), NodePath("Pause")]
|
||||
|
||||
[node name="Control" type="Control" parent="PanelContainer/MarginContainer/VBoxContainer/Controller"]
|
||||
custom_minimum_size = Vector2(0, 4)
|
||||
@@ -732,57 +808,85 @@ layout_mode = 2
|
||||
[node name="Jump" parent="PanelContainer/MarginContainer/VBoxContainer/Controller" groups=["Options"] instance=ExtResource("9_ksnto")]
|
||||
layout_mode = 2
|
||||
settings_category = "controller"
|
||||
action_name = "jump"
|
||||
action_names = ["jump"]
|
||||
title = "ACTION_JUMP"
|
||||
type = 1
|
||||
|
||||
[node name="Run" parent="PanelContainer/MarginContainer/VBoxContainer/Controller" groups=["Options"] instance=ExtResource("9_ksnto")]
|
||||
layout_mode = 2
|
||||
settings_category = "controller"
|
||||
action_name = "run"
|
||||
action_names = ["run"]
|
||||
title = "ACTION_RUN"
|
||||
type = 1
|
||||
|
||||
[node name="Action" parent="PanelContainer/MarginContainer/VBoxContainer/Controller" groups=["Options"] instance=ExtResource("9_ksnto")]
|
||||
layout_mode = 2
|
||||
settings_category = "controller"
|
||||
action_name = "action"
|
||||
action_names = ["action"]
|
||||
title = "ACTION_ACTION"
|
||||
type = 1
|
||||
|
||||
[node name="Left" parent="PanelContainer/MarginContainer/VBoxContainer/Controller" groups=["Options"] instance=ExtResource("9_ksnto")]
|
||||
layout_mode = 2
|
||||
settings_category = "controller"
|
||||
action_name = "move_left"
|
||||
action_names = ["move_left", "ui_left"]
|
||||
title = "ACTION_LEFT"
|
||||
type = 1
|
||||
|
||||
[node name="Right" parent="PanelContainer/MarginContainer/VBoxContainer/Controller" groups=["Options"] instance=ExtResource("9_ksnto")]
|
||||
layout_mode = 2
|
||||
settings_category = "controller"
|
||||
action_name = "move_right"
|
||||
action_names = ["move_right", "ui_right"]
|
||||
title = "ACTION_RIGHT"
|
||||
type = 1
|
||||
|
||||
[node name="Up" parent="PanelContainer/MarginContainer/VBoxContainer/Controller" groups=["Options"] instance=ExtResource("9_ksnto")]
|
||||
layout_mode = 2
|
||||
settings_category = "controller"
|
||||
action_name = "move_up"
|
||||
action_names = ["move_up", "ui_up"]
|
||||
title = "ACTION_UP"
|
||||
type = 1
|
||||
|
||||
[node name="Down" parent="PanelContainer/MarginContainer/VBoxContainer/Controller" groups=["Options"] instance=ExtResource("9_ksnto")]
|
||||
layout_mode = 2
|
||||
settings_category = "controller"
|
||||
action_name = "move_down"
|
||||
action_names = ["move_down", "ui_down"]
|
||||
title = "ACTION_DOWN"
|
||||
type = 1
|
||||
|
||||
[node name="Accept" parent="PanelContainer/MarginContainer/VBoxContainer/Controller" groups=["Options"] instance=ExtResource("9_ksnto")]
|
||||
layout_mode = 2
|
||||
settings_category = "controller"
|
||||
action_names = ["ui_accept"]
|
||||
title = "ACCEPT"
|
||||
type = 1
|
||||
|
||||
[node name="Back" parent="PanelContainer/MarginContainer/VBoxContainer/Controller" groups=["Options"] instance=ExtResource("9_ksnto")]
|
||||
layout_mode = 2
|
||||
settings_category = "controller"
|
||||
action_names = ["ui_back"]
|
||||
title = "BACK"
|
||||
type = 1
|
||||
|
||||
[node name="Pause" parent="PanelContainer/MarginContainer/VBoxContainer/Controller" groups=["Options"] instance=ExtResource("9_ksnto")]
|
||||
layout_mode = 2
|
||||
settings_category = "controller"
|
||||
action_names = ["pause"]
|
||||
title = "PAUSE"
|
||||
type = 1
|
||||
|
||||
[node name="InputMapSaving" type="Node" parent="PanelContainer/MarginContainer/VBoxContainer/Controller" groups=["Options"]]
|
||||
script = SubResource("GDScript_ksnto")
|
||||
type = 1
|
||||
|
||||
[node name="Label" type="Label" parent="PanelContainer/MarginContainer/VBoxContainer/Controller"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 10
|
||||
text = "PRESS F5 TO RESET BINDINGS."
|
||||
uppercase = true
|
||||
|
||||
[node name="Data" type="VBoxContainer" parent="PanelContainer/MarginContainer/VBoxContainer" node_paths=PackedStringArray("options")]
|
||||
visible = false
|
||||
layout_mode = 2
|
||||
theme_override_constants/separation = -4
|
||||
script = ExtResource("4_avtty")
|
||||
@@ -904,6 +1008,7 @@ script = ExtResource("19_k6yev")
|
||||
[connection signal="value_changed" from="PanelContainer/MarginContainer/VBoxContainer/Audio/AthleticMusic" to="PanelContainer/MarginContainer/VBoxContainer/Audio/AudioAdjuster" method="athletic_changed"]
|
||||
[connection signal="value_changed" from="PanelContainer/MarginContainer/VBoxContainer/Audio/SkidSFX" to="PanelContainer/MarginContainer/VBoxContainer/Audio/AudioAdjuster" method="skid_changed"]
|
||||
[connection signal="value_changed" from="PanelContainer/MarginContainer/VBoxContainer/Audio/ExtraSFX" to="PanelContainer/MarginContainer/VBoxContainer/Audio/AudioAdjuster" method="extra_sfx_changed"]
|
||||
[connection signal="value_changed" from="PanelContainer/MarginContainer/VBoxContainer/Audio/PauseBGM" to="PanelContainer/MarginContainer/VBoxContainer/Audio/AudioAdjuster" method="pause_bgm_changed"]
|
||||
[connection signal="value_changed" from="PanelContainer/MarginContainer/VBoxContainer/Audio/MenuBGM" to="PanelContainer/MarginContainer/VBoxContainer/Audio/AudioAdjuster" method="menu_bgm_changed"]
|
||||
[connection signal="value_changed" from="PanelContainer/MarginContainer/VBoxContainer/Visuals/ParallaxStyle" to="PanelContainer/MarginContainer/VBoxContainer/Visuals/VisualsSetter" method="parallax_style_changed"]
|
||||
[connection signal="value_changed" from="PanelContainer/MarginContainer/VBoxContainer/Visuals/BGParticles" to="PanelContainer/MarginContainer/VBoxContainer/Visuals/VisualsSetter" method="bg_particles_changed"]
|
||||
@@ -916,6 +1021,7 @@ script = ExtResource("19_k6yev")
|
||||
[connection signal="value_changed" from="PanelContainer/MarginContainer/VBoxContainer/Visuals/TransitionAnimation" to="PanelContainer/MarginContainer/VBoxContainer/Visuals/VisualsSetter" method="transition_style_changed"]
|
||||
[connection signal="value_changed" from="PanelContainer/MarginContainer/VBoxContainer/Visuals/ColourfulPipes" to="PanelContainer/MarginContainer/VBoxContainer/Visuals/VisualsSetter" method="colourful_pipes_changed"]
|
||||
[connection signal="value_changed" from="PanelContainer/MarginContainer/VBoxContainer/Visuals/FirebarStyle" to="PanelContainer/MarginContainer/VBoxContainer/Visuals/VisualsSetter" method="firebar_style_changed"]
|
||||
[connection signal="value_changed" from="PanelContainer/MarginContainer/VBoxContainer/Visuals/ExtraParticles" to="PanelContainer/MarginContainer/VBoxContainer/Visuals/VisualsSetter" method="extra_particles"]
|
||||
[connection signal="button_pressed" from="PanelContainer/MarginContainer/VBoxContainer/ResourcePacks/SelectableOptionNode" to="PanelContainer/MarginContainer/VBoxContainer/ResourcePacks/ResourcePackLoader" method="open_folder"]
|
||||
[connection signal="button_pressed" from="PanelContainer/MarginContainer/VBoxContainer/ResourcePacks/SelectableOptionNode2" to="PanelContainer/MarginContainer/VBoxContainer/ResourcePacks/ResourcePackLoader" method="get_resource_packs"]
|
||||
[connection signal="button_pressed" from="PanelContainer/MarginContainer/VBoxContainer/ResourcePacks/SelectableOptionNode3" to="ResourcePackTemplateCreator" method="create_template"]
|
||||
|
Reference in New Issue
Block a user