From 5649ba81f6fbd1c885099800ef304523d48260d1 Mon Sep 17 00:00:00 2001 From: SkyanUltra Date: Sat, 27 Sep 2025 15:17:17 -0400 Subject: [PATCH 1/6] Fixed "spiny's" and "hachisuki" misspellings. Just fixes a small error in the description text for the Lakitu bugfix toggle and the hover text for Hachisuke in the editor. --- Resources/Locale/locale.csv | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Resources/Locale/locale.csv b/Resources/Locale/locale.csv index 4f0eff8..e856e8d 100644 --- a/Resources/Locale/locale.csv +++ b/Resources/Locale/locale.csv @@ -216,8 +216,8 @@ DESC_TIME_1,,There is a time limit in all levels.,Il y a une limite de temps dan DESC_TIME_2,,"There is a time limit in all levels, but it ticks every second.",Il y a une limite de temps dans ce niveau,Jest limit czasu w poziomach.,ha Уpobhяx ectь лиmиt bpemehи.,Hay un límite de tiempo en todos los niveles.,Ci saranno limiti di tempo nei livelli.,"THERE IS A TIME LIMIT IN ALL LEVELS, BUT IT TICKS EVER SECOND.",May time limit sa mga lebel,Bei Leveln gibt es ein Zeitlimit.,Tüm levellerde zaman lİmİtİ var.,Ada batas waktu di semua level.,Tem tempo limite nos níveis.,ステージに じかんせいげんは ある。 DESC_BACKSCROLL_0,,"You cannot move backwards in levels (unless a custom level allows it), Intended Experience",Vous ne pouvez pas retournez en arrière (sauf si un niveau custom vous l'autorise). Expérience prévue,Nie możesz iść do tyłu (chyba że poziom użytnikowa na to pozwala) Domyślny styl gry,"bы he moжete дbигatьcя haзaд ha Уpobhяx (kpome, ecли пoльзobateльckий Уpobehь пoзboляet), пpeдпoлaгaemый oпыt","No puedes retroceder en los niveles (a menos que un nivel personalizado lo permita), Experiencia prevista","Non puoi tornare indietro nei livelli (a meno che un livello creato dall'utente lo consente), l'esperienza originale.","YOU CANNOT MOVE BACKWARDS IN LEVELS (UNLESS A CUSTOM LEVEL ALLOWS IT), INTENDED EXPERIENCE","Walang backscroll, maliban kung pwede sa custom game, klasik na experience","Die Kamera bewegt sich nicht nach links, wie bei den Originalspielen, ausser wenn ein Nutzererstelltes Level es erlaubt.","Levellerde gerİye doğru hareket edemezsİnİz (özel bİr level buna İzİn vermedİğİ sürece), Amaçlanan Deneyİm","Anda tidak dapat bergerak mundur dalam level (kecuali level kustom mengizinkannya), Pengalaman yang Diinginkan","Você não pode andar para trás nos níveis (a menos que um nível customizado o permita), Experiência recomendada.",デフォルトステージモード:もどることはできない。 DESC_BACKSCROLL_1,,You can move backwards in all levels (unless a custom level prevents it),Vous pouvez retournez en arrière (sauf si un niveau custom vous l'en empêche),Możesz iść do tyłu (chyba że poziom użytnikowa na to nie pozwala) ,"bы moжete дbигatьcя haзaд ha Уpobhяx (kpome, ecли пoльзobateльckий Уpobehь he пoзboляet)",Puedes retroceder en todos los niveles (a menos que un nivel personalizado lo impida).,Puoi tornare indietro nei livelli (a meno che un livello creato dall'utente non lo consente).,YOU CAN MOVE BACKWARDS IN ALL LEVELS (UNLESS A CUSTOM LEVEL PREVENTS IT),"Free Camera, maliban kung pinagbawal sa custom games","Die Kamera kann sich auch nach links bewegen, ausser wenn ein nutzererstelltes Level es nicht erlaubt.",Tüm levellerde gerİye doğru hareket edebİlİrsİnİz (özel bİr level bunu engellemedİğİ sürece),Anda dapat bergerak mundur di semua level (kecuali level kustom mencegahnya),"Você pode andar para trás em todos os níveis (a menos que um nível customizado não o permita), Experiência recomendada.",デフォルトステージモード:もどることはできる。 -DESC_LAKITU_0,,"Lakitu will throw spiny's straight upwards, exactly like in the original games. (was due to a bug)","Lakitu jettera des Hériss en ligne droite verticale, comme il le faisait dans les jeux originaux (à cause d'un bug)","Lakitu rzuca kolczastych prosto w górę, dokładnie jak w oryginale. (Oryginalnie niezamierzane)","ЛakиtУ бУдet пoдбpacыbatь koлючkУ пpяmo bbepx, b toчhoctи kak b opигиhaльhыx игpax. (эto пpoизoшлo из-зa oшибkи)","Lakitu lanzará a los Spiny directamente hacia arriba, exactamente igual que en los juegos originales. (debido a un error)","Lakitu lancerà i koopistrici verticalmente verso l'alto, esattamente come nel gioco originale (questo era a causa di un bug).","LAKITU WILL THROW SPINY'S STRAIGHT UPWARDS, EXACTLY LIKE IN THE ORIGINAL GAMES. (WAS DUE TO A BUG)","Pataas, Klasik na pagtapon ng Lakitu ng spiny","Lakitu wirft Stachis senkrecht nach oben, wie bei den Originalspielen. (Dies passierte aufgrund eines Bugs)",Lakİtu orİjİnal oyunlardakİ gİbİ Spİny'lerİ dümdüz yukarı doğru fırlatacak. (bİr hata nedenİyle),"Lakitu akan melemparkan spiny lurus ke atas, persis seperti di game aslinya. (disebabkan oleh bug)","Lakitus vão arremessar spinys direto para cima, que nem no jogo original.",トゲゾーが うえに なげられる。 -DESC_LAKITU_1,,"Lakitu will throw spiny's diagonally up, which was the originally intended behaviour.","Lakitu jettera des Hériss en diagonal, ce qui était le comportement originalement prévu. ","Lakitu rzuca kolczastych ukośnie do góry, tak jak miało być w oryginale.","ЛakиtУ пoдбpacыbaet koлючkУ пo диaгohaли bbepx, чto и былo изhaчaльho зaдУmaho.","Lakitu lanzará a los Spiny en diagonal hacia arriba, que era el comportamiento previsto originalmente.","Lakitu lancerà i koopistrici in diagonale verso l'alto, il comportamento originariamente inteso.","LAKITU WILL THROW SPINY'S DIAGONALLY UP, WHICH WAS THE ORIGINALLY INTENDED BEHAVIOUR.","Pasulong, Maayos na pagtapon ng Lakitu ng mga spiny","Lakitu wirft Stachis diagonal nach oben, was das eigentliche Verhalten von Lakitu sein sollte.","Lakİtu, Spİny düşmanlarını çapraz olarak yukarı fırlatacak, düzeltİlmİş davranış.","Lakitu akan melemparkan spiny secara diagonal ke atas, yang merupakan perilaku yang dimaksudkan pada awalnya.","Lakitus vão arremessar spinys diagonalmente para cima, o que era originalmente pretendido",トゲゾーが ななめうえに なげられる。 +DESC_LAKITU_0,,"Lakitu will throw spinies straight upwards, exactly like in the original games. (was due to a bug)","Lakitu jettera des Hériss en ligne droite verticale, comme il le faisait dans les jeux originaux (à cause d'un bug)","Lakitu rzuca kolczastych prosto w górę, dokładnie jak w oryginale. (Oryginalnie niezamierzane)","ЛakиtУ бУдet пoдбpacыbatь koлючkУ пpяmo bbepx, b toчhoctи kak b opигиhaльhыx игpax. (эto пpoизoшлo из-зa oшибkи)","Lakitu lanzará a los Spiny directamente hacia arriba, exactamente igual que en los juegos originales. (debido a un error)","Lakitu lancerà i koopistrici verticalmente verso l'alto, esattamente come nel gioco originale (questo era a causa di un bug).","LAKITU WILL THROW SPINY'S STRAIGHT UPWARDS, EXACTLY LIKE IN THE ORIGINAL GAMES. (WAS DUE TO A BUG)","Pataas, Klasik na pagtapon ng Lakitu ng spiny","Lakitu wirft Stachis senkrecht nach oben, wie bei den Originalspielen. (Dies passierte aufgrund eines Bugs)",Lakİtu orİjİnal oyunlardakİ gİbİ Spİny'lerİ dümdüz yukarı doğru fırlatacak. (bİr hata nedenİyle),"Lakitu akan melemparkan spiny lurus ke atas, persis seperti di game aslinya. (disebabkan oleh bug)","Lakitus vão arremessar spinys direto para cima, que nem no jogo original.",トゲゾーが うえに なげられる。 +DESC_LAKITU_1,,"Lakitu will throw spinies diagonally up, which was the originally intended behaviour.","Lakitu jettera des Hériss en diagonal, ce qui était le comportement originalement prévu. ","Lakitu rzuca kolczastych ukośnie do góry, tak jak miało być w oryginale.","ЛakиtУ пoдбpacыbaet koлючkУ пo диaгohaли bbepx, чto и былo изhaчaльho зaдУmaho.","Lakitu lanzará a los Spiny en diagonal hacia arriba, que era el comportamiento previsto originalmente.","Lakitu lancerà i koopistrici in diagonale verso l'alto, il comportamento originariamente inteso.","LAKITU WILL THROW SPINY'S DIAGONALLY UP, WHICH WAS THE ORIGINALLY INTENDED BEHAVIOUR.","Pasulong, Maayos na pagtapon ng Lakitu ng mga spiny","Lakitu wirft Stachis diagonal nach oben, was das eigentliche Verhalten von Lakitu sein sollte.","Lakİtu, Spİny düşmanlarını çapraz olarak yukarı fırlatacak, düzeltİlmİş davranış.","Lakitu akan melemparkan spiny secara diagonal ke atas, yang merupakan perilaku yang dimaksudkan pada awalnya.","Lakitus vão arremessar spinys diagonalmente para cima, o que era originalmente pretendido",トゲゾーが ななめうえに なげられる。 ACTION_JUMP,,Jump,Sauter,Skok,Пpыжok,Saltar,Salta,JUMP,Jump,Springen,Zıpla,Lompat,Pular,ジャンプ ACTION_RUN,,Run,Courir,Bieg,Бeг,Correr,Corri,RUN,Kilos,Rennen,Koş,Lari,Correr,ダッシュ ACTION_ACTION,"Terrible name, but basically the ""action button"", used for fireballs and powerup actions",Action,Action,Akcja,Дeйctbиe,Acción,Azione,ACTION,Aksyon,Aktion,Aksİyon,Aksi,Ação,アクション @@ -511,7 +511,7 @@ ITEM_BLUE_COIN,,P-Coin,Pièce-P,Moneta-P,P-moheta,,,P-COIN,P-Coin,P-M ITEM_WING,,Wing,Ailes,Skrzydła,kpылo,,,WING,Pakpak,Flügel,Kanat,Sayap,Asa,パタパタのはね ITEM_KEY,,Key,Clé,Klucz,kлюч,,,KEY,Susi,Schlüssel,Anahtar,Kunci,Chave,カギ ITEM_LUCKYSTAR,,Lucky Star,Étoile chanceuse,Szczęśliwa Gwiazda,Зbeздa Удaчи,,,LUCKY STAR,Swerteng Bituin,Glücksstern,Şanslı Yıldız,Bintang Keberuntungan,Estrela da Sorte,ラッキースター -ITEM_HACHISUKI,,Hachisuki,Hachisuki,Hachisuki,xaчиcУkи,,,HACHISUKI,Hachisuki,Hachisuke,Hachİsukİ,Hachisuki,Hachisuki,ハチスケ +ITEM_HACHISUKI,,Hachisuke,Hachisuke,Hachisuke,xaчиcУkи,,,HACHISUKE,Hachisuke,Hachisuke,Hachİsukİ,Hachisuke,Hachisuke,ハチスケ ITEM_STARMAN,,Starman,Super Étoile,Gwiazda,cУпepзbeздa,,,STARMAN,Bituin,Stern,Yıldız,Starman,Estrela,スター ITEM_HAMMER,,Hammer,Marteau,Młotek,moлotok,,,HAMMER,Martilyo,Hammer,Çekİç,Palu,Martelo,ハンマー ITEM_CLOCK,"Clocks that you can collect, will give +100 Seconds on the time limit",Clock,Horloge,Zegar,Чacы,,,CLOCK,Orasan,Uhr,Saat,Jam,Relógio,プラスとけい @@ -1176,4 +1176,4 @@ P_RANK_MESSAGE,,Perfect!,Parfait !,Perfekcyjnie!,Идeaльho!,¡Perfecto!,Perfe ,,,,,,,,,,,,,, ,,,,,,,,,,,,,, ,,,,,,,,,,,,,, -0.74,,,,,,,,,,,,,, \ No newline at end of file +0.74,,,,,,,,,,,,,, From 3f8bde23a802dad32d514606986fca6ec8965365 Mon Sep 17 00:00:00 2001 From: SkyanUltra Date: Sun, 28 Sep 2025 17:42:06 -0400 Subject: [PATCH 2/6] proofread i forgot to update the full-width text for spinies --- Resources/Locale/locale.csv | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Resources/Locale/locale.csv b/Resources/Locale/locale.csv index e856e8d..cb5acde 100644 --- a/Resources/Locale/locale.csv +++ b/Resources/Locale/locale.csv @@ -216,8 +216,8 @@ DESC_TIME_1,,There is a time limit in all levels.,Il y a une limite de temps dan DESC_TIME_2,,"There is a time limit in all levels, but it ticks every second.",Il y a une limite de temps dans ce niveau,Jest limit czasu w poziomach.,ha Уpobhяx ectь лиmиt bpemehи.,Hay un límite de tiempo en todos los niveles.,Ci saranno limiti di tempo nei livelli.,"THERE IS A TIME LIMIT IN ALL LEVELS, BUT IT TICKS EVER SECOND.",May time limit sa mga lebel,Bei Leveln gibt es ein Zeitlimit.,Tüm levellerde zaman lİmİtİ var.,Ada batas waktu di semua level.,Tem tempo limite nos níveis.,ステージに じかんせいげんは ある。 DESC_BACKSCROLL_0,,"You cannot move backwards in levels (unless a custom level allows it), Intended Experience",Vous ne pouvez pas retournez en arrière (sauf si un niveau custom vous l'autorise). Expérience prévue,Nie możesz iść do tyłu (chyba że poziom użytnikowa na to pozwala) Domyślny styl gry,"bы he moжete дbигatьcя haзaд ha Уpobhяx (kpome, ecли пoльзobateльckий Уpobehь пoзboляet), пpeдпoлaгaemый oпыt","No puedes retroceder en los niveles (a menos que un nivel personalizado lo permita), Experiencia prevista","Non puoi tornare indietro nei livelli (a meno che un livello creato dall'utente lo consente), l'esperienza originale.","YOU CANNOT MOVE BACKWARDS IN LEVELS (UNLESS A CUSTOM LEVEL ALLOWS IT), INTENDED EXPERIENCE","Walang backscroll, maliban kung pwede sa custom game, klasik na experience","Die Kamera bewegt sich nicht nach links, wie bei den Originalspielen, ausser wenn ein Nutzererstelltes Level es erlaubt.","Levellerde gerİye doğru hareket edemezsİnİz (özel bİr level buna İzİn vermedİğİ sürece), Amaçlanan Deneyİm","Anda tidak dapat bergerak mundur dalam level (kecuali level kustom mengizinkannya), Pengalaman yang Diinginkan","Você não pode andar para trás nos níveis (a menos que um nível customizado o permita), Experiência recomendada.",デフォルトステージモード:もどることはできない。 DESC_BACKSCROLL_1,,You can move backwards in all levels (unless a custom level prevents it),Vous pouvez retournez en arrière (sauf si un niveau custom vous l'en empêche),Możesz iść do tyłu (chyba że poziom użytnikowa na to nie pozwala) ,"bы moжete дbигatьcя haзaд ha Уpobhяx (kpome, ecли пoльзobateльckий Уpobehь he пoзboляet)",Puedes retroceder en todos los niveles (a menos que un nivel personalizado lo impida).,Puoi tornare indietro nei livelli (a meno che un livello creato dall'utente non lo consente).,YOU CAN MOVE BACKWARDS IN ALL LEVELS (UNLESS A CUSTOM LEVEL PREVENTS IT),"Free Camera, maliban kung pinagbawal sa custom games","Die Kamera kann sich auch nach links bewegen, ausser wenn ein nutzererstelltes Level es nicht erlaubt.",Tüm levellerde gerİye doğru hareket edebİlİrsİnİz (özel bİr level bunu engellemedİğİ sürece),Anda dapat bergerak mundur di semua level (kecuali level kustom mencegahnya),"Você pode andar para trás em todos os níveis (a menos que um nível customizado não o permita), Experiência recomendada.",デフォルトステージモード:もどることはできる。 -DESC_LAKITU_0,,"Lakitu will throw spinies straight upwards, exactly like in the original games. (was due to a bug)","Lakitu jettera des Hériss en ligne droite verticale, comme il le faisait dans les jeux originaux (à cause d'un bug)","Lakitu rzuca kolczastych prosto w górę, dokładnie jak w oryginale. (Oryginalnie niezamierzane)","ЛakиtУ бУдet пoдбpacыbatь koлючkУ пpяmo bbepx, b toчhoctи kak b opигиhaльhыx игpax. (эto пpoизoшлo из-зa oшибkи)","Lakitu lanzará a los Spiny directamente hacia arriba, exactamente igual que en los juegos originales. (debido a un error)","Lakitu lancerà i koopistrici verticalmente verso l'alto, esattamente come nel gioco originale (questo era a causa di un bug).","LAKITU WILL THROW SPINY'S STRAIGHT UPWARDS, EXACTLY LIKE IN THE ORIGINAL GAMES. (WAS DUE TO A BUG)","Pataas, Klasik na pagtapon ng Lakitu ng spiny","Lakitu wirft Stachis senkrecht nach oben, wie bei den Originalspielen. (Dies passierte aufgrund eines Bugs)",Lakİtu orİjİnal oyunlardakİ gİbİ Spİny'lerİ dümdüz yukarı doğru fırlatacak. (bİr hata nedenİyle),"Lakitu akan melemparkan spiny lurus ke atas, persis seperti di game aslinya. (disebabkan oleh bug)","Lakitus vão arremessar spinys direto para cima, que nem no jogo original.",トゲゾーが うえに なげられる。 -DESC_LAKITU_1,,"Lakitu will throw spinies diagonally up, which was the originally intended behaviour.","Lakitu jettera des Hériss en diagonal, ce qui était le comportement originalement prévu. ","Lakitu rzuca kolczastych ukośnie do góry, tak jak miało być w oryginale.","ЛakиtУ пoдбpacыbaet koлючkУ пo диaгohaли bbepx, чto и былo изhaчaльho зaдУmaho.","Lakitu lanzará a los Spiny en diagonal hacia arriba, que era el comportamiento previsto originalmente.","Lakitu lancerà i koopistrici in diagonale verso l'alto, il comportamento originariamente inteso.","LAKITU WILL THROW SPINY'S DIAGONALLY UP, WHICH WAS THE ORIGINALLY INTENDED BEHAVIOUR.","Pasulong, Maayos na pagtapon ng Lakitu ng mga spiny","Lakitu wirft Stachis diagonal nach oben, was das eigentliche Verhalten von Lakitu sein sollte.","Lakİtu, Spİny düşmanlarını çapraz olarak yukarı fırlatacak, düzeltİlmİş davranış.","Lakitu akan melemparkan spiny secara diagonal ke atas, yang merupakan perilaku yang dimaksudkan pada awalnya.","Lakitus vão arremessar spinys diagonalmente para cima, o que era originalmente pretendido",トゲゾーが ななめうえに なげられる。 +DESC_LAKITU_0,,"Lakitu will throw spinies straight upwards, exactly like in the original games. (was due to a bug)","Lakitu jettera des Hériss en ligne droite verticale, comme il le faisait dans les jeux originaux (à cause d'un bug)","Lakitu rzuca kolczastych prosto w górę, dokładnie jak w oryginale. (Oryginalnie niezamierzane)","ЛakиtУ бУдet пoдбpacыbatь koлючkУ пpяmo bbepx, b toчhoctи kak b opигиhaльhыx игpax. (эto пpoизoшлo из-зa oшибkи)","Lakitu lanzará a los Spiny directamente hacia arriba, exactamente igual que en los juegos originales. (debido a un error)","Lakitu lancerà i koopistrici verticalmente verso l'alto, esattamente come nel gioco originale (questo era a causa di un bug).","LAKITU WILL THROW SPINIES STRAIGHT UPWARDS, EXACTLY LIKE IN THE ORIGINAL GAMES. (WAS DUE TO A BUG)","Pataas, Klasik na pagtapon ng Lakitu ng spiny","Lakitu wirft Stachis senkrecht nach oben, wie bei den Originalspielen. (Dies passierte aufgrund eines Bugs)",Lakİtu orİjİnal oyunlardakİ gİbİ Spİny'lerİ dümdüz yukarı doğru fırlatacak. (bİr hata nedenİyle),"Lakitu akan melemparkan spiny lurus ke atas, persis seperti di game aslinya. (disebabkan oleh bug)","Lakitus vão arremessar spinys direto para cima, que nem no jogo original.",トゲゾーが うえに なげられる。 +DESC_LAKITU_1,,"Lakitu will throw spinies diagonally up, which was the originally intended behaviour.","Lakitu jettera des Hériss en diagonal, ce qui était le comportement originalement prévu. ","Lakitu rzuca kolczastych ukośnie do góry, tak jak miało być w oryginale.","ЛakиtУ пoдбpacыbaet koлючkУ пo диaгohaли bbepx, чto и былo изhaчaльho зaдУmaho.","Lakitu lanzará a los Spiny en diagonal hacia arriba, que era el comportamiento previsto originalmente.","Lakitu lancerà i koopistrici in diagonale verso l'alto, il comportamento originariamente inteso.","LAKITU WILL THROW SPINIES DIAGONALLY UP, WHICH WAS THE ORIGINALLY INTENDED BEHAVIOUR.","Pasulong, Maayos na pagtapon ng Lakitu ng mga spiny","Lakitu wirft Stachis diagonal nach oben, was das eigentliche Verhalten von Lakitu sein sollte.","Lakİtu, Spİny düşmanlarını çapraz olarak yukarı fırlatacak, düzeltİlmİş davranış.","Lakitu akan melemparkan spiny secara diagonal ke atas, yang merupakan perilaku yang dimaksudkan pada awalnya.","Lakitus vão arremessar spinys diagonalmente para cima, o que era originalmente pretendido",トゲゾーが ななめうえに なげられる。 ACTION_JUMP,,Jump,Sauter,Skok,Пpыжok,Saltar,Salta,JUMP,Jump,Springen,Zıpla,Lompat,Pular,ジャンプ ACTION_RUN,,Run,Courir,Bieg,Бeг,Correr,Corri,RUN,Kilos,Rennen,Koş,Lari,Correr,ダッシュ ACTION_ACTION,"Terrible name, but basically the ""action button"", used for fireballs and powerup actions",Action,Action,Akcja,Дeйctbиe,Acción,Azione,ACTION,Aksyon,Aktion,Aksİyon,Aksi,Ação,アクション From 3f7423c72a79abbbc3990d3caa4b60a3a992f2a8 Mon Sep 17 00:00:00 2001 From: KirbyKidJ <70983335+KirbyKid256@users.noreply.github.com> Date: Sat, 4 Oct 2025 16:16:35 -0700 Subject: [PATCH 3/6] Updated Godot Editor Custom Icons Wanted to turn the icons used in the Godot Editor into SVGs This has literally ZERO effect on the Game itself. I just thought it'd be neat. --- Assets/Sprites/Editor/Block.png | Bin 128 -> 0 bytes Assets/Sprites/Editor/Block.svg | 1 + .../Editor/{Pipe.png.import => Block.svg.import} | 12 ++++++++---- Assets/Sprites/Editor/Enemy.png | Bin 199 -> 0 bytes Assets/Sprites/Editor/Enemy.svg | 1 + .../Editor/{Enemy.png.import => Enemy.svg.import} | 12 ++++++++---- Assets/Sprites/Editor/Level.png | Bin 309 -> 0 bytes Assets/Sprites/Editor/Level.svg | 1 + .../Editor/{Block.png.import => Level.svg.import} | 12 ++++++++---- Assets/Sprites/Editor/Pipe.png | Bin 208 -> 0 bytes Assets/Sprites/Editor/Pipe.svg | 1 + .../Editor/{Level.png.import => Pipe.svg.import} | 12 ++++++++---- Scripts/Classes/Blocks/BlockClass.gd | 2 +- Scripts/Classes/Entities/Enemy.gd | 2 +- Scripts/Classes/Entities/PipeArea.gd | 2 +- Scripts/Classes/LevelClass.gd | 2 +- 16 files changed, 40 insertions(+), 20 deletions(-) delete mode 100755 Assets/Sprites/Editor/Block.png create mode 100644 Assets/Sprites/Editor/Block.svg rename Assets/Sprites/Editor/{Pipe.png.import => Block.svg.import} (65%) delete mode 100755 Assets/Sprites/Editor/Enemy.png create mode 100644 Assets/Sprites/Editor/Enemy.svg rename Assets/Sprites/Editor/{Enemy.png.import => Enemy.svg.import} (65%) delete mode 100755 Assets/Sprites/Editor/Level.png create mode 100644 Assets/Sprites/Editor/Level.svg rename Assets/Sprites/Editor/{Block.png.import => Level.svg.import} (65%) delete mode 100755 Assets/Sprites/Editor/Pipe.png create mode 100644 Assets/Sprites/Editor/Pipe.svg rename Assets/Sprites/Editor/{Level.png.import => Pipe.svg.import} (66%) diff --git a/Assets/Sprites/Editor/Block.png b/Assets/Sprites/Editor/Block.png deleted file mode 100755 index f590b63e42e6846446d4db6344101c6bdecd879b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 128 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|tUO&DLo9le zQxXyqJm&rRZ_g~5kf*1td~;T!n6YB9$Hk7h&Yj#RSQoSPNHruKXi!ac^WvE~`}7G8 ZhSnph3%6+6g#t}s@O1TaS?83{1OQ2YCO!ZF diff --git a/Assets/Sprites/Editor/Block.svg b/Assets/Sprites/Editor/Block.svg new file mode 100644 index 0000000..ce1519a --- /dev/null +++ b/Assets/Sprites/Editor/Block.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/Assets/Sprites/Editor/Pipe.png.import b/Assets/Sprites/Editor/Block.svg.import similarity index 65% rename from Assets/Sprites/Editor/Pipe.png.import rename to Assets/Sprites/Editor/Block.svg.import index 3f12990..6800cb3 100644 --- a/Assets/Sprites/Editor/Pipe.png.import +++ b/Assets/Sprites/Editor/Block.svg.import @@ -2,16 +2,17 @@ importer="texture" type="CompressedTexture2D" -uid="uid://bssh26dxk6xgy" -path="res://.godot/imported/Pipe.png-69349cb27a593cd597e30a377402c324.ctex" +uid="uid://b5cfmaep0h3i8" +path="res://.godot/imported/Block.svg-b375fcdd7f9ff578f8f4e7f5bc50abc6.ctex" metadata={ +"has_editor_variant": true, "vram_texture": false } [deps] -source_file="res://Assets/Sprites/Editor/Pipe.png" -dest_files=["res://.godot/imported/Pipe.png-69349cb27a593cd597e30a377402c324.ctex"] +source_file="res://Assets/Sprites/Editor/Block.svg" +dest_files=["res://.godot/imported/Block.svg-b375fcdd7f9ff578f8f4e7f5bc50abc6.ctex"] [params] @@ -38,3 +39,6 @@ process/hdr_as_srgb=false process/hdr_clamp_exposure=false process/size_limit=0 detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=true +editor/convert_colors_with_editor_theme=true diff --git a/Assets/Sprites/Editor/Enemy.png b/Assets/Sprites/Editor/Enemy.png deleted file mode 100755 index 793a10e665412b0af29205be64633b50e1924fec..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 199 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|8a-VcLo9li z1{n$+P~cFWXJ7iw^xVFwes2}ozO3_+@|eJ((qR_zwzjO{YT$**#uIrvPE0&eWI1u> ziSi8RufB8KHf)tv6iWQ@#vyfXPCJjVpytgxxhv*w_nNh4EyTedpoZ* x_q^#{I@`kf!T;HNUsdrNEuJoz=eg}0qv-bR*Ry^xuK_xS!PC{xWt~$(697LVP6z-1 diff --git a/Assets/Sprites/Editor/Enemy.svg b/Assets/Sprites/Editor/Enemy.svg new file mode 100644 index 0000000..d4a5502 --- /dev/null +++ b/Assets/Sprites/Editor/Enemy.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/Assets/Sprites/Editor/Enemy.png.import b/Assets/Sprites/Editor/Enemy.svg.import similarity index 65% rename from Assets/Sprites/Editor/Enemy.png.import rename to Assets/Sprites/Editor/Enemy.svg.import index f472fcb..63a5c93 100644 --- a/Assets/Sprites/Editor/Enemy.png.import +++ b/Assets/Sprites/Editor/Enemy.svg.import @@ -2,16 +2,17 @@ importer="texture" type="CompressedTexture2D" -uid="uid://val3y26km5bl" -path="res://.godot/imported/Enemy.png-761910e2264650da83a00e07455626a9.ctex" +uid="uid://bpgqqibmk2pkl" +path="res://.godot/imported/Enemy.svg-cb6145b04638dd6109e7afcccd5a1a6c.ctex" metadata={ +"has_editor_variant": true, "vram_texture": false } [deps] -source_file="res://Assets/Sprites/Editor/Enemy.png" -dest_files=["res://.godot/imported/Enemy.png-761910e2264650da83a00e07455626a9.ctex"] +source_file="res://Assets/Sprites/Editor/Enemy.svg" +dest_files=["res://.godot/imported/Enemy.svg-cb6145b04638dd6109e7afcccd5a1a6c.ctex"] [params] @@ -38,3 +39,6 @@ process/hdr_as_srgb=false process/hdr_clamp_exposure=false process/size_limit=0 detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=true +editor/convert_colors_with_editor_theme=true diff --git a/Assets/Sprites/Editor/Level.png b/Assets/Sprites/Editor/Level.png deleted file mode 100755 index 269b5126f64d40c8a1ece0b7c3be8d19d9f2b55b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 309 zcmV-50m}Y~P)Px#?@2^KR7i>KSHTLyAPkM82+l9rb+FUEzo$X3{Sqs9aTgtFYeY+^xa}R&sL#B- zNC5~K>%ds&jdea1GuC}_{WRjZ_tS{?S?#gKh5B$7hLWUsqlJjqtl2_PA3}-A($zvM znLMkx1hoXnieXTvxIY14J;AV@;_TN-7THWI z34m-%owKvlb$*HE_E^QVlDj;vSaS)Q5WtUEcB-9$-;{upfC!c>e*M@8XeCAP`p)yG z5J(U@wC)gr%p|O?LZ3~D{|TB9II1@r0Z#NO0Vn$G0Zs|tRziPGy8ZUU00000NkvXX Hu0mjfe)NZP diff --git a/Assets/Sprites/Editor/Level.svg b/Assets/Sprites/Editor/Level.svg new file mode 100644 index 0000000..c544175 --- /dev/null +++ b/Assets/Sprites/Editor/Level.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/Assets/Sprites/Editor/Block.png.import b/Assets/Sprites/Editor/Level.svg.import similarity index 65% rename from Assets/Sprites/Editor/Block.png.import rename to Assets/Sprites/Editor/Level.svg.import index 03d9b98..89b2adc 100644 --- a/Assets/Sprites/Editor/Block.png.import +++ b/Assets/Sprites/Editor/Level.svg.import @@ -2,16 +2,17 @@ importer="texture" type="CompressedTexture2D" -uid="uid://upehd32j3pbs" -path="res://.godot/imported/Block.png-10298cbace42d657003ac7128449152c.ctex" +uid="uid://wfg4ua6pxefd" +path="res://.godot/imported/Level.svg-6e0a9c00f142962bf52132d8335da095.ctex" metadata={ +"has_editor_variant": true, "vram_texture": false } [deps] -source_file="res://Assets/Sprites/Editor/Block.png" -dest_files=["res://.godot/imported/Block.png-10298cbace42d657003ac7128449152c.ctex"] +source_file="res://Assets/Sprites/Editor/Level.svg" +dest_files=["res://.godot/imported/Level.svg-6e0a9c00f142962bf52132d8335da095.ctex"] [params] @@ -38,3 +39,6 @@ process/hdr_as_srgb=false process/hdr_clamp_exposure=false process/size_limit=0 detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=true +editor/convert_colors_with_editor_theme=true diff --git a/Assets/Sprites/Editor/Pipe.png b/Assets/Sprites/Editor/Pipe.png deleted file mode 100755 index 0e4d7130eb3b321d3e6c4b667b2e23911cc766cc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 208 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R}U7jwEArY-_ zr#f;SP~c&Sed%xeTk3peb`_ULM%OeUed!mDZ(bR&HJOE+K54~yp-oGP;iZGfFX2VE zQopTjDf{=;a{l_=?KQeD9i&&u+3+6F`|j_-Y~sLdB5 \ No newline at end of file diff --git a/Assets/Sprites/Editor/Level.png.import b/Assets/Sprites/Editor/Pipe.svg.import similarity index 66% rename from Assets/Sprites/Editor/Level.png.import rename to Assets/Sprites/Editor/Pipe.svg.import index f2bff75..38d0379 100644 --- a/Assets/Sprites/Editor/Level.png.import +++ b/Assets/Sprites/Editor/Pipe.svg.import @@ -2,16 +2,17 @@ importer="texture" type="CompressedTexture2D" -uid="uid://cbgjssscntcin" -path="res://.godot/imported/Level.png-03d869b4cd4d03668741f479f791a499.ctex" +uid="uid://c0xy8swlmsnnw" +path="res://.godot/imported/Pipe.svg-591efe0ac96233e665df1d9b15094e15.ctex" metadata={ +"has_editor_variant": true, "vram_texture": false } [deps] -source_file="res://Assets/Sprites/Editor/Level.png" -dest_files=["res://.godot/imported/Level.png-03d869b4cd4d03668741f479f791a499.ctex"] +source_file="res://Assets/Sprites/Editor/Pipe.svg" +dest_files=["res://.godot/imported/Pipe.svg-591efe0ac96233e665df1d9b15094e15.ctex"] [params] @@ -38,3 +39,6 @@ process/hdr_as_srgb=false process/hdr_clamp_exposure=false process/size_limit=0 detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=true +editor/convert_colors_with_editor_theme=true diff --git a/Scripts/Classes/Blocks/BlockClass.gd b/Scripts/Classes/Blocks/BlockClass.gd index 15efcfe..b35dadf 100644 --- a/Scripts/Classes/Blocks/BlockClass.gd +++ b/Scripts/Classes/Blocks/BlockClass.gd @@ -1,4 +1,4 @@ -@icon("res://Assets/Sprites/Editor/Block.png") +@icon("res://Assets/Sprites/Editor/Block.svg") class_name Block extends AnimatableBody2D signal player_block_hit(player: Player) diff --git a/Scripts/Classes/Entities/Enemy.gd b/Scripts/Classes/Entities/Enemy.gd index 3f40b4f..699ed12 100644 --- a/Scripts/Classes/Entities/Enemy.gd +++ b/Scripts/Classes/Entities/Enemy.gd @@ -1,4 +1,4 @@ -@icon("res://Assets/Sprites/Editor/Enemy.png") +@icon("res://Assets/Sprites/Editor/Enemy.svg") class_name Enemy extends CharacterBody2D diff --git a/Scripts/Classes/Entities/PipeArea.gd b/Scripts/Classes/Entities/PipeArea.gd index 18f73d8..a16d6f7 100644 --- a/Scripts/Classes/Entities/PipeArea.gd +++ b/Scripts/Classes/Entities/PipeArea.gd @@ -1,5 +1,5 @@ @tool -@icon("res://Assets/Sprites/Editor/Pipe.png") +@icon("res://Assets/Sprites/Editor/Pipe.svg") class_name PipeArea extends Node2D diff --git a/Scripts/Classes/LevelClass.gd b/Scripts/Classes/LevelClass.gd index 8751570..1319626 100644 --- a/Scripts/Classes/LevelClass.gd +++ b/Scripts/Classes/LevelClass.gd @@ -1,4 +1,4 @@ -@icon("res://Assets/Sprites/Editor/Level.png") +@icon("res://Assets/Sprites/Editor/Level.svg") class_name Level extends Node From 170f2e3063774d2c2084635b4fc919655cb38f75 Mon Sep 17 00:00:00 2001 From: KirbyKidJ <70983335+KirbyKid256@users.noreply.github.com> Date: Sat, 4 Oct 2025 16:39:18 -0700 Subject: [PATCH 4/6] Smoothened the pipe corners --- Assets/Sprites/Editor/Pipe.svg | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Assets/Sprites/Editor/Pipe.svg b/Assets/Sprites/Editor/Pipe.svg index a9b66a6..7cdc3d7 100644 --- a/Assets/Sprites/Editor/Pipe.svg +++ b/Assets/Sprites/Editor/Pipe.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file From 84a34ff3b915862da7ddc00dd22f8436b6b5f77b Mon Sep 17 00:00:00 2001 From: KirbyKidJ <70983335+KirbyKid256@users.noreply.github.com> Date: Sun, 5 Oct 2025 12:12:39 -0700 Subject: [PATCH 5/6] Miscellaneous Bugfixes From My Multiplayer Branch This is just a bunch of bugfixes I did while I was working on the Multiplayer Support PR. I know I should've kept them separate, but then I'd also be dealing with said bugs. So this PR adds most of the bugfixes I did while working on Multiplayer. - De-globalized Pipe SFX from Pipe Cutscene (helps with lowering audio) - De-globalized 1-up SFX for Players - Removed an error log spam with the `ResourceSetter`s (involving connecting already connected signals) - Made sure to insert "BaseAssets" folder into the FIRST slot in the Resource Packs array. - Replaced `"BaseAssets"` for the above fix with `Godot.ROM_PACK_NAME` - Removed unused `"character"` setting from `SettingsManager` - Reset P-Switch timer when `Global.reset_values()` is called. Fixes bug when pressing a P-Switch and immediately restarting the level. - Added Skid SFX to `AudioManager` - Added slightly longer delay for when pausing with a controller (it can easily unpause before you press the button again) - Null check if LevelBG is in the level or not (for added for test levels) --- Scripts/Classes/Components/ResourceSetter.gd | 4 +--- Scripts/Classes/Components/ResourceSetterNew.gd | 11 ++++++----- Scripts/Classes/Entities/Player.gd | 6 +----- Scripts/Classes/LevelClass.gd | 3 ++- Scripts/Classes/Singletons/AudioManager.gd | 1 + Scripts/Classes/Singletons/Global.gd | 2 ++ Scripts/Classes/Singletons/SettingsManager.gd | 9 ++++----- Scripts/Parts/PipeCutscene.gd | 2 +- Scripts/UI/StoryPause.gd | 5 ++--- 9 files changed, 20 insertions(+), 23 deletions(-) diff --git a/Scripts/Classes/Components/ResourceSetter.gd b/Scripts/Classes/Components/ResourceSetter.gd index 4e02d31..9f27820 100644 --- a/Scripts/Classes/Components/ResourceSetter.gd +++ b/Scripts/Classes/Components/ResourceSetter.gd @@ -11,11 +11,9 @@ signal sprites_updated static var cache := {} -func _enter_tree() -> void: +func _ready() -> void: Global.level_theme_changed.connect(update_sprites) Global.level_time_changed.connect(update_sprites) - -func _ready() -> void: update_sprites() func update_sprites() -> void: diff --git a/Scripts/Classes/Components/ResourceSetterNew.gd b/Scripts/Classes/Components/ResourceSetterNew.gd index 59b86aa..8d48373 100644 --- a/Scripts/Classes/Components/ResourceSetterNew.gd +++ b/Scripts/Classes/Components/ResourceSetterNew.gd @@ -36,17 +36,18 @@ var update_on_spawn := true func _init() -> void: set_process_mode(Node.PROCESS_MODE_ALWAYS) +func _ready() -> void: + Global.level_time_changed.connect(update_resource) + Global.level_theme_changed.connect(update_resource) + func _enter_tree() -> void: safety_check() if update_on_spawn: update_resource() - Global.level_time_changed.connect(update_resource) - Global.level_theme_changed.connect(update_resource) - func safety_check() -> void: - if Settings.file.visuals.resource_packs.has("BaseAssets") == false: - Settings.file.visuals.resource_packs.append("BaseAssets") + if Settings.file.visuals.resource_packs.has(Global.ROM_PACK_NAME) == false: + Settings.file.visuals.resource_packs.insert(Global.ROM_PACK_NAME, 0) func update_resource() -> void: randomize() diff --git a/Scripts/Classes/Entities/Player.gd b/Scripts/Classes/Entities/Player.gd index e50f99b..9ecbcdd 100644 --- a/Scripts/Classes/Entities/Player.gd +++ b/Scripts/Classes/Entities/Player.gd @@ -425,7 +425,7 @@ func add_stomp_combo(award_score := true) -> void: score_note_spawner.spawn_note(10000) else: Global.lives += 1 - AudioManager.play_global_sfx("1_up") + AudioManager.play_sfx("1_up", global_position) score_note_spawner.spawn_one_up_note() else: if award_score: @@ -564,8 +564,6 @@ func die(pit := false) -> void: visible = not pit flight_meter = 0 dead.emit() - Global.p_switch_active = false - Global.p_switch_timer = 0 stop_all_timers() Global.total_deaths += 1 sprite.process_mode = Node.PROCESS_MODE_ALWAYS @@ -804,8 +802,6 @@ func jump() -> void: gravity = JUMP_GRAVITY AudioManager.play_sfx("small_jump" if power_state.hitbox_size == "Small" else "big_jump", global_position) has_jumped = true - await get_tree().physics_frame - has_jumped = true func calculate_jump_height() -> float: # Thanks wye love you xxx return -(JUMP_HEIGHT + JUMP_INCR * int(abs(velocity.x) / 25)) diff --git a/Scripts/Classes/LevelClass.gd b/Scripts/Classes/LevelClass.gd index 8751570..af6d232 100644 --- a/Scripts/Classes/LevelClass.gd +++ b/Scripts/Classes/LevelClass.gd @@ -123,7 +123,8 @@ func update_theme() -> void: Global.level_theme = theme Global.theme_time = theme_time TitleScreen.last_theme = theme - $LevelBG.update_visuals() + if get_node_or_null("LevelBG") != null: + $LevelBG.update_visuals() func update_next_level_info() -> void: next_level = wrap(level_id + 1, 1, 5) diff --git a/Scripts/Classes/Singletons/AudioManager.gd b/Scripts/Classes/Singletons/AudioManager.gd index 07dddc7..6832df8 100644 --- a/Scripts/Classes/Singletons/AudioManager.gd +++ b/Scripts/Classes/Singletons/AudioManager.gd @@ -5,6 +5,7 @@ const DEFAULT_SFX_LIBRARY := { "big_jump": ("res://Assets/Audio/SFX/BigJump.wav"), "coin": ("res://Assets/Audio/SFX/Coin.wav"), "bump": ("res://Assets/Audio/SFX/Bump.wav"), + "skid": ("res://Assets/Audio/SFX/Skid.wav"), "pipe": ("res://Assets/Audio/SFX/Pipe.wav"), "damage": ("res://Assets/Audio/SFX/Damage.wav"), "power_up": ("res://Assets/Audio/SFX/Powerup.wav"), diff --git a/Scripts/Classes/Singletons/Global.gd b/Scripts/Classes/Singletons/Global.gd index 6774fc9..6c1534b 100644 --- a/Scripts/Classes/Singletons/Global.gd +++ b/Scripts/Classes/Singletons/Global.gd @@ -327,6 +327,8 @@ func reset_values() -> void: Level.in_vine_level = false Level.vine_return_level = "" Level.vine_warp_level = "" + p_switch_active = false + p_switch_timer = 0.0 func clear_saved_values() -> void: coins = 0 diff --git a/Scripts/Classes/Singletons/SettingsManager.gd b/Scripts/Classes/Singletons/SettingsManager.gd index 19832dd..c028bdb 100644 --- a/Scripts/Classes/Singletons/SettingsManager.gd +++ b/Scripts/Classes/Singletons/SettingsManager.gd @@ -12,9 +12,9 @@ var file := { "frame_limit" : 0, }, "audio": { - "master": 10.0, - "music": 10.0, - "sfx": 10.0, + "master": 10, + "music": 10, + "sfx": 10, "athletic_bgm": 1, "extra_bgm": 1, "skid_sfx": 1, @@ -24,8 +24,7 @@ var file := { }, "game": { "campaign": "SMB1", - "lang": "en", - "character": "0000" + "lang": "en" }, "keyboard": { diff --git a/Scripts/Parts/PipeCutscene.gd b/Scripts/Parts/PipeCutscene.gd index 5c63e8a..10e4f3a 100644 --- a/Scripts/Parts/PipeCutscene.gd +++ b/Scripts/Parts/PipeCutscene.gd @@ -27,4 +27,4 @@ func go_to_level() -> void: Global.transition_to_scene(LevelTransition.level_to_transition_to) func play_pipe_sfx() -> void: - AudioManager.play_global_sfx("pipe") + AudioManager.play_sfx("pipe", $Player1.global_position) diff --git a/Scripts/UI/StoryPause.gd b/Scripts/UI/StoryPause.gd index 7f2c597..fa9cea5 100644 --- a/Scripts/UI/StoryPause.gd +++ b/Scripts/UI/StoryPause.gd @@ -48,7 +48,7 @@ func open() -> void: AudioManager.play_global_sfx("pause") get_tree().paused = true show() - await get_tree().physics_frame + await get_tree().create_timer(0.1).timeout active = true func close() -> void: @@ -56,7 +56,6 @@ func close() -> void: selected_index = 0 hide() closed.emit() - for i in 2: - await get_tree().physics_frame + await get_tree().create_timer(0.1).timeout Global.game_paused = false get_tree().paused = false From 3a498717e562f72e37f7cfe0aed832adf99be443 Mon Sep 17 00:00:00 2001 From: guzlad Date: Mon, 6 Oct 2025 16:51:36 +0200 Subject: [PATCH 6/6] Fixed custom character fall anims not playing --- Scripts/Classes/States/Player/Normal.gd | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Scripts/Classes/States/Player/Normal.gd b/Scripts/Classes/States/Player/Normal.gd index 029ad88..966e3bd 100644 --- a/Scripts/Classes/States/Player/Normal.gd +++ b/Scripts/Classes/States/Player/Normal.gd @@ -268,8 +268,9 @@ func get_animation_name() -> String: return "StarFall" return "JumpFall" else: - player.sprite.speed_scale = 0 - player.sprite.frame = walk_frame + # guzlad: Fixes characters with fall anims not playing them, but also prevents old characters without that anim not being accurate + if !player.sprite.sprite_frames.has_animation("Fall"): + player.sprite.frame = walk_frame return "Fall" func exit() -> void: