Commit graph

12280 commits

Author SHA1 Message Date
the-real-herowl
ddbc7cd826 Haste and fatigue expanded and improved
* abstracted and refactored some parts of haste and fatigue
* added and exposed new mcl_potions API functions
* fixed haste and fatigue not altering the hand
* mcl_meshhand now calls into mcl_potions when resetting the hand
2024-05-22 21:02:25 +02:00
the-real-herowl
6d7fe91047 Capped fatigue effect on punching
This fixes a crash, too
Also updates toolcaps on gamemode change
2024-05-22 21:02:25 +02:00
the-real-herowl
0c4094596e Improved haste and fatigue effects
* fixed a few crashes related to unusual effect levels
* added haste and fatigue combat functionality
* added some cleanup to avoid hangover unstackable items
* capped the slowdown from fatigue at 5 minutes digging time
* (despite the above, if a tool has a longer time set in definition,
	that still works)
* removed an unused "global" variable
2024-05-22 21:02:25 +02:00
the-real-herowl
1ac81e440c Added haste and fatigue 2024-05-22 21:02:25 +02:00
the-real-herowl
bf82241e82 Added dolphin's grace 2024-05-22 21:02:25 +02:00
the-real-herowl
456d205161 Added strength and weakness effects
* also highest effect level displayed in HUD set to 3000
* also improved indicating effects with strange factors in HUD
2024-05-22 21:02:25 +02:00
the-real-herowl
0e33947258 Renamed some functions and variables
* changed names referring to player where it does support mobs
* also added an is_player() check in one function
2024-05-22 21:02:25 +02:00
the-real-herowl
03c73b7820 Improved descriptions 2024-05-22 21:02:25 +02:00
the-real-herowl
e039642446 Improved nausea 2024-05-22 21:02:25 +02:00
the-real-herowl
b6484a6d15 Added time_override to FOV API
time_override can be used when applying or removing modifiers
2024-05-22 21:02:25 +02:00
the-real-herowl
394b090c83 Improved the darkness effect 2024-05-22 21:02:25 +02:00
the-real-herowl
65b923c43c Added darkness 2024-05-22 21:02:25 +02:00
the-real-herowl
aa4ff1827d Added nausea 2024-05-22 21:02:25 +02:00
the-real-herowl
92a77a7dbb Fixed graphical features of some effects
* loading fixed (by adding on_load)
* absorption bar never reaching end fixed
2024-05-22 21:02:25 +02:00
the-real-herowl
31adc45da9 Added blindness effect
(also improved TT descriptions of some effects)
2024-05-22 21:02:25 +02:00
the-real-herowl
5610fa1c4b Added frost effect 2024-05-22 21:02:25 +02:00
the-real-herowl
3f5cea3046 Added HP hudbar look modifier API
(for now in mcl_potions)
2024-05-22 21:02:25 +02:00
the-real-herowl
a8054e8112 Add hero of the village effect 2024-05-22 21:02:25 +02:00
the-real-herowl
007500613a Added food poisoning and saturation effects 2024-05-22 21:02:24 +02:00
the-real-herowl
fce73ab2bf Added some missing effects and improved API
* added a way to have a damage modifier relying on type instead of flag
* added Slow Falling
* added Levitation
* added Health Boost
* added Absorption
2024-05-22 21:02:24 +02:00
the-real-herowl
08942d3b25 Improved damage mods in effects, resistance effect 2024-05-22 21:02:24 +02:00
the-real-herowl
40580843d5 New effect icons 2024-05-22 21:02:24 +02:00
the-real-herowl
a6c9bc8a01 Improved effects HUD and fixes
* Fixed some effects not being replaced correctly with higher levels
* Implemented an old FIXME (MTE 5.3.0 fixed underlying bug)
* Added a way to obtain an approximate level of effect from factor
* Added effect level to HUD under the icon
* Added effect timer to HUD under the icon
2024-05-22 21:02:24 +02:00
the-real-herowl
209299b791 Improved /effect command return messages
Also improved the name of a variable
2024-05-22 21:02:24 +02:00
the-real-herowl
b84d36b3ff Registered dragon breath and pruned code
* removed old registration code
* added to the API the `nocreative` field
* registered the bottled dragon's breath as an item
2024-05-22 21:02:24 +02:00
the-real-herowl
eac63f93d5 Re-registered potions under new API 2024-05-22 21:02:24 +02:00
the-real-herowl
3663a62374 Added a constant to the API 2024-05-22 21:02:24 +02:00
the-real-herowl
a429a462cd Fixed tipped arrow descriptions 2024-05-22 21:02:24 +02:00
the-real-herowl
5a7a533bf6 Added missing effect descriptions 2024-05-22 21:02:24 +02:00
the-real-herowl
0b1cc6ad57 Fixed splash and lingering potions
* descriptions
* scaling
2024-05-22 21:02:24 +02:00
the-real-herowl
93572d71f2 Added support for varied descriptions 2024-05-22 21:02:24 +02:00
the-real-herowl
7d3e2d3dbc Implemented missing potion registering functionality
* improved support for custom (non-status) effects
* added support for splash potions
* added support for lingering potions
* added support for tipped arrows
* removed the old registration
2024-05-22 21:02:24 +02:00
the-real-herowl
83530b4298 Improved potion descriptions
* added support for effect descriptions
* added descriptions for some effects
* fixed a crash
2024-05-22 21:02:24 +02:00
the-real-herowl
dc35f43bfa Potions registering API fully works with creative 2024-05-22 21:02:24 +02:00
the-real-herowl
a8fcae0f51 Fixed variable definitions ("undeclared global") 2024-05-22 21:02:24 +02:00
the-real-herowl
6d927ab1a1 Creative inventory using new potions API
-creative inventory utilizes the new potions API
-the new fancy tooltips are used there
2024-05-22 21:02:24 +02:00
the-real-herowl
ef2ce7e0d7 Added new potion tooltip handling
-potion tooltips are now utilizing the power of the new API
-potion names change based on metadata
-nothing triggers loading the new tooltips beyond the names for now
2024-05-22 21:02:24 +02:00
the-real-herowl
9383b903ef Added new potions registering API
-added comprehensive potions registering API
-new API registers only drinkable potions for now
-new API is compatible with very complex tooltips
-new API can have multiple effects per potion
-no hardcoding for specific potions in the new API
2024-05-22 21:02:24 +02:00
the-real-herowl
f1e9c3b563 Translatable effect names and cleanup
-added translatable effect names to the API
-made /effect utilize those descriptions
-cleaned up variables/constants to go with further API changes
2024-05-22 21:02:24 +02:00
the-real-herowl
d85e582e8c Arabic-to-Roman converter redo
-rewrote the Arabic-to-Roman number converter
-moved it to mcl_util
2024-05-22 21:02:24 +02:00
the-real-herowl
5827a7638d Reimplemented /effect heal and fixed bugs
-heal subcommand to the /effect reimplemented
-healing_func() from old API standardized, included in new API
-(the last point is due to it being substantially different from others)
-fixed a few bugs, potential crashes
-fixed incorrect withering effect progression
-standardized variable naming
2024-05-22 21:02:24 +02:00
the-real-herowl
d1ca0f23f0 Resolved merge conflict 2024-05-22 21:02:24 +02:00
the-real-herowl
5750284e8f Improved /effect command and fixes
-improved the /effect command, allowing to use effect levels
-fixed a bug in level-to-factor conversions
-renamed effect icons to follow the new convention
2024-05-22 21:02:24 +02:00
the-real-herowl
8477d13c79 General effects API overhaul
- added a `register_effect()` function
- added the withering effect
- registered all the old effects under the new API
- unified effect names
- updated the main effect checker to use the new API
- changed some hardcoded values to support the unified effect naming
- added new namespaced metadata effects strings
- added support for legacy effect player metadata
- potions are still using the old effects API
- added glue between old API calls and the new API
- renamed the effect icons to support the unified effect naming
2024-05-22 21:02:24 +02:00
the-real-herowl
753545d714 Merge pull request 'Rover and Stalker' (#4282) from rover_stalker into master
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4282
2024-05-22 19:01:14 +00:00
the-real-herowl
48e6ffa935 Improved tool tooltips (#4306)
Co-authored-by: Araca <araca.prod@gmail.com>
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4306
2024-05-22 18:55:07 +00:00
teknomunk
bbc20d5f06 Fix undefined global warning when using milk bucket (#4287)
Fix undeclared global variable warning when drinking milk and additional code cleanup.

Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4287
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: teknomunk <teknomunk@protonmail.com>
Co-committed-by: teknomunk <teknomunk@protonmail.com>
2024-05-22 18:45:18 +00:00
the-real-herowl
221800a4be Merge pull request 'Add overhead mob spawning via spherical spawn volume' (#4220) from teknomunk/MineClone2:spherical-farm-spawning into master
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4220
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
2024-05-22 18:40:54 +00:00
teknomunk
0279dde3d0 Limit check to +/- 16 nodes from goal position (maximum 33 nodes, 3 map blocks) 2024-05-22 15:25:38 +00:00
teknomunk
2a014ca79c Change y range calculation to use outer zone distance and not middle to let mobs spawn far away from the player 2024-05-22 15:25:38 +00:00