Decouple Golems from Players and use SpawnMonster for Golem #7665
+154
−188
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Contributes to #543 and supports #7663
In master and vanilla golems are tied to a specific monster id. This monster id corresponds 1:1 to the player id. This is how the relation player<->golem relationship is maintained and that's also why the game reserves the first 4 monster slots for golems (max player count in multiplayer).
This PR changes that by
goalVar3
to maintain the golem<->player relationship (should be 0 in singleplayer saves)SpawnMonster
logic to spawn golems (similar to how monsters are spawned dynamically, see Support dynamically spawned monsters in multiplayer #6890)Additional notes
KillGolem
call inAddGolem
for existing golems (allows better mods).uint8_t
(could be changed later).ReservedMonsterSlotsForGolems
to a lower number (I tested with 2 players and set it to 0 and 1).