* Replaces Jump to Mob with Spawners Menu (#57471)
The Jump to Mob verb still exists for the 3 people who think they had a good use case for it, but it is no longer front and center.
* Replaces Jump to Mob with Spawners Menu
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
* Dog AI 2.0 (#57186)
Now that JPS and AI movement datums are fully merged, I'm here to take another (my third actually) crack at giving dogs fun AI. Here's a video demonstration (somewhat WIP), and a quick rundown of everything dogs will be able to do. Basically all of these behaviors are generic and can be extended to other simple mobs,
Commands and Friendship
Fetching
Attack/Harass
Heel
Play Dead
* Dog AI 2.0
Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
* adds a bitflag for no random pixel shift on dropping, adds turf_flags var to replace usage of flags_1 on turfs (#57263)
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
* adds a bitflag for no random pixel shift on dropping, adds turf_flags var to replace usage of flags_1 on turfs
Co-authored-by: Fikou <piotrbryla@onet.pl>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
* Combo streaks (not just the hud icons) now reset after half a dozen seconds (amount subject to change). (#57167)
Co-authored-by: Ghommie <425422238+Ghommie@ users.noreply.github.com>
* Combo streaks (not just the hud icons) now reset after half a dozen seconds (amount subject to change).
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
Co-authored-by: Ghommie <425422238+Ghommie@ users.noreply.github.com>
* ninjaDrainAct is now used with rightclick, not toggled with HUD. (#57153)
* ninjaDrainAct is now used with rightclick, not toggled with HUD.
Co-authored-by: Gurkenglas <gurkenglas@hotmail.de>
* Fix oversight allowing orbiting players to force the player they're orbitting to *surrender (#56972)
Observers with auto-observe inherit the HUD of the person they're observing. This includes Alerts. Alerts can be clicked. Alerts have varying levels of snowflaked checks. Some called parent and didn't check the return value. Some perform actions direct on usr instead of owner.
All of this has been standardised. Every single screen alert now calls ..() on Click() and returns early if the parent proc call returns false.
/atom/movable/screen/alert/Click now returns some useful value to children that call it.
* Fix oversight allowing orbiting players to force the player they're orbitting to *surrender
Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
* Hovering your mouse over things now shows their name on the top of the screen (#56729)
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
* Hovering your mouse over things now shows their name on the top of the screen
* a
* Update preferences_savefile.dm
Co-authored-by: Qustinnus <Floydje123@hotmail.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
Co-authored-by: Gandalf2k15 <jzo123@hotmail.com>
* Moves the plant analyzer chem mode to right click + lets you read out a tray's chemical contents
* Update growninedible.dm
* Update grown.dm
* Create grown.dm
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
* Makes n2o nontoxic, for reasons (#56839)
Counter to the original intent of the change seen here #50126, n2o will currently deal damage when used with both internal tanks and floods, as the threshold picked for it was about 0.15 moles at room temperature. Even outside this oversight, the original goal can't easily be achieved. Because breathing works off partial pressures, anything you can do with an anesthetic can you can do with an n2o flood.
Therefore I don't think it's behavior worth keeping, as even as a way to disincentivize non-antag n2o floods it would do little.
* Makes n2o nontoxic, for reasons
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
* right clicking on a ranged attack now calls afterattack when it's supposed to (#56829)
Makes right-click ranged attacks run afterattack, if afterattack_secondary returns SECONDARY_ATTACK_CALL_NORMAL, as it's supposed to.
Fixes#56795 and #56810
* right clicking on a ranged attack now calls afterattack when it's supposed to
Co-authored-by: TJatPBnJ <69724863+TJatPBnJ@users.noreply.github.com>
* fixes 2 runtimes caused by holding people up with a gun (#56800)
Fixes two runtimes, one caused by status effects always expecting a return from throw_alert, and another caused by holding yourself up (which you shouldn't even be able to do). Also fixes an issue caused by multiple people holding up the same person, when one of the perpetrators stopped holding up the victim, all of the victim's related alerts disappeared.
* fixes 2 runtimes caused by holding people up with a gun
Co-authored-by: TJatPBnJ <69724863+TJatPBnJ@users.noreply.github.com>
* Fix pre_attack (#56798)
Someone passed in the thing being used as the target, this broke many things. Bad moth :newspaper2:
* Fix pre_attack, fixing RPEDs
Co-authored-by: Mothblocks <35135081+Jared-Fogle@users.noreply.github.com>
* Fix jumpsuit right click (#56781)
I had accidentally tested this with a medkit in my hand (I'm a CMO on my test server).
Now correctly uses an attack_hand adjacent proc, rather than attackby.
* Fix jumpsuit right click not opening suit sensors, adds attack_hand_secondary
Co-authored-by: Mothblocks <35135081+Jared-Fogle@users.noreply.github.com>
* Change health analyzer, chemical scan is now on right click (#56779)
Health analyzer is now left click for health (or wounds, if you toggle
it) and right click for chemical scans.
Ever since the tgchat combine-previous-chats-in-one thing, knowing what
mode you're on has been a pain for me, as well as needing to cycle
through all of them. Furthermore, this is just a sane right-click
action to have.
* Chemical scan is now on right click, removes it as a toggle
Co-authored-by: Mothblocks <35135081+Jared-Fogle@users.noreply.github.com>
* Add locking into portals with right click on hand tele, refactor hand tele code, add pre_attack_secondary (#56700)
Refactors hand tele code with better variable names, splitting procs, fixing C&P code, etc.
Adds pre_attack_secondary, the right click version of pre_attack.
Adds a new alternate function to hand teles, which will reopen the last location you opened. Works based off locations, not turfs. For example, right clicking after locking in "None (Dangerous)" will not teleport you to the same place.
* Add locking into portals with right click on hand tele, refactor hand tele code, add pre_attack_secondary
Co-authored-by: Mothblocks <35135081+Jared-Fogle@users.noreply.github.com>
* M90 changes (#56667)
The m90 is now 14tc instead of 18. Its grenades can be bought from the uplink in boxes for 6tc, instead of individual grenades for 2tc each. You can also fire the m90's grenade launcher with right click.
* M90 changes
Co-authored-by: TJatPBnJ <69724863+TJatPBnJ@users.noreply.github.com>
Co-authored-by: Gandalf2k15 <jzo123@hotmail.com>
* Refactors plane masters a bit and introduces plane master controllers (#56717)
* plane master controllers
* small adjustments
* bro its a comment CHILL OUT
* powerful
* Refactors plane masters a bit and introduces plane master controllers
Co-authored-by: Qustinnus <Floydje123@hotmail.com>
* Renames the _alt attacks to _secondary for clarity (#56752)
* Renames the _alt attacks to _secondary for clarity
Co-authored-by: Rohesie <rohesie@gmail.com>
* Add pAI internal GPS to possible software (#56404)
pAIs are now a useful space travelling companion, they can help you
navigate if lost (although only the pAI has the GPS view, so they'll
need to communicate the information). If you're holding a GPS, then the
pAI can find you even if you get separated.
* Add pAI internal GPS to possible software
Co-authored-by: coiax <yellowbounder@gmail.com>
* Add alternate attack procs (#56663)
Adds alternate attack procs for right-clicking. Updates the gunpoint code to use this new proc as an example (though I suspect this is being changed soon, so oops).
This makes it easier to add new behavior to right click, which we should be doing.
* Add alternate attack procs
Co-authored-by: Mothblocks <35135081+Jared-Fogle@users.noreply.github.com>
* Cleans up blob code, removes a lot of hardcoded stuff, many new defines (#56306)
Cleaned up, commented on, and (hopefully) improves a lot of blob code.
Put pretty much everything balance-related (except for the strains themselves) into a define file, for easier viewing, changing, and balancing.
Added a bunch of new functionality that new strains (some of which I plan to add in the future) could use: from increased expansion range to more spores per factory.
* Cleans up blob code, removes a lot of hardcoded stuff, many new defines
Co-authored-by: NotRanged <rangedvdk@gmail.com>
* reverts Adds Neon Carpet (#55782), it appears to have been causing massive amounts of maptick (#56496)
It appears to have been causing massive amounts of maptick, this'll need a testmerge so we can test my hypothesis
* Reverts Adds Neon Carpet (#55782)
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
* Replacing magic numbers with defines in robot code (#56241)
While scouring robot code for some (hopefully upcoming) fixes, I found a bunch of gross numbers. These numbers are now letters.
* Replacing magic numbers with defines in robot code
Co-authored-by: dragomagol <66640614+dragomagol@users.noreply.github.com>
* Fixes parallax runtime when observing someone without client (#56092)
When observing someone without client (because they for example disconnected) a runtime happened:
This was because update_parallax didn't take a mob as parameter but instead always updated the parallax of the mob to which the HUD datum belonged (which was the HUD of the person who you tried to observe)
If that mob had no client this caused a runtime.
If you observe someone now the game updates parallax for your client and not the client of the person you tried to observe.
* Fixes parallax runtime when observing someone without client
Co-authored-by: Gamer025 <33846895+Gamer025@users.noreply.github.com>
* Telekinesis can throw non items (vending machines, lockers) only 1 tile far (#56063)
Telekinesis users can now only throw items 10 tiles, everything else can only be thrown 1 tile
* Telekinesis can throw non items (vending machines, lockers) only 1 tile far
Co-authored-by: Gamer025 <33846895+Gamer025@users.noreply.github.com>
* Merge pull request #55869 from LemonInTheDark/fixes-plasma-alerts
Fixes plasma alerts not showing up
* Fixes plasma alerts not showing up
Co-authored-by: 81Denton <32391752+81Denton@users.noreply.github.com>
* Fixes two bugs with Blob strain rerolling (#55833)
* tested locally and it works
* As suggested
Co-authored-by: Ranged <nickvanderkroon@ gmail.com>
* Fixes two bugs with Blob strain rerolling
Co-authored-by: NotRanged <rangedvdk@gmail.com>
Co-authored-by: Ranged <nickvanderkroon@ gmail.com>
* Fix zero damage items not showing explicitly set attack verbs in chat (#55509)
Borked exactly five months ago by #52890.
This will close#55219.
* Fixing zero damage items with set attack verbs not showing chat messages anyway.
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
* Fixes mech equipment being unusable for AIs (#55248)
Adds a signal listener on mechs that listens for middle clicks, and calls a proc that will, in turn, call the normal click proc if the user is an AI.
Middle clicks now pass through params just like left clicks.
* Fixes mech equipment being unusable for AIs
* Add CI-conform #2347 to this.
Co-authored-by: zxaber <37497534+zxaber@users.noreply.github.com>
Co-authored-by: Alex 'Avunia' Takiya <git@takiya.cloud>