Commit graph

418 commits

Author SHA1 Message Date
iliekprogrammar
bf80074d98
[5.6][mobs] fix unsafe entity handling (unsure)
i'm not sure about this one, can't find a suitable test for it.
2022-08-07 12:38:26 +08:00
iliekprogrammar
221ee0fcf1
[5.6] mark places with unsafe set_hp entity handling
There might be other places i might be missing, but these are the obvious ones.

leftover entity handling i did not mark:
* everything that involves a apply()-like algorithm (e.g. callbacks) over the
  same list of objects.
* in mcl_damage, it's not known whether mcl_damage.from_mt() would involve
  entity handling or just player handling.
2022-08-07 00:13:03 +08:00
cora
51f79eaa39 Add lilypads and dead bushes 2022-08-02 12:02:20 +02:00
cora
94f0d679f2 Add can_spawn callback in mob api 2022-07-22 03:27:41 +02:00
cora
32ac2ffeb8 remove unused alias_mob function 2022-07-22 03:27:41 +02:00
Sumyjkl
68e1fdde36 fixed comment about creative 2022-07-22 03:27:41 +02:00
Sumyjkl
fbfc53ff42 eat sound will play even when feeding in creative 2022-07-22 03:27:41 +02:00
Sumyjkl
3852c0297f changed API to recognise sitting order, added animations for sitting and idle, dog will no longer walk around while in sit mode 2022-07-22 03:27:41 +02:00
cora
b7a0460b15 Reset aggro when player far 2022-07-22 03:27:41 +02:00
SumianVoice
cfb6b6003c Update api.lua 2022-07-22 03:27:41 +02:00
SumianVoice
a6eae1e95e don't tame baby animals yet 2022-07-22 03:27:41 +02:00
SumianVoice
682b61ad4a make sure you can't heal and tame at the same time 2022-07-22 03:27:41 +02:00
SumianVoice
524da8a6cb move heal under tame so that you can tame an animal and then heal it, like in MC 2022-07-22 03:27:41 +02:00
SumianVoice
e6a97031ef remove unnecessary check 2022-07-22 03:27:41 +02:00
SumianVoice
120b096fc8 move self.food check 2022-07-22 03:27:41 +02:00
SumianVoice
9d52fed357 non-tamable mobs will not send tame param to feed_tame func,
changed event flow so it tries in order: heal, tame, breed, grow child
2022-07-22 03:27:41 +02:00
SumianVoice
e5c1da4380 make it check not child, since the return statement was removed 2022-07-22 03:27:41 +02:00
SumianVoice
a07a5b24bd animals don't take food from player unless it is used for something 2022-07-22 03:27:41 +02:00
SumianVoice
c626c977d1 Update api.lua 2022-07-22 03:27:41 +02:00
cora
bf756403a3 Fix animals attacking players for no reason 2022-07-18 00:10:23 +00:00
cora
99037cb0ec adapt several mob spawning conditions to mc 2022-07-18 00:10:23 +00:00
cora
1087d9e54b Implement mc like mob cap 2022-07-18 00:10:23 +00:00
cora
2d3f4531c9 Add mob spawning debug command 2022-07-18 00:10:23 +00:00
cora
987ae3c6e8 Fix mobs spawning inside nodes 2022-07-18 00:10:23 +00:00
cora
3a32e4e4e9 Never spawn mobs on bedrock 2022-07-18 00:10:23 +00:00
cora
a68343b71d Add group spawning minimum attribute 2022-07-18 00:10:23 +00:00
cora
a077e4535f Fix non-monsters being unable to attack
A check in the relevant function excluded all non-monsters from
looking for targets to attack. This removes that check and relies
on the passive attribute of the entity
2022-07-18 00:10:23 +00:00
cora
ee9cc5341b Fix villager crash when opening iron doors 2022-07-15 22:11:07 +00:00
cora
aab3180269 clear empty nametag as well as nil 2022-07-15 04:40:12 +02:00
cora
9e60d24fe0 Never spawn mobs on leaves 2022-07-13 16:45:41 +02:00
cora
c1686923d3 Fix crash when no group spawning positions found 2022-07-11 22:31:35 +02:00
cora
f202ed8327 spawn in groups 2022-07-09 02:30:48 +02:00
cora
ae0eb85ffc Add salmon, cod and dolphin from mcl5 2022-07-09 02:30:48 +02:00
cora
de9056ae62 Fix child mobs collision boxes 2022-07-08 23:57:02 +02:00
cora
08a1ecd879 Don't take extra bread when feeding 2022-07-08 23:57:02 +02:00
cora
672b9dbedf make pathfinding to jobsite more smooth 2022-07-05 23:47:30 +02:00
cora
b1c97a0510 prevent ground squids, variable spawn height 2022-07-04 01:41:45 +02:00
cora
8efbd89b6a Add basalt columns & lava pools 2022-06-19 00:24:52 +02:00
cora
e630ea59c9 Rate limit pathfinding attempts
In certain situation it otherwise results in excessive attempts to
find a path.
2022-06-17 15:54:53 +02:00
cora
8651e3b04e randomize spawning list 2022-06-15 05:06:31 +02:00
cora
a43627e268 Fix 2 wrong variable uses that made warnings 2022-06-12 01:35:27 +00:00
MysticTempest
45ec876167 Knockback fixes:
This PR enables knockback for snowballs, and eggs.
And disables knockback for the following mobs: Shulkers, Iron Golems,
and Ender Dragons.
2022-06-07 02:55:19 -05:00
cora
86bc398a79 don't do flying animation while perching,fix anims 2022-05-28 00:05:04 +02:00
cora
47fa43825c count only mobs for cramming 2022-05-26 14:20:19 +02:00
cora
af7dc0fb8f change "constant" declaration to match mcl_mobs 2022-05-26 14:16:38 +02:00
cora
87f50d6423 entity cramming: clean up check logic 2022-05-26 14:16:38 +02:00
cora
fb4f21cba0 entity cramming: spare the children 2022-05-26 14:16:38 +02:00
cora
85b599edba entity cramming: check less often 2022-05-26 14:16:38 +02:00
cora
b4cbc528a3 mcl_mobs: add entity_cramming 2022-05-26 14:16:38 +02:00
Elias Fleckenstein
f6a40ffb78
Run tools/strip_trailing_whitespace.sh 2022-05-26 07:29:28 +02:00
Elias Fleckenstein
ff33794487 Rename mobs global to mcl_mobs 2022-05-25 23:13:33 +02:00
Elias Fleckenstein
e0f70b54ec Remove _cmi_is_mob 2022-05-25 23:13:33 +02:00
Elias Fleckenstein
4054f05a4c Remove support for invisibility mod 2022-05-25 23:13:33 +02:00
Elias Fleckenstein
f6be8bac5a Remove checks for MCL2 mods 2022-05-25 23:13:33 +02:00
Elias Fleckenstein
8db9e76529 Remove unused version field 2022-05-25 23:13:33 +02:00
Elias Fleckenstein
6ae722a6ee Remove use_cmi 2022-05-25 23:13:33 +02:00
Elias Fleckenstein
fc3992ceb6 Remove mobs.is_creative 2022-05-25 23:13:33 +02:00
cora
5dafeaadc6 Fix indentation in mcl_mobs/api.txt 2022-05-21 12:36:57 +02:00
cora
53df441c1b Don't pick up near player, add more breeding stuff 2022-05-21 12:36:57 +02:00
cora
db865ede56 villagers open doors in daytime and close at night 2022-05-21 12:36:57 +02:00
cora
67939f7b7a pathfinding: find doors close to target as well 2022-05-21 12:36:57 +02:00
cora
9ccbf91706 mobs api: document api additions 2022-05-21 12:36:57 +02:00
cora
dfb74cf9e9 mobs: add nofollow option so v. dont follow bread 2022-05-21 12:36:57 +02:00
cora
e6b65af3b4 add mobs item pickup 2022-05-21 12:36:57 +02:00
cora
4ac41a793e fix two crashes in pathfinding 2022-05-21 12:36:57 +02:00
cora
98231f15ae change function name go_wplist -> gopath 2022-05-21 12:36:57 +02:00
cora
f8fc111b4a pathfind to jobsites 2022-05-21 12:36:57 +02:00
cora
dbc5564d02 move movement code to mcl_mobs 2022-05-21 12:36:57 +02:00
cora
5282a63bcb add options for nametagged mobs and range 2022-05-15 20:04:09 +00:00
cora
e5de4bba65 keep nametagged mobs, add "all" argument 2022-05-15 20:04:09 +00:00
cora
628686ce79 Add a command to safely remove all mob objects 2022-05-15 20:04:09 +00:00
cora
e1ed990f58 sp. farm animals on grass, villagers near beds 2022-05-08 18:50:37 +00:00
kay27
53042b6f48 Adopt mob spawning from mcl5 2022-05-08 18:50:37 +00:00
NO411
e790bf90f4 Make shields work with all mobs 2022-04-09 16:21:22 +02:00
cora
1c9f0c3238 don't spawn mobs on non opaque nodes or leaves
with the preliminary jordanspaning mobs would spawn on trees
and water regularly.
2022-03-22 22:02:15 +01:00
kabou
46ee5aaa59 Fix undefined luaentity crash.
* Add nil check to get_luaentity() access.
* Cache get_luaentity() call in local var.
2022-03-21 01:39:02 +00:00
kabou
11ee1d133f Fix cut-n-paste error.
* Swap misplaced lines.
* Concatenate conditional expression.
2022-03-09 18:26:51 +01:00
kabou
9bac0da01a Fix registered_items oddity and add check for unknown nodes.
* Mobs redo uses `registered_items[]` where clearly the proper table
  accessed should be `registered_nodes[]`.  Perhaps this magically
  works, but it looks nonsensical.  Switch to the use the more
  sensible `registered_nodes[]` table.
