From fd2798f6192e97b8fe483392ca918f43c11b065a Mon Sep 17 00:00:00 2001 From: Marisa Kirisame Date: Thu, 14 Apr 2022 22:14:59 +0200 Subject: [PATCH] Add option to skip skill confirmation. Add confirmation prompt for UV. --- cvarinfo.base | 1 + language.def_menu | 5 ++++- language.es_menu | 5 ++++- language.version | 4 ++-- menudef.txt | 1 + zmapinfo.txt | 4 +++- zscript/menu/swwm_menus.zsc | 19 ++++++++++++++++++- 7 files changed, 33 insertions(+), 6 deletions(-) diff --git a/cvarinfo.base b/cvarinfo.base index 110af8acb..910604097 100644 --- a/cvarinfo.base +++ b/cvarinfo.base @@ -122,6 +122,7 @@ nosave noarchive int swwm_profstart = 0; // starts profiling as soon as handler server bool swwm_nodeathexit = false; // completely sidesteps the inventory resetting of death exits, if you hate those server bool swwm_extendedpickup = false; // items will have an additional "virtual hitbox" that's the same size as vanilla nosave bool swwm_voicelog = false; // adds player voicelines to the message log +nosave bool swwm_skipskill = false; // skips skill confirmations // minimap settings nosave bool swwm_mm_enable = true; // show a minimap below the score counter diff --git a/language.def_menu b/language.def_menu index 60e89ec6a..08d410b62 100644 --- a/language.def_menu +++ b/language.def_menu @@ -23,8 +23,9 @@ SWWM_MINIMAPOUT = "Minimap Zoom Out"; SWWM_SKEASY = "\cvJust Blasting\c-"; SWWM_SKNORMAL = "\cdDemolition Day\c-"; SWWM_SKHARD = "\ciMostly Harmful\c-"; +SWWM_SKHARDCONFIRM = "\ciNot your usual Ultra-Violence.\nThings will be slightly tougher.\c-\n\n\cf1.25x monster health & damage\n25% extra aggressiveness\c-\n\n(Press Y to go fight)"; SWWM_SKHARDCORE = "\cgPain Sandwich\c-"; -SWWM_SKHARDCORECONFIRM = "\cgThis is the Nightmare equivalent.\nPrepare to get your ass kicked.\c-\n\n\cfFast monsters\n1.5x monster health & damage\n25% extra aggressiveness\nCheats are disabled\nCoop monsters will spawn\nThe store is disabled\nCan only revive once\c-\n\n(Press Y for a challenge)"; +SWWM_SKHARDCORECONFIRM = "\cgThis is the Nightmare equivalent.\nPrepare to get your ass kicked.\c-\n\n\cfFast monsters\n1.5x monster health & damage\n50% extra aggressiveness\nCheats are disabled\nCoop monsters will spawn\nThe store is disabled\nCan only revive once\c-\n\n(Press Y for a challenge)"; SWWM_SKLUNATIC = "\crDemo Must Die\c-"; SWWM_SKLUNATICCONFIRM = "\crAre you sure you want that?\nYou're gonna have a REAL bad time.\c-\n\n\cfAll changes from \cgPain Sandwich\cf\n+\n2x speedup for all enemy actions\nEnemy projectiles will multiply\nAdditional enemies may spawn\nEnemies react instantly\nEnemies don't flinch\nInfighting is disabled\c-\n\n(Press Y to die instantly)"; // mod menu @@ -209,6 +210,7 @@ SWWM_OLDLOGO = "Old Branding"; SWWM_NODEATHEXIT = "Disable Death Exits"; SWWM_EXTENDEDPICKUP = "Extend Item Size"; SWWM_VOICELOG = "Log Player Comments"; +SWWM_SKIPSKILL = "Skip Skill Confirmation"; SWWM_MMTITLE = "Minimap Settings"; SWWM_MM_ENABLE = "Show Minimap"; SWWM_MM_ROTATE = "Rotate Minimap"; @@ -379,6 +381,7 @@ TOOLTIP_SWWM_OLDLOGO = "For those who miss the days of SWWM GZ, you can restore TOOLTIP_SWWM_NODEATHEXIT = "This option completely negates the effects of death exits, if you don't like losing all your stuff."; TOOLTIP_SWWM_EXTENDEDPICKUP = "Gives all items a vanilla-sized \"virtual hitbox\" that allows picking them up from farther away. Requires a map restart if changed."; TOOLTIP_SWWM_VOICELOG = "Subtitled player comments will be saved to the Messages tab of the Demolitionist Menu."; +TOOLTIP_SWWM_SKIPSKILL = "Skips confirmation of skill selection, if you get tired of seeing it every time."; TOOLTIP_SWWMMINIMAPMENU = "Configure the minimap."; TOOLTIP_SWWMACHIEVEMENTMENU = "View your achievements."; TOOLTIP_SWWM_MM_ENABLE = "Displays a minimap under the score counter."; diff --git a/language.es_menu b/language.es_menu index e262d3abf..b544d7272 100644 --- a/language.es_menu +++ b/language.es_menu @@ -23,8 +23,9 @@ SWWM_MINIMAPOUT = "Alejar Zoom de Minimapa"; SWWM_SKEASY = "\cvSimple Reventamiento\c-"; SWWM_SKNORMAL = "\cdDía De Demolición\c-"; SWWM_SKHARD = "\ciMayormente Dañino\c-"; +SWWM_SKHARDCONFIRM = "\ciNo es la típica Ultra-Violencia.\nLas cosas se pondrán algo más duras.\c-\n\n\cf1.25x salud y daño de monstruos\n25% de agresividad extra\c-\n\n(Pulsa Y para luchar)"; SWWM_SKHARDCORE = "\cgBocata De Dolor\c-"; -SWWM_SKHARDCORECONFIRM = "\cgEsta dificultad equivale a Pesadilla.\nPrepárate para una patada en el culo.\c-\n\n\cfMonstruos rápidos\n1.5x salud y daño de monstruos\n25% de agresividad extra\nTrucos deshabilitados\nMonstruos de cooperativo\nLa tienda está desactivada\nSolo se puede revivir una vez\c-\n\n(Pulsa Y para un desafío)"; +SWWM_SKHARDCORECONFIRM = "\cgEsta dificultad equivale a Pesadilla.\nPrepárate para una patada en el culo.\c-\n\n\cfMonstruos rápidos\n1.5x salud y daño de monstruos\n50% de agresividad extra\nTrucos deshabilitados\nMonstruos de cooperativo\nLa tienda está desactivada\nSolo se puede revivir una vez\c-\n\n(Pulsa Y para un desafío)"; SWWM_SKLUNATIC = "\crDemo Debe Morir\c-"; SWWM_SKLUNATICCONFIRM = "\cr¿Seguro que quieres eso?\nLo vas a pasar MUY mal.\c-\n\n\cfTodos los cambios de \cgBocata De Dolor\cf\n+\nDoble velocidad de enemigos\nProyectiles enemigos duplicados\nPueden aparecer enemigos extra\nReflejos instantáneos de enemigo\nLos enemigos no se estremecen\nLos enemigos no pelean entre si\c-\n\n(Pulsa Y para morir al instante)"; // mod menu @@ -208,6 +209,7 @@ SWWM_OLDLOGO = "Marca Antigua"; SWWM_NODEATHEXIT = "Desactivar Salidas de Muerte"; SWWM_EXTENDEDPICKUP = "Extender Tamaño de Ítem"; SWWM_VOICELOG = "Registrar Comentarios de Jugador"; +SWWM_SKIPSKILL = "Saltar Confirmación de Dificultad"; SWWM_MMTITLE = "Opciones de Minimapa"; SWWM_MM_ENABLE = "Mostrar Minimapa"; SWWM_MM_ROTATE = "Rotar Minimapa"; @@ -383,6 +385,7 @@ TOOLTIP_SWWM_OLDLOGO = "Para quienes echan de menos los viejos tiempos de SWWM G TOOLTIP_SWWM_NODEATHEXIT = "Esta opción invalida completamente los efectos de las salidas de muerte, si no te gusta perder todas tus cosas."; TOOLTIP_SWWM_EXTENDEDPICKUP = "Da a todos los ítems una \"hitbox virtual\" de tamaño vanilla que permite recogerlos a mayor distancia. Requiere reinicio de mapa si se cambia."; TOOLTIP_SWWM_VOICELOG = "Los comentarios de jugador subtitulados se guardarán en la pestaña de Mensajes del Menú de Demolicionista."; +TOOLTIP_SWWM_SKIPSKILL = "Salta la confirmación de selección de dificultad, si te has cansado de verla todo el tiempo."; TOOLTIP_SWWMMINIMAPMENU = "Configura el minimapa."; TOOLTIP_SWWMACHIEVEMENTMENU = "Revisa tus logros."; TOOLTIP_SWWM_MM_ENABLE = "Muestra un minimapa bajo el contador de puntuación."; diff --git a/language.version b/language.version index 37cad5b7e..0deea0198 100644 --- a/language.version +++ b/language.version @@ -1,3 +1,3 @@ [default] -SWWM_MODVER="\cyDEMOLITIONIST \cw1.3pre r29 \cu(Thu 14 Apr 22:14:13 CEST 2022)\c-"; -SWWM_SHORTVER="\cw1.3pre r29 \cu(2022-04-14 22:14:13)\c-"; +SWWM_MODVER="\cyDEMOLITIONIST \cw1.3pre r30 \cu(Thu 14 Apr 22:14:59 CEST 2022)\c-"; +SWWM_SHORTVER="\cw1.3pre r30 \cu(2022-04-14 22:14:59)\c-"; diff --git a/menudef.txt b/menudef.txt index 2fb633680..660715bb0 100644 --- a/menudef.txt +++ b/menudef.txt @@ -110,6 +110,7 @@ OptionMenu "SWWMOptionMenu" Option "$SWWM_REVIVE", "swwm_revive", "YesNo" ScaleSliderFix "$SWWM_REVIVECOOLDOWN", "swwm_revivecooldown", -1, 300, 30, "$SWWM_UNLIMITED", "$SWWM_ONERETRY" Option "$SWWM_MENUPAUSE", "swwm_menupause", "YesNo" + Option "$SWWM_SKIPSKILL", "swwm_skipskill", "YesNo" Option "$SWWM_PRECISECROSSHAIR", "swwm_precisecrosshair", "SWWMYesNoAlways" Option "$SWWM_SELFLIGHT", "swwm_selflight", "YesNo" Submenu "$SWWM_ATITLE", "SWWMAchievementMenu" diff --git a/zmapinfo.txt b/zmapinfo.txt index f15674efd..411b54169 100644 --- a/zmapinfo.txt +++ b/zmapinfo.txt @@ -172,9 +172,11 @@ Skill hard { MonsterHealth = 1.25 DamageFactor = 1.25 + Aggressiveness = 0.25 SpawnFilter = hard ACSReturn = 3 Name = "$SWWM_SKHARD" + MustConfirm = "$SWWM_SKHARDCONFIRM" } Skill hardcore { @@ -182,7 +184,7 @@ Skill hardcore FastMonsters MonsterHealth = 1.5 DamageFactor = 1.5 - Aggressiveness = 0.25 + Aggressiveness = 0.5 SpawnFilter = nightmare SpawnMulti ACSReturn = 4 diff --git a/zscript/menu/swwm_menus.zsc b/zscript/menu/swwm_menus.zsc index cef09ced7..3f7bb9af9 100644 --- a/zscript/menu/swwm_menus.zsc +++ b/zscript/menu/swwm_menus.zsc @@ -786,10 +786,26 @@ Mixin Class SWWMSelector } } +// allow the player to skip skill confirmation message boxes +Mixin Class SWWMSkillConfirmSkippable +{ + override bool Activate() + { + Menu.SetMenu(((mAction=='StartgameConfirm')&&swwm_skipskill)?'Startgame':mAction,mParam); + return true; + } + + override Name, int GetAction() + { + return (((mAction=='StartgameConfirm')&&swwm_skipskill)?'Startgame':mAction),mParam; + } +} + // main menu item with wiggly text when selected and Demo face selectors on both sides -class ListMenuItemSWWMTextItemM : ListMenuItemSelectable +Class ListMenuItemSWWMTextItemM : ListMenuItemSelectable { Mixin SWWMSelector; + Mixin SWWMSkillConfirmSkippable; String mText; Font mFont; @@ -884,6 +900,7 @@ class ListMenuItemSWWMTextItemM : ListMenuItemSelectable Class ListMenuItemSWWMPatchItemM : ListMenuItemSelectable { Mixin SWWMSelector; + Mixin SWWMSkillConfirmSkippable; TextureID mTexture;