Commit Graph

200 Commits

Author SHA1 Message Date
phil235
8cb3736221 Fixes turf having two contents_explosion()
Fixes hulk plus telekinesis being able to hulk smash things from a distance.
2016-11-04 00:33:51 +01:00
phil235
2dc956bea0 Merge branch 'master' of https://github.com/tgstation/-tg-station into Color_washing
# Conflicts:
#	code/game/gamemodes/clock_cult/clock_scripture.dm
#	code/game/gamemodes/clock_cult/clock_structures.dm
2016-10-31 19:59:00 +01: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
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
Joan Lung
7f89fdf39f The range for combat-y visible messages is now a define (#21077) 2016-10-21 15:20:14 +13:00
phil235
1ce672c630 fixing stuff about atom_colours. 2016-10-21 01:30:42 +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
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
Joan Lung
9b61e7b638 Things made out of magic ratvarian brass are immune to fire and acid 2016-10-17 15:53:27 -04:00
Shadowlight213
18709e5ad7 Revert "Makes drag/drop that dont have any use call click" 2016-10-16 12:41:42 -07: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
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
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
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
phil235
194398cbbd Merge branch 'master' of https://github.com/tgstation/-tg-station into PreliminaryDamageRefactor
# Conflicts:
#	code/game/gamemodes/miniantags/bot_swarm/swarmer.dm
#	code/game/objects/effects/portals.dm
2016-09-29 01:44:27 +02:00
phil235
2d2975f783 Some preliminary changes before the damage refactor PR. The changes here do absolutely nothing gamewise.
This just adds some vars that the refactor will use. Putting this in a separate PR prevent the damage refactor PR from becoming too big (number of files changed) and hard to read and review.

Introduces the resistance_flags bitflag that replaces unacidable and burn_state.
Moves the armor var from item to /obj level and gives specific armor values to many objects, the armor list also gets two new armor types: fire and acid, which will be used in the refactor. the new fire and acid armor values are given to plenty of items.
2016-09-27 22:33:08 +02:00
phil235
6809603669 Changes obj/effect/blob,spider,swarmer,energy_net,spacevines to be ob/structures instead, since you can hit and destroy them.
Adds a large ash and large molten item decal (for future use)
simplifies decal/cleanable/replace_decal() code a bit.
Changes construction() proc to on_construction() for consistency, same for deconstruction().
Made a deconstruct() proc for machinery and computer (also for future use).
2016-09-27 19:58:27 +02:00
Joan Lung
ee9814465c Fixes a bit of brasscode 2016-09-13 17:11:57 -04:00
Joan Lung
0067bd1332 Adds brass, used to construct various brass objects (#20419)
* Adds brass, used to construct various brass objects

* brasshole

* give em the brass

* give em more brass

* DYNAMIC

* VAR MURDER SPREE

* brassy

* acceptaphil

* this is super against my general preferences but eeeeeh sure okay i guess
2016-09-13 12:16:28 +02:00
Remie Richards
c50fa5729c Merge branch 'master' of https://github.com/tgstation/-tg-station into many_hands_make_light_work 2016-09-10 20:28:23 +01:00
Joan Lung
b245319979 Adds some very fancy tables (#20388)
* Adds some very fancy tables

* even fancierer

* smoothing sprites are like a jigsaw puzzle for assholes
2016-09-09 14:09:16 +12:00
Joan Lung
266bacf4c8 Bubblegum now charges past its target's location 2016-09-03 12:09:08 -04:00
Remie Richards
00738bd2a3 More than 2 hands!? WHAAAAAAT 2016-09-02 16:10:16 +01:00
Joan Lung
cbf733dbc4 Does something, likely to be important, to blob (#19831)
🆑 Joan
rscadd: Once the blob alert message is sent in the blob game mode, all mobs get to see how many tiles the blob has until it wins, via the Status tab.
rscdel: Removed/merged a bunch of blob chems, you probably don't care about the specifics.
tweak: The remaining blob chems should, overall, be more powerful.
tweak: Shield blobs soak brute damage less well.
tweak: Flashbangs do higher damage to blobs up close, but their damage falls off faster.
experiment: Shield blobs now cost 15 resources to make instead of 10. Node blobs now cost 50 resources to make instead of 60.
experiment: Expanding/attacking now costs 4 resources instead of 5, and blobs can now ATTACK DIAGONALLY. Diagonal attacks are weaker than normal attacks, especially against cyborgs(which may be entirely immune, depending), and they remain unable to expand diagonally.
rscadd: Shield blobs no longer block atmos while under half health. Shield blobs are still immune to fire, even if they can't block atmos.
tweak: Blobs should block explosions less well.
rscadd: Blob cores and nodes are no longer immune to fire and no longer block atmos.
rscadd: Blobs can only auto-expand one tile at a time per expanding thing, and should be easier to beat back in general.
tweak: Blobbernauts now attack faster.
tweak: Blob Overminds attack mobs slower but can attack non-mobs much faster.
rscadd: Blob Overminds start with some amount of resources; in the gamemode, it's 80 divided by the number of overminds, in the event, it's 20 plus the number of active players, and otherwise, it's 60.
bugfix: You can no longer move blob cores into space, onto the mining shuttle, white ship, gulag shuttle, or solars.
bugfix: Blob rounds might be less laggy, if they were laggy?
tweak: Blobs don't heal as fast, excluding the core.
experiment: Blobs are marginally less destructive to their environment.
/🆑

Objective:
maybe possibly make blob something you can fight instead of wishing the blob didn't exist?
but also make the blob lethal enough that it can still deal with the crew if it knows what it's doing(and still lose if the crew is good instead of snowballing forever)
2016-08-17 15:48:28 +12:00
Joan Lung
79b226feb8 The Ark of the Clockwork Justicar can now be constructed even if Ratvar's rise is not an objective (#19864)
* The Ark of the Clockwork Justicar can now be constructed even if Ratvar's rise is not an objective

* you're so fucked

* behold

* clang
2016-08-16 10:24:36 +12:00
Joan Lung
60b32ddd85 Simple animals can now have a set amount of damage to deal to objects in place of normal melee damage 2016-07-30 09:14:53 -04:00
Jack Edge
c8275384be Dull table stuff refactoring
- Uses a timer, cleans some returns, nothing exciting
2016-07-08 17:10:02 +01:00
Nerd Lord
c51b1503ac clockwork windoors 2016-06-04 10:27:27 -04:00
Nerd Lord
3793e6187a Addition Ratvar conversion effects and related changes 2016-06-03 23:19:13 -04:00
Joan Lung
2cfb2d8eed Layers are now defines (#17949)
* Layers are now defines

* this looks better

* GAS_phil_LAYER

* no message

* remove the three unneeded defines

* no message
2016-05-27 22:16:21 +02:00
Cheridan
27825e6584 Merge pull request #17930 from ChangelingRain/tabling
Fixes glass tables not producing debris when broken
2016-05-27 15:03:35 -05:00
Cheridan
d5a95e093b Merge pull request #17896 from phil235/PullvsGrab
Merges Pull and Grab into a single functionality.
2016-05-26 15:51:46 -05:00
coiax
4483d5275c Shuttle manipulator (#17436)
* Starting out on our tgui journey

* God tgui, why do you need to be updated

You're dynamically generated anyway

* Commit of stuff

* Further progress is being made

* Everyone loves buildscripts

* Further modifications to my incredible running script

* Starting to modify the minimap code to be better

* It's going well thusfar, I guess

* What have I done

* RIP minimap

* FUN FUN FUN FUN FUN

* Adds shuttle_manipulator.dmi

MUH HOLOGRAMS

* Is it done? IS IT OVER

* Peer review

* Some bug fixes

* Makes that damn greentext shut up

* Shuttle registration

* Made the Emergency Escape Bar more robust

No climbing on the bar.

* Do not stare into the operation end of the device

* Compile shame

* THE MOST DUMB

* Passive barmaiden

* Emergency shuttle memes

* MORE SAFETY CODE

* Fancy shuttle manipulator icons

* Smoothing it out

* We are going to have a lot of fun with this one

* Independent blobbernauts

* WABBAJACK WABBAJACK

* Message for attempting to authenticate old style

* Angry alert noise is back

* Revert "Independent blobbernauts"

This reverts commit 34d6af7c9c88cfc2864990cb37b586bb90163dd3.

* No parrot sleep plz

* Moves the special shuttle stuff to special.dm

* No Bartender like a Centcom Bartender

* Non-controversial map changes

- Backup shuttle moved closer to Centcom main structure, docking tube
created
- Moved shuttle import landmark to above Centcom main building
- Added shuttle displays to Conference Room
- Squashed the Chapel a bit in Metastation
- Made the docking port on Z2 massive
- Made the docking port on Metastation a lot larger

* Hacks and slashes at Box

A bunch of things are extended and squashed so Box shuttle dock can
support the MetaStation emergency shuttle.

* Some Metastationshit

* Never ending changes

* Wabbajack to TGM

* Modified the bar, I think that's all of them

* Stops Barmaiden wandering around

* More code review

* Whitspace, the bane of us all

* DIE WHITESPACE DIE
2016-05-26 15:15:19 +02:00
phil235
129295be69 Merge branch 'master' of https://github.com/tgstation/-tg-station into PullvsGrab
Conflicts:
	code/__DEFINES/misc.dm
	code/game/objects/structures/tables_racks.dm
	code/modules/mob/living/carbon/carbon.dm
	code/modules/mob/living/living.dm
	code/modules/mob/living/living_defines.dm
2016-05-25 23:48:00 +02:00
phil235
4b4bbb28cc can't choke people with breathing tubes.
another tiny fix with tablepush.
2016-05-25 23:22:03 +02:00
Nerd Lord
eeb7d43730 It's a style thing 2016-05-25 12:05:23 -04:00
Nerd Lord
8f138abaf4 INSIDE the parenthesis! augh! 2016-05-25 12:01:55 -04:00
Nerd Lord
ab59c4cc78 Fixes glass tables not producing debris 2016-05-25 12:00:04 -04:00
phil235
11ca987acb Merges Pull and Grab into a single functionality. Pulling someone is now the same as a passive grab. You can start pulling someone with ctrlclick or by using the grab intent with empty hand. Using the grab intent again on the pulled person tries to grab them aggressively, then neck grab, then kill grab.
Two mobs can no longer pull the same mob at the same time. Pulling someone break any other pull/grab from other mob on that person.

The grab item is gone entirely.

You can now only grab one mob at a time, instead of two (one for each hand).

Being aggressively grabbed or more now counts as being restrained (like handcuffed). A neck grab or more makes you lie down and prevents you from getting up until the grab is broken.

Fixes movement when moving with a grabbed person.
Fixes movement when moving a pulled person around you diagonally.
Fixes neckgrab moving the victim on your turf even if the turf is dense.
2016-05-24 01:28:04 +02:00
Jack Edge
8ff4486ab7 Fixes #17480; tabling not breaking glass tables
Fixes #17480.

Also catches a rare case where people would be thrown onto the tables
from afar by checking whether there are any mobs on the table with
a spawn call.

- Glass tables are now coloured by Nar'sie.
- Glass tables pregenerate and store their shatter debris.

🆑 coiax
fix: Glass tables now break when people are pushed onto them.
/🆑
2016-05-21 10:48:04 +01:00
Jack Edge
8a3776cc61 Glass tables shatter more often
- Glass tables do not break if they have the NODECONSTRUCT flag
- Glass tables break if any living mob crosses them above small size and
  under the effects of gravity.
2016-05-02 12:47:35 +01:00
Joan Lung
6fc1d4fde4 Blobs can no longer eat the supermatter (#17205)
* Blobs can no longer eat the supermatter

* phil'd

* phil'd
2016-04-29 20:29:20 +02:00
phil235
b8164b7b92 * Add an attack animation for mech melee attack.
* Fixes mech action button icon not updating whent the button is activated.
* Fixes internal tank action button icon not updating to off when we adjusted our masks out.
* Fixes mime/clown mask not updating their action button icon when adjusting. Fixes clown mask not updating
its on mob icon if adjusted when worn.
* Fixes typo in the human threshold for toxin in the air.
* Fixes changing the thermomachine circuitboard settings not giving any feedback.
2016-04-28 18:56:14 +02:00
phil235
0480790b0a Same things but with structures now. 2016-04-24 20:38:33 +02:00
KorPhaeron
eb78787083 Throwing 2016-04-08 23:18:46 -05:00
bawhoppen
af51a66e37 Adds sandbags
* sandbgs an stuff

* mmmm

* fucking sandbags

* okokok

* aaaaaaaaaaaaaaaaaaaaaah
2016-04-02 23:52:12 -04:00
Cheridan
c6ab8b0041 Merge pull request #16165 from ChangelingRain/cultlock
Nar-Sie will now corrupt airlocks, tables, windows, and windoors
2016-03-19 21:58:12 -05:00