branchrust_reboot/main/Trainyard_updatecancel
297 Commits over 61 Days - 0.20cph!
Update the hopper visuals when item amounts change (not just item count)
Force a network sync when output hopper content changes, so the client gets the visual update for the ore mesh (and its collider) right away
Fixed GetPercentFull() not handling fractions correctly (float cast)
Merge Main -> Trainyard Update
Balanced the spawn population values for the new system
At dense spawn populations, engines could fill the sidings before wagons got a chance to spawn. Instead, I've combined all train cars into one population spawner and handled the wagons_per_engine convar via spawn weighting.
Increased the spawn ratio of the unloadable wagons to the other wagon types, and increased wagons per engine from 2 to 3
Added unloadable wagons to the spawn population list
Improved a bunch of things with unloading ore
Show a different interaction if there's a wagon lined up, but it's empty
Allow unloading if the output bin is not empty, but don't allow if it's totally full
Correctly show the ore level on initial load
Fixed some menu interactions with the tower components. Use generic_resizable loot panels. Increased slots to 12.
Adjusted vacuum start delay per discussion with Alex
Merge Main -> Trainyard Update
Code gen for new interaction item
Fixed wagon unloading ending early
Monument Island now collates train tracks (if there are any)
Merge Main -> Trainyard Update
All train engines now have horns (LMB)
Don't allow emptying wagon loot if the output bin isn't empty. Some more refactoring.
Moved the wagon ore loot data into a singleton scriptableobject, and reorganised everything around it. Now the coaling tower and the wagons, and server and client, can share information on the current loot situation with just an integer index and a float for percentage.
The output hopper now sets its material correctly to match the current ore type.
Check the true max loot amount of the wagon's ore type when unloading into the hopper, and make that the hopper's 100% full look
Fixed trains not being able to pass the road crossings at Trainyard. Trainyard S2P. Track spline data regen.
Ore hoper fill animation working. Needs some cleanup
Fixed the stutter at the start of the ore emptying process
Added a start delay for removing ore, allowing the vacuum to lower first
Button animations, sync some more flag data
Coaling tower button setup
A basic editor window to "drive" objects around in the editor scene view
Coaling Tower script rename
Merge Main -> Trainyard Update
RefreshSignalLights on load only on client side
VehicleLight now supports multiple renderers, with potentially a different material index each. Set it up with the locomotive to set lights on the lower LODs. Updated all existing uses of VehicleLight. Some additional file cleanup.
Locomotive lights turn on/off
Fixed unloading point. Signals lights are now functional.
Started to integrate the unloading system with the real coaling tower
Fixed ContainerMaxStackSize being client-side only.
Removed missing prefab from bush_dead
Removed three missing prefabs from the Trainyard "coaling tower" (they all seem to be integrated into the main model now).
Wagons animate ore scale instead of y position
Merge Main -> Trainyard Update