1,056 Commits over 183 Days - 0.24cph!
Fix "Value cannot be null." when ControlWidget cannot be created for property
Disabled the environment camera object
PlacingHud orders by segment count
Rock spawning bug fixes
Store relevant references/information of initial bug setup per-player
Basic BugList UI that shows remaining segments for both players.
Fixed "Hidden" banner styling. Resolves Facepunch/sbox-issues#5746
Fix NRE in UpdateMaterialOffset
DockManager only looks for types with DockAttribute.
Fixes "Inspector" dock not being created if you had another class named "Inspector", ect.
Prevents errors when loading a project that either doesn't have a startup scene set or has their startup scene deleted
Gave a few SpriteComponent properties "Visuals" Category. Removed FlashAmount in favour of FlashTint.
Fixed Opacity not working on Tint Property
Added SpriteFlags, starting with Horizontal Flip and Vertical Flip.
https://files.facepunch.com/CarsonKompon/2024/June/28_21-54-ShockingYearling.mp4
SpriteComponent doesn't draw backface by default. Added Draw Backface SpriteFlag.
https://files.facepunch.com/CarsonKompon/2024/June/28_22-54-InconsequentialBantamrooster.mp4
TextureAtlas.FromSprites orders list by name so order doesnt matter
TextureAtlas.FromSpritesheet re-orders list so order doesn't matter
Change asset.party org
Merge branch 'main' into spritesheet-importer
Add FlashColor and FlashAmount to SpriteComponent
Fixed sprite editor rendering the sprite with flash on
Implement IsLooping on SpriteComponent
BroadcastEvents pass the SpriteComponent as argument
Added OnAnimationComplete action to SpriteComponent
Update README.md
Merge branch 'main' into spritesheet-importer
Console no longer errors when clicking on objects that can't be serialized. Resolves Facepunch/sbox-issues#5737
Disable the game_environment camera
Started HintPanel and added it to game Scene
Lower board pieces a little bit
Cells are created with random rotation
Fix InspectorPanel spacing/height
Change all "dev" resources to their new names with adjusted values
Copied the dev_scene content into the game Scene.
InspectorPanel highlights the current segment in segment list
Update Flat Top description to be more accurate
Add soundscape to game scene
Start with 3 Pebble Smashes instead of 2
Created Prefab and GameResource for Flat Top Weapon
Add HitCount so some rocks can hit multiple bugs/cells
Changed Pebble Splash amount from 4-6 -> 5-6
Start with 2 flat tops instead of 3
Created InspectInput, active during Playing state. Highlights visible segments on hover
Created InspectorPanel. Highlighting a visible bug shows info in a floating panel.
Store segment index. Display missing segments on InspectorPanel
Fix MainHudPanel BuildHash
Healthbar colour changes based on amount
Removing a bug after readying will unready
Cells mark as orange when hit and occupied. Green once empty.
Fling rock SFX
Clear all bugs SFX
Only clear cells in Playing State
Outdoor ambience
Player join SFX
Rock break SFX
Reticle Click/Cancel SFX
Reticle Aiming SFX
Add bug splat particle on death
Set some prefabs to Never Network in snapshot
Damage Number Prefab + Component
SelectedWeapon, defaults to weapon with unlimited shots
Started Pebble Splash weapon. Can change selected weapon from hud now.
Deplete from weapon inventory on use. Can't select weapon with 0 left
Finished PebbleSplash Weapon. Each weapon has its own thrown prefab.
Remove a bunch of debug logs
Update some timings. Segments also linger for a sec before dying if they die in 1 hit
Pebbles no longer destroy each other on collision
Can't ready up until you've placed all bugs
Added StartingHealth to Bug Resource
Segment Healthbars. Fades in after taking damage
Added WeaponHud, only displays when your turn in Playing State
Created Weapon GameResource and starting Rock weapon
Added Icon to Weapon resource
Player WeaponInventory, WeaponHud now has WeaponButtons for each weapon in inv
Segments share a unique ID when from the same bug.
Highlighting occupied cell highlights all of the bug's segments
Right Click to pick up bug in placing phase
Removing bug marks cell(s) as unoccupied
More networking fixes
Create boards in dev_scene
PlacingHud more visually readable and makes more sense
Custom Voice Component that ignores spectators
Bugs become semi-transparent on game start
Added colliders to bug segments
Added Bug Health and Pebble Damage. Segments reveal when damaged
GameHud pulls players from active Boards so we can support spectators
Basic Spectator Support with no UI
Don't allow spectators to select cells
Hit cells highlight red
Cell States are networked properly. Fixed some underlying issues
Show GameHub in Placing *and* Playing states.
Reposition PlacingHud since GameHud draws at the same time now
Added ControlsPanel w InputGlyphs that contextually shows controls
Update GameHud BuildHash
Reset AttackingInput state when disabled
Thrown Pebbles networked properly
Fix camera weirdly looking at last shot position
Fixed ControlsPanel BuildHash
Added Pebble Prefab. Pebble is thrown w/ physics on Fire.
Fix pebble collisions
Camera Follows pebble after thrown
Pebbles destroy on hit or after timer. Break particle on destroy.
Swap to the other players turn after tossing pebble
Added AttackingInput. Enables when your turn in Playing state. Creates reticle at mouse position
Began ReticleState. Can no longer target your own board when attacking.
Added Reticle Aiming with timed X/Y sin movement
BroadcastFire Authority call for finalizing attack
Fix checkerboard pattern since I changed some other stuff 😅
Focus camera on the opponents board when your turn
GameHud Header changes text based on state
2nd player banner now properly shows opponent info
Rename GameInput -> PlacementInput. Disable the Component when not needed.
Networked BugSegments now position themselves properly
Don't create more boards if more than 1 player joins the lobby.
Opponents bugs are hidden when created
Added Local Player to Player Hud
Finished basic header UI for GameHud
Remove plane from Board Prefab
Include UI assets in resource files
Fix checkerboard pattern for networked opponents.
Created a few UI sounds
Implement sounds for selecting, deselecting and placing
Resetting Bugs resets the state of Board Cells
Added Reset Bugs and Ready/Un-Ready Buttons to PlacingHud
Game starts when both players are Ready
Pick starting player on game start. Focus camera on the active player
GameInput ignores Cells that aren't owned locally
Added GameHud panel for Playing State
Move starting amount to Bug Resource. BugInventory is now a Dictionary
Allow selection in Placing State
Created Bugs are now Networked.
Don't allow player to start a selection on an existing segment
Adjust bug colours to not be confused with selection/occupied colours.
Added ResultsHud. GameHud -> MainHudPanel.
Added Drawn debug to board gizmo
Created PlacingHud and WaitingHud. Created Waiting for Opponent State.
Default CanSelect to false in GameInput
Update org
Wait for a second player before entering Placing State. End the game if player leaves for whatever reason.
Improved cell highlighting
Highlight changes to the colour of the bug you're about to place
Fix cells being marked as occupied when bug creation fails
Initial commit
Basic GameManager and Client Prefab. Temporary org/ident.
Started the BoardManager and CellComponent, along with necessary prefabs
Began GameInput component. Added mouse interactions to cells.
Click-and-drag to place bug segments
Re-adjust bug prefab origin and ignore bug tag in GameInput trace
Bug segments animate in when created
Can now draw your selection in the reverse order to undo it
Proper Bug inventory for placing phase
https://files.facepunch.com/CarsonKompon/2024/June/25_21-50-OccasionalGoitered.mp4
Added SoundscapeDropObject. Allows you to drag-and-drop soundscapes directly into your scene
Dragging a png,jpg,ect directly into the Scene will now automatically create a vtex and reference that.
Added TextureDropObject. Allows you to drag-and-drop vtex, png, jpg, ect directly into the Scene (regardless of dimensions).
https://files.facepunch.com/CarsonKompon/2024/June/25_15-43-EnergeticBeaver.mp4
Resolves Facepunch/sbox-issues#4470
Added SoundDropObject. Allows you to drag-and-drop sounds from your project or asset.party into the scene.
Added DropObjectAttribute. CreateDropFor no longer has hard-coded list. Resolves Facepunch/sbox-issues#5445
Checkbox when creating new project allowing you to set project location as default. Resolves Facepunch/sbox-issues#5628
CustomEditorAttribute now orders by number of parent classes so most relevant editor is always found. Resolves Facepunch/sbox-issues#5647