* Check if node has a definition table before attempting to evaluate its
  attributes.
* Define local variable to cache multiple accesses to `registered_nodes[]`
  and improve readability.
2022-03-09 13:11:53 +01:00
cora
3feca330c9 fix the other 2 throw_xp occurences 2022-02-25 00:40:26 +00:00
cora
435b5d756d throw_experience->throw_xp (api change) 2022-02-25 00:40:26 +00:00
cora
2bb416765c revert to old mobs ( 32c03dc27e )
This reverts the hierarchies ENTITIES/mcl_mobs, ENTITIES/mobs_mc
and ENTITIES/mobs_mc_gameconfig to the state of commit
32c03dc27e
2022-02-25 00:40:26 +00:00
Emojigit
b02f7cd974 mcl_mobs 2022-02-23 23:58:05 +01:00
Elias Fleckenstein
8f9f5cc936
Merge branch 'master' into xp 2021-11-03 20:14:08 +01:00
Elias Fleckenstein
a4e73886d5
Rework XP API 2021-11-03 19:36:57 +01:00
Artem Arbatsky
db696d0e2b
Add missing call for on_die function 2021-11-03 10:11:06 +08:00
kay27
c6b662ce7a [mcl_mobs/api] Add mob flow code from Crafter 2021-06-22 05:10:45 +04:00
kay27
586c18b00f [mcl_mobs/api] Continue float function on acceleration.y equals zero 2021-06-22 03:15:39 +04:00
marcin-serwin
cbe8583cef Merge branch 'master' into polish-translation 2021-06-02 10:14:25 +00:00
AFCMS
cd33d406b2 fix many codestyle issues (functions, strings, modpaths) 2021-05-29 16:12:33 +02:00
AFCMS
b8782d0af1 rename API doc file properly 2021-05-27 11:30:43 +02:00
AFCMS
9e074af07f unify code style [1] 2021-05-25 12:52:25 +02:00
AFCMS
388ab6d8df fix some codestyle issues 2021-05-25 10:56:06 +02:00
AFCMS
79cf98c8e3 [mcl_mobs] fix some warnings 2021-05-25 01:48:14 +02:00
AFCMS
f76b66eec6 [mcl_mobs] fix some warnings (131 remaining!) 2021-05-25 00:37:02 +02:00
cora
66f132a645 fix crash on creeper explosion ( #1755 ) 2021-05-24 12:41:16 +02:00
kay27
9ae1119438 [mcl_mobs] Fix server crash for mobs in unloaded areas, https://git.minetest.land/MineClone2/MineClone2/issues/1703 2021-05-15 03:17:16 +04:00
AFCMS
074e8c8389 remove unused optional depends to lucky_block
lucky_block is mtg mod and never used  at any place in the code
2021-05-11 00:43:17 +02:00
jordan4ibanez
37350e81c9 Stop crashing when mob object is already deleted 2021-05-05 12:52:07 -04:00
Elias Fleckenstein
ae1212be7f Add anon5's fix to prevent get_light crashes 2021-04-30 16:29:45 +02:00
Elias Fleckenstein
fed1410b7f Add set_on_fire to do_env_damage 2021-04-29 12:28:34 +02:00