Commit graph

2255 commits

Author SHA1 Message Date
kno10
80a6a6efb0 Choose direction vectors uniformly for spawning (#4467)
The previous code was biased towards placing mobs on top or below the
player, because it chose the theta inclination angle uniformly,
but the sphere is more narrow at the top and bottom.

This code is also simpler.

Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4467
Reviewed-by: teknomunk <teknomunk@protonmail.com>
Co-authored-by: kno10 <erich.schubert@gmail.com>
Co-committed-by: kno10 <erich.schubert@gmail.com>
2024-07-31 02:30:29 +02:00
teknomunk
3928e12634 Fix two more crashes, stray space 2024-06-24 03:06:26 +02:00
teknomunk
304550d90c Fix parameter name 2024-06-24 03:06:26 +02:00
teknomunk
0a2336ad82 Handle conversion of mobs that were incorrectly converted 2024-06-24 03:06:26 +02:00
teknomunk
7e0afd7e21 Remove debug logging 2024-06-24 03:06:26 +02:00
teknomunk
15fa925aae More fields to strip 2024-06-24 03:06:26 +02:00
teknomunk
4935f5fdda Add debug logging 2024-06-24 03:06:26 +02:00
teknomunk
41032ec999 Use correct variable name 2024-06-24 03:06:26 +02:00
teknomunk
d64ee18f75 Strip some fields from the mob's staticdata on conversion 2024-06-24 03:06:26 +02:00
teknomunk
1942384fe5 Move object remove after position check 2024-06-24 03:06:26 +02:00
teknomunk
9b50dd6565 Update to use new_object instead of obj 2024-06-24 03:06:26 +02:00
teknomunk
a88951ac6a More safety checks 2024-06-24 03:06:26 +02:00
teknomunk
bc343769ee Add guard to prevent crash when converting old mobs and the minetest fails to create the new entity 2024-06-24 03:06:26 +02:00
the-real-herowl
72435933e4 Add defensive check (#4437)
This fixes #4436 and possible other unnoticed crashes by adding a defensive check.

Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4437
Reviewed-by: Mikita Wiśniewski <rudzik8@protonmail.com>
Co-authored-by: the-real-herowl <wiktor_t-i@proton.me>
Co-committed-by: the-real-herowl <wiktor_t-i@proton.me>
2024-06-15 03:51:03 +02:00
teknomunk
beccbacc73 Fix Stalker texture generation (#4343)
This fixes stalker texture generation when the stalker is standing on a node that uses a texture using a texture modifier.

Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4343
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-06-01 20:23:38 +00:00
teknomunk
ecf12b85cc Fix undefined global warning for variable distance in spawning code (#4348)
Fixes the warning about an undeclared global that occurs the first time a mob attempts to spawn.

Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4348
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-31 09:54:59 +00:00
teknomunk
add9cbe3bc Fix mob spawner crash (#4337)
This fixes #4336 crash at login about mcl_mobspawners. Also adds an API call, `mcl_mobs.register_conversion` for converting one mob into another and updates rovers and stalkers to use this API call.

Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4337
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-30 08:29:12 +00:00
the-real-herowl
2bd24120e9 Stalker texture building fix (#4322)
Added a defensive check for stalker texture building.

Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4322
2024-05-25 11:57:05 +00:00
teknomunk
0a14a74860 Fix crash when converting endermen to rovers (#4318)
Fixes a crash that occurs when automatically converting endermen to rovers.

Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4318
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-24 10:32:19 +00:00
the-real-herowl
a499d292f8 Finish renames (#4314)
Fix crash caused by unfinished renaming in #4282

Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4314
Co-authored-by: the-real-herowl <wiktor_t-i@proton.me>
Co-committed-by: the-real-herowl <wiktor_t-i@proton.me>
2024-05-22 19:18:10 +00:00
the-real-herowl
018814c362 Added a few mobitems
* one droppable from strays
* the rest will get their mobs in a later update
* added alternative ways to get the items
* added recipes for potions that use these items
2024-05-22 21:03:43 +02:00
the-real-herowl
651fb74be1 Fix a crash 2024-05-22 21:03:43 +02:00
the-real-herowl
664993ca75 Fixed mob drops not having proper description 2024-05-22 21:03:43 +02:00
the-real-herowl
d306260c7e Guardian fixes 2024-05-22 21:03:43 +02:00
the-real-herowl
747bf16a94 Migrated mobs to the new effects API 2024-05-22 21:03:43 +02:00
the-real-herowl
e36b7f413b Strays now use frost arrows 2024-05-22 21:03:43 +02:00
the-real-herowl
dc7b1869b7 Move most of the game to the new API 2024-05-22 21:03:43 +02:00
the-real-herowl
63b2da7aa0 Added on_save_effect support for mobs 2024-05-22 21:03:43 +02:00
the-real-herowl
914e3c6c2a Effects persist on loads for mobs too 2024-05-22 21:03:43 +02:00
the-real-herowl
7cd0cfede8 Further (mcl_)luck functionality
* XP from mob breeding impacted by luck
* eye of ender explosion chance impacted by luck
* fishing loot impacted by luck
* melee critical damage impacted by luck
* also fixed 2 scripts marked as "executable"
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
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
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
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
teknomunk
1bc0a0b411 Implement a continuous distribution function using a piecewise linear function for selecting the distance from the player to spawn mobs with, fix crash when no nodes are found under air at the goal position 2024-05-22 15:25:38 +00:00
teknomunk
bd6c8d35c3 Change y_min/y_max calculations 2024-05-22 15:25:38 +00:00
teknomunk
3850fc1a9f Limit y range to the same hemisphere (top/bottom) 2024-05-22 15:25:38 +00:00
teknomunk
74cf14ef0f Close if statement 2024-05-22 15:25:38 +00:00
teknomunk
3a4a8799ea Change mob spawning randomization from polar coordinates to spherical coordinates, move position validation code from find_spawning_position to get_next_mob_spawn_pos, minimize code remaining in find_spawning_position 2024-05-22 15:25:38 +00:00
the-real-herowl
a3f6bc1a6f Rename the files 2024-05-22 14:26:18 +02:00
the-real-herowl
af13bd0635 Stalker may be overloaded, but never charged 2024-05-19 02:49:40 +02:00
the-real-herowl
18af03b99c Animated charged stalker aura 2024-05-12 07:14:28 +02:00
the-real-herowl
22b6c25458 Convert old mob to the new stalker 2024-05-12 06:47:00 +02:00
the-real-herowl
0dcf38094c Stalker rename (partial) 2024-05-12 06:21:37 +02:00
the-real-herowl
970f6cf377 Stalker model and mechanics implemented 2024-05-12 06:02:15 +02:00
the-real-herowl
4b83aaaa77 Renaming throughout docs and comments 2024-05-07 11:38:00 +00:00
the-real-herowl
d826a587da Compatibility conversion 2024-05-05 22:55:25 +02:00
teknomunk
d2a49799ae Change over internal name so that /spawn_mob works 2024-05-05 16:22:19 +00:00