* Fixes AI upgrades not being applied correctly (#54589)
Fixes AI upgrades not applying:
due to the item's afterattack() proc never being called
due to the attack chain ending early
due to the AI's attackby() proc returning true
Anyway, easiest way to fix it was to change the item to use pre_attack() instead.
* Fixes AI upgrades not being applied correctly
Co-authored-by: zxaber <37497534+zxaber@users.noreply.github.com>
* Optimize stat panel and fix guardian verbs (#53463)
Optimizes stat panel code for better performance, including icon caching and removing some unnecessary processing
Also fixes#53432fix#53381fix#53724
Changelog
add: icons are back on alt clicks
fix: horrible performance from alt clicking turfs with multiple objects
tweak:browser should notify the SS when it's ready to receive data
* Update statbrowser.html
* Apply suggestions from code review
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@ users.noreply.github.com>
* hidden = TRUE
* almost ready
* Browser should notify when ready to receive data
* Apply MSO's suggestions
* reset cache if something in it gets deleted
* Fix runtime
* fix my stupid code
* send href_token when adding admin tabs
* fix an issue with cyborg suit topic
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@ users.noreply.github.com>
* Optimize stat panel and fix guardian verbs
Co-authored-by: Couls <coul422@gmail.com>
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@ users.noreply.github.com>
* Process procs now properly utilize deltatime when implementing rates, timers and probabilities (#52981)
* Process procs now properly use deltatime when implementing rates, timers and probabilities
* Review fixes
* Geiger counters cleanup
Made hardsuit geiger code more similar to geiger counter code
Geiger counters are more responsive now
* Moved SS*_DT defines to subsystems.dm
* Rebase fix
* Redefined the SS*_DT defines to use the subsystem wait vars
* Implemented suggested changes by @AnturK
* Commented /datum/proc/process about the deltatime stuff
* Send delta_time as a process parameter instead of the defines
Also DTfied acid_processing
* Dtfied new acid component
* Process procs now properly utilize deltatime when implementing rates, timers and probabilities
Co-authored-by: Donkie <daniel.cf.hultgren@gmail.com>
* Janiborgs can now repair damaged hull platings (#53183)
The "plating repair tool" has been added to the game in the form of a
printable upgrade for janiborgs. It's a subtype of the cautery that can
repair burnt or damaged hull platings, allowing floor tiles to be
placed over them once again.
The upgrade that adds it to a janiborg's list of tools can be printed
once the Cyborg Upgrades: Utility tech node is researched.
Janiborgs get floor tiles (and a crowbar), but have no way of dealing
with burnt platings. Thus, what ends up happening is that, after fixing
some flooring after a minor explosion, you'll often be left with one or
two ugly, OCD-triggering untiled spots on the floor that you can't put
a floor tile over because you don't have a welder. What makes these
spots even more infuriating is that it would actually be BETTER if they
had been broken down to just being space-exposed rods, because then you
COULD place a floor tile on their tile.
* Janiborgs can now repair damaged hull platings
Co-authored-by: ATH1909 <42606352+ATH1909@users.noreply.github.com>
Replaces like 70-80% of 0 and such, as a side effect cleaned up a bunch of returns
Edit: Most left out ones are in mecha which should be done in mecha refactor already
Oh my look how clean it is
Co-authored-by: TiviPlus <TiviPlus>
Co-authored-by: Couls <coul422@gmail.com>
Co-authored-by: TiviPlus <57223640+TiviPlus@users.noreply.github.com>
Co-authored-by: Couls <coul422@gmail.com>
* immobilized (#52578)
Adds an immobilized trait.
Adds procs for several variable changes so we can respond to their events.
Adds some signals for said variables changing.
Need to turn the variation in number of usable legs and arms (get_num_legs() and get_num_arms()) into events we can respond to, but they are pretty annoying to do so. Probably for a different PR.
* Immobilized trait
Co-authored-by: Rohesie <rohesie@gmail.com>
* Petting more animals now causes floating hearts and a moodlet, borgs can now pet animals. (#52594)
* Petting.
* Oops.
* Update code/modules/mob/living/simple_animal/friendly/penguin.dm
Co-authored-by: Fikou <piotrbryla@onet.pl>
* Working on underlying redo.
* More.
* Fixing to work with new emote system.
* Move proc and defines to living instead of mob.
* ...Moves it to simple_animal instead.
* Revert cat crate fix (other PR handling), fixes emote thing.
* Appveyor did not care for that.
* Comment typo.
* Very descriptive var name.
* Borgs can now commit pet.
* sweeps up missing manual_emotes, adds a hop to link for ghosts, and moves the name preface to ghost only
* More descriptive vars and proc name.
* Better descriptive vars.
* Making the borg code slightly nicer.
Co-authored-by: Fikou <piotrbryla@onet.pl>
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
* Petting more animals now causes floating hearts and a moodlet, borgs can now pet animals.
Co-authored-by: uomo <51800976+uomo91@users.noreply.github.com>
Co-authored-by: Fikou <piotrbryla@onet.pl>
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
* Confusion will no longer continue to confuse after being cured (#52286)
* Confusion will no longer continue to confuse after being cured
* Grammar comment fix
* Move to status effect
* Remove test per request
* Make confusion a status effect, confusion curing now completely neuters the confusion
* set_confusion changes, get_confusion
* Fix confusion going down twice per tick
* Change strength = to proc
* Move procs to status_procs
* Confusion will no longer continue to confuse after being cured
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
* Converts everything to use setAnchored() + other fixes
* Fixed singulo debug
* singulo again
* forgot to move the vv_edit proc
* caught that this time :)
* changes
* Update code/game/atoms_movable.dm
Co-authored-by: Rohesie <rohesie@gmail.com>
Co-authored-by: Rohesie <rohesie@gmail.com>
* First draft
* tgui interface bluescreen guards
* Preparing for cyborg module sub-categories
* The rest of the owl
* Stop duplicate say messgaes
* Implement interface handling for obstructed exits
* Pocket lint
* Documentation and misc. code cleanup
* Implement searching in interface
* tgui pocket lint and build
* Coding style consistency and changes. Rebuild tgui.
* Update default bitflags
* Address potential edge case bluescreen.
* orange man good
* Remove emag_act with obsolete functionality
* Standardise variable naming conventions
* tgui 4.0 update
* tgui 4.0 update
* Port a couple of usability improvements from concept branch.
* Fix new ui_act input.
* Actually fix new ui_act input
* Port some small improvements from concept branch.
* Rebuild tgui
* Made department of redundancy department redundant.
* Rebuild tgui.
Added it to a random timer as proof of concept.
This is less performant than storing world.time in a variable, but it's a simple, quick, easy and dirty way to add a cooldown to something. Just create an ID and you need do no more besides using the macros.
Helps with clarity and adding cooldowns on the fly.
* Case of lower
* More changes
* Ruins the nice 420 diff, brainfart when doing the second batch of conversions
* More changes
* Next batch. I think
* Converts even more paths
* Restarts bots
* Capital Free Zone
* Come on travis, do something
* Renames areas
* Bots, please stop dying
* Updates CONTRIBUTING.md and updates a few paths I missed.
* APC recgarftzfvas
/obj/item/computer_hardware/recharger/apc to /obj/item/computer_hardware/recharger/apc_recharger
* Gumballs and spider lollipops can now be put in your mouth and chewed/sucked!
fixes inconsistencies with gumballs and lollipops
* Update recipes_misc.dm
About The Pull Request
Borg upgrade cards didn't have a weight class and defaulted to normal size. This sets the size to them to be small. Only the upgrade card itself is affected, no change in any of the tools or effects that result from the card's installation into a borg.
Why It's Good For The Game
These are visually smaller than computer boards, it makes no sense that I can't stick the reboot board into my box.
Changelog
🆑
balance: Borg upgrade cards are now small items.
/🆑
About The Pull Request
For an item to be two handed just add this handy component.
All existing two handed items have been converted to use this component.
Why It's Good For The Game
It has components and signals, and now you can make items two handed so simply.
/obj/item/shockpaddles/ComponentInitialize()
. = ..()
AddComponent(/datum/component/two_handed)
* Delete stale.yml
* Create stale.yml
* clear
* Can now replace the defib pack with an upgrade card to get the pack back.
* less redundant checks
* borg > cyborg text changes
Living and machine stat vars are pretty different, one uses flags and other number-defines.
This should make some other mass-replacements and searches a bit easier.
* update_icon() improvements
Fixes some update_icon() calls to properly call parent and use update_overlays() and update_icon_state().
The rest of obj/item fuck it
* Suggested fixes, also passes the linter
* I always forget . = ..() is faster than return ..() FOR SOME FUCKING REASON
* Actually this is better
* Signilzes datum/action to update its icon when its connected item does.
* Mining borgs can choose the old mining borg icon.
* Adds two new mining borg skins from Citadel.
* Renames the mining cyborg lavaproof tracks to mining cyborg lavaproof chassis.
* Removes the hover miner from the PR completely.
Several of the greps were missing the `-P` switch which caused them to
fail to match things. The EOL grep also wasn't working right so I
replaced it with the one I added to TGMC.
* Refactors screen object update_icon to call parent
And makes update_icon an /atom proc
* Cleans up some missed null checks
The student teaches the master
* Nanotrasen fires the Wave Motion Gun at the Clock Cult
* Fixes a random changelog appearing from the reebe void.
* Fixes a wrong type reference regarding the bronze sheets in the Lavaland Ruin for it.
* Fixes redundant cells after CC removal in ruin by populating them with varied ore chunks, or destruction clutter.
* why is it /obj/item/stack/sheet/metal but not /obj/item/stack/sheet/iron
* Fixes the lavaland ratvar ruin to have fluff variant structures of deleted shit it referenced instead what I thought was reasonable.