From 3bb11a00c4f46702f52f837cc69f0859a1bd73ff Mon Sep 17 00:00:00 2001 From: Marisa Kirisame Date: Tue, 29 Jun 2021 18:16:35 +0200 Subject: [PATCH] Recoil FOV bump is now configurable. --- cvarinfo.txt | 1 + language.def_menu | 2 ++ language.es_menu | 4 +++- language.version | 4 ++-- menudef.txt | 1 + readme.txt | 2 +- zscript/swwm_player.zsc | 5 ++++- 7 files changed, 14 insertions(+), 5 deletions(-) diff --git a/cvarinfo.txt b/cvarinfo.txt index 8cebd188d..60c7905e7 100644 --- a/cvarinfo.txt +++ b/cvarinfo.txt @@ -112,6 +112,7 @@ server bool swwm_meleepickup = false; // allow picking up items through melee nosave bool swwm_buttsfx = true; // buttslam homerun SFX nosave int swwm_sewercount = 0; // I'm sorry Civvie server bool swwm_ondemandammo = false; // don't spawn ammo for unavailable weapons +user float swwm_bumpstrength = 1.0; // intensity of fov bumping // 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 3fe3a7f90..49b28cebe 100644 --- a/language.def_menu +++ b/language.def_menu @@ -192,6 +192,7 @@ SWWM_USETOPICKUP = "Exclusive Use To Pickup"; SWWM_MELEEPICKUP = "Allow Item Pickup Through Melee"; SWWM_BUTTSFX = "Clapping Buttcheeks"; SWWM_ONDEMANDAMMO = "On Demand Ammo Placement"; +SWWM_BUMP = "FOV Bump Strength"; SWWM_MMTITLE = "Minimap Settings"; SWWM_MM_ENABLE = "Show Minimap"; SWWM_MM_ROTATE = "Rotate Minimap"; @@ -332,6 +333,7 @@ TOOLTIP_SWWM_USETOPICKUP = "Prevents picking up mod items through touch, exclusi TOOLTIP_SWWM_MELEEPICKUP = "Allows picking up items though melee attacks. Do note that some weapons have an extended melee range, allowing you to grab things from farther away."; TOOLTIP_SWWM_BUTTSFX = "The Demolitionist's buttcheeks will VERY AUDIBLY clap upon executing a successful buttslam."; TOOLTIP_SWWM_ONDEMANDAMMO = "Only ammo for weapons that are currently available (either in the player's inventory or in the map) will spawn in the map. May cause long load times on large maps."; +TOOLTIP_SWWM_BUMPSTRENGTH = "Controls how strong the bumping of the FOV is from weapon recoil and other actions."; TOOLTIP_SWWM_MM_ENABLE = "Displays a minimap under the score counter."; TOOLTIP_SWWM_MM_ROTATE = "Rotates the minimap view."; TOOLTIP_SWWM_MM_GRID = "Shows a 128x128 grid on the minimap."; diff --git a/language.es_menu b/language.es_menu index 413169d6f..765bbfd2b 100644 --- a/language.es_menu +++ b/language.es_menu @@ -39,7 +39,7 @@ SWWM_MUTEINTER = "Comentarios de Interacción"; SWWM_MUTELINERS = "Frases de Inicio de Mapa"; SWWM_MUTEALL = "Todo"; SWWM_OTITLE = "Opciones Visuales"; -SWWM_FLASH = "Intensidad de Destellos en pantalla"; +SWWM_FLASH = "Intensidad de Destellos en Pantalla"; SWWM_HUDMARGIN = "Margen del HUD"; SWWM_MAXMSG = "Mensajes Máximos"; SWWM_MAXMSGBIG = "Mensajes Máximos (extendido)"; @@ -191,6 +191,7 @@ SWWM_USETOPICKUP = "Uso Exclusivo para Recoger"; SWWM_MELEEPICKUP = "Permitir Recoger Ítems con Melé"; SWWM_BUTTSFX = "Azote de Nalgas"; SWWM_ONDEMANDAMMO = "Colocar Munición por Demanda"; +SWWM_BUMP = "Intensidad de Sacudida de FOV"; SWWM_MMTITLE = "Opciones de Minimapa"; SWWM_MM_ENABLE = "Mostrar Minimapa"; SWWM_MM_ROTATE = "Rotar Minimapa"; @@ -331,6 +332,7 @@ TOOLTIP_SWWM_USETOPICKUP = "Evita recoger ítems del mod al tocarlos, en su luga TOOLTIP_SWWM_MELEEPICKUP = "Permite recoger ítems por medio de ataques a melé. Ten en cuenta que algunas armas tienen un rango de melé extendido, permitiéndote alcanzar cosas desde una mayor distancia."; TOOLTIP_SWWM_BUTTSFX = "Las nalgas de la Demolicionista emitiran un azote MUY SONORO al ejecutar exitosamente un golpe de culo."; TOOLTIP_SWWM_ONDEMANDAMMO = "Solo coloca en el mapa munición para armas que estén actualmente disponibles (tanto en el inventario del jugador como en el mapa). Puede causar tiempos de carga largos en mapas grandes."; +TOOLTIP_SWWM_BUMPSTRENGTH = "Controla lo intensa que es la sacudida del FOV por el retroceso de armas y otras acciones."; TOOLTIP_SWWM_MM_ENABLE = "Muestra un minimapa bajo el contador de puntuación."; TOOLTIP_SWWM_MM_ROTATE = "Gira la vista del minimapa."; TOOLTIP_SWWM_MM_GRID = "Muestra una cuadrícula de 128x128 en el minimapa."; diff --git a/language.version b/language.version index 17d04fc8a..82d477841 100644 --- a/language.version +++ b/language.version @@ -1,3 +1,3 @@ [default] -SWWM_MODVER="\chSWWM \czGZ\c- \cw0.9.11b-pre r561 \cu(Mon 28 Jun 13:40:06 CEST 2021)\c-"; -SWWM_SHORTVER="\cw0.9.11b-pre r561 \cu(2021-06-28 13:40:06)\c-"; +SWWM_MODVER="\chSWWM \czGZ\c- \cw0.9.11b-pre r562 \cu(Tue 29 Jun 18:16:35 CEST 2021)\c-"; +SWWM_SHORTVER="\cw0.9.11b-pre r562 \cu(2021-06-29 18:16:35)\c-"; diff --git a/menudef.txt b/menudef.txt index f45a1cff5..6f28551b6 100644 --- a/menudef.txt +++ b/menudef.txt @@ -90,6 +90,7 @@ OptionMenu "SWWMOptionMenu" Option "$SWWM_SHADERS", "swwm_shaders", "YesNo" Option "$SWWM_RAGESHADER", "swwm_rageshader", "YesNo" Slider "$SWWM_FLASH", "swwm_flashstrength", 0.0, 1.0, 0.1, 1 + Slider "$SWWM_BUMP", "swwm_bumpstrength", 0.0, 1.0, 0.1, 1 Option "$SWWM_CAMHUD", "swwm_camhud", "YesNo" Option "$SWWM_FORCESTATS", "swwm_forcestats", "SWWMForceStats" Option "$SWWM_UNIQSTATS", "swwm_uniqstats", "YesNo" diff --git a/readme.txt b/readme.txt index 6328df29a..f36caaa0c 100644 --- a/readme.txt +++ b/readme.txt @@ -127,7 +127,7 @@ Coming from Instant Action 3, of all places, here's this thing. Primary fire fires (duh). Secondary fire switches the ammo type for next reload on tap. Holding it and tapping the fire button will unload whatever ammo you have inside, in case you -want to use it on the other slot 3 weapon. +want to use it on the other shotgun weapon. Reload does what you'd expect it to do. This thing may be unwieldy, but boy does it let you use some fun ammo types. diff --git a/zscript/swwm_player.zsc b/zscript/swwm_player.zsc index 60796fcff..02f77f6a2 100644 --- a/zscript/swwm_player.zsc +++ b/zscript/swwm_player.zsc @@ -52,6 +52,7 @@ Class Demolitionist : PlayerPawn transient int bumptic; transient double lastbump; + transient CVar bumpstr; Actor selflight; Actor oldencroached; @@ -684,7 +685,9 @@ Class Demolitionist : PlayerPawn if ( lastbump <= 0. ) lastbump = 1.; if ( lastbump != 1. ) { - player.fov *= lastbump; + if ( !bumpstr ) bumpstr = CVar.GetCVar('swwm_bumpstrength',player); + double str = bumpstr.GetFloat(); + player.fov *= lastbump*str+1.-str; lastbump = 1.; } // adjust fov from dashing