Commit Graph

2285 Commits

Author SHA1 Message Date
Joan Lung
8cf817cfec Brass windows are now slightly harder to destroy 2016-10-30 11:51:21 -04:00
oranges
d3bbe1634e Merge pull request #21248 from lordpidey/wallfix
Falsewalls are now less obvious on inspect
2016-10-30 19:16:32 +13:00
Joan Lung
7262c16328 Merge pull request #21243 from lzimann/selflog
You can see your own attack log once again
2016-10-29 15:50:55 -04:00
Mike Long
4bd80f021d Fixes #21240 2016-10-28 20:52:03 -04:00
Joan Lung
df4bc0a093 Fixed a few bugs with clockwork proselytizers (#21221)
* Fixed a few bugs with clockwork proselytizers

* condensed

* formatting

* proselytizer.

* i need more sanity checks I think this crashed something

* proper!

* better desc

* sanity! SANITY!
2016-10-29 11:34:03 +13:00
Lzimann
90d76b652c You can see your own attack log once again 2016-10-28 17:35:22 -02:00
chowdermcarthor
c7e474ccae Neck Slots (#21169)
* Added in a neckslot. Moved some tie items over to said neckslot.

* Changng some stuff to fix the new neckslot items.

* no message

* Altered comment to say that the old tie system is being kept as-is due to armbands and such instead of just avoiding conflicts.

* no message

* Changed the number for this.

* Fixed jaws of life not having a category, thus they only would show up when searched.
2016-10-26 19:03:41 +13:00
Lzimann
e34a1c3eb4 Fixes axes being placed in the tile. 2016-10-22 19:19:33 -02:00
Screemonster
60180cb0fd Makes the antitamper mechanism prevent tampering 2: electric boomaloo (#20893)
* Sanitises input on abandoned crates

* Makes anti-tamper mechanisms detect tampering.

* Makes explosion trigger on take_damage() instead.
2016-10-21 15:30:46 +13:00
Joan Lung
7f89fdf39f The range for combat-y visible messages is now a define (#21077) 2016-10-21 15:20:14 +13:00
Cyberboss
b0a74281dd Someone call that chick from the italian job because this isn't the Worthington 1000 (#21046) 2016-10-20 12:48:15 +02:00
Cheridan
bd51c9ad1a Merge pull request #21034 from ChangelingRain/magicbrassbullshit
Things made out of magic ratvarian brass are immune to fire and acid
2016-10-19 13:03:37 -05:00
phil235
186c02595a fixing a typo 2016-10-19 01:58:15 +02:00
oranges
86a8d8a7f5 Merge pull request #20962 from phil235/hit_message
No more message spam when you witness someone being attacked or shot
2016-10-18 09:17:41 +13:00
oranges
25daa7b5f1 Merge pull request #20992 from swindly/spelling
Fixes various spelling/grammar/punctuation errors
2016-10-18 09:15:32 +13:00
oranges
d165c98420 Merge pull request #21018 from Shadowlight213/revert-20774-ClickAss
Revert "Makes drag/drop that dont have any use call click"
2016-10-18 09:14:09 +13:00
TheCarlSaganExpress
4a93709088 The welder can be used to fix the display case and fire axe cabinet. (#20920)
* Fixes #20747.
You may now use your ID to unlock the display case.
Fireaxe cabinet and display case may now be repaired with the welder.

* Welder amount.

* Fire axe welder amount.

* Adds comments to the display case

* Captains display case now requires specops access
2016-10-18 09:08:42 +13:00
Joan Lung
9b61e7b638 Things made out of magic ratvarian brass are immune to fire and acid 2016-10-17 15:53:27 -04:00
Cheridan
521dbbbabc Merge pull request #21006 from phil235/xenoeggfix
Fixes xenomorph not being able to open their eggs.
2016-10-17 13:48:08 -05:00
Shadowlight213
18709e5ad7 Revert "Makes drag/drop that dont have any use call click" 2016-10-16 12:41:42 -07:00
phil235
a7a8b11eff Fixes xeno attacking nests instead of unbuckling. You now attack the nest on harm intent and unbuckle on all other intents. 2016-10-16 20:12:51 +02:00
Joan Lung
7371d36b2c Merge pull request #20978 from phil235/StatueShit
Unfuck the statue code.
2016-10-16 12:43:43 -04:00
Joan Lung
1d075c6227 Merge pull request #20976 from phil235/bodybedQoL
Clicking a floor with a bodybag or roller bed now deploys them directly.
2016-10-16 12:42:27 -04:00
phil235
ee14fbc4b8 Fixes xenomorph not being able to open their eggs. 2016-10-16 12:36:42 +02:00
phil235
f6db08af2e Contents_explosion() tweaks (#20934)
* When any object is hit by an explosion, we no longer always call ex_act() on all its contents indiscriminately.
The default contents_explosion() does nothing and it's overriden for certain objects only like storage items, machines with occupants, mechs.

I've also overriden handle_atom_del() for many objects so that any sudden deletion of an object referenced in an object var of its container properly nullifies such references, avoiding potential runtime and updating the container's icon_state (e.g. admin-delete a mixer's beaker and the mixer's sprite updates immediately).

I've tweaked bomb effect on worn clothes, having some armor but not 100% now still protects your clothes somewhat.

Fixes some arguments of ex_act in living/ex_act() and other mobs.

* derp and map fixes.

* dem map fixes, man.

* More work on code that use implants, simplified now that we can use the "implants" carbon var.

* some fixes

* more typos and fixes.
2016-10-16 10:01:37 +13:00
swindly
90f410b8ed fixes mispellings and makes grammar gooder 2016-10-15 14:29:14 -04:00
phil235
f9c71fbfb0 Made some slightly less uglier sprites for attack effects.dmi
Melee attacks, gun firing, and things being hit by bullets will now still give witnesses a message, but only if they are less than 3 tiles away. The attacker still doesn't get the message for its own attacks.

I added two arguments to visible_message(), one to specify the visibility range, and one to ignore a specific mob that shouldn't get the message.
2016-10-15 16:10:28 +02:00
phil235
8c79ad4eab derp 2016-10-14 21:12:19 +02:00
phil235
cd825493cf Unfuck the statue code. 2016-10-14 21:04:52 +02:00
phil235
64c528e115 Clicking a floor with a bodybag or roller bed now deploys them directly.
When deployed, the bodybag automatically starts "open" now.
Tweaked the amount of metal dropped by destroyed closets.
Bodybag structures no longer drop metal on destruction.
Admin deleting a critter crate no longer drops wood, but it still does when destroyed and the wood it drops is now all in a single stack.
Added a drop_material_amount var to closets to make the amount of material dropped vary for different closet types.
Click dragging a roller bed now puts it in your hand after being folded (for consistency with bodybag)
Cardboard box closets no longer have an integrity failure level (there's no opening mechanism to break in a cardboard box...). Same for bodybag "closets".
2016-10-14 17:47:16 +02:00
Cuboos
bf079d29d4 POWER TOOLS TAKE 2. (#20923)
New power tools for the CE! It's like goof's golden tools but less memey and makes more sense, power tools are much faster than normal tools and take the place of two.

Hand drill, activate to switch between between screwdriver bit and bolt bit (screwdriver/wrench)

Jaws of life, activate to switch between a cutting head and prying head, can also open powered doors like a xeno. Cutting head cuts your head off if you suicide with them. I wanted to make the prying head gib your head but i couldn't figure it out.

Reworked how construction handles sounds and added a new "usesound" var to obj/items. This is useful if you want to add another tool or item that makes a send when it's being used. Also useful if you want to replace a sound for an item or if you have an item with a choice of sounds (like if you have two versions of a sound sound you want to play)

CE now gets a unique white tool belt, exactly the same as a regular tool belt, just a re-skin.

CE also spawns with the new power tools and an experimental welder, CE will be the ONLY one to spawn with these tools, might make him a more valuable target for traitors. I figured this would be acceptable considering most heads are not antag enabled (i think)

Also i added a welding tool sound for reasons... figured might as well add some more sounds while i was reworking it.
2016-10-14 10:19:23 +13:00
oranges
ab49aca161 Merge pull request #20936 from phil235/BarSignFix
Fixes bar sign being unwrenchable and changeable into a small sign.
2016-10-14 10:17:21 +13:00
phil235
43812be1b0 Merge branch 'master' of https://github.com/tgstation/-tg-station into hit_message
# Conflicts:
#	code/game/mecha/mecha_defense.dm
2016-10-13 20:04:59 +02:00
phil235
1ea0e47aa4 Visible_message() when being attacked by melee or projectile is replaced by a simple message only to the target instead of all viewers.
The message when firing a gun is removed.
To keep things balanced melee attacks (punches, alien attacks, animal attacks, etc...) now show a visual effect (similar to what we current have with item attacks.
Fixes muzzle flash effect not appearing for mech guns.
Fixes muzzle flash effect not appearing for certain ranged animal.
Fixes the item attack effect not being visible to camera viewers and mech occupants.
Fixes toy guns foam dart not dropping on the ground when shooting a mob on the same tile as us.
Fixes toy smg magazine sprite being invisible sometimes.
Fixes foam dart not facing the correct direction when fired.
Changes the bullet projectile sprite to have a slight tracer effect so as to be more visible.
2016-10-13 19:21:30 +02:00
Razharas
7753b04a6c Makes drag/drop that dont have any use call click (#20774)
Makes drag/drop that dont have any particular defined behaviour be treated as just click on the dragged object
2016-10-13 12:55:05 +13:00
phil235
1b515419a4 Fixes bar sign being unwrenchable and changeable into a small sign. Ideally barsign shouldn't be a child of sign since they share practically no code, but I really don't want to have to go change the path on every map, so a simple var should do for now. 2016-10-11 22:22:14 +02:00
Razharas
5ced570b3e Merge pull request #20856 from ChangelingRain/coreprocessidiocy
You can now deconstruct AI cores that contain no AI
2016-10-11 18:39:12 +04:00
Joan Lung
c96fa7e2dd jump... 2016-10-11 10:25:07 -04:00
Joan Lung
ce13143d9d Replaces yet more istypes with helpers (#20806)
* uses more istype helpers

* oranges is inefficient
2016-10-10 17:48:35 +13:00
Joan Lung
a88eb76aec Remove an unused proc #20825 2016-10-10 11:47:14 +13:00
Joan Lung
176a6fc404 I'm not actually sure how long that bug existed? 2016-10-09 18:44:47 -04:00
Joan Lung
5ff591e69b NUMBAH THREE 2016-10-09 18:42:05 -04:00
phil235
5f835bfc26 Obj damaging system, acid damage, and fire damage refactor (WIP) (#20793)
Please refer to #20867 and #20870 for a easier view of the changes. Those two PRs show all meaningful changes (hopefully) and doesn't show the files changed with just 3 lines changed.

This PR does three things:

    It makes all children of /obj/ use the same damage system.
    Previously to make your new machine/structure be destroyable you needed to give it a var/health, and its own version of many damage related proc such as bullet_act(), take_damage(), attacked_by(), attack_animal(), attack_hulk(), ex_act(), etc... But now, all /obj/ use the same version of those procs at the /obj/ level in code/game/obj_defense.dm. All these obj share the same necessary vars: obj_integrity (health), max_integrity, integrity_failure (optional, below that health level failure happens), and the armor list var which was previously only for items, as well as the resistance_flags bitfield. When you want your new object to be destroyable, you only have to give it a value for those vars and maybe override one proc if you want a special behavior but that's it. This reorganization removes a lot of copypasta (most bullet_act() version for each obj were nearly identical). Two new elements are added to the armor list var: fire and acid armor values.
    How much damage an obj take depends on the armor value for each damage category. But some objects are INDESTRUCTIBLE and simply never take any damage no matter the type.
    The armor categories are:
    -melee(punches, item attacks, xeno/animal/hulk attacks, blob attacks, thrown weapons)
    -bullet
    -laser
    -energy (used by projectiles like ionrifle, taser, and also by EMPs)
    -bio (unused for this, only here because clothes use them when worn)
    -rad (same)
    -bomb (self-explanatory)
    -fire (for fire damage, not for heat damage though)
    -acid
    For machines and structures, when their health reaches zero the object is not just deleted but gets somewhat forcedeconstructed (the proc used is shared with the actual deconstruction system) which can drops things. To not frustrates players most of these objects drop most of the elements necessary to rebuild them (think window dropping shards). Machines drop a machine frame and all components for example (but the frame can then be itself smashed to pieces).
    For clothes, when they are damaged, they get a "damaged" overlay, which can also be seen when worn, similar to the "bloody" overlay.

    It refactors acid. See #20537.
    Some objects are ACID_PROOF and take no damage from acid, while others take varying amounts
    of damage depending on their acid armor value. Some objects are even UNACIDABLE, no acid effect can even land on them. Acid on objects can be washed off using water.

    It changes some aspect of damage from fires.
    All /obj/ can now take fire damage and be flammable, instead of just items. And instead of having just FLAMMABLE objs that become ON_FIRE as soon as some fire touch them (paper), we now have objects that are non flammable but do take damage from fire and become ashes if their health reaches zero (only for items). The damage taken varies depending on the obj's fire armor value and total health. There's also still obj and items that are FIRE_PROOF (although some might still be melted by lava if they're not LAVA_PROOF).
    When a mob is on fire, its clothes now take fire damage and can turn to ashes. Similarly, when a mob takes melee damages, its clothes gets damaged a bit and can turn to shreds. You can repair clothes with cloth that is produceable by botany's biogenerator.

    It also does many minor things:
        Clicking a structure/machine with an item on help intent never results in an attack (so you don't destroy a structure while trying to figure out which tool to use).
        I moved a lot of objects away from /obj/effect, it should only be used for visual effects, decals and stuff, not for things you can hit and destroy.
        I tweaked a bit how clothes shredding from bombs work.
        I made a machine or structure un/anchorable with the wrench, I don't remember which object...
        Since I changed the meaning of the FIRE_PROOF bitflag to actually mean fire immune, I'm buffing the slime extract that you apply on items to make them fire proof. well now they're really 100% fire proof!
        animals with environment_smash = 1 no longer one-hit destroy tables and stuff, we give them a decent obj_damage value so they can destroy most obj relatively fast depending on the animal.
        Probably a million things I forgot.

If you want to know how the damage system works all you need is the three obj vars "obj_integrity", "max_integrity", "integrity_failure", as well as the armor list var and the resistance_flags bitfield, and read the file obj_defense.dm
2016-10-10 11:14:59 +13:00
Joan Lung
8dbe5907e4 i'm a good coder this is fine 2016-10-07 18:44:49 -04:00
Joan Lung
fe2d77b43f everything involved in this is awful 2016-10-07 18:11:00 -04:00
Joan Lung
fccd45e279 what is a define 2016-10-07 18:01:56 -04:00
Joan Lung
bdcb16113a Adds a few turf istype helpers (#20754)
* a very calming act
when the world is too much, too fast

* i'm tired
but i have to be efficient, infinite

* lick your lips at the sight of me
a fantasy made reality
2016-10-01 19:25:46 +02:00
Joan Lung
dff4db726a Replaces a bunch of istypes with their proper macros (#20739)
* Replaces a bunch of istypes with their proper macros

* i'm not sure doing a 100+ file changed pr on a whim is something you do when bored
especially if you do it by hand because you never actually learned the regex that would let you automate it

* i'm just... gonna do this, because that check was true a lot and it shouldn't matter
2016-09-30 20:21:08 +02:00
Incoming
5eacff1038 Merge branch 'master' of https://github.com/tgstation/-tg-station into hold_it
# Conflicts:
#	code/modules/clothing/under/ties.dm
2016-09-30 13:00:49 -04:00
Cheridan
e43b06f750 Merge pull request #20591 from ChangelingRain/proofofconceptantagdatum
"Working Datum Antagonists"
2016-09-29 13:33:59 -05:00