Commit Graph

1702 Commits

Author SHA1 Message Date
Qustinnus a394ccdc2b Material datum chairs & tables and applies materials to all items (Now with less pain for mining & RnD) (#46525)
removes materials list from items, uses custom_materials instead. This might introduce some bugs so we should testmerge this for a while (and Ill test stuff locally as much as I can)

this also adds material crafting to sheets. Test case being chairs. In the future we can add stuff like tables, walls, doors etc.

also applies materials to everything, with fixes, which can close #46299
2019-10-08 11:06:02 -04:00
Qustinnus 81c3d92129 Adds pick-up, drop and throw sounds for items. (#46677)
* finishes up

* adds sound volumes

* woops

* forgot to ctrl + s

* cloth

* smh

* done
2019-10-04 18:53:09 -04:00
NikNakFlak c10dfbcde3 Adds a much needed pAI gameboy face sprite (#46839) 2019-10-03 12:15:42 -04:00
81Denton b1c7b0b23a Improved laser pointer logging (#46769) 2019-10-03 02:24:47 -07:00
81Denton 23123404f4 Chameleon projector exploit fixes (#46827)
* Stops Chameleon projectors from scanning stealth implant boxes

* Also stops holosign scanning

* Dab on mimes

* Replaces mime typepath checks with alpha/invisibility checks

* Alpha/invis checks

* Removes typepath check
2019-10-01 16:56:03 -04:00
Urumasi a6052138a9 Tweaks the iscatperson() helper to be in line with other helpers (#46771)
* Fixed iscatperson() helper

* Renamed iscatperson() to isfelind()

* Fixed bug after working on out of date branch

* Fix spelling mistake
2019-10-01 09:34:41 +02:00
nemvar dc783795db Renames is_hot and is_sharp to get_temperature and get_sharpness (#46680) 2019-09-23 14:02:59 -07:00
spookydonut 116958444b Replace some sleep()s with timers (#46631)
* replace some sleeps

* ooops callback typepath

* change per review
2019-09-22 03:01:32 -07:00
spookydonut 2f00e0caa7 Replaces some spawn()s with timers (#46629)
* removes some spawn calls

* fucking indents

* changes per review
2019-09-22 01:33:14 -07:00
Rob Bailey e25979b966 Merge pull request #46543 from carlarctg/its-curator-ok
laser pointer buff
2019-09-20 15:10:12 -07:00
nemvar 8cfe0f6467 Slightly improves visible and audible messages. (#46499)
* Doubtful improvement

* Switches out all the magic numbers with defines

* Thanks travis for finally finding a real error

* properly resolves some left over conflict
2019-09-18 12:52:18 +02:00
spookydonut 62b3fffe3b Removes unneeded client checks on GLOB.player_list contents (#46445)
About The Pull Request

All mobs in GLOB.player_list have clients attached and there is in fact a fair amount of code that is working fine without checking client on things in player_list. This pr just removes a bunch of checks for client when iterating over player_list.
2019-09-16 16:48:50 +12:00
Names Are Hard f764a3934a Adds a speech modifier to pAIs on EMP (#46411)
About The Pull Request

Makes it so pAIs either stutter, slur, or talk like a brainlet when they're EMPed. This can be fixed by someone pressing the "Reset speech synthesis module" button on the pAI card. Additionally, adds a 40% chance for their default language to be swapped.
Readded the mute, albeit a bit shorter, due to feedback.
Idea courtesy of Rogus.
image
Why It's Good For The Game

Mutes are boring. This adds a debuff that while less severe, persists for longer and requires the help of another player to fix.
Changelog

cl
tweak: pAI speech modules have been upgraded to be more EMP resistant, but they can now malfunction on EMP.
/cl
2019-09-16 16:48:25 +12:00
die 100a700bfb laser pointer buff 2019-09-15 12:54:34 -03:00
kingofkosmos 8358169b8e New 'hear' span class (#46369)
* Reverts italics-span back to no color.

* Cleans up many extra spaces and indents.

* Adds 'hear' span class.

* Replaces all 'italics' used in heard messages with 'hear'.
2019-09-14 23:56:34 -07:00
Twaticus afa96b9f0b mega (#46417) 2019-09-10 16:42:08 -04:00
Rob Bailey 2029163d33 playsound vary boolean define conversion (#46254)
About The Pull Request

Converts every single usage of playsound's vary parameter to use the boolean define instead of 1 or 0. I'm tired of people copypasting the incorrect usage.
Also changes a couple of places where a list was picked from instead of using get_sfx internal calls

This was done via regex:
(playsound\(.+,.+,.+, ?)1( ?\)| ?,.+\)) to match 1
(playsound\(.+,.+,.+, ?)0( ?\)| ?,.+\)) to match 0
full sed commands:
/(playsound\(.+,.+,.+, ?)1( ?\)| ?,.+\))/\1TRUE\2/ 1 to TRUE
/(playsound\(.+,.+,.+, ?)0( ?\)| ?,.+\))/\1FALSE\2/ 0 to FALSE

I'm not very good with regex and these could probably be optimized, but they worked.
Why It's Good For The Game

Code usability
2019-08-30 18:45:20 +12:00
kingofkosmos df1fecc58c Adds notice-span to visible_messages with no spans (#46044)
About The Pull Request

Adds 'notice' span class to all visible_messages which had no span class, making all those black messages blue.
Why It's Good For The Game

This should help differentiate action-messages from talking-messages in the chat. More actions will be blue, thus black talking-messages should pop out more.
2019-08-26 20:50:00 +12:00
bgobandit ab4abf318f Ports new animated medical scanner sprites from Polaris. (#45994)
Ports new medical scanner sprites from Polaris (PolarisSS13/Polaris#6357) that animate when they scan. They have more tiers of scanner than we do, so I specifically ported Basic for regular and Improved for advanced:

polaris scanners

The traitor scanner doesn't have an animation currently, but it does have the same subtle visual difference (all red pixels up top instead of red-yellow-green) as our old sprite.
Why It's Good For The Game

Because I like these sprites.
Changelog

cl bandit
imageadd: Medical scanners now have animated sprites. Thanks Michiyamenotehifunana of Polaris.
/cl
2019-08-26 20:43:41 +12:00
carlarctg b609fb60af Fix powersink message formatting (#46116)
Fixes a typo in syndicatebeacon.dm and makes src consistent.
2019-08-25 13:49:24 -07:00
tralezab aaca9360b8 [READY] LIZARD WINGS for the flight potion, flight potion no longer makes you new species (#46037)
* HEY RACISM GOT A SPRITE ACCESSORY FOR YA

* angel + dragonborn > givespeciesflight

* more review stuff

* last of the review stuff

* compile

* readds my fix

* Boolean numero uno

* Boolean numero dos
2019-08-24 00:11:25 -07:00
carlarctg 189964ef26 Powersink now wrenchs into the grid instead of being screwdrivered into it. (#46038)
* wrench

* PR creep
2019-08-22 17:27:11 -07:00
Akrilla c5b11dc283 Adds cancel buttons to inputs (#45825)
About The Pull Request

Adds cancel buttons to input boxes that didn't have them before.
Why It's Good For The Game

Good UX.
Changelog

cl
add: More cancel buttons.
/cl
2019-08-21 11:25:41 +12:00
nemvar d93f31f388 Removes airlock charges. (#45989)
* Removes airlock charges.

* stuff for the bundle

* formatting fix.

* Adds the sabotage bag
2019-08-20 09:47:06 -04:00
carlarctg 15717dda7a Gives borg tools unused sprites (#45939)
* where's the get good button

>adds some borgtools
>fills empty tool pixels with 254 transparency pixels

* tool stuff

* fixes icon

* repoked

* cobbdescus part 123/X: cobbtool cobbmove cobbreview
2019-08-17 23:48:26 -07:00
81Denton 1c4036b309 [TMC] Explosion rebalancing (#45819)
* megumin is best girl fucking fight me

* what kind of smoothbrain capizalized these

* uses explosion defines

* more explosion defines

* Removes reagent explosion code for <1 amounts

* Scales explosion knockdown off bomb_armor
2019-08-14 10:55:50 -04:00
81Denton 24b21c19e2 Laserpointer scaling fix (#45860)
h
2019-08-12 20:29:42 -07:00
nemvar 02251be5ac Turns Gibberish code into something that's not gibberish (#45753) 2019-08-09 11:32:32 +12:00
81Denton 7b8579c17a Minor ghost notify changes (#45759) 2019-08-08 01:47:04 -07:00
kingofkosmos c3ea51908d Adds "you" to local visible_messages (#45631)
* adds "you" to some combat visible_messages.

* more you-messages and attack verbs to present tense.

* small fixes

* more additions and small fixes

* few message tweaks

* Fixes a typo and few other wordings.
2019-08-06 02:15:34 -07:00
nemvar 4d5fb1a578 Adds a GPS component. (#45660)
* Adds a GPS component. Megafauna no longer needs gps implants.

* Removes commented out code.

* Removes the last internal radio

* I was already wondering why the diff was so small
2019-08-05 19:13:19 -07:00
nemvar ccbb0a91d7 Cleans up some martial art code. (#45502)
* Removes/Moves some weirdly placed variables in martial arts. Splits NO_GUNS and CHUNCKY_FINGERS traits.

* Maybe this should actually compile

* c begone
2019-08-05 16:58:12 -07:00
Rob Bailey fcb98515e6 Merge pull request #45534 from nemvar/istype(src)
Removes some istype(src) stuff
2019-07-29 18:55:21 -07:00
RandolfTheMeh 48fbc073e5 [TMC] Defib Rework, Organ Damage Effects (#45104)
* Brain damage works on organ damage procs, some defib reworks

* Heart and Lung damaging effects and failure, liver damage and failure moved to its organ again

* Cleans up reused global

* Organ damage procs on living and living/carbon

* Changes brain damage procs again

* SR heals all organs on revive, no decay for cybernetic implants, stomach damage and fail effects.

* Damage and failure effects for the appendix, ears, and some touchups on the stomach

* Committing changes so I don't lose them

* Organs now cease decaying in the proper containers

* Organ Fridges

* Reverts map changes

* Adds coronary bypass, lobectomy, trying to deal with organ_stat runtime

* Actually fixes merge conflict

* Smartfridge tweaks

* Think I figured out map merger

* Evidently not

* Still runtiming with glass shards even after I remove the map changes?

* Fixes runtime error with brain_item

* Runtime fix on living/carbon/life

* Cleaning up old PR code

* Brain damage fix, moves defines to actually be in _DEFINES, under DNA since that's where organ slots were

* Wrong math operation used

* Brains in MMIs no longer decay

* Removes redundant variable, and defibs no longer work on heart attacks caused by failing hearts

* Removes misleading comment

* init freezes organs in case organ crates are added, morgue corpses are frozen, removes adjustLiverLoss

* Removes random spaces, scanners check brain damage severity now

* Swaps numbers for defines, fixes brain surgery, rebalances coronary bypass bleed since that was insane last I tested it

* List change

* Runs off of an index instead of using cut

* Brains can be put into organ fridges

* Fixes minor type, hotfix for cloning problem

* Removes pointless check

* Demon hearts no longer decay

* Nightmare hearts no longer decay

* Removes istype() check on process, sets can_decompose instead

* Condenses organ damage report

* Removes organ failure messages

* Less organ damage spam, implements organ threshold messages instead

* Brain damage messages go to owner, not source

* Self-examine shows damaged organs

* Minor code cleanup, adds autodoc comments to the new procs

* Inverts standard organ vars to prevent random organs decaying, adds a few more autodoc comments.

* Merged the booleans into a set of flags

* Healthy living improves organ healing rates

* dunno why this didn't update

* my actions have consequences

* Sets ORGAN_SYNTHETIC for overlooked robotics organs

* Doubles heart decay time

* 3 minute heart decay

* Lobectomy/Coronary_Bypass heal more

* removes hivemind spells from the changes
2019-07-29 02:18:22 -07:00
nemvar dabbd79ca9 Filthy override 2019-07-28 18:46:05 +02:00
nemvar f7c9751d69 Removes some istype(src) stuff 2019-07-27 22:55:49 +02:00
Qustinnus b33d1c49a3 [READY] Floydmats (Datum materials) & custom toolboxes (#45118)
* Initial work

* more

* ass

* wsedfwedff

* asss

* test

* stuff

* fuck

* sss

a

* kms

* asdadwedwdfwefwef

* start

* test

* dwwdew

* ewefwfef

* Redemption machine (#8)

* Redemption machine

* Removes debug messages

* changes

* fuckmyshitup

* coin mint works with new material shenanigans (#10)

* Auto stash before merge of "materials" and "origin/materials"

* woops

* furnace (#11)

* autolathe manufacturing of toolboxes

* eggs in a basket

* some small changes

* matcolors

* documentation

* more documentation and effects

* done

* Color man bad (#12)

* fixes designs

* ass

* more fixes

* fuck me

* firestacks adder

* epic fixes

* fixes designs

* DONE DIDDILY DOO

* removes category macro

* ch-ch-ch-changes

* fixes some stuff

* Fixes display of ore values (#9)

* Redemption machine

* Removes debug messages

* Re-adds value display

* Replaces the fire stacking component with an element instead (#13)

* fixes examine

* fixes ligma bugs

* double ligma boofus

* fix

* misses some defines

* fixes ORM

* Update code/datums/components/material_container.dm

Co-Authored-By: Emmett Gaines <ninjanomnom@gmail.com>

* fixes

* Makes glass objects weaker (#14)

* Makes glass objects weaker

* uses correct proc

* fixes shit

* honk honk

* better

* oh shit oh fuck

* fixes

* fuck ORMs

* fixes the biogen

* documentation

* ass (#15)

* component

* changes

* ass

* ass

* doc

* Auto stash before merge of "materials-plasmacomponent" and "origin/materials-plasmacomponent"

* fixes rounding

* fixed
2019-07-24 11:27:01 -04:00
Akrilla 92b100a2d7 PDA now accepts ID card when in inventory (#45037)
* id card pda

* cleanup
2019-07-12 19:14:32 +02:00
AnturK 1c0112c7e9 Fixes gps runtime. 2019-07-08 12:11:05 +02:00
XDTM 499d605323 Fix swappers not working (#45027) 2019-07-07 20:58:57 -07:00
XDTM 4d6159966a Add Quantum Spin Inverter, aka Swapper (#44866)
Adds the Quantum Spin Inverter device to the science protolathe under
the Miniaturized Bluespace node. Basically a remote that swaps the
user with its connected twin, along with any movable containers, like
lockers.

Another fancy teleportation gadget to use in some creative way. An
important element it has is that it teleports its containers as well,
meaning that for example you can hide it in a box inside a bag
somewhere, and trigger its twin when someone picks it up for an easy
kidnapping.
2019-07-05 16:16:47 -07:00
RandolfTheMeh e9dab4c665 Universal Organ Damage system (#44710)
About The Pull Request

So organ damage is a thing now associated with general object of organ, meaning all organs inherit a damage variable, failing boolean, healing variable, and maxHealth variable. The proc applyOrganDamage takes in the damage and organ path, applying damage/healing to said organ. While an organ is in use, it heals a small amount over time (granted the organ is not failing), with this fraction being set by the healing variable.

This also reworks preexisting organ damage systems to function more so on the universal organ damage system, the liver specifically. So much code exists in regards to eyes/blindness and ears/deafness that I'll need to go ahead and take a longer time combing through the code to get everything that can reasonably be tied to those two organs and their level of damage reworked to function off of the organ damage system, as opposed to just a trait add/remove system.

Lastly, this slightly reworks scanners, since now you need to check for every organ in the body. Since organs are stored as "the [organ]" with the method I used to get them, the phrasing on the medical scanner was changed to make more sense given it now has to say something along the lines of "severe/minor damage detected within [the organ]". I'll likely add another proc if I cannot find a way to get the organ's max health during this operation, since a static number determining minor/severe damage does not work when an organ's max health is less than the typical 100 points (as is the case with eyes).
Why It's Good For The Game

Every organ can be damaged, though not every damaged organ does anything right now. Damaged livers do the same thing as they did previously, and damaged eyes develop varying levels of vision impairments. The benefits to this PR are more for future coding projects than it is for the game currently, with no foreseeable changes to the way it's played currently.
Changelog

cl
code: Universal Organ Damage variables and procs
/cl
2019-07-05 09:40:30 +12:00
Nick a8197eb3dd Citations (#44853)
* Citations Step 1 - New Datacore Stuff

* Committing before merging with master

* Initial work on PDA messaging

* Adds support for automated PDA messages

This is just a flag that, when set, replaces the standard (Reply) href with a static "automated message" message

* Citations now generate PDA messages

The target of a citation will be notified via PDA message

* Escaping some non-optimal characters in PDA messages

* Creates a public warrant computer

Initial framework. Computer machine and circuit. Adds it to the DME.

* We're gonna flipflop on this for a while

* Removing unneeded functions

This is a read-only terminal, so we don't need to have all this code for managing entries and updating fields

* Whoops

So this is why byond was warning me about unused vars

* Need some help

Pushing this commit because I got this into a state where it doesn't work right

* Adds support to pay fines!

* Map changes. Adds a warrant console to the hallway outside the brig and law office on Box.

* Adds some checks to fine creation

* Aaaaand more work on paying citations

* Paying citations works! The money goes into the defense budget!

* More functionality and usability changes

* Adds warrant consoles to the rest of the maps

* Cleaning up text

* Rewrote warrant computer to be more up to date.

* Fines are capped to 1000 credits

* Requested changes

* Citations can now be paid with holochips and warrant consoles don't require your ID to be inserted.

* Fines can be paid from security record consoles, and more feedback messages

* Citation payments now actually go into the defense budget for real

* Removing even more unused code!

* Removes unused code (emp_act and ID handling)

* More unused code for the unused code gods

* ID card reference is now just fetching attached name.

* remove simple mob typepath kthx for the remove simple mob typepath kthx gods

* one usr, many M
2019-07-03 20:19:05 +02:00
oranges 64460ae3ca Merge pull request #44825 from AutomaticFrenzy/patch/lints
In advance of eventually adding SpacemanDMM's linter to Travis, fix everything it can currently detect.

Some lists, including global lists, are given types so that L[i].foo expressions can be checked.

Some procs are given a new form of return type annotation so that DuplicateObject(O).forceMove()-type invocations can be checked.

Open to syntax suggestions on the return type annotations, and on whether the preprocessor strategy makes sense.

Return type syntax is currently roughly:

    <typepath> | <paramname>([_])*(.type)?
2019-07-03 19:31:11 +12:00
kingofkosmos c969f6d3eb Merge branch 'master' into addswarningspans 2019-06-27 15:12:54 +03:00
kingofkosmos ec5c82029a * "Is already...", "Can not...", "Not when..." etc. 2019-06-27 06:15:43 +03:00
kingofkosmos d7dd679b5a Fix span endings (#44812)
Adds a slash to instances of <span>" --> </span>".
2019-06-26 15:11:03 -07:00
Tad Hardesty ba95173289 Fix keyword argument warnings 2019-06-26 01:59:57 -07:00
kingofkosmos 6bbb64e2cf * more warnings 2019-06-25 21:46:21 +03:00
kingofkosmos fb9731492c * extra spaces removed from "span class = '" --> "span class='"
* warning-spans added to cases of "You need..."
2019-06-25 21:03:25 +03:00