Commit Graph

60 Commits

Author SHA1 Message Date
MrMelbert 43f1a52223 Removes some boilerplate from transforming component (#75998)
## About The Pull Request

Removes some boilerplate from transforming component, uses traits in a
similar way to the two-handed component

Also fixes #74955 (If it's still broken?)

## Why It's Good For The Game

Makes it a bit cleaner to work with. Cause I wanna do something with
this in the future maybe.

## Changelog

🆑 Melbert
fix: Fixed e-cutlasses and bananium swords having invisible inhands
code: Removed boilerplate from transforming component
/🆑

---------

Co-authored-by: san7890 <the@san7890.com>
2023-06-16 14:47:50 -06:00
ArcaneMusic f2fd69a49a Minerals have been refactored so costs and minerals in items are now in terms of mineral defines. (#75052)
Ladies, Gentlemen, Gamers. You're probably wondering why I've called you
all here (through the automatic reviewer request system). So, mineral
balance! Mineral balance is less a balance and more of a nervous white
dude juggling spinning plates on a high-wire on his first day. The fact
it hasn't failed after going on this long is a miracle in and of itself.

This PR does not change mineral balance. What this does is moves over
every individual cost, both in crafting recipes attached to an object
over to a define based system. We have 3 defines:

`sheet_material_amount=2000` . Stock standard mineral sheet. This being
our central mineral unit, this is used for all costs 2000+.
`half_sheet_material_amount=1000` . Same as above, but using iron rods
as our inbetween for costs of 1000-1999.
`small_material_amount=100` . This hits 1-999. This covers... a
startlingly large amount of the codebase. It's feast or famine out here
in terms of mineral costs as a result, items are either sheets upon
sheets, or some fraction of small mats.

Shout out to riot darts for being the worst material cost in the game. I
will not elaborate.

Regardless, this has no functional change, but it sets the groundwork
for making future changes to material costs much, MUCH easier, and moves
over to a single, standardized set of units to help enforce coding
standards on new items, and will bring up lots of uncomfortable balance
questions down the line.

For now though, this serves as some rough boundaries on how items costs
are related, and will make adjusting these values easier going forward.

Except for foam darts.

I did round up foam darts.

Adjusting mineral balance on the macro scale will be as simple as
changing the aforementioned mineral defines, where the alternative is a
rats nest of magic number defines. ~~No seriously, 11.25 iron for a foam
dart are you kidding me what is the POINT WHY NOT JUST MAKE IT 11~~

Items individual numbers have not been adjusted yet, but we can
standardize how the conversation can be held and actually GET SOMEWHERE
on material balance as opposed to throwing our hands up or ignoring it
for another 10 years.
2023-05-03 14:44:51 +00:00
MrMelbert 8284a7faab Fixes some invisible inhands from the transforming component (#73807)
## About The Pull Request

The original issue caused by #70037
Esword issue caused by #73716

Originally the transforming component did not override the inhand icon
state of the the item on its own (instead putting the onus on the item
itself if they wanted unique behavior). It was changed to always update
inhand icon state, most of which don't have one

I don't really like this fix, it should be explicit "I want inhand to
change" and not default, but this will work for now

Also the PR that fixed the Jaws issue didn't actually set the var they
created

Fixes #73805
Fixes #73711 (Actually)

## Why It's Good For The Game

Invisible sword bad

## Changelog

🆑 Melbert
fix: Fixed a eswords, some tools, and some other misc. items from being
invisible while extended / active
fix: Teleshields and other misc items not extending in hand when active
fix: Switchblades click on extend again
fix: Pendrivers click on extend
/🆑
2023-03-07 22:11:35 -07:00
Zephyr 6a0c884410 [no gbp] removes all duplicate armor datums (#72354)
## About The Pull Request
closes #72348 
Title
## Why It's Good For The Game

My bad
## Changelog
Heres the script I used this time if you want to
```cs
var baseDir = Environment.CurrentDirectory;

var allFiles = Directory.EnumerateFiles($@"{baseDir}\code", "*.dm", SearchOption.AllDirectories).ToList();
var known = new Dictionary<string, List<KeyValuePair<string, int>>>();

foreach (var file in allFiles)
{
	var fileLines = File.ReadAllLines(file);
	for (var i = 0; i < fileLines.Length; i++)
	{
		var line = fileLines[i];
		if (line.StartsWith("/datum/armor/"))
		{
			var armorName = line.Replace("/datum/armor/", "").Trim();
			if (!known.ContainsKey(armorName))
				known[armorName] = new List<KeyValuePair<string, int>>();
			var knownList = known[armorName];
			knownList.Add(new KeyValuePair<string, int>(file, i));
		}
	}
}

Console.WriteLine($"There are {known.Sum(d => d.Value.Count)} duplicate armor datums.");

var duplicates = new Dictionary<string, List<int>>();
foreach (var (_, entries) in known)
{
	var actuals = entries.Skip(1).ToList();
	foreach (var actual in actuals)
	{
		if (!duplicates.ContainsKey(actual.Key))
			duplicates[actual.Key] = new List<int>();
		duplicates[actual.Key].Add(actual.Value);
	}
}

Console.WriteLine($"There are {duplicates.Count} files to update.");

foreach (var (file, idxes) in duplicates)
{
	var fileContents = File.ReadAllLines(file).ToList();
	foreach (var idx in idxes.OrderByDescending(i => i))
	{
		string line;
		do
		{
			line = fileContents[idx];
			fileContents.RemoveAt(idx);
		}
		while (!String.IsNullOrWhiteSpace(line));
	}
	File.WriteAllLines(file, fileContents);
}
```
2022-12-30 03:43:36 -05:00
Zephyr 72add64520 Refactors armor into dedicated subtypes (#71986)
## About The Pull Request

See title.
## Why It's Good For The Game

Code is cleaner, and more readable/intuitive
Technically closes
https://github.com/tgstation/dev-cycles-initiative/issues/8
## Changelog
🆑
refactor: armor, from the ground up basically
/🆑

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2022-12-23 16:21:22 -08:00
tattle 0bb30cdefc [MDB IGNORE] Grayscale sofas (#71539)
## About The Pull Request
Ports some sofa sprites from over at
https://github.com/BeeStation/BeeStation-Hornet/pull/7547 and makes them
grayscale. Also random tool colours now use defines.


![image](https://user-images.githubusercontent.com/66640614/204077835-94b713a9-a7e5-42fc-8c65-5724ca11cc4a.png)


![image](https://user-images.githubusercontent.com/66640614/204077844-87b33cda-d829-4ebb-a81f-a5e05453999d.png)

## Why It's Good For The Game
Gives us the opportunity to make different coloured couches more easily.
## Changelog

🆑 Tattle, PestoVerde322
imageadd: couches are now grayscale
code: random tool colours now use defines
/🆑

Co-authored-by: tattle <article.disaster@gmail.com>
2022-11-30 19:01:24 -08:00
Paxilmaniac fdc05066a6 Adds falling hazard element, beware of falling tools, wear your hardhat, comically timed piano falling on the clown (#70970)
## About The Pull Request


https://user-images.githubusercontent.com/82386923/199180691-6605c8cc-e8aa-490e-ab65-909d45d12ca0.mp4

Do note that the damage in this video is extremely exaggerated compared
to what the normal value is.
## Why It's Good For The Game

All these signs about engineers needing to wear their hardhat, and for
what? For the assistant dropping toolboxes onto them from above, that's
what! Also allows people to do as god intended by allowing them to drop
pianos on people.
## Changelog
🆑
add: A variety of items, mainly tools, around the station might hurt if
they fall on your head, remember to wear your hardhat and to avoid
standing under large red X marks on the ground with a piano hanging
above them.
/🆑

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2022-11-17 18:51:27 +00:00
AnturK 4d6a8bc537 515 Compatibility (#71161)
Makes the code compatible with 515.1594+

Few simple changes and one very painful one.
Let's start with the easy:
* puts call behind `LIBCALL` define, so call_ext is properly used in 515
* Adds `NAMEOF_STATIC(_,X)` macro for nameof in static definitions since
src is now invalid there.
* Fixes tgui and devserver. From 515 onward the tmp3333{procid} cache
directory is not appened to base path in browser controls so we don't
check for it in base js and put the dev server dummy window file in
actual directory not the byond root.
* Renames the few things that had /final/ in typepath to ultimate since
final is a new keyword

And the very painful change:
`.proc/whatever` format is no longer valid, so we're replacing it with
new nameof() function. All this wrapped in three new macros.
`PROC_REF(X)`,`TYPE_PROC_REF(TYPE,X)`,`GLOBAL_PROC_REF(X)`. Global is
not actually necessary but if we get nameof that does not allow globals
it would be nice validation.
This is pretty unwieldy but there's no real alternative.
If you notice anything weird in the commits let me know because majority
was done with regex replace.

@tgstation/commit-access Since the .proc/stuff is pretty big change.

Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2022-11-15 03:50:11 +00:00
tattle ad5debaaa1 Add investigate_deaths (#71112)
## About The Pull Request
Adds INVESTIGATE_DEATHS, an investigate category intended to better show
causes of death.


![image](https://user-images.githubusercontent.com/66640614/200142461-c17b5e51-1116-4eef-bbfb-49bc024c0953.png)


![image](https://user-images.githubusercontent.com/66640614/200147306-09bef76e-68c6-4f0a-bdf9-0211eb274e66.png)

Also makes suicide_act take a `mob/living` as an argument instead of a
`mob`, and some minor style improvements since apparently I hate
atomicity.

## Why It's Good For The Game
Inspired by a mysterious death and dusting. More logging and leads for
admins investigating deaths.

Also fixes #59028

## Changelog
🆑 Tattle
admin: added investigate deaths to shed some more light on unusual
demises, dustings, and gibbings
/🆑

Co-authored-by: tattle <article.disaster@gmail.com>
2022-11-07 16:22:37 -08:00
Fikou 71835a7c1c Nukie Rework Part 2: Nuclear Operative starting gear rework (#68401)
Replaces the nuke op Makarov with the Ansem, a clandestine pistol firing 10mm rounds which do more damage. Ammo costs more.
Replaces the nuke op survival knife with the energy dagger, as well as giving it a soft light, light armor penetration and a light wound bonus.
Replaces the diamond drill in their closet with an entrenching tool, which swaps between crowbar, pickaxe and shovel modes.
Gives the nuke op survival box the syndie box design, as well as a crowbar, screwdriver and mini welder.
Removes the nuke op leader's Krav Maga gloves.
Updates the esword and edagger sprites with ones i had lying around from 2019, they are more consistent.
Moves pistol sprites a bit up to center them.
2022-07-16 19:25:52 -04:00
itseasytosee 878e3b8d37 Implements a Demolition Modifier variable to items, affects damage vs structures and robots. (#66967)
Adds a modifier variable which can be used to increase or decrease a given items damage to structures, machinery, vehicles, and robots (including cyborgs, simple-bots, and anything else with the MOB_ROBOTIC biotype)
2022-06-06 15:29:57 -05:00
GuillaumePrata 04ecd0ab72 Advanced tools are medium sized, toolboxes can carry medium sized items. (#66900)
* Advanced tools are medium sized now.

* Moves `w_class` 1 line down

* Moves `w_class` MORE DOWN

* Syndie Jaw pocket edition.

* Toolboxes can carry medium items, pocket syndie jaw in desc.
2022-05-13 12:34:26 -04:00
Ebb-Real 9784d04d99 Belt sprites for the syndie screwdriver and alien tools (#65400)
* update

* makes the alien toolbelt use the sprites

* Revert "makes the alien toolbelt use the sprites"

This reverts commit caea9f52741e4f1553f3b3812336b3a4a235b6aa.

* Revert "Revert "makes the alien toolbelt use the sprites""

This reverts commit c60276e7aac93169a036bfe0bc42fb9c736d1d99.

* please check gods

* check pass?

* forgot that

* tabs
2022-03-14 22:03:08 +11:00
John Willard 6c0aba5da4 removes double spaces AFTER symbols (#62515)
* removes double spaces AFTER symbols

* found more
2021-11-03 21:09:35 -04:00
Mothblocks 0f3c4e51f7 Modernizing Radiation -- TL;DR: Radiation is now a status effect healed by tox healing, and contamination is removed (#62265)
Implements the Modernizing radiation design document ( https://hackmd.io/@tgstation/rJNIyeBHt ) and replaces the current radiation sources with the new system, as well as replacing/removing a bunch of old consumers of radiation that either had no reason to exist, or could be replaced by something else.

Diverges from the doc in that items radiation don't go up like explained. I was going to, but items get irradiated so easily that it just feels pretty lame. Items still get irradiated, but it's mostly just so that radiation sources look cooler (wow, lots of stuff around going green), and for things like the geiger counter.

Instead of the complicated radiation_wave system, radiation now just checks everything between the radiation source and the potential target, losing power along the way based on the radiation insulation of whats in between. If this reaches too low a point (specified by radiation_pulse consumers), then the radiation will not pass. Otherwise, will roll a chance to irradiate. Uranium structures allow a delay before irradiating, so stay away!
2021-11-01 04:20:39 -03:00
Sealed101 1eaaa68c4b Brings recycling results of advanced tools up to their printing costs (#62092)
Advanced tools have either been using their parent basic tools' custom_materials or their custom_materials were lowered for what I presume was destructive experimentor work. This counts for recycling these items in an autolathe as well. In the first case, alien tools were made out of the same material amount as their basic counterparts, and in the second case - the recycling results were heavily lowered.
Also kills off some single-letter vars since I'm here.
2021-10-17 16:45:28 -04:00
tralezab 6c01cc2c01 every case of initialize that should have mapload, does (#61623)
## About The Pull Request

stop forgetting to include mapload, if you don't include it then every single subtype past it by default doesn't include it

for example, `obj/item` didn't include mapload so every single item by default didn't fill in mapload

![](https://media.discordapp.net/attachments/823293417186000909/875122648605147146/image0.gif)

## Regex used:

procs without args, not even regex

`/Initialize()`

procs with args
`\/Initialize\((?!mapload)((.)*\w)?`

cleanup of things i didn't want to mapload:
`\/datum\/(.)*\/Initialize\(mapload`
2021-09-24 17:56:50 -04:00
MrMelbert b3e8eebdc9 Kills /obj/item/melee/transforming, replaces it with a transforming weapon component (#60761)
This PR kills off the transforming subtype of /obj/item/melee and replaces it with a component to handle the transforming behavior, /datum/component/transforming.

The transforming component handles updating the variables of an item when it's transformed. Things like force, sharpness, whetstone force bonus, and attack verbs. Similar to the two-handed component, but instead of transforming into a two-hander it remains a one handed weapon.

The "nemesis" behavior (dealing addition damage to certain factions) of the transforming subtype was moved to the cleaving saw only, since it was the only transforming item that used it. In the future, this can be made into a bespoke element/component as well.

The following weapons and items have been updated to use this component:

    Energy Swords / Sabers / Bananium Energy Sword
    Energy Circular Saw
    Energy Dagger
    Energy Axe
    Toy Energy Sword
    Holographic Energy Sword
    Switchblade
    Advanced Medical Tools (Laser scalpel, Mechanical Pinches, Searing Tool)
    Advanced Engineering Tools (Hand Drill, Jaws of Life / Syndicate Jaws of Life)
    Combat Wrench
    Cleaving Saw
    Telescopic Batons / Contractor Batons
    Roasting Stick
    Telescopic Riot Shield
    Energy Shield / Bananium Energy Shield

This PR also touches up the code around the various above items.
2021-08-23 11:45:54 -07:00
GoldenAlpharex ced603614d That's it. *GAGS'ifies your berets* (#59536)
Converts berets to greyscale config
2021-07-23 21:37:23 +02:00
InsaneRed 31c2c4a862 convert some adv tool actions into balloon alerts (#60278)
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2021-07-18 01:47:03 -07:00
Watermelon914 375a20e49b Refactors most spans into span procs (#59645)
Converts most spans into span procs. Mostly used regex for this and sorted out any compile time errors afterwards so there could be some bugs.
Was initially going to do defines, but ninja said to make it into a proc, and if there's any overhead, they can easily be changed to defines.

Makes it easier to control the formatting and prevents typos when creating spans as it'll runtime if you misspell instead of silently failing.
Reduces the code you need to write when writing spans, as you don't need to close the span as that's automatically handled by the proc.

(Note from Lemon: This should be converted to defines once we update the minimum version to 514. Didn't do it now because byond pain and such)
2021-06-14 13:03:53 -07:00
Emmett Gaines 9e0ddfb21b Standardizes greyscale belt overlays (#59362) 2021-05-30 14:00:50 -07:00
Emmett Gaines 9e9327d128 Adds a unit test for icon states on GAGS items and fixes some inhand sprites (#59330)
This adds a unit test which goes through all items and makes sure all the icon states needed are in the greyscale configurations, if it has one.
2021-05-28 10:06:37 -04:00
Emmett Gaines c8822b59ab Makes washing machines support GAGS recoloration (#59292) 2021-05-25 21:17:59 +02:00
Emmett Gaines c448104b30 Adds greyscale color selection to vending machines (#58901)
Yes this is blatant bait to get more things converted.

While working on this I fixed item greyscale updates to include their held and worn states, the vending machine ui is now tsx instead of js, icons generated by gags are created with an error state by default, the greyscale color menu defaults to not show you the full debug preview, and the wording in the debug menu is a bit more in-character friendly.
Changelog

cl
add: Greyscale items using GAGS in vending machines can have their colors chosen before vending. Not many things are capable of this yet but expect more to come.
/cl
2021-05-20 22:39:14 +12:00
Fikou 2d36888405 screwdrivers no longer randomize their pixel_y on initialize (#58707)
removes the 75% chance on screwdrivers initialize to have a random pixel_y between 0 and 16

it looks bad now that the screwdriver is centered on the tile
2021-04-26 15:44:15 -07:00
Arkatos1 9dadb65177 Converts screwdrivers to GAS (#58453)
* Basic GAS setup

* Compile fix

* Fixes, inhands, belt icons

* New procs

* New version of GAGS

* Inhand for subtypes

* Typo fix
2021-04-20 23:12:49 -04:00
Mothblocks 1e848e5738 Move eyestabbing to an element, rather than as part of core combat code (#58358)
Moves eyestabbing off from an item flag that is checked on every item attack to an element.

Kills /obj/item/proc/eyestab, and makes the new element the sole owner.
2021-04-17 00:53:33 +01:00
TemporalOroboros e4079c87b8 update_appearance (#55468)
Creates update_name and update_desc
Creates the wrapper proc update_appearance to batch update_name, update_desc, and update_icon together
Less non-icon handling code in update_icon and friends
Signal hooks for things that want to change names and descriptions
99%+ of the changes in this are just from switching everything over to update_appearance from update_icon
2021-02-19 12:06:18 -03:00
TemporalOroboros 6e950daccc Defines damage flags. (#53158) 2020-08-24 08:20:33 -03:00
kingofkosmos 3263decaad Personalized combat messages part 2 (#52890)
Adds more "personalized" combat messages for all participants in a fight: the attacker, the victim and the spectators
2020-08-13 11:34:57 -03:00
Ryll Ryll 46dd89b07a [READY] Wounds part 2: Piercing wounds, dismemberment changes, housekeeping (#51786)
* pierce the heavens

* starts doing projs

* continue pierce

* before armor

* before sharpness redefine

* rename sharp defines, before further implementation

* finishing undoing atk_type back to sharpness

* neatens up sharpness defines, FALSE -> SHARP_NONE

* more piercing, removes brute damage bleed, bubblegum no longer wound

* starts letting embeds get in on the fun

* half with embed

* work on dismembering

* continued embed work

* more moving bandaging to limbs

* more dismemberment work

* removing embed pierce stuff

* tweaking bullets

* more docs and work on dismemberment

* spans, piercing, guns

* dismemberment and scar fixes

* bee changes

* bullets embedding

* more bullet and dismember work

* dismemberment, surgery, piercing, formaldehyde,

* pleases travis

* pierce smite

* nicer on blood

* Auto stash before rebase of "tgstation/master"

* more neatening

* wounds only consider up to 35 damage, wounds on l6 and 762

* updates hulk

* balance

* defines

* lower slug to 50 brute to accommodate wounds

* adds differentiation for having flesh/bones/both in mobs

* moves scar descs to json, renames organic_state

* excises removed healing skill

* fixes logs, inconsistencies, some balance changes

* untab

* slight compress

* a

* kills pointed global list

* dmdoc

* halfway through roh

* finishes roh review

* okay NOW i finished roh's reviews

* roh roh roh your boat

* gently down the stream

* global lists

* list ops, fix scanner for bone gel improvised fix

* travis moment

* sounds added and moved

* pellet clouds can join the fun fully, slight gun balancing for wounds

* doc moment

* unconflicts myself

* update hulk

* Update code/_onclick/item_attack.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* crying ascii face

* final rohview

* oops

* final final

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-07-23 23:19:30 -03:00
jdawg1290 62676e72a8 Force LF line endings with gitattributes and convert repo (#52266)
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
2020-07-16 03:02:40 +03:00
ArcaneMusic 6ac1f5f9d2 Tools for your belt. (#51328) 2020-05-29 13:12:23 +08:00
nemvar 6ef421be42 Renames a few variables. Also reorders icon fallback order again. (#51060)
* Renames a few variables. Also reorders fallback order again.
Renames item_state to inhand_icon_state
Renames mob_overlay_icon to worn_icon
Renames mob_overlay_state to worn_icon_state
worn_icon_state/mob_overlay_state now never gets used for inhands.

* Fixes some comments

* Fixes map issue

* Restart lints

* Properly resolves conflicts
2020-05-25 06:47:19 +02:00
spookydonut a00778f16e Add EYE_STAB to item_flags (#50556)
* Add EYE_STAB to item_flags

* add to surgicaldrill and scalpel
2020-04-23 12:28:37 +02:00
MrPerson e22560a346 update_icon() improvements (#48669)
* update_icon() improvements

Fixes some update_icon() calls to properly call parent and use update_overlays() and update_icon_state().

The rest of obj/item fuck it

* Suggested fixes, also passes the linter

* I always forget . = ..() is faster than return ..() FOR SOME FUCKING REASON

* Actually this is better

* Signilzes datum/action to update its icon when its connected item does.
2020-01-11 23:46:43 -05:00
Fikou 340ba6f109 fixes cavity surgery with advanced cautery (#47109)
* shdghf

* c

* bitch
2019-10-16 17:13:02 -04:00
KomradeSpectre 9ff071af60 Clockcult Removal 2019 (#47057)
* Nanotrasen fires the Wave Motion Gun at the Clock Cult

* Fixes a random changelog appearing from the reebe void.

* Fixes a wrong type reference regarding the bronze sheets in the Lavaland Ruin for it.

* Fixes redundant cells after CC removal in ruin by populating them with varied ore chunks, or destruction clutter.

* why is it /obj/item/stack/sheet/metal but not /obj/item/stack/sheet/iron

* Fixes the lavaland ratvar ruin to have fluff variant structures of deleted shit it referenced instead what I thought was reasonable.
2019-10-15 10:13:41 +02:00
Fikou 31ab3ac830 power tool refactor (#46974)
Power tool refactor
2019-10-13 20:34:52 +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
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
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
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 fb45b7a017 Turns trait accessors into defines, fixes some bugs (#43820)
It's free performance.
2019-05-06 19:44:05 -04: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
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
Mickyan eb9fa0d8f5 Add pacifism check for screwdriver/bottle attacks (#38416) 2018-06-13 00:22:26 -07:00
Tad Hardesty c5b6c18c7e Fix power tools being deleted if adjusted using TK 2018-05-23 16:49:24 -07:00