Commit Graph

121 Commits

Author SHA1 Message Date
Tad Hardesty
570a4da33e Replace 'throw EXCEPTION' with CRASH or WARNING 2019-03-19 23:09:24 -07:00
ShizCalev
9cd14eb021 Fix regenerative core only working below CRIT_THRESHOLD instead of at it (#43062) 2019-03-09 13:16:18 -08:00
TerraGS
c3fb41599e Adds toggleable light and blinking charging light to crusher (#42520)
* Adds toggleable light and blinking charging light to crusher

* no need for tool procs in this type path
2019-02-09 22:44:20 +11:00
4dplanner
ea4234cd81 legion cores remove CC instead of adminhealing [READY] (#42378)
* legion cores remove CC

* legion -> regenerative

* lore

* Icons

fixes last reference to legion core in status

* Automatic creation of classes is possibly the worst feature of all time

* Moves remove_CC

* Review changes
2019-01-22 11:57:53 -05:00
coiax
881e8c1ab9 Refactors NODROP flag into TRAIT_NODROP (#42109)
* Refactors NODROP flag into TRAIT_NODROP

🆑 coiax
fix: Anti-drop implants can no longer be used to drop objects that they
were not responsible for sticking to a person's hand.
fix: Backfiring with a Barnyard spellbook will now play a spooky horse sound.
refactor: Refactors the way that "NODROP" items work to a new system,
there should be no change in functionality.
/🆑

Various items in the codebase were doing weird hoop jumps in order to
preserve the nodrop flag's state when it also wanted to change it, so I
moved it to a trait system.

I may have gone overboard with the type of unique trait sources, but
those can be changed later. My long term plan is make a general "CURSED"
nodrop origin, which means you can unlock cursed items by being hit with
a bolt of door opening or something. But that's for another PR, this has
no functionality changes, apart from some slightly modified descriptions
on cursed masks.

- Removed a bunch of redundant voice changing code for all the voice
changing animal masks, used two new clothing flags for this purpose.
- Also refactored a bit the animal masks, making new cursed subtypes that play
the sound when created.

* Drop location
2019-01-17 15:24:30 -05:00
moo
090ccae5d6 Watcher's Wing No Longer Perma-Disarms (#41708) 2018-11-29 22:17:28 -08:00
Jordan Brown
2f9d0c7c98 Apply suggestions from code review
Co-Authored-By: kriskog <33292112+kriskog@users.noreply.github.com>
2018-11-24 19:30:56 +01:00
skoglol
e08666eb44 Adds light eater interaction to marker beacons 2018-11-24 19:02:09 +01:00
swindly
4bcd3cdc55 fixes word crimes 2018-11-19 17:56:59 -05:00
ShizCalev
2088a9ce90 Cyborg modules now automatically turn off when deactivated (#41326)
* Cyborg modules turn off when deactivated

* gives mining borgs built in mining scanners
2018-11-13 01:53:14 -05:00
Qustinnus
3b12a40fcc Legion core / aheal now only removes temp moodies. also bad moodie for using it (#40657)
cl Floyd / Qustinnus
fix: Legion core / aheal now only removes temp moodies
add: Legion cores now give you a bad moodlet
/cl

#40110

fixes
2018-10-17 23:18:59 +13:00
kevinz000
3e7184c975 Combat/Stun (slip) overhaul staging, mobility flags, adds crawling (#39967)
Aiming to implement the framework oranges has detailed in https://tgstation13.org/phpBB/viewtopic.php?f=10&t=19102
Moves canmove to a bitflag in a new variable called mobility_flags, that will allow finer grain control of what someone can do codewise, for example, letting them move but not stand up, or stand up but not move.

Adds Immobilize()d status effect that freezes movement but does not prevent anything else.
Adds Paralyze()d which is oldstun "You can't do anything at all and knock down).
Stun() will now prevent any item/UI usage and movement (which is similar to before).
Knockdown() will now only knockdown without preventing item usage/movement.
People knocked down will be able to crawl at softcrit-speeds
Refactors some /mob variables and procs to /mob/living.
update_canmove() refactored to update_mobility() and will handle mobility_flags instead of the removed canmove

cl
rscadd: Crawling is now possible if you are down but not stunned. Obviously, you will be slower.
/cl
Refactors are done. I'd rather get this merged faster than try to fine tune stuff like slips. The most obvious gameplay effect this pr has will be crawling, and I believe I made tiny tweaks but I can't find it Anything I missed or weird behavior should be reported.
2018-10-11 11:22:21 +13:00
ShizCalev
1175a83e88 Correct blue space to bluespace (#40746) 2018-10-09 11:31:15 -07:00
ShizCalev
2fa1ac1349 Replaces istypes with the proper tool_behaviour checks. (#40414) 2018-10-01 03:10:31 +03:00
Patrick Chieppe
2c8248575a Logging system refactor and improvement (#39521)
* Refactor several log lines to use datum_info_line and atom_loc_line

* Add default return strings from datum_info_line and atom_loc_line

* Add parentheses around atom_loc_line data

* Change more logs to use atom_loc_line

* Add check in atom_loc_line for turfs to avoid calling get_turf on them

* Re-add removed 'at'

* Replace datum_info_line with key_name and atom_loc_line with loc_name

* Refactor logging functions

* Avoid double-logging self-interactions

* Fallback to simple stringification if all else fails in key_name()

* Rewrite muscle spasm logging to use log_message

* Standardize logging of martial arts

* Tweak individual logging panel look

* Fix individual logging panel source

* When I typed || I really meant &&

* Fix Telecomms logging always showing client logs in the panel

* Reverts addition of buggy ownership log to panel

* Remove colon

* Fix missing log_directed_talk tag

* Add warning for missing type in log_direted_talk

* Change warnings to stack_traces

* Add square brackets around fallthrough key_name() case to help parsing

* Allow atom arguments/src in log_*() functions

* Change log_combat call with null argument to log_message

* Change mecha types' log_message() arguments to match atom and mob version

* Add key_name() case for atoms

* Fix resist_grab() unsetting pulledby before log_combat gets a chance to use it

* Fix log_globally logic

* Add logging for hitting objects with items

* Move log_combat() to atoms.dm

* Use utility functions for object stringification in log_combat()

* Use utility functions for object stringification in log_combat()

* Add missing logs for interacting with display cases

* Rewrite log_combat() comment

* Add missing space in log_combat()

* Add logging for hitting grilles barehanded

* Add missing ..()
2018-08-12 21:41:09 +02:00
Tad Hardesty
52eca1a74f Combine fire immunity suit/helm temperature defines 2018-07-29 22:10:49 -07:00
Grandmother of 50
ef64f77acb Removes icon-on / icon-off from Smartfridge Types (#39251)
Uses initial() to replace 2 vars
2018-07-23 20:25:30 -04:00
AnturK
72e9cea3b6 Makes objects blocking air restore airflow in /atom/Destroy (#39210) 2018-07-21 06:28:57 -04:00
Grandmother of 50
90a1b8c363 Mood Code Improvements [Merge-Ready?] (#39075)
fix: having higher sanity is no longer punished by making you enter crit faster
balance: you can have 100 mood instead of 99 before it starts slowly decreasing


Remember higher sanity is BETTER

You want crit_modifier (now crit_threshold) to be LOW so you can stay in fights more (you go into crit at 5hp vs 0hp).

Why: Proc overhead, puts the load on mood, proper abstraction of mood component, values > defines, etc.
2018-07-20 11:33:00 +12:00
Qustinnus
284f90a3ab Makes some requested changes to mood (#38851)
cl Floyd
del: removed beauty / dirtyness
balance: Mood no longer gives you hallucinations, instead makes you go into crit sooner
/cl

oranges requested these changes, i havn't coded in DM for a while so I might have made some mistakes
2018-07-08 13:50:54 +12:00
Trevor Serpas
bee0b5b2c3 Afterattack() Signal (#38606)
* adds signal and modifies each call of afterattack to call it's inherited proc

* uses new macro for sendsignal()

* map fuck

* skip precommithooks

* combine and negate 2 ifs
2018-07-07 02:00:25 -04:00
AnturK
57028bfa4b Adds missing TIMER_UNIQUE to TIMER_OVERRIDE 2018-06-27 12:54:02 +02:00
Tad Hardesty
05107047dc Merge pull request #38098 from kevinz000/transit_space_refactor
Transit space refactor
2018-06-16 12:40:37 -07:00
ShizCalev
3abd2b6d27 Cleans up logging 2018-06-09 15:51:58 -04:00
AnturK
8140d95758 High Gravity - First Draft (#38043)
* High Gravity - First Draft

* Replaces has_gravity defines for areas.

* Default gravity ztrait

* Adds some gravity effect and skips damage at gravity = 2

* Paralysis icon

* Antigravity grenades for some abuse

* Makes the damage treshold a define and makes alert description more accurate.

* Bluh
2018-06-08 15:48:07 +03:00
AnturK
04e3af6abc Fixes jaunter emp effect. (#38331)
* Fixes jaunter emp effect.

* Sure
2018-06-08 14:05:57 +03:00
kevinz000
7bf86ed53f Refactors transit requests to turf_reservations. 2018-06-04 16:30:15 -07:00
vuonojenmustaturska
c65a99f130 Move NODROP_1, DROPDEL_1, ABSTRACT_1 and NOBLUDGEON_1 to item_flags where they belong (#38171)
* (mostly) nodrop

* (mostly) dropdel

* (mostly) abstract

* nobludgeon

* things i missed

* forgot one

* unintended changes

* energy handcuffs
2018-06-01 11:36:31 +02:00
ShizCalev
c41d6ac965 Standardizes and cleans up some admin messages & logging (#38128)
* Improved logging

* Fixes & emitter logging

* ded
2018-05-30 21:57:06 -07:00
vuonojenmustaturska
1eccbcca18 Adds an EMP protection component, allowing ANYTHING to be protected from EMP (#37671)
The component is initialized with any combination of three flags, EMP_PROTECT_SELF protects against effects that target the object itself, EMP_PROTECT_WIRES protects against wires being messed with similar to the NO_EMP_WIRES_1 flag which this PR removes, EMP_PROTECT_CONTENTS protects against things that are inside the object like organs, internal "non-virtual" power cells and the like

This enables (but doesn't introduce) new mechanics such as adding EMP shielding at runtime to any atom, or taking it away.
2018-05-22 11:38:02 +12:00
Tad Hardesty
0db63c886e Fix wormhole jaunter grammar 2018-05-21 13:45:31 -07:00
Barhandar
9012ab82b3 Replaces adding goliath plates to clothing and APLUs with a customizable tracking component (#37525)
add: Amount of goliath plates is now shown in examine for explorer suits and mining hardsuits.


I was peeved by being unable to tell whether the armour is upgraded or not except by trying to stick more plates on it.

I think a more correct way would be to add a plate amount var to these items similarly to APLU plating and then have description mention their amount and, for added transparency, that it's possible to improve it if there's 0 plates.

Please point the errors/wrongs in it, since "current armour value minus constant divided by value each plate adds" is rather clunky code.
2018-05-14 11:55:31 +12:00
ShizCalev
ba1030f803 Makes more messages pronoun sensitive (#37582)
* Makes more messages pronoun sensitive

* Some cleanup

* more pronouns

* rever
2018-05-03 18:45:55 -04:00
vuonojenmustaturska
98f8ca7553 Moves several clothing-specific flags from /atom to their proper type (#37486)
* lavaproof

* more flags

* it compiles

* Remove a couple of lists
2018-04-28 13:22:28 -05:00
AnturK
52a99c09d6 Uppercase slot defines 2018-04-27 10:38:32 +02:00
AnturK
4c5a43eeb8 Prefix for item flag slot defines. 2018-04-27 10:30:48 +02:00
Fox McCloud
057aa31cda Kills off /obj/item/device (#37297)
* Kills off /obj/item/device

* whoops

* whoops

* Fix
2018-04-23 15:00:23 +02:00
ShizCalev
d77eb3df50 Adds new window spawners 2018-04-18 13:50:59 -05:00
Armhulen
5ed2a56ced Refactors Spell and Martial Art Books to use Action Granters! (#36442)
* HE'S DONE IT

LETS GOOOOOOOOOOOOOOOH

* floyd. floyd. he's the floyd. floyd dude yeah yeah yeah yeah FLOYD

* fireball remarks, the other spells.

* YOU MEAN THE CHAOS FLOYDS

* what is a floyd, but a miserable pile of moodlets

* flflflflfoooaooayoyydd FLOYOYODDD DFFRRURURMPPFF

* FLOYDING LIGHTS LIGHTS LIGHTS LIGHTSSS

* GORGE YOUR MOODLETS, EMBRACE YOUR FLOYD

* no more floydposting, i removed the old spellbooks

* aaaaaaaaaaaaaaaaaaah ALL of the remarks added my fucking god

* 10 days to sunday travis.

* last minute fixes

* 1 fix

* 2 fix

* red fix

* martial granters

* MAMA MIA
2018-03-27 20:51:14 +03:00
kevinz000
f300a5c155 Interaction/Attack Hand Refactor (#36405) 2018-03-23 11:20:54 +01:00
Dax Dupont
f8c5febcc8 Beacons are no longer radios (#36070)
* Refactors beacons

* Updates maps

* Done

* aaddddasddsafsdf
2018-03-07 14:43:12 -06:00
BordListian
88c637f47f Allows the auxbase camera console to place airlocks on fans (#35975)
* - Allows the aux base rcd to commit the same atrocities as the regular rcd
- Rids us of another value that does nothing

* first and only webeditor commit
2018-03-05 01:03:02 -06:00
Ashe Higgs
7c38e7eac3 Refactors butchering to a component - item-based butchering effectiveness, speed, and chances (#35744)
* Butchering component

* auto-butchering based on toolspeed

* Gives drills their butchering back

* redoes toggles
2018-02-26 09:50:16 +13:00
Joan Lung
c5a20f97c8 Makes the watcher wing crusher trophy less effective 2018-02-17 17:33:35 -06:00
Jordan Brown
d282c60c7d Quote the armor lists (#35668) 2018-02-16 01:25:42 -05:00
Leo
0d08c55ab9 Merge pull request #35617 from ChangelingRain/crusherdescfix
Makes the kinetic crusher's damage on examine a little more accurate
2018-02-14 13:25:17 -02:00
Joan Lung
dd8bdb9e01 Makes the kinetic crusher's damage on examine a little more accurate 2018-02-12 22:34:58 -05:00
ACCount12
2169e8638c Makes mining tools use use_tool and have tool_behaviour 2018-02-13 00:09:50 +03:00
ACCount
c6e607dc17 Refactors use_sound and changes the way tools play sounds (#35521)
* Adds list support to usesound, ports drills to usesound

* Adds more tool sounds, changes usesound usage to play_tool_sound

* fix
2018-02-12 17:16:47 +02:00
ShizCalev
bfde5ac057 [s] Fixes altclick exploits (#35456)
* Fixes altclick exploits

* Removed free spam, fixes monkey altclicks

* replaced named args with proper defines

* More cleanup and fixes

* Better yet

* Another exploit fix

* pet carrier fix
2018-02-11 16:06:12 +13:00