From e6f0067f3b03fb77e2bf62bb30578a0c3b607002 Mon Sep 17 00:00:00 2001 From: Till Affeldt Date: Sat, 16 May 2020 05:02:01 +0200 Subject: [PATCH] Add feature toggles for movement modifier and hydrating puddles --- abms/puddle.lua | 7 ++++++- ca_effects/speed_buff.lua | 2 ++ init.lua | 22 ++++++++++++---------- settingtypes.txt | 8 +++++++- 4 files changed, 27 insertions(+), 12 deletions(-) diff --git a/abms/puddle.lua b/abms/puddle.lua index abbb9ab..e0e0be3 100644 --- a/abms/puddle.lua +++ b/abms/puddle.lua @@ -26,6 +26,11 @@ local node_box = { fixed = {-0.5, -0.5, -0.5, 0.5, -0.49, 0.5} } +local apply_water_group +if regional_weather.settings.puddles_water then + apply_water_group = 1 +end + for i = 1,VARIANT_COUNT do for flip = 0,1 do local name = BLOCK_PREFIX .. i @@ -54,7 +59,7 @@ for i = 1,VARIANT_COUNT do attached_node = 1, slippery = 1, flora = 1, - water = 1, + water = apply_water_group, weather_puddle = 1 }, drop = "", diff --git a/ca_effects/speed_buff.lua b/ca_effects/speed_buff.lua index 8450898..ec9a2c6 100644 --- a/ca_effects/speed_buff.lua +++ b/ca_effects/speed_buff.lua @@ -4,6 +4,8 @@ Use this effect to modify a player's movement speed. Expects a numeric value that will be multiplied with the current speed physics. ]] +if not regional_weather.settings.player_speed then return end + local EFFECT_NAME = "regional_weather:speed_buff" local function handle_effect(player_data) diff --git a/init.lua b/init.lua index 7ca2076..15df265 100644 --- a/init.lua +++ b/init.lua @@ -15,16 +15,18 @@ end regional_weather = {} regional_weather.settings = {} -regional_weather.settings.snow = get_setting_bool("snow_layers", true) -regional_weather.settings.puddles = get_setting_bool("puddles", true) -regional_weather.settings.soil = get_setting_bool("soil", true) -regional_weather.settings.fire = get_setting_bool("fire", true) -regional_weather.settings.ice = get_setting_bool("ice", true) -regional_weather.settings.pedology = get_setting_bool("pedology", true) -regional_weather.settings.max_height = get_setting_number("max_height", 120) -regional_weather.settings.min_height = get_setting_number("min_height", -50) -regional_weather.settings.cloud_height= get_setting_number("cloud_height", 120) -regional_weather.settings.cloud_scale = get_setting_number("cloud_scale", 40) +regional_weather.settings.player_speed = get_setting_bool("player_speed", true) +regional_weather.settings.snow = get_setting_bool("snow_layers", true) +regional_weather.settings.puddles = get_setting_bool("puddles", true) +regional_weather.settings.puddles_water = get_setting_bool("puddles_water", true) +regional_weather.settings.soil = get_setting_bool("soil", true) +regional_weather.settings.fire = get_setting_bool("fire", true) +regional_weather.settings.ice = get_setting_bool("ice", true) +regional_weather.settings.pedology = get_setting_bool("pedology", true) +regional_weather.settings.max_height = get_setting_number("max_height", 120) +regional_weather.settings.min_height = get_setting_number("min_height", -50) +regional_weather.settings.cloud_height = get_setting_number("cloud_height", 120) +regional_weather.settings.cloud_scale = get_setting_number("cloud_scale", 40) -- warn about clouds being overriden by MTG weather if climate_mod.settings.skybox diff --git a/settingtypes.txt b/settingtypes.txt index 461088e..63e7358 100644 --- a/settingtypes.txt +++ b/settingtypes.txt @@ -1,5 +1,8 @@ [Features] +# If set to true, wind will boost or penalize player movements based on direction. +regional_weather_player_speed (Change movement speed based on wind) bool true + # If set to true, snow layers will stack up during snowy weather. regional_weather_snow_layers (Place snow layers) bool true @@ -10,8 +13,11 @@ regional_weather_ice (Freeze river water) bool true # If set to true, water puddles will form during rain or when snow layers have melted. regional_weather_puddles (Place rain puddles) bool true +# If set to true, puddles will be marked as water and hydrate farmland. +regional_weather_puddles_water (Hydrate farmland near puddles) bool true + # If set to true, rain will cause dry farmland to turn wet. -regional_weather_soil (Hydrate farmland) bool true +regional_weather_soil (Hydrate farmland during rain) bool true # If set to true, fires will be extinguished during rain showers. regional_weather_fire (Extinguish fire) bool true