* #272 add bordered panel for effects bar
* #272 avoid mouse overlapping tooltip when near edges,
change tooltip colors to match mockups
* #272 WIP defining status effect states as YML and
sending them as encoded integers
* #272 refactor to use new alert system
* #272 refactor to use new alert system
* #272 fix various bugs with new alert system and update
alerts to have color
* #272 WIP
* #272 rename status effects to alerts
* #272 WIP reworking alert internals to avoid code dup
and eliminate enum
* #272 refactor alerts to use
categories and fix various bugs
* #272 more alert bugfixes
* #272 alert ordering
* #272 callback-based approach for alert clicks
* #272 add debug commands for alerts
* #272 utilize new GridContainer capabilities for sizing of alerts tab
* #272 scale alerts height based on
window size
* #272 fix tooltip flicker
* #272 transparent alert panel
* #272 adjust styles to match injazz mockups more, add cooldown info in tooltip
* #272 adjust styles to match injazz mockups more, add cooldown info in tooltip
* #272 alert prototype tests
* #272 alert manager tests
* #272 alert order tests
* #272 simple unit test for alerts component
* #272 integration test for alerts
* #272 rework alerts to use enums instead
of id / category
* #272 various cleanups for PR
* #272 use byte for more compact alert messages
* #272 rename StatusEffects folder to Alerts,
add missing NetSerializable
* WIP changes
* Merge conflict fixes
* Bring pull controlelr to current year
* Sync and predict PullController on the client
* Clean imports
* Slow down pullers and make pulling tighter
* Stop pulls on pullable or puller component removals
* Make pulling not occur when moving towards the pulled entity
Climbing now can't be done if you're already climbing. Rest of the changes are just formatting.
I also removed the buckle messages as they were being duplicated for click-drag.
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
* Rename usages of collidable to physics
* high tier PANIQUE
* aaaaaaaaAAAAAa
* cursed commit dont research
* Fix urist and items being anchored
* Fix the rest
* Early commit
* Early commit 2
* merging master broke my git
* does anyone even read these
* life is fleeting
* it just works
* this time passing integration tests
* Remove hashset yaml serialization for now
* You got a license for those nullables?
* No examine, no context menu, part and mechanism parenting and visibility
* Fix wrong brain sprite state
* Removing layers was a mistake
* just tear body system a new one and see if it still breathes
* Remove redundant code
* Add that comment back
* Separate damage and body, component states, stomach rework
* Add containers for body parts
* Bring layers back pls
* Fix parts magically changing color
* Reimplement sprite layer visibility
* Fix tests
* Add leg test
* Active legs is gone
Crab rave
* Merge fixes, rename DamageState to CurrentState
* Remove IShowContextMenu and ICanExamine
* Adds new different reaction types.
- Adds touch, injection and ingestion reactions for entities.
- Adds tile reactions.
- Removes GasSprayerComponent in favor of SprayComponent.
- Gives fire extinguishers a safety.
- Gives spray puffs a sprite.
- Improved spray and fire extinguisher in general.
- Fire extinguisher now ACTUALLY puts out fires. Amazing, eh?
- Fire extinguisher sprays three 'clouds' at once.
- Spraying flammable chemicals at fire makes them worse. Whoops!
- Gives spray and fire extinguisher their classic sounds.
- Most chemicals now don't make puddles. Too bad!
- Space lube now makes a very slippery puddle. Honk.
- Spraying water (or using a fire extinguisher) on existing puddles makes them bigger.
* Fix solution tests
* food base now has solution container with noexamine caps
* Separate part management from the rest of body manager component
* Component reference
* Move more methods over
* Fix docs and move over BodyPreset
* Fix up body preset
* Create initialize method and remove constructor for BodyPreset
* Do the same for BodyTemplate and add Initialized properties
* Fix BodyTemplate HashCode test
* BodyTemplate test PLS
* Sort out InRangeUnobstructed and add extension methods
* Rename client RangeChecks to RangeExtensions
* Add container extension methods and test
* Add missing component methods
Component to container
Grid coordinates to container
Map coordinates to container
Local player to container
* Actually use the field
* Merge fixes
* Add popup argument to local player extension methods
* Reduce code repetition for client range extensions
* Add test that puts all components on an entity and checks for no exceptions
Also fix all the exceptions that happened because of this
* Add comments to the test
* Fix nullable errors
* Fix more nullable errors
* More nullable error fixes
* Unignore basic actor component
* Fix more nullable errors
* NULLABLE ERROR
* Add string interpolation
* Merge if checks
* Remove redundant pragma warning disable 649
* Address reviews
* Remove null wrappers around TryGetComponent
* Merge conflict fixes
* APC battery component error fix
* Fix power test
* Fix atmos mapgrid usages
* Initial commit
* Climbing uses its own controller now
* Missed a check
* Get rid of hands check
* Cleanup
* Get rid of speciescomponent stuff
* Remove unneeded check, add separate case for moving other players.
* Add DoAfter
* IClientDraggable added to ClimbingComponent
* Added some basic integration tests. Renamed ClimbMode to Climbing.
* oops
* Minor fixes
* ffff
* Table fix
* Revamped system so its more predicted, uses proper logic for de-climbing. Get hype!!!
* Flag check fix
* Distance check and reset numticksblocked
* get rid
* AI sleeping
AI no longer update when dead.
* It was easier to merge master and re-apply it.
* Update AiControllerComponent.cs
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
* Initial framework for pulling.
* Make it possible to pull items via (temporary) keybind Ctrl+Click, make items follow the player correctly.
* Make other objects pullable, implement functionality for moving an object being pulled, make only one object able to be pulled at a time.
* Make sure that MoveTo won't allow collisions with the player
* Update everything to work with the new physics engine
* Update Content.Server/GameObjects/EntitySystems/Click/InteractionSystem.cs
Co-authored-by: ComicIronic <comicironic@gmail.com>
* Physics update and convert to direct type casts
* Add notnull checks
* Add pull keybinds to the tutorial window
* Move PullController to shared
* Fix pulled items getting left behind
* Fix moving pulled objects into walls
* Remove flooring of coordinates when moving pulled objects
* Add missing null check in PutInHand
* Change pulling keybind to control and throwing to alt
* Change PhysicsComponent references to IPhysicsComponent
* Add trying to pull a pulled entity disabling the pull
* Add pulled status effect
* Fix merge conflicts
* Merge fixes
* Make players pullable
* Fix being able to pull yourself
* Change pull moving to use a velocity
* Update pulled and pulling icons to not be buckle
A tragedy
* Make pulled and pulling icons more consistent
* Remove empty not pulled and not pulling images
* Pulled icon update
* Pulled icon update
* Add clicking pulling status effect to stop the pull
* Fix spacewalking when pulling
* Merge conflict fixes
* Add a pull verb
* Fix nullable error
* Add pulling through the entity drop down menu
Co-authored-by: Jackson Lewis <inquisitivepenguin@protonmail.com>
Co-authored-by: ComicIronic <comicironic@gmail.com>
* Transition code to new controller system
* Fix shuttles not moving
* Fix throwing
* Fix guns
* Change hands to use physics.Stop() and remove item fumble method
* Start work on Slippery Component
* Slips work
* Add banana peel
* Add required slip speed
* Add slip sound
* Adds soap
* Make soapnt, soapsyndie and soapdeluxe inherit soap
* Adds homemade soap and omega soap
* Fix slipping not taking into account the entity being in a container