145 Commits over 792 Days - 0.01cph!
Replaced static fuel_barrel_black objects on large oilrig with yellow and red variants so gameplay remains unchanged. Ran S2P
Caged in fuel_barrel_black objects on small oilrig (1 set of 8, 1 set of 4) and replaced 4 other fuel_barrel_black objects with fuel_barrel_red as they are too visually similar to the diesel barrel pickupables. Ran S2P.
Removed static upright fuel_barrel_black objects from large oilrig as they are too visually similar to the diesel barrel pickupables. Ran S2P.
Reworked pouring so it uses a start and stop RPC. Holding left mouse button will pour (up to) 50ml out of the container every 0.5s (100ml/s), stop holding left mouse button and pouring stops.
Needs bespoke animations and visual effects, something like a continuous stream pouring out when the item is tilted over.
Video: https://files.facepunch.com/jacob/1b1211b1/Unity_0KbTAw2Am2.mp4
Left mouse button when holding a water jug / water bucket now pours (up to) 5% of the container's max amount from its inventory. Still needs animation setup. A gradual pour over time rather than a throw of a smaller amount may be nicer, needs more thinking.
Video: https://files.facepunch.com/jacob/1b1111b1/Unity_Q6cXeVt4NE.mp4
Rearranged logic in OnPrimaryAttackHeld to make that the method that requests pouring
Liquid vessels that could throw out all their contents with left mouse button now require holding ALT at the same time to throw out all contents - making way for left mouse button by itself to gradually pour water
Prevent fall damage sfx playing when in debug.invis
Disabled mip map limits on cannot_see_icon to fix low resolution debug.invis icon overlay when using low graphics settings
Simplify SwapCamera. Removed an orbit camera lock position. Reordered orbit camera lock positions to go to the player first
WIP orbital camera setup. Currently swaps cameras with pressing Q, Tab changes lock target, hold right click and use mouse to move orbit. Needs UI setup
Setup the rest of the player gesture animation buttons. Surrender and the dances don't work right now
Setup more anims:
Viewmodel specific: manualcycle, dryfire, throw, use_self, use_other, use_other_wounded
PlayModel specific: drop_item, pickup_item, drink, victory, wave
Only allow camera movement when the input field is not in focus
TODO comments for later around camera work
Move camera gradually using WASD/leftshift (up)/leftctrl (down)
Clothing is now equipped to the active viewmodel. Makes use of a new editor-only method to apply clothing directly from a list of ItemModWearable rather than using a BasePlayer to look at their equipped clothing. Run this method when equipping items and wearables so the viewmodel is always up to date. (Doesn't work with skins just yet)
Added new FOV slider to the canvas to modify Camera FOV. Setup min/max values respecting regular gameplay FOV bounds. Includes "Field of View" text overlaying the slider
Renamed script in line with scene rename
Setup the existing positonal marker square images in the centre of the canvas so they can be toggled on/off with a new button. Shortcutted with `U`.
Some code cleanup & commenting
Added the scene to SceneLoader so it appears in Editor scenes dropdown menu. Renamed scene to CharacterAnimationAndSkinViewer
Copied legacy script's Camera setup so ironsights ADS, screen shake and animation camera rotations work as expected
Fixed not being able to reselect most recently selected items/wearable after using the clear buttons
Added a clear selected item button (shortcutted with `I`) to unequip the player item, worldmodel and viewmodel
Setup Animations button in the bottom left to open a collapsable scroll view. Works harmoniously with the Items and Wearables select collapsable scroll view - animations button forces collapse of select scroll view, items/wearables button forces collapse of animations scroll view.
Ensure the selected item viewmodel always has the same player skin as the spawned PlayerModel
Fixed editor PlaySoundFirstPerson NRE when there isn't a local player. Added a Sound Manager to this scene so sounds work
Simplified how the scroll view is populated
Code cleanup and reordering
Fixed wearables being removed when selecting a new item
Code setup for new collapsable Items and Wearables selection. Each one is a toggle button that opens a scrollview and populates with items or wearables - replaces the old 2 separate scroll views, creating more screen space. Made the UI bigger. Removed old scrollviews and setup code
Setup new UI layout for tabbed collapsable item and wearable search. Code setup next
Prevent keyboard shortcuts for randomising player seed and clearing wearables being triggered when typing in filter input boxes. Ignore shortcuts when filter input boxes are in focus
Randomising the player seed preserves selected clothing
Player can now be equipped with clothing using the wearableScrollView. Multiple items of clothing can be equipped as long as they are compatible in regular gameplay. Equipping a clothing item that is not compatible with others selected will clear the selected clothing. New button to clear player clothing, shortcut with pressing O
Subtract
127494 - contained unwanted files
Increase UI size so the scene feels better maximised
Now spawning a BasePlayer in the scene rather than just a PlayerModel so we can give items to the player later. Rotation is broken right now
Load all wearables into the UI and setup wearable filtering - mirroring the item setup. Can likely clean this up later.
Setup "Randomise Player Seed" button. Some code cleanup/preparations
Duplicated item's scroll view and filter input to create a scroll view and filter box for wearables
Spawn the PlayerModel on Awake. Rotate 180 degrees to face the camera. Force censorship cubes off and randomise the player seed. Randomise player seed again by pressing P
Cleaned up needsCursor, capslock input, item giving, InitPlayer and capslock scene help text
NRE fix for UIGodOverlay Instance not being initialised yet when saved convars are loaded. Tested in editor.