* add: basic rodent species
* add: rodentia base sprites
* add: basic rodent hand/foot markings
* add: ears i got em
* add: tail markings
* add: big ears
by request
* tweak: default markings, coloration
everything uses skin color by default when added except for these new "default" markings which use tattoo
* add: the rest of the basic body part markings
* add: snout textures
* add: pattern markings
* add: cheek detail
* add: sex variations for chest marking
* add: give rodentia the generic markings
* add: rodentia names
* add: damage, voice, mass, emotes to rodentia
* add: rummager ability for rodentia
* remove: temperature protection from rodentia
* add: some makeup markings for rodentia
* add: include rodentia in misc pools
* add: rodentia guidebook entries
* tweak: adjust rodentia marking points
* add: rodentia pie sprite
* tweak desc
* tweak: change rodentia name scheme
* tweak: adjust damage modifiers for rodentia
* add: rodentia always trigger mouse traps
* tweak: rodentia have unique speech verbs
* tweak: change rodentia inventory shape
* tweak: rodentia take more phys dmg overall
* tweak: made rodentia hungry
* add: mouth storage component on rodents
* add: server mouthstoragesystem
* add: force-dump mouth storage on trip
hmm the networking on this is a little ehh. but watever
* add: rodentia drop mouth items on damage
* add: blocked interactions if mouth is full
* fix: corrected accent oops
* tweak: tense
* fuck this import in particular
* tweak: spit damage threshold
* fix: no redundant open actions
* refactor: move this action into the types file
* add: rodentia get ability to hide under tables etc.
* tweak: change rodentia action icons
* refactor: im renaming this component and system lol
* refactor: rename this event too
i was gonna refactor the whole system to be more like climbing, but the climbing system is convoluted so im just gonna do this and put it aside
* tweak: fix the mouth storage icon
the number covers it
* tweak: check if colliding with table before un-sneaking
* fix: crawl action cooldown and popup text
* add: slowdown to sneak ability
* refactor: fix this namespace
* tweak: rummageable objects now use a cooldown
* fix: newlines
* Apply suggestions from code review
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Signed-off-by: portfiend <109661617+portfiend@users.noreply.github.com>
* Apply suggestions from code review
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Signed-off-by: portfiend <109661617+portfiend@users.noreply.github.com>
* fix: collision group variavbles
* add: proper "full body" sprite
* add: move blaze to head folder, "round face" marking
* add: whisker markings
* tweal: rodentia are 50% -> 33% hungrier
1.5x seemed excessive
* refactor(mouthStorage): move OnExamined from server to shared
* refactor(mousetrap): use HasComp
* refactor(mouthStorage): use a public api instead of event here
* refactor(yml): KILL REPETITION
* refactor(parts/rodentia): KILL REPETITION
---------
Signed-off-by: portfiend <109661617+portfiend@users.noreply.github.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
* Insert when held item has no interaction with stored item
* Decouple inserting on failure
* Add component that stores the used entity when no interaction happened
* Add prediction
* Add BreakOnDropItem, update do afters, remove unnecessary declarations
* bola
* Changed my mind about the nuke
* gennies too
* Make the comments more clear.
* Sorry for the trailing commas
* Revert "Sorry for the trailing commas"
This reverts commit e60fd9a30977393df3344948e6d5c0ce035723cd.
---------
Co-authored-by: plykiya <plykiya@protonmail.com>
* Dungeon spawn support for grid spawns
* Recursive dungeons working
* Mask approach working
* zack
* More work
* Fix recursive dungeons
* Heap of work
* weh
* the cud
* rar
* Job
* weh
* weh
* weh
* Master merges
* orch
* weh
* vgroid most of the work
* Tweaks
* Tweaks
* weh
* do do do do do do
* Basic layout
* Ore spawning working
* Big breaking changes
* Mob gen working
* weh
* Finalising
* emo
* More finalising
* reverty
* Reduce distance
* Fix ItemMapper whitelist mispredict when inserting or removing items
Makes the ItemMapper MapLayerData available on client so that the client
can predict whether an inserted/removed item changes the visibility of
a sprite layer.
* review
---------
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
* Replace obsolete whitelist is valid with whitelist system
* Consistency
* Fix logic
* Bork
* I figured out how to get whitelists on the client lol
* test fail
* woops
* HELP ME FUNCTIONS
* Fix errors
* simplify
---------
Co-authored-by: plykiya <plykiya@protonmail.com>
* make storage close on lock
* formatting and comments
* Update Content.Shared/Storage/EntitySystems/SharedStorageSystem.cs
Co-authored-by: ShadowCommander <shadowjjt@gmail.com>
* Apply suggestions from code review
Co-authored-by: ShadowCommander <shadowjjt@gmail.com>
* Swap to foreach instead of for
Co-authored-by: Kara <lunarautomaton6@gmail.com>
---------
Co-authored-by: ShadowCommander <shadowjjt@gmail.com>
Co-authored-by: Kara <lunarautomaton6@gmail.com>
* Upgraded UseDelay to support multiple delays per entity
* Implement secondary delay for bibles.
Also some improvements to make it work nicely.
* Documentation is good
* Reserve the previous change; now Storage uses the special ID and Bible uses the default.
* .0
* Added VV support to UseDelayInfo
* Serialize better
* No register, just setlength
(cherry picked from commit b292905216948e0c85b04e8ef65a5291dd868eee)
* Fix rotation of dropped items
* combined world position rotation function for dumpable
* scuffed implementation?
* less scuffed?
* even less scuffed... I guess
* capital D
---------
Co-authored-by: Plykiya <plykiya@protonmail.com>
(cherry picked from commit 5aadb17be79f487f7b665035489dbe6f9fd6fdea)
* add SaveItemLocation keybind
* make item direction public to avoid having to change between Angle for no reason
* add item location saving
* show
* Added a better save keybind, made it draw saved positions, and trying to save in a position it has already been saved in removes that position.
* w
* code style
* Make taken spots appear blue
* style
* !
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: notquitehadouken <tripwiregamer@gmail.com>
Co-authored-by: I.K <45953835+notquitehadouken@users.noreply.github.com>
(cherry picked from commit 6863a7cc26f815ec9089003e8735777cea927d0f)
* Replaced uses of Dirty(Component) with Dirty(Uid, Component)
Modified some systems (notably pulling-related) to use uids.
* Missed a few
* Revert changes to pulling
* No
(cherry picked from commit 4a83c365858830e3b2ff2b94fff501256422c20e)
* Merge BreakOnWeightlessMove and BreakOnMove. Provide different theshold for weightless movement.
* Adjust WeightlessMovementThresholds. Put a thing I forgot to put in the doafterargs.
* Make DoAfterArgs only use OnMove to determine whether to check for
movement and MoveThreshold to determine the threshold regardless of
weightlessness. Gave DistanceThreshold a default value which will always
be checked now.
* Fix issue introduced by merge.
* Use interaction system for determining whether a distance is within range
* Fix incorrect doafter args introduced by previous merge.
Forgor to commit these.
* Exorcise ghost.
The execution system should have been deleted when I merged previously.
For a reason I cannot comprehend it came back, but only the execution
system.
* Exorcise ghost Pt. 2
* Allow for movement check to be overriden in zero g and adjust doafter args where needed.
You can now override checking for movement in zero g with the BreakOnWeightlessMove bool. By default it will check.
The following doafters were made to ignore the movement check in zero g:
- Healing yourself with healing items,
- Removing embedded projectiles,
- Using tools like welders and crowbars
* Adjust distance for cuffing/uncuffing to work. Make injections not break on weightless movement.
* Fix evil incorrect and uneeded comments
(cherry picked from commit 362d56981fd7654f6ebec36f16cc8fabdd04b6a7)
* Removes items from containers in reclaimers
* Made it into an event instead
* Sloth review comment
* Fix indentation and rename field
(cherry picked from commit d7484ae9f57477a5ec5c575e3077aa94c0564db6)
Also includes some (non critical) changes to the solution file to re-organize the Roslyn components.
(cherry picked from commit e00f74505c62310bd15aeaba8d6530f648397074)
* LockVisualizer
* Fix state
* Clean some code
* Make it component, fix tests fail
* Fix for StateUnlocked
Now it is possible to manually set the unlocked state and it will work!
* Optimize LockVisualizer, add check for unlocked state
* No todo I guess
(cherry picked from commit c7870882f6f956eea07cbb4738ae45c8805c8ce6)
* Use new Subs.CVar helper
Removes manual config OnValueChanged calls, removes need to remember to manually unsubscribe.
This both reduces boilerplate and fixes many issues where subscriptions weren't removed on entity system shutdown.
* Fix a bunch of warnings
* More warning fixes
* Use new DateTime serializer to get rid of ISerializationHooks in changelog code.
* Get rid of some more ISerializationHooks for enums
* And a little more
* Apply suggestions from code review
Co-authored-by: 0x6273 <0x40@keemail.me>
---------
Co-authored-by: 0x6273 <0x40@keemail.me>
(cherry picked from commit 68ce53ae17985876d6d112b764b2144964a9f42e)
Relay wasn't really networked properly and this annoys me.
EntityStorage is still pretty skrunkly but this fixes the main issue I think.
(cherry picked from commit 042feae2e91f41f7d39e55340405e3c448903d61)