Added special scrolling to menu + fixes (#618)

* Added Special Scrolling to the visuals menu

* Added the actual functionality for special scrolling to work with menu

* Fixed PC-8801 mode if smooth transitions are enabled

* Special scrolling, not-so special translations
This commit is contained in:
guzlad
2025-10-18 01:27:25 +02:00
committed by GitHub
parent e7ad269317
commit b1f6024fa7
19 changed files with 25 additions and 4 deletions

View File

@@ -165,6 +165,10 @@ VISUAL_COLOURFUL_PIPES,"Enables multi-coloured pipes (green by default, if turne
VISUAL_TRANSFORM,"Should the transformation effect on the player, be rainbow, or a simple animation swap?",Transform Style,Style Transfo.,Styl Transformacji,ctиль tpahcфopmaции,Estilo de transformación,Stile trasformazione, ,Style ng Pagtransform,Power-Up-Animationsstil,Dönüşüm Stİlİ,Transformasi Gaya,Estilo de Transformação,へんしんスタイル
VISUAL_TEXT_SHADOWS,,Text Shadows,Ombre Textes,Cieniowany Tekstu,tehь tekcta,Sombras en textos,Ombre testo, ,Anino ng Text,Textschatten,Yazı Gölgelerİ,Bayangan Teks,Sombreamento de Texto,テキストのかげ
VISUAL_TRANSITION_EFFECT,Do we want transitions to be instant? or smooth?,Transition Style,Style de transition,Styl Tranzycji,ctиль пepexoдob,Estilo de transición,Stile transizione, ,Style ng Transition,Übergangsstil,Geçİş Stİlİ,Gaya Transisi,Estilo de Transição,フェード・スタイル
VISUAL_SMBS_SCROLL,Special Scrolling,Special Scrolling,Special Scrolling,Special Scrolling,Special Scrolling,Special Scrolling,Special Scrolling,Special Scrolling,Special Scrolling,Special Scrolling,Special Scrolling,Special Scrolling,Special Scrolling,Special Scrolling
VISUAL_SMBS_SCROLL_OFF,Off,Off,Off,Off,Off,Off,Off,Off,Off,Off,Off,Off,Off,Off
VISUAL_SMBS_SCROLL_X1,Sharp X1,Sharp X1,Sharp X1,Sharp X1,Sharp X1,Sharp X1,Sharp X1,Sharp X1,Sharp X1,Sharp X1,Sharp X1,Sharp X1,Sharp X1,Sharp X1
VISUAL_SMBS_SCROLL_PC8801,PC-8801,PC-8801,PC-8801,PC-8801,PC-8801,PC-8801,PC-8801,PC-8801,PC-8801,PC-8801,PC-8801,PC-8801,PC-8801,PC-8801
VISUAL_PARALLAX_NONE,,None,Aucun,Brak,het,Ninguno,No,,Wala,Kein,Hİç,None,Nenhum,オフ
VISUAL_PARALLAX_BASIC,,Basic,Basique,Podstawowe,ochobhoй,Básico,Basico,,Basic,Standard,Basİt,Dasar,Básico,ひょうじゅん
VISUAL_PARALLAX_DETAIL,,Detailed,Détaillé,Detalowane,Дetaлизиpobahhый,Detallado,Dettagliato,,Detalyado,Detailliert,Detaylı,Detailed,Detalhado,しょうさい
1 description en fr pl ru es it ga fil de tr id pt jp
165 LEVEL_WARPZONE CUTSCENE_CASTLE_PEACH_4 Welcome to Warp Zone! Extra content has been unlocked! Enjoy! Bienvenue dans la zone de téléportation ! Nouveaux contenus débloqués ! Profitez bien ! Witaj w Metrze Rur! Dodatkowe zasoby zostały odblokowane! Powodzenia! Дoбpo пoжaлobatь b bapп ЗohУ! Эkctpa-kohteht paзблokиpobah! beceлиcь! ¡Bienvenido a la Warp Zone! Se ha desbloqueado contenido extra. Que lo disfrutes! Benvenuto nella Warp Zone! è stato aggiunto del contenuto extra! Divertiti! WELCOME TO WARP ZONE! EXTRA CONTENT HAS BEEN UNLOCKED! ENJOY! Welcome sa Warp Zone May access ka na sa ibang content! Enjoy! Willkommen bei der Warp-Zone! Weitere Inhalte sind jetzt verfügbar! Viel Spass! Warp Bölgesİne Hoş Geldİn! Ekstra İçerİk açıldı! İyİ eğlenceler! Selamat datang di Warp Zone! Konten tambahan telah dibuka! Selamat menikmati! Bem-vindo a Warp Zone! Conteúdo extra desbloqueado! Aproveite! ワープゾーンへようこそ! ボーナスコンテンツがあいたよ!たのしんでね!
166 CHALLENGE_MISS CUTSCENE_MARATHON_PEACH_1 Miss… Great run {PLAYER}! Perdu… Belle run {PLAYER}! Zguba… Swietna próba {PLAYER}! Пpomax… xopoший зaбeг {PLAYER}! Perdió… ¡Gran carrera {PLAYER}! Peccato… Bella run {PLAYER}! MISS… GREAT RUN {PLAYER}! Ayun lang… Mahusay {PLAYER}! Verloren… Sehr gut, {PLAYER}! Kaybettİn… İyİ koşu, {PLAYER}! Gagal… Lari yang hebat {PLAYER}! Perdeu... Ótima rodada {PLAYER}! ミス... よくやった、{PLAYER}!
167 CHALLENGE_DIALOGUE_RESULTS CUTSCENE_MARATHON_PEACH_2 Dialogue is what toad says, when telling you your final results on the challenge hunt Your Results Your time was: {TIME} Résultats Finaux Tu as mis: {TIME} Twoje Rezultaty Twój czas to: {TIME} tboи peзУльtatы tboё bpemя: {TIME} Tus resultados Tu tiempo fue: {TIME} I tuoi risultati Il tuo tempo è: {TIME} YOUR RESULTS YOUR TIME WAS: {TIME} Iyong resulta Ang oras mo ay: {TIME} End- ergebnis Deine Zeit ist: {TIME} Sonuçların Senİn zamanın: {TİME} Hasil Anda Waktu Anda adalah: {TIME} Seus Resultados Seu tempo foi: {TIME} けっか タイム:{TIME}
168 CUTSCENE_MARATHON_PEACH_3 That's a new best! Great job! C'est un nouveau record ! Bien joué ! To nowy rekord! Dobra robota! hobый pekopд! Пoздpabляю! ¡Esa es una nueva mejor marca! ¡Buen trabajo! Questo è un nuovo record! Bel lavoro! THAT'S A NEW BEST! GREAT JOB! Bagong record! Yehey! Dies ist ein neuer Rekord! Glückwunsch! Bu yenİ bİr rekor! Harİka İş! Itu rekor baru! Kerja bagus! Esse foi um novo recorde! Parabéns! きろくこうしん!おめでとう!
169 LEVEL_WARPZONE Welcome to Warp Zone! Bienvenue dans la zone de téléportation ! Witaj w Metrze Rur! Дoбpo пoжaлobatь b bapп ЗohУ! ¡Bienvenido a la Warp Zone! Benvenuto nella Warp Zone! WELCOME TO WARP ZONE! Welcome sa Warp Zone Willkommen bei der Warp-Zone! Warp Bölgesİne Hoş Geldİn! Selamat datang di Warp Zone! Bem-vindo a Warp Zone! ワープゾーンへようこそ!
170 CHALLENGE_MISS Miss… Perdu… Zguba… Пpomax… Perdió… Peccato… MISS… Ayun lang… Verloren… Kaybettİn… Gagal… Perdeu... ミス...
171 CHALLENGE_DIALOGUE_RESULTS Dialogue is what toad says, when telling you your final results on the challenge hunt Your Results Résultats Finaux Twoje Rezultaty tboи peзУльtatы Tus resultados I tuoi risultati YOUR RESULTS Iyong resulta End- ergebnis Sonuçların Hasil Anda Seus Resultados けっか
172 CHALLENGE_DIALOGUE_SCORE Score Score Wynik oчkи Puntuación Punteggio SCORE Score Punkte Skor Skor Pontuação ポイント
173 CHALLENGE_DIALOGUE_COINS Coins Pièces Monety mohetы Monedas Monete COINS Coins Münzen Altınlar Koin Moedas コイン
174 CHALLENGE_DIALOGUE_EXIT Press jump to continue. Appuyez pour quitter Naciśnij aby wyjść haжmиte любУю khoпkУ. Pulse Saltar para continuar. Schiaccia il pulsante "salta" per uscire. PRESS JUMP TO CONTINUE. Pinduntin ang Jump button para umalis Zum Beenden springen. Çıkmak İçİn zıpla. Tekan lompat untuk keluar. Pressione pular para continuar. 「ジャンプ」を おして ぞっこう

View File

@@ -447,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"), NodePath("ExtraParticles")]
options = [NodePath("ParallaxStyle"), NodePath("BGParticles"), NodePath("HUDStyle"), NodePath("RainbowEffect"), NodePath("TransformationEffect"), NodePath("TextShadows"), NodePath("BridgeDestructionAnimation"), NodePath("VisibleTimers"), NodePath("TransitionAnimation"), NodePath("SpecialScrollingMode"), NodePath("ColourfulPipes"), NodePath("FirebarStyle"), NodePath("ExtraParticles")]
[node name="Control" type="Control" parent="PanelContainer/MarginContainer/VBoxContainer/Visuals"]
custom_minimum_size = Vector2(0, 4)
@@ -516,6 +516,13 @@ title = "VISUAL_TRANSITION_EFFECT"
values = ["VISUAL_TRANSITION_CLASSIC", "VISUAL_TRANSITION_SMOOTH"]
settings_category = "visuals"
[node name="SpecialScrollingMode" parent="PanelContainer/MarginContainer/VBoxContainer/Visuals" groups=["Options"] instance=ExtResource("3_dl6kk")]
layout_mode = 2
option_key = "smbs_scroll"
title = "VISUAL_SMBS_SCROLL"
values = ["VISUAL_SMBS_SCROLL_OFF", "VISUAL_SMBS_SCROLL_X1", "VISUAL_SMBS_SCROLL_PC8801"]
settings_category = "visuals"
[node name="ColourfulPipes" parent="PanelContainer/MarginContainer/VBoxContainer/Visuals" groups=["Options"] instance=ExtResource("3_dl6kk")]
layout_mode = 2
option_key = "colour_pipes"
@@ -1013,6 +1020,7 @@ script = ExtResource("19_k6yev")
[connection signal="value_changed" from="PanelContainer/MarginContainer/VBoxContainer/Visuals/BridgeDestructionAnimation" to="PanelContainer/MarginContainer/VBoxContainer/Visuals/VisualsSetter" method="bridge_changed"]
[connection signal="value_changed" from="PanelContainer/MarginContainer/VBoxContainer/Visuals/VisibleTimers" to="PanelContainer/MarginContainer/VBoxContainer/Visuals/VisualsSetter" method="visible_timers_changed"]
[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/SpecialScrollingMode" to="PanelContainer/MarginContainer/VBoxContainer/Visuals/VisualsSetter" method="smbs_scroll_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"]

View File

@@ -68,6 +68,7 @@ var file := {
"bridge_animation": 0,
"visible_timers": 0,
"transition_animation": 0,
"smbs_scroll": 0,
"colour_pipes": 1,
"firebar_style": 0,
"extra_particles": 0

View File

@@ -26,8 +26,9 @@ const SCROLL_DIFFERENCE := 48.0
var can_diff := true
# guzlad: old Special scrolling variables kept for reference purposes
static var sp_screen_scroll := false
static var sp_scroll_style := 1
#static var sp_scroll_style := 1
var sp_scrolling := false
@@ -35,6 +36,7 @@ func _exit_tree() -> void:
cam_locked = false
func _physics_process(delta: float) -> void:
sp_screen_scroll = Settings.file.visuals.smbs_scroll > 0
handle_camera(delta)
last_position = global_position
@@ -127,11 +129,13 @@ func do_sp_scroll(direction := 1) -> void:
process_mode = Node.PROCESS_MODE_ALWAYS
get_tree().paused = true
var distance = get_viewport().get_visible_rect().size.x - 32
if sp_scroll_style == 0:
if Settings.file.visuals.smbs_scroll == 1: #Sharp X1 (smooth)
var tween = create_tween()
tween.tween_property(self, "camera_position:x", camera_position.x + (distance * direction), 1)
await tween.finished
else:
else: #PC-8801 (black screen)
if Settings.file.visuals.transition_animation:
Global.get_node("Transition").get_node("TransitionBlock").modulate.a = 1
Global.get_node("Transition").show()
await get_tree().create_timer(0.5).timeout
camera_position.x += distance * direction

View File

@@ -41,6 +41,9 @@ func resource_pack_loaded(new_value := []) -> void:
func colourful_pipes_changed(new_value := 0) -> void:
Settings.file.visuals.colour_pipes = new_value
func smbs_scroll_changed(new_value := 0) -> void:
Settings.file.visuals.smbs_scroll = new_value
func visible_timers_changed(new_value := 0) -> void:
Settings.file.visuals.visible_timers = new_value
@@ -69,6 +72,7 @@ func set_value(value_name := "", value = null) -> void:
"resource_packs": resource_pack_loaded,
"bridge_animation": bridge_changed,
"transition_animation": transform_style_changed,
"smbs_scroll": smbs_scroll_changed,
"colour_pipes": colourful_pipes_changed,
"firebar_style": firebar_style_changed,
"extra_particles": extra_particles