* Add failing unbuckle InteractHand test
* Skip trybuckle if strap doesn't have space
* Unbuckle others not just user
* Fix test failing due to delay
* Change to raise event instead of calling OnInteractHand
* Add test for buckle and unbuckle on InteractHand
* Add tick delay
* Remove unneeded tick delay and clean up
* Comment code
* Cleanup
* Swap to fastest checks first
* Fix reading empty sequence when there are no buckled entities
* feat: #26107 uplink discounts for traitors and nukies
* refactor: #26107 extracted discount label from price of StoreListingControl
* refactor: minor renaming
* refactor: parametrized adding discounts to uplink store
* fix: #26107 prevent exception on empty discountOptions
* feat: uplink now have 'Discounted' category which contains all discounted items on this session.
* after merge fixups
* rename discount categories according to common sense
* refactor: DiscountOptions is now optional (nullable) on ListingData
* add nullability check ignore for already checked listingData.DiscountOptions
* fix after merge store menu ui
* remove unused using
* final fix after merge conflicts
* [refactor]: #26107 fix variables naming in UplinkSystem
* fix: #26107 fix after merge
* refactor: #26107 now supports discountDownUntil on ListingItem, instead of % of discount
* feat: #26107 support multiple currency discount in store on side of discount message label
* refactor: #26107 extracted discounts initialization to separate system. StoreDiscountData are spread as array and not list now
* refactor: #26107 move more code from storesystem to StoreDiscountComponent
* refactor: #26107 separated StoreSystem and StoreDiscountSystem using events
* fix: #26107 placed not-nullable variable initialization in ListingData for tests
* refactor: #26107 minor renaming, xml-docs
* fix: #26107 changed most of discounts to be down to half price for balance purposes
* ids used in with discounts are now ProtoIds, dicountCategories are now prototypes, code with weights simplified
* decoupled storesystem and store discount system
* xml-docs
* refactor: #26107 xml-doc for StoreDiscountSystem
* is now a thing (tmp)
* fix: compilation errors + StoreDiscountData.DiscountCategoryId
* refactor: rename ListingDataWithCostModifiers, fix all cost related code, enpittyfy performance, uglify uplink_catalog
* refactor: removed unused code, more StoreDiscountSystem docs, simplify code
* refactor: moved discount category logic to respective system, now creating ListingData c-tor clones all mutable fields as expected
* refactor: rename back (its not prototype)
* refactor: move ListingItemsInitializingEvent to file with handling logic
* refactor: comments for StoreBuyFinishedEvent handling, more logging
* refactor: moved StoreInitializedEvent, xml-doc
* refactor: simplify StoreDiscountSystem code (reduce nesting) + xml-doc
* refactor: restore old listing data cost field name
* refactor: fix linter in uplink_catalog.yml
* refactor: xml-doc for ListingDataWithCostModifiers
* refactor: limit usage of ListingData in favour of ListingDataWithCostModifiers
* refactor: purged linq, removed custom datafield names, minor cleanup
* refactor: removed double-allocation on getting available listings
* refactor: StoreSystem.OnBuyRequest now uses component.FullListingsCatalog as reference point (as it was in original code)
* fix: minor discount categories on uplink items changes following design overview
* refactor: StoreBuyListingMessage now uses protoId and not whole object
* refactor: store refund and discount integration test, RefreshAllListings now translates previous cost modifiers to refreshed list, if state previous to refresh had any listing items
---------
Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>
* Work on abstracting out chargeup functionality/ui from grav gen
* Work on station anchor
* Finish implementing station anchors
* uhh yeah
* ok.
* fix tests
* whoops
* Get the last extraneous yaml fail
* PJB review
* beast mode... ACTIVATE!
---------
Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
Co-authored-by: EmoGarbage404 <retron404@gmail.com>
* add inheritance to lathe recipes and make result an override
* add GetResult method to lathe system
* make other parts of the code use GetResult
* clean up the stock parts yml
* remove unused apu boards from dynamic recipes
* make inverse dictionary public so test doesnt have to copy paste
* revert result override stuff
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
* works, still has testing values, im sure I did stupid shit.
* shitvent crapfactor
* snap extra word out of existence
* shit I died of old
* remove useless inaccurate design comments
* Oopsie, handle requirement params in RandomRuleSystem too
* I'm a slash slinging hasher
* Address reviews, add admin alerts I forgor
* EntityMan saves the day
* address reviews 1
* eh, I actually don't care about the cargo gifts thing.
* started
* Do reviews
* you actually meant 1.2 lmao
* dependency inheritance is a fickle bitch
* I have no idea.
* Threads are for sheets not computers.
* fix traitor rule test
* fix round type tattling
* break things
* It worky
* Toolshed makes we want to drink depresso.
* Finished?
* remove debug values
* timings
* use defaults
* alphabetize
* bobby drop tables
* Float required fr fr
* continue
* more continence
* uno mas
* obsolution
* cleanup and documentations
* Yell at self
* use the right value defaults
* housekeeping
* Added new map Cog and its own evac shuttle
* removed cog from default.yml so all checks will pass
I added cog here because i thought it might need to be here for map choosing??????????? ill add it back if needed
* updated cog and fixed a bunch of stuff that was not visable in the image, also nerfed the singo so it no longer solos
* added renault spawner that was missing and changed some minor stuff
* moved a escape pod from med/sci hallway to northern maints
* added shutters to the brig and added vents and scrubbers where they were missing in the halls
* extended salv's docking port so they can dock
* Fixed according to cog review thread
* fix pools
* fix PostMapInitTest
* Update MapLoadBenchmark.cs
* added cap and hop spawn that i just forgot to add???????????????????
* fixed again
---------
Co-authored-by: Emisse <99158783+Emisse@users.noreply.github.com>
* melee executions
* fix damage bug
* cleanup
* address reviews hopefully
* resistance bypass mechanic
* component changes
* self executions (not finished yet)
* self execs part two
* ok i fixed things (still not finished)
* finish everything
* review stuff
* nuke if (kind = special)
* more review stuffs
* Make suicide system much less hardcoded and make much more use of events
* Fix a dumb bug I introduced
* self execution popups
* Integration tests
* Why did they even take 0.5 blunt damage?
* More consistent integration tests
* Destructive equals true
* Allow it to dirty-dispose
* IS THIS WHAT YOU WANT?
* FRESH AND CLEAN
* modifier to multiplier
* don't jinx the integration tests
* no file-scoped namespace
* Move the rest of execution to shared, create SuicideGhostEvent
* handled
* Get rid of unused code and add a comment
* ghost before suicide
* stop cat suicides
* popup fix + small suicide change
* make it a bit better
---------
Co-authored-by: Plykiya <58439124+Plykiya@users.noreply.github.com>
* Make vox roundstart
I believe all the issues are fixed.
* Click detection bandaid
* Make clickable 1% nicer
Still bad. Still doesn't handle multi-viewports well.
* De-duplicate loadout gear
Needs supporting code, probably with an interface with StartingGearPrototype which would also use it, but I regexed the yaml.
* Code updates
* Remaining yaml
* Fix automatic naming
* raiseEvent
* Don't code when tired kids
* Add mapping editor (#757)
* Remove mapping actions, never again
* Cleanup actions system
* Jarvis, remove all references to CM14
* Fix InventoryUIController crashing when an InventoryGui is not found
* Rename mapping1 to mapping
* Clean up context calls
* Add doc comments
* Add delegate for hiding decals in the mapping screen
* Jarvis mission failed
* a
* Add test
* Fix not flushing save stream in mapping manager
* change
* Fix verbs
* fixes
* localise
---------
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
* I dunno, break shit I guess.
* Actually fix some shit for once.
* test flakey or me flakey?
* Test were not flakey, they just didnt make any sense anymore.
* more stationy tests
* undo abuncha shit I can set in yml instead
* forgor an assert
* unneeded usings
* 1984
* I made github angy
* yoink
* the end is never the end is never the end is never the end is never the end is never the end is never the
* Im going to commit sudoku
* The death of try20
* Add integration test for traitor gamerule
* Fix max difficulty being overshot
* Check at least one objective is assigned
* EntProtoId
* Items droped in containers will end up in containers
* Adds integration test for dropping entity while inside container
* comment
* comment
* trim the diff
---------
Co-authored-by: plykiya <plykiya@protonmail.com>
* item toggle refactoring and some new systems
* add ToggleClothing component/system
* unhardcode magboots gravity logic
* make magboots and speedboots use ItemToggle and stuff
* remove now useless clothing components
* update client/server magboots systems
* add note to use ItemToggledEvent in ToggleActionEvent doc
* refactor PowerCellDraw to use ItemToggle for ui open/close control
* add TryUseCharges, refactor charges system
* update magboot trigger code
* make borg use ItemToggle, network SelectedModule instead of now removed Activated
* add AccessToggle for borg
* the giga ninja refactor
* update ninja yml
* update ItemToggle usage for some stuff
* fix activatableui requires power
* random fixing
* yaml fixing
* nuke ItemToggleDisarmMalus
* make defib use ItemToggle
* make things that use power not turn on if missing use charge
* pro
* fix sound prediction
* bruh
* proximity detector use ItemToggle
* oop
* big idiot syndrome
* fix ninja spawn rule and make it generic
* fix ninja spawn rule yml
* move loading profiles into AntagLoadProfileRule
* more ninja refactor
* ninja yml fixes
* the dreaded copy paste ops
* remove useless NinjaRuleComponent and ue AntagSelection for greeting
* fix invisibility
* move IsCompleted to SharedObjectivesSystem
* ability fixes
* oop fix powercell instantly draining itself
* sentient speedboots gaming
* make reflect use ItemToggle
* fix other test
* loadprofilerule moved into its own pr
* remove conflict with dragon refactor
* remove all GenericAntag code from ninja
* )
* probably
* remove old enabled
* great language bravo vince
* GREAT LANGUAGE
* who made this language
* because it stinks
* reparent blood-red magboots to magboots probbbly works
* most of the review stuff
* hasGrav doesnt mean what i thought it did
* make health analyzer use itemtoggle, not fail test
* fix mag/speed boots being wacky
* UNTROLL
* add ItemToggle to the random health analyzers
* a
* remove unused obsolete borg func
* untrolling
* :trollface:
* fix test
* fix
* g
* untroll
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
* partial buckling refactor
* git mv test
* change test namespace
* git mv test
* Update test namespace
* Add pulling test
* Network BuckleTime
* Add two more tests
* smelly
* move MinMax to shared
* cleanup MinMax
* move other ticking components to shared just because
* remove unused prototype file
* update everything to use shared components
* test
* test 2
* test 3
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>