Commit Graph

12431 Commits

Author SHA1 Message Date
Emmanuel S a9e1c2e387 Orbit menu checks ghosts recursively, ghosts have orbit counters (#53826)
* Recursive Orbit Checker


UI change


len -> length()


Rebuild tgui

another len -> length()

* tgui
2020-09-27 01:37:42 +03:00
Timberpoes 1f23cc281d Enforce preserving parent proc return values across ui_act call stacks (#53964)
All ui_act procs should call parent by default. All procs should preserve the value of the parent proc when it's TRUTHY and pass it down the call stack. No UI should be interactible when its flags or state indicate it should not be, except when explicity overriden by child procs intentionally disregarding parent return values to achieve a specific goal.
2020-09-26 11:52:39 -03:00
zxaber 4c29058486 Fixes a runtime with borg tablets when borgs get created. (#53953) 2020-09-26 07:40:35 -03:00
Timberpoes f0a62bb6b5 Minor refactor to space dragon code to fix various bugs and issues (#53944) 2020-09-25 23:16:36 -03:00
Timberpoes 9c95813da4 Rebalances space loot and space exploration (#53916) 2020-09-25 04:53:43 -07:00
ArcaneDefence 2eb6b1362e Separates mothpeople antennae into a mutant bodypart (#53928)
Removes the antennae part of the original moth wing sprites and adds them back as a mutant bodypart.
Seeing as they were then separated I made it a preference so that players can choose which antennae sprite they would like to have, instead of being restricted solely to the ones built into the wing sprite.
2020-09-25 08:47:00 -03:00
skoglol 505146f757 Merge pull request #53822 from Mickyan/freefalling
Makes freerunning quirk prevent falling damage from short falls
2020-09-25 02:23:50 +02:00
NightRed 509f04b17a Clears up issues moods and alerts on gain of NOBREATH (#53908)
Fixes up the gain of the NOBREATH trait to clear breath related moods and alerts.
Added a godmode fix up for humans also.
2020-09-24 14:59:13 -03:00
tralezab 70816c235b Buffs Gravitokinetic Stands a bit (#53884)
Gravitokinetic stands now give their user an immunity to their own gravity, and cannot apply it to their user.

Gravitokinetic stands now send out heavier gravity. Gravity applied to turfs will now damage lightly, gravity applied to people will damage twice as fast.
2020-09-24 07:24:10 -03:00
zxaber 8e98391dfb tgui: Borg tablets and RoboTact as a borg self-management app (#53373)
* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* take one

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* part 2

* Automatic changelog compile [ci skip]

* part 3

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* part three I think

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* who even knows what step I'm on anymore

* and another one

* Automatic changelog compile [ci skip]

* PR time

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Forward Progress

* Automatic changelog compile [ci skip]

* Merge remote-tracking branch 'upstream/master' into SiliScreen

* more foward progress

* RoboTact

* bad tab

* Improvements all around

Plus some changes to vis_overlay to allow for color

* Lights and things

* borg network card

borg tablets lose networking when borg is locked or has no power

* hud changes

not done yet, but getting close

* better modPC screen button

* updoot

* more useful colors

* linter

* Do I finally get a green ✓

* better law sync catching

* hate linters

Co-authored-by: Changelogs <action@github.com>
2020-09-24 13:13:52 +03:00
EdgeLordExe 283d140ca0 HERETICS: Balancing Mega patch - Changes to ash, flesh ascension and much more!. (#53655) 2020-09-24 01:54:22 -07:00
Timberpoes f6f6bfe0d4 Fix two issues relating to stating laws (#53827)
Issue 1: When your laws change in the middle of stating laws, things can get weird due to this being a proc that sleeps and may end stating early or some other undesired behaviour.
Issue 2: Issue's 1 behaviour can also runtime.

This caches all relevant vars when a law state starts so that it can continue uninterrupted and as expected.

This seemed the simplest solution and was a concept suggested by a couple of other maintainers. My implementation may be utterly terrible though, so please review.
2020-09-24 05:45:33 -03:00
ArcaneDefence 0dd63ee9cd Adds icon_living states to cytology unique mobs (#53905) 2020-09-23 12:00:12 -07:00
NightRed 50a43ae8e1 Show a message when you are unable to succumb (#53753)
Show a message when you are unable to succumb.
This way you know why the command failed.
2020-09-23 06:55:38 -03:00
Timberpoes 21d0d618c8 Fix verbs tab not getting updated in certain instances (#53876)
There are a number of methods of assuming direct control of mobs or giving other players direct control. I have made sure these now appropriately update verbs.

Shamelessly ripped the functionality from /mob/dead/observer/verb/reenter_corpse() - It seemed to do what I wanted to accomplish in the same context.

I couldn't find any other method to refresh the verbs tab.
2020-09-23 06:50:03 -03:00
Tad Hardesty f80836d00d Fix broken dmdoc crosslinks (#53896)
- Backtick-escape code samples which contain `[]` syntax.
- Fix all crosslinks to nonexistent symbols.
- Somewhat improve docs for qdel defines, research defines, dynamic mode, and others.
- Remove unused bloodcrawling defines.

Some crosslinks to defined but undocumented symbols remain. For BYOND builtins, a future dmdoc version may link those symbols to their entries in the DM reference. Other symbols could be documented by a future PR.

New "file" crosslinks as used in `research.dm` are slated for release in a future dmdoc version.
2020-09-23 03:47:44 -03:00
Ryll Ryll 80cefef747 Fixes projectile impacts + messages, embedding, adds deployable landmines (#53436)
* icon and alert anim

* hmm

* projectile and embed fixes

* cap mine

* clean up, fix some issues with projectile embeds

* light

* doc

* icon

* awkward

* icon again
2020-09-23 07:53:55 +02:00
TiviPlus 72fc7213ed Mecha medical and other_equipment refactor (#53637) 2020-09-23 02:40:16 -03:00
skoglol 35456aef12 Merge pull request #53855 from imsxz/twaticus
About The Pull Request
i made a PR just like this like a year or 2 ago and it got closed under dubious circumstances, especially since it had more upvotes than downvotes. this is a feature that the community wants. it is a 5 line change PR, not much to note on it, very simple.

Why It's Good For The Game
/tg/ is lacking in roleplay tailored mechanics and instead relies on the good graces of the players to interact politely with each other.

Changelog
🆑 imsxz
add: you can now pat carbon mobs on the head.
/🆑
2020-09-23 06:40:01 +02:00
tralezab e44dcc035c Flower Buds now have a countdown for ghosts for when they're going to hatch (#53648)
They're two minute timers with no indication, which makes kudzu kinda annoying to spectate.
2020-09-23 00:50:26 +01:00
Timberpoes 91272259c6 Allow AI camera to move up Z-levels as well as down. (#53875)
* Fix eye

* Betterfeex

* Don't code while cooking
2020-09-22 16:46:51 -07:00
TiviPlus ff1631b7b9 Fully removes devil and affiliated shitcode (#53612)
Its all over the place, messy, and overall a bad enough gamemode to be removed from rotation.
A rework would have to tear out everything as is so there is no reason to allow the shitcode to live beyond tripping up everything.
2020-09-23 00:46:21 +01:00
Fikou e9b9cd8275 shades can now ventcrawl (#53862) 2020-09-22 12:22:29 +08:00
Jared-Fogle 470ea1f3ef Don't allow sentient ice demons to teleport (#53888)
If you know, you know. I think this affects more than just teleporting, but hm.
2020-09-21 16:24:58 -07:00
Ghilker 5d83a52bb6 Healium is too powerful we need to nerf it! (#53766)
Healium was too stronk, nerfed it to behave like a good gas.
Added coughing and euphoria mood if breathed in small quantities to alert the player.
Sleep if it is 3 moles in the air for 3 to 5 seconds
Sleep you if is more than 6 moles and it heals you while knocked down.
Lowered the amount of healing done

Edit: It doesnt knock you out, it makes you sleep now, since the knockdown effect was so strong that people wouldn't wake up
2020-09-21 00:17:58 -07:00
Timberpoes 07c32c7cd3 Fixes TRAIT_NOHUNGER on digestion and fat species that never stop being fat (#53764)
Issue was encountered during a Manuel round when a fatass became an Android.

Incorrect check for TRAIT_NOHUNGER in handle_digestion meant it was ignored and digestion code would always run.

Androids don't hunger, don't metabolise, don't eat. When a player turns into an android, if they were fat, they become a fat anrdroid. It then becomes incredibly difficult and annoying for admins to restore them back to normal. Admins trying to fix this manually can also create excess screen alerts, traits and moodlets as they triage the issue alongside the TRAIT_NOHUNGER bug that will constantly restore negative moodlets and throw screen alerts unless they set the status JUST RIGHT.

As a result, as well as fixing TRAIT_NOHUNGER I'm also hitting TRAIT_NOHUNGER species. I created a new proc to set hunger values to safe levels and call it on_species_gain for every TRAIT_NOHUNGER species.

Thanks to the Eric Fatsby who let me experiment on him to identify as many problem areas as I could.
2020-09-20 06:52:24 -03:00
Timberpoes 94963c7489 Fixes oversight with "tactical combat spinning" and flashes (#53823)
Using the spin emote can no longer let you RNG your way out of new flash mechanics.

Mobs have a new flag that is set to when they start spinning and unset when they stop.

Flashes now use this new flag when calcing deviation.

Tactical combat spinning using the spin emote now results in a full deviation flash when it may previously have resulted in a failure or half-deviation flash.

Emotes should either not influence combat at all (spin on floor when both players share the same loc, this was already handled by same-loc code), or negatively influence combat for the emote user (spin in all other circumtances, which is what this PR addresses).
2020-09-20 06:51:08 -03:00
imsxz 7e8a0c51c4 headpatsies ^w^ 2020-09-19 17:08:44 -04:00
TiviPlus c35008b1b0 Optimizes Conveyors (#53220)
Less proc overhead
Made the actual moving speedier
removed a unused var
2020-09-19 10:37:15 -03:00
Timberpoes 2aae205814 Fix runtime when pAIs access their menu then makes the runtime look their default look. (#53714)
Runtime was fixed by implementing the new, proper asset cache system. Up until the point where I realised this was the intended look for the pAI's internal interface...

I get the Geocities look, but I'm not going to inflict this back on pAIs. Even if it intentionally looks awful, I don't feel that it adds anything to the pAI experience. They're meant to be more advanced in some respects than NanoTrasen AI.

As such, I've removed this background asset entirely, removed the associated code and turned the runtime's behaviour into the default outcome - No Geocities background. Just plain white.
2020-09-19 08:08:32 -03:00
Timberpoes 1ebc7ad223 Fixes a dismemberment runtime (#53695)
Bunch of undocumented procs relating to wounds.

can_dismember is being called on the head from send_item_attack_message after the head is dismembered. At that point is has no owner and we get ourselves a bit of juicy runtime.

I suspect it's an order-of-operations issue. The wording of the text messages in send_item_attack_message seem to indicate that it's warning about the attack that is just about to happen. In /mob/living/attacked_by() the very first thing it does is call send_item_attack_message(), before apply_damage.

As such, I've made sure send_item_attack_message() is called before apply_damage in this instance too.
2020-09-19 08:06:13 -03:00
ArcaneDefence deb27eba5f Excessive spinning makes you woozy (#53805)
When attempting to spin while it's on cooldown carbons get a bit of dizziness and confusion in increments, and once it reaches a certain point they no longer get more confused, instead puking without purging their reagents.
This doesn't affect simplemobs, silicons, or using fists of the northstar to beyblade as a tot.
2020-09-18 22:07:12 -04:00
Mickyan d0b64d52cb impromptu bugfixing 2020-09-18 22:38:21 +02:00
Mickyan 6290e1d155 1 level falls 2020-09-18 19:41:52 +02:00
Mickyan f6a2c9480f hold my beer 2020-09-18 18:57:14 +02:00
infoman-cor 89167ffba9 Monkeys now examine themselves instead of self hugging (#53745)
More consistent with how humans interact. Fixes #53743.
2020-09-17 23:12:50 -07:00
TiviPlus 456723c4df Silicon deletion cleanup (#53680)
Law datums were referencing owner
Law datums were not being delled
Some MMI code was organized strangely
2020-09-16 23:48:25 -03:00
Azarak 91f897af09 Makes visible messages not be obstructed by darkness if you're next to the source (#53706)
If you're doing emotes in full darkness right next to someone, then the person won't see them, despite seeing your mob, which is counter-intuitive. This fixes that issue
2020-09-16 23:37:48 -03:00
Wayland-Smithy eac7d3a120 Makes the Ghost Whispers pref. toggle work with or without Ghost Ears enabled (#53738)
Adds the condition of !eavesdrop_range to the logic for determining weather or not a non-whispered speech message should be displayed based on our CHAT_GHOSTEARS preference. Making it so that the Ghost Ears setting is no longer checked if the message is whispered and therefore long distance whispers will no longer be suppressed if both preferences are not set to TRUE.
2020-09-16 20:58:11 -03:00
uomo 3d6946a7db Plasmamen psychologists now have an outfit. (#53750)
Not a new outfit, mind you. But this gives plasmamen psychologists a more fitting outfit, until one specifically for them gets sprited.
I think giving them a medical plasmaman helmet, enviroslacks (as given to the bartender, lawyer, detective), and white envirogloves is better than them looking mostly like plasma assistants.
2020-09-16 20:49:05 -03:00
ArcaneMusic d836946e8e Arcane finishes the fight and adds all the missing belt sprites and a worn sprite Admin Tool. (#53305) 2020-09-16 16:11:23 -03:00
Timberpoes 393ad935ea Fixes issue where self-resp and enabling Godmode may not clear the suffocating moodlet (#53715)
Clears suffocation-related flags while the user doesn't need to breathe due to the self-resp virus symptom or Godmode.
2020-09-15 19:22:17 -04:00
Timberpoes b8ce0aa519 Cyborg inventory runtime fix. (#53741)
Following the cyborg inventory refactor, code changed a bit.

Cyborg inventory screens are inited in the HUD, however AI Shells don't generate a HUD until an AI assumes direct control.

Damaging an AI shell before the AI created a HUD in it would cause runtimes as modules disabled and enabled.

To remedy this, we now initialize the core inventory slots on the robit Init() and then update them as necessary in the HUD code later on if an AI ever deigns to grace your shell with their exalted presence instead of asking for it and then never using it.
2020-09-15 19:04:09 -04:00
spookydonut c711270a38 Fix ventcrawling bug I merged (#53704)
#53672 introduced a bug because held_items always has the same number of indexes as the mob has hands
2020-09-15 18:58:52 +01:00
PolishUser 4f597c97c7 Breadcat (#53609)
* Introducing Bread Cat

* Introducing Bread Cat

* Introducing Bread Cat

* Message

* Introducing Bread Cat

* Naming

* Crafting + Return

* H

* hnnnng

* Why are we still here?

Co-authored-by: PolishUser <fakemail@fake.com>
2020-09-15 13:36:32 -04:00
Couls 75cdfc88f6 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 #53432
fix #53381
fix #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>
2020-09-14 23:36:46 -07:00
Putnam3145 d556f4a740 Unbads ventcrawling. (#53672) 2020-09-14 16:56:22 +08:00
Wallemations 11073f55ec Fixes some issues with sign language & makes some things more clear (#53610)
Changes the name of the recipe for the gloves to make them more clear
Adds a note in the tongue file to make sure it's clear you SHOULDN'T SEE THAT TONGUE.
Adds a unique chat message for mimes who use sign language, to make it clearer you can't cheese as a mime
Adds a unique slurring verb for drunkards
Removes the ability for sign languagers to use megaphones, which I forgot existed in the game. 
Punctuation removal now replaces all punctuation used with periods rather than with blank space, to reduce run-on sentences.
2020-09-12 18:57:49 -07:00
msgerbs 5fffce5d2d Adds better feedback related to husks (#53599)
Husks currently have basically zero ingame feedback other than the grey sprite. It should be abundantly obvious when somebody is a husk, given that it's such a huge physical change that it changes the sprite. This PR adds examine text to husks, and adds a message to the health scanner. The regular scanner will only tell you that they are a husk, the advanced scanner will tell you if they were husked by burns or by "extreme fluid loss" AKA lings (but burnt takes precedence so you can still burn your ling corpses to a crisp to help hide your tracks). The defib now also gives a message specifically for husks instead of a generic "tissue damage" message which normally means brute/burn damage.

I also updated the description of sythflesh and rezadone to mention that they can restore burnt husks, and replaced some hardcoded "burn" with the BURN constant.
2020-09-12 03:13:18 +01:00
msgerbs dde45a406d Fixes several things not unlocking when hit with an ID in a tablet. (#53600)
The following will now be unlockable by hitting them with an ID in a tablet:

    Bots
    Express supply console
    Air Alarms
2020-09-11 18:43:53 +01:00