359 Commits over 304 Days - 0.05cph!
Campfire starts with fuel. Automatically delete corpses if they've been fully looted, otherwise after 10 minutes
Beds, respawns, everything is broken (persistence needs some fixes)
Fix players colliding with "passplayers" stuff and added plant fiber pickups
Fix cooking start/stop button effects
Lerp local eye position when ducking
Remove dependency on BaseCarriable
Fix issues with last active child (for now, look into why it doesn't behave the same anymore?)
Clear events and tags before simulate
Completely remove reliance on Sandbox.Player (obsolete) and PawnController/BasePlayerController (obsolete)
Fixed some sounds which became unknown for some reason
Various placeholder sounds, fixes + deployment / structure placement validation
Disable player viewer / peek by default for now
Change tags again, remove redundant collision pairs
Updated tags on all entities
Silently fail when task is cancelled in ChatboxEntry.OnParametersSet
Add white_circle.png and use scale to improve timed action display
Move shader location + code style changes
Load and save to map name
Change unable to load save to a warning
Icon tweaks, fix NRE and tweak structure costs
Additional icons plus items automatically remove themselves when they have StackSize <= 0
Only hover over entities with the hover tag. Added Single Door. Added recipe for Single Door. Can open and close doors. Pawns can become inactive when their client disconnects. Become active again if they re-connect. Radial menu fixes. Manually choose which structures show in the selector. Nametag shows a different color for inactive pawns.
Have Structure implement IPersistent and implement a system to have persistent ids
Added support for entities tagged with IPersistent (that are not players) to serialize/deserialize
Moved serialization stuff into ForsakenPlayer.Serialization and add crafting queue serialization/deserialization
When reading an item entity and its world entity is no longer valid, remove it if we are the server
Started work on binary serialization. When reading an inventory container server-side make sure to tell clients about changes to it
Immediately hide the plus more icon
Increase the burn interval of the campfire to 5 seconds for 1 wood
Finish Timed Action system and UI. Improved pickup system and added Stone and Metal pickups.
Make LootSpawner abstract. Added GenericLootSpawner hammer entity and updated Military Crate.
Adjust some stack sizes and show how long an item has left to finish crafting
Only switch to the secondary cursor view if there are secondary actions
Added slot numbers to the Hotbar
Added resource pickups + pickup spawners + timed actions (WIP)
Added a Campfire crafting recipe
Added Raw Meat and Cooked Meat and updated Campfire to support the CookingProcessor.
Added consumable effect application (with instant or over time)
Added ConsumableResource and ConsumableType and ConsumableEffect. Update ConsumableItem to use it. Add a test Tuna Can item. Added Calories and Hydration and update them over time based on what the player is doing and their temperature.
Network PlayerName on PlayerCorpse for the client-side context action
Refactored BaseClothing -> ArmorEntity. Fixed a bug where giving an item to a container wouldn't remove it from its previous container. Added an inventory to player corpses. Transfer a player's entire inventory to their corpse.
If an item is an ArmorItem try to move it to the Equipment first when transferring. Make FindFreeSlot support passing in an InventoryItem instance to test for and add InventoryContainer.CouldTakeAny.