- Added qol so when an inserter is mined, an item put on the ground by the inserter is also picked up. enabled by default, tested and should work properly.
- inserter drops pickup, fix get_set_alt_on_create typo.
- change Restart command to use server.start_game (offers setting the mod pack).
- Change danger ores and crashsite maps to use the new restart command.
- Turn dump_offline_inventories on by default.
- Reduce corpse_util to storing and removing corpse tags.
- Add death_corpse_tags which handles adding tags for dead players. This prevents dump_offline_inventories from needing a dependency on what is now death_corpse_tags.
- If a player dies with no items, don't create a map tag and remove the corpse.
- Changed the message slightly for dump_offline_inventories to make it consistent with the other corpse messages.
- Removed events.on_player_mined_item from outpost_builder because we don't want to add coins every time they mine and it's duplicated in player_stats.
- Removed events.on_player_mined_item from player_stats because it doesn't tell us what entity the items came from.
- Added coin tracking to events.on_pre_player_mined_item event instead. Checks if the mined item was a chest with coins in it and adds to the player stats if so.
- Tested that coins from trees and rocks still track when market is enabled
- While I was at it, added a pretty coin floating text for when RNG gives coins from mining trees/rocks
When the robot_owner is a spidertron there is no player for the owner and calling the player property would error, now we check that the owner is a character first.
- Players get an increment to entities built when a robot they own builds something
- Players don't get an increment if they placed the blueprint and the base's roboport con bots build the entity OR if another players robots do the building.
- Changed font size and line_to_live slightly on feedback from nibu and diffie
- Added check for if player is dead. Assume that if they're dead they're probably not distracted and will pay attention to chat.
- Removed us of game.get player and replaced with player.name
The biter corpse remover was attempting to be clever about removing corpses and only remove them when they exceeded a certain threshold per chunk. For some reason it is no longer working and I can't figure out why.
So I replaced it with a simpler approach. Now we keep track of the corpses in a queue. When the queue size exceeds the threshold we remove and destroy the oldest corpse.
- Rename biter_kill_counter->entity_died
- Refactor logic in entity_died function to reduce table lookups.
- Fix nil cause bug.
- Fix player_list kills header different size to cells.
- Saves more kill data to Scoreboard
- Displays total kills in score board
- Saves player data to crash site scenario data set
- Added scenario name to data set so that if we later want to add data for danger ores we can filter it out
- Change the loader gui logic to be more conservative about when it deletes the loader frames. Now the layout issue should only happen when the player goes from having no loader recipes unlocked to any or vice versa Which in most cases will only happen once per game.
- Use the player's force rather than the player force for determining whether the recipes are enabled.
- Call draw_loader_frame_for_player when player opens crafting gui instead of on_player_created.
- Check in the button events if the recipe is enabled.
- Draw the frames even if 'loader' recipe is not enabled to allow for the case that only 'fast-loader' or 'express-laoder' is enabled.