Commit Graph

50 Commits

Author SHA1 Message Date
Fikou
31ab3ac830 power tool refactor (#46974)
Power tool refactor
2019-10-13 20:34:52 +02:00
James
fffb74bdcf [READY] Welders consume fuel when they destroy an object during attack (#46842)
About The Pull Request

Welders didn't actually consume fuel if their attack deleted an object. This was first noticed when welding space vines, in that the welder didn't consume any fuel to do so. Further testing showed that this was the case for any object that gets destroyed on hit, including APCs, Air Alarms, Girders etc.

Problem was that the code for actually consuming fuel after an attack is in the afterattack proc which doesn't actually get called if the target is QDELETED. PR moves that code to the attack proc, along with (regrettably) implementing attack_obj too. This feels hacky and reeks of duplicate code, so if anyone has a better option for how I could implement this fix I'm all ears.
Why It's Good For The Game

Fixes unintentional behavior
Changelog

cl
fix: Welders now consume fuel when they destroy an object
/cl
2019-10-13 16:41:14 +13:00
Fikou
714b0ae2f1 the power of the M E D I C A L W R E N C H now makes you glow (#46927)
* awoo

* awoo

* no awoo $50 fine
2019-10-08 23:21:08 +02:00
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
nemvar
dc783795db Renames is_hot and is_sharp to get_temperature and get_sharpness (#46680) 2019-09-23 14:02:59 -07:00
Rob Bailey
07070d6f3b Crowbar fix but properly this time (#46570)
* powertool fix

* adds a missing return
2019-09-17 14:00:25 +12: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
Rob Bailey
26b04ede42 Obliterates item_color: new washing machine functionality edition (#45961)
About The Pull Request

Completely removes item_color and the clusterfuck of bad programming it caused.

In places where item_color was used for entirely unique purposes it was split off and renamed to a new var on that typepath only, or refactored so it wasn't needed

In places where item_color was used as a dye color, it was converted to the new dye_color var

In places where item_color was used as the worn overlay it was removed and instead now icon_state is always used as the clothing overlay.

A new mob_overlay_icon var was added for manually setting where the mob overlay icon path is for specific items.

Moved some mob overlay files relating to clothing to their own directory as well for organization purposes.

Totally refactors washing machines, instead of the horrible abortion that was iterating through the typepath it now uses a registry of dye results.

Some bonus functionality to come out of this:
the washing machine now supports arbitrary dye colors.
Why It's Good For The Game

It's been 4 years since the "this should be deprecated soonish" comment was added, and this var is a shitpile of confusion if you just trace the usage of it.
Changelog

cl
add: Washing machines now support arbitrary dye color
add: Washing machines now dye nearly every item.
refactor: lots of backend changes to clothing overlays, report any issues
/cl
2019-08-26 20:38:11 +12: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
blessedmulligan
36da801edd welders no longer flash the user if the user somehow manages to not be adjacent to the welder 2019-07-27 21:43:09 -05: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
vuonojenmustaturska
8ddc9677c7 examine-code refactor (#44636)
* 1/4 done? maybe?

* more

* stuff

* incremental stuff

* stuff

* stuff & things

* mostly done but not yet

* stuffing

* stuffing 2: electric boogaloo

* Git Commit and the Kingdom of the Crystal Skull

* make it actually compile

* found more stuff

* fixes

* fix AI laws appearing out of order

* fix windows

* should be the remaining stuff

* this time for real

* i guess it should compile too

* fix sechuds
2019-06-19 22:07:57 +02:00
vuonojenmustaturska
6a106bc877 Remove reagent ids and use typepaths where applicable (#44166)
cl Naksu
code: reagent IDs have been removed in favor using reagent typepaths where applicable
fix: mechas, borg hyposprays etc no longer display internal reagent ids to the player
/cl
2019-05-31 21:57:26 +12:00
vuonojenmustaturska
fb45b7a017 Turns trait accessors into defines, fixes some bugs (#43820)
It's free performance.
2019-05-06 19:44:05 -04:00
ShizCalev
ebe3cb2442 Improve grammar on prosthetic limb repair message (#43204)
Repairing robotic limbs attached to yourself will no longer refer to you
in the third person.
2019-03-20 15:46:05 -07:00
Qustinnus
e1d360ff05 [ready] Golem DLC pass 2018 (Adds new golem types) (#41951)
* Bronze golem

* adds creation

ad

* removes shit adds shit

* temp

* fff

* bone, leather and cardboard

* fff

* boneyard

* temp

* ahahahha dumb moron

* adds durathread golem sprites

* reee

* ass

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

* fix

* uuh

* d

doned

* remove dupe
2019-01-16 13:42:20 -05:00
Jack Edge
054647c382 Refactors container_type into reagents.flags 2018-12-18 13:47:11 +00:00
moo
88e17d3ff4 Power Tools (#41933)
cl Toolby
balance: Power tools now perform construction slower than the toolarm implant (but still incredibly faster than normal tools)
balance: This is to promote trusting a player rather than safely printing off an item via techfab.
/cl

Reasoning: As said in the Advanced Surgery PR, The act of trusting an individual who could possibly be able to kill you should supercede the mineral cost difference (we do not balance those) and techweb cost difference (sorta balanced those) between powertools and toolarm implant. This will also mean that the CE now has a vested interest in Science/Medical efforts since he can get better tools, while still making powertools a considerably better item than normal tools (30% increase and less storage slots).

Also said in the Advanced Surgery PR, if construction is insufferable with both number-wise we can look at beefing down the numbers (with the implant still being preferred option).
2018-12-16 13:06:26 +13:00
Denton
877d3cea69 Fixes heat sources not igniting things 2018-12-02 19:06:20 +01: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
ShizCalev
87faef9019 Adds logging to reagent transfers 2018-10-31 08:36:21 -04:00
ShizCalev
2fa1ac1349 Replaces istypes with the proper tool_behaviour checks. (#40414) 2018-10-01 03:10:31 +03:00
octareenroon91
e2eea456a8 Fix alien screwdrivers not appearing on toolbelts (#40345)
There was no icon in belt_overlays.dmi for "screwdriver_a". I'm using
"screwdriver_nuke" since they're basically all-black.
2018-09-19 17:56:38 -07: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
Mickyan
eb9fa0d8f5 Add pacifism check for screwdriver/bottle attacks (#38416) 2018-06-13 00:22:26 -07:00
deathride58
c5a0e14acb Tones down values for a lot of different hotspot_expose calls (#38232)
* Tones down values for a lot of different hotspot_expose calls

* Update LINDA_fire.dm (#38217)

* Automatic changelog compile, [ci skip]

* Slight changes to camera network code (#38223)

* Removes a useless var and corrects two cameras to use the automatic naming system to reduce dv usage.

* Damn github didnt notice this was here....

* Fixes datediff not returning (#38215)

* Fixes pocket items being deleted when monkeyizing (#38220)

* Automatic changelog generation for PR #38220 [ci skip]

* readds atmos heating from hotspot_expose(), as requested by naksu

* Tones down hotspot_expose values for sparks moving and destroying

* tones down item heat by a lot. no more burning your face off after smoking a cigarette
2018-06-08 15:53:10 +03: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
Tad Hardesty
c5b6c18c7e Fix power tools being deleted if adjusted using TK 2018-05-23 16:49:24 -07:00
AnturK
4c5a43eeb8 Prefix for item flag slot defines. 2018-04-27 10:30:48 +02:00
vuonojenmustaturska
84c9c95c52 Makes welding tools (attempt to) flash you during progress (#37222)
* There's no such thing as a free weld

* future proofing
2018-04-16 20:21:28 -04:00
Ian Turk
fbe5f4a062 Replaced body zone magic strings with defines 2018-03-19 15:44:51 -05:00
Jordan Brown
d282c60c7d Quote the armor lists (#35668) 2018-02-16 01:25:42 -05: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
ACCount
100c4b6114 Adds new helper: use_tool, shakes things up in tool code (#35095)
* small changes

* Adds a use_tool helper and changes some tools to use it

* Ports most tool operations to use_tool

* Converts more tool operations to use_tool and tool_act

* Changes some things to default_unfasten_wrench

* Improves tool_behavior support in mech construction

* Code review memes

* Fixes all instant use_tool calls failing

* Code improvements

* merge fixes
2018-02-06 11:02:53 +01:00
ACCount
27481363c1 Adds new tool helpers: welder_act and tool_act (#34961)
* Adds new tool helpers: welder_act and tool_act

* New tool flags to make using tool flags as list indexes possible

* Simplifies a return
2018-01-28 14:54:42 -05:00
XDTM
5a08a3aad0 Extends the disability refactor to include more traits, removing some snowflake code (#34664)
This way you can add/remove traits without fear of other sources overriding them. Now you can add TRAIT_STUNIMMUNE to somebody without what if hulk

Notable changes:

    Fakedeath now updates instantly, instead of waiting for the next life tick.
    Fakedeath now sets time of death when acquired.
    Removed extremely snowflake code in reagents that checked if you had morphine to remove slow immunity and so on.
    Hulk no longer overrides status_flag changes, in case there are any.
2018-01-25 09:12:44 +13:00
ShizCalev
a449b524ed Matched wirecutter colors 2018-01-21 01:20:13 -06:00
MoreRobustThanYou
9ab6865f87 Greyscale wirecutters (#34385)
* Greyscale Wirecutters!

* WOOPS!

* Hopefully make the colors lighter.

* hexcodes

* Fixy fixy

* Add files via upload
2018-01-15 16:15:58 -05:00
Matt Smith
0c94121737 Cut through handcuffs with power wirecutters (#33822)
* Cut through handcuffs with power wirecutters

* unbuckle is handled on delete of the handcuffs
2017-12-26 01:14:09 -05:00
ShizCalev
3d5c1ea4d1 Fixes deleting handcuffs (#33821)
* Fixes deleting handcuffs

* cleanup
2017-12-26 01:12:40 -05:00
Ian Turk
c7f00fb44c Prefixed all disability defines with DISABILITY to fix name collision with BYOND built in BLIND define 2017-12-22 23:49:41 -06:00
ACCount
40699a8aea [READY]Refactors reagent container types (#33470)
* Replaces a bunch of manual OPENCONTAINER checks with helper procs

* Removes unnecessary vars

* Updates reagent bitflags, adds some new ones

* Replaces most of the is_open_container calls with more specific ones

* Puts new AMOUNT_VISIBLE flag to use

* Uses new helper procs in more objects

* Standardizes chemicals logging

* De-snowflakes two more checks

* Fixes

* Minor fixes and improvements
2017-12-18 22:55:01 -06:00
XDTM
146d167189 [Ready Again]Refactors disabilities into lists, allowing for independent disability sources (#33055)
* Refactors disabilities into lists, allowing for independent disability sources

* defines

* Xhuiiiiissss

* living

* did that

* adjusted for traumas

* Updates pacifism and removed remove_all_disabilities from fully_heal to prevent issues.

* makes antur happy
2017-12-18 22:20:07 +01:00
Emmett Gaines
25080ff2c4 defines math (#33498) 2017-12-17 11:02:11 -05:00
Emmett Gaines
7c69cdcb8a Revert math (#33059)
* Revert "all this wrapping and it's not even christmas (#33035)"

This reverts commit faaf151580.

* Revert "fuck me for forgetting to graph this one"

This reverts commit 45d7acea2f.

* Revert "defines math"

This reverts commit 2817a1737b.
2017-11-23 20:59:52 -05:00
ninjanomnom
2817a1737b defines math 2017-11-22 17:36:58 -05:00
kevinz000
caa1e1f400 Massive research refactor; changes research system to techwebs; Decentralized research 2017-11-18 19:55:40 -08:00
PKPenguin321
b96339dc55 [Ready] Allows for sabotaging welders with plasma (#32300)
* allows for sabotaging welders with plasma

* wrong reference

* remove redundant return

* some admin logging

* qdel(src)

* admin message -> log_game

* fixes bad references in messages

They would report as "welding_fuel" instead of "the beaker"

* massive changes

not quite balanced yet

* Switches to dyn_explosion

Balances the explosion size

* Final touches

* please god let this work

* FIX IT FIX IT FIX IT
2017-11-14 08:58:16 +13:00
Leo
882603901f Items no longer need to check for tools in attackby, having the check done with the tool_behaviour variable before pre_attackby is called. (#32602) 2017-11-11 21:22:15 +01:00