Commit Graph

254 Commits

Author SHA1 Message Date
phil235
64f028c065 Merge branch 'master' of https://github.com/tgstation/-tg-station into VaporizeMethodReaction
Conflicts:
	code/modules/reagents/Chemistry-Reagents/Medicine-Reagents.dm
2015-08-15 16:36:21 +02:00
phil235
e922f510c5 Fixes not getting the hit message and sound (and logging) when the item embeds itself in a human.
Throwing a big item at an alien no longer pushes it.
If the item embeds itself in you, it doesn't push you.
Fixes an old argument in item/throw_impact() that I forgot to remove.
Rename the skip argument of hitby() to skipcatch (more explicit).
2015-08-09 20:30:47 +02:00
phil235
d2a4024e7f reagent reaction() now use more methods. Instead of just INGEST or TOUCH, we now have INGEST (for injection, ingestion), TOUCH (for splashing), PATCH (for patch application and blob attack), and VAPOR (for smoke, foam and spray application).
- TOUCH no longer transfer reagent by default, it's now only used for touch based effect like being flammable when touched by fuel or you and your stuff being acided when touched by acid).

- PATCH does no transfer of its own (but actual patches code do make a transfer) but is used for touch effect that ignore clothes and protection (blob attacks, patches effect going through hardsuits)

- VAPOR does reagent transfer but it takes into account clothing protection

Fixes a typo in humanoid/get_permeability_prot
Fixes acid splashing on objects not destroying it. Fixes acid splashing on turf not destroying objects on the turf.

Changed damp rag smothering code a bit.

Blob Smoke now doesn't do anything.
2015-08-09 14:23:12 +02:00
Remie Richards
47fe31346e Adds alternate_worn_layer, like alternate_worn_icon it allows an item to slightly bend the rules of worn item rendering, DOES NOT MODIFY THE STANDING_ICONS INDEXES, BECAUSE THAT WOULD BREAK THINGS 2015-08-02 22:45:18 +01:00
phil235
94d072828f Merge branch 'master' of https://github.com/tgstation/-tg-station into CatchThrownPieFix
Conflicts:
	code/game/atoms_movable.dm
	code/game/objects/items/weapons/dice.dm
	code/game/objects/weapons.dm
	code/modules/flufftext/Hallucination.dm
	code/modules/mob/living/living_defense.dm
	code/modules/mob/living/living_defines.dm
	code/modules/reagents/reagent_containers.dm
2015-07-19 21:53:39 +02:00
phil235
9eced1ac5b Fixes thrown closet opening to not use spawn().
Fixes throw_at() to look nicely for xeno leap by adding the diagonals_first argument.
Removes useless gateway/Crossed and gateway/Bumped().
Changes throw_at() to use diagonal directions.
I replaced the atom variable "throwpass" with the LETPASSTHROW pass_flags
I readded hit_check proc to catch things getting on the thrown thing's tile during its sleep(1) (especially needed for mobs running towards the thing), the only other possibility would've been to add throwing checks in atom/movable/Crossed() (called after every move) and I don't think it'd be worth it.
I added the item var "thrownby" to be able to continue to log the thrower of the item when it hits a mob. It removes the need for a thrower argument in throw_impact() and hitby().
2015-07-19 21:29:35 +02:00
Firecage
4688c2c969 Fixes proc arguments 2015-07-15 23:52:35 +02:00
Cheridan
a7b0b9c62f Merge pull request #10477 from ojacobson/screwdriverspamfix
Fix consistency issues with eyeball screwdrivers
2015-07-14 00:41:00 -05:00
phil235
b570af6795 Fixed catching banana creampie in mid throw (and similar objs). 3824 10536 (hitting a wall now makes the smashed pie effect appear ON the wall)
Moved last_bumped var from movable to living.
Renamed /obj/machinery/field/proc/bump to bump_field() to avoid confusion with Bump(). Same thing with /obj/effect/mine/Bumped() -> triggermine().
Fixes sprite when hunter leaps into a wall. 10428
Removed some commented code here and there.
Remove allow_spin var, throw_at now uses a spin argument for that.
Throwpass atom var is no longer used to check whether thrown stuff can pass stuff (now using CanPass() proc like everything else), the var is still used for some adjacency click check.
A thrown mob hitting another mob now produces a sound; also thrown mob and target one no longer swap places even on help intent.
A thrown mob now is lightly hurt (and weakened) if he hits a wall/mob/dense object. Nerf the damage when thrown mob hit wall.(20 -> 10)
Thrown obj/mob no longer bounces off wall unless it's no grav. Heavy thrown items now push an unanchored obj/mob target.
Fixes losing all momentum when getting out of a thrown closet. 6569
A lot of work on throw_at, throw_impact, and hitby to make the code more OOP. Thrown items no longer collide with border items on the side. 10479
Fixes the killer crusher. 10507
2015-07-14 00:51:19 +02:00
Remie Richards
f7faf4d730 Merge pull request #10487 from MrStonedOne/attacklogcleanup
Attack logging tweaks/cleanup
2015-07-10 18:42:08 +01:00
Jordie
4928617c2b Merge pull request #10334 from xxalpha/jetbutt
Added ability for items inside items to have action buttons.
2015-07-09 20:51:29 +10:00
MrStonedOne
a262f9aac7 Attack logging tweaks
Removed the "feature" to have something log in an atom's vv attack log, but not the file attack log. all attack log items will go to the file as well as vv.

Replaced all hard coded src.name/name for attack log's object argument with an actual object (src) except where it made more sense not to.

All attack logging *should* happen AFTER damage is applied now.

Removed the confusing attack entry for when a changeling stings another changeling.

Tweaked how punch attack logs worked
2015-07-08 23:14:37 -07:00
Owen Jacobson
fdc75e0725 Reverse nerfs, retain bugfixes. 2015-07-08 15:19:11 -04:00
Jim Boonie
515fb80758 Fixes some other things I can't remember what I fixed right now. I'm imbibing, rev up the lawsuit. Eric once said Bloodline was a pretty good show, but I've yet to watch it. So nevermind. Fuck the opening theme of True Detective's second season is catchy though. Goddamn. Leonard. 2015-07-09 03:25:31 +12:00
Jim Boonie
f021817b8c Imagine getting stabbed in the eyes. How fucking shitty would that feel? 2015-07-07 17:48:08 +12:00
Jim Boonie
ecfe36f440 Removes debug lines and tweaks a few final things 2015-07-07 08:36:31 +12:00
Jim Boonie
8241a5acc5 Makes screwdriver eyeball spam less bullshit 2015-07-07 07:38:49 +12:00
Razharas
572121ecc4 Merge pull request #10244 from Ikarrus/workplacesafety
Workplace "Accidents"
2015-07-03 05:05:36 +03:00
xxalpha
b563d5fbf4 Added ability for items inside items to have action buttons. 2015-07-03 00:33:02 +01:00
Ikarrus
07bf0fd953 You can splash yourself with reagent glasses now 2015-07-01 12:01:58 -06:00
xxalpha
cbf041c054 MATERIAL DATUM 2015-07-01 18:32:30 +01:00
xxalpha
cfb5e724b6 Material container, all items can have materials, wake me up
cant wake up

go to sleep debug
2015-07-01 03:34:47 +01:00
Ikarrus
8c1fde7947 Squashed Commits 2015-06-28 22:38:55 -06:00
Ikarrus
454348759d Workplace "Accidents"
- Slipping while carrying items in your hand may cause ~accidents~
  - 30% chance to attack yourself
  - 30% chance to attack the floor
  - 30% chance to throw the item towards the direction you're facing
- Throwing reagent containers such as drinks or beakers may spill their contents onto whatever they hit
2015-06-28 18:19:11 -06:00
phil235
e8d3deafab Merge branch 'master' of https://github.com/tgstation/-tg-station into AcidFix
Conflicts:
	code/modules/clothing/masks/gasmask.dm
2015-06-28 15:22:21 +02:00
Ikarrus
6cc17a6243 Resolved Conflicts:
code/modules/clothing/clothing.dm
	code/modules/clothing/masks/gasmask.dm
	code/modules/clothing/suits/bio.dm
	code/modules/clothing/suits/utility.dm
2015-06-27 00:17:02 -06:00
Ikarrus
8759f56f6f Squashed Commits 2015-06-27 00:09:16 -06:00
Ikarrus
3d5f126779 Destructible Clothing [WIP]
- Clothes can be set on fire and extinguished
  - Any item can technically be set on fire and extinguished now, but only clothes (and paper) actually burn right now
  - All of a mob's clothing are burned if the mob is husked by fire
- Clothes will also have a chance of being shredded if you are caught in a bomb blast
  - The bigger the explosion, the higher the chance they have of being destroyed
  - Outer layer clothing (headgear and exosuits) take the shock first, which absorbs some of the shock for the clothes it covers, according to it's bomb armor
2015-06-25 00:06:47 -06:00
phil235
a029f2852a Merge branch 'master' of https://github.com/tgstation/-tg-station into AcidFix
Conflicts:
	code/modules/reagents/Chemistry-Reagents/Blob-Reagents.dm
2015-06-24 21:15:09 +02:00
xxalpha
0797226d2e Merge remote-tracking branch 'upstream/master' into chief
Conflicts:
	code/modules/clothing/spacesuits/hardsuit.dm
2015-06-23 21:50:16 +01:00
xxalpha
16504ef0cf Cleaned some clothing flags. Ported turf/Entered optimization from vg. 2015-06-23 01:52:14 +01:00
phil235
b0cd6d34b1 Lots of work on acids, smoke, foam, reagents reaction() proc.
- fixed the fraction argument in reaction(...., INGESTED, fraction) so the proper amounts of each reagent react, not all of it.
- slight optimization of datum/reagents/reaction()
- small optimization /datum/reagent/proc/reaction_mob
- the smoke's reagents no longer do direct transfer upon crossed()/move() but uses "reagents.reaction( mob, TOUCH)" only.
- fixes no ingesting smoke if it's in the dark.
- removed block gas smoke effect flag from clown mask and other non "actual" gas mask.
- refactor how protection against touched chems being absorbed is done. get_permeability_protection() to get that protection. No more

simple RNG get touched or not, now the amount that touches you depends on your protection and the volume in question.
- changes acid_act to take volume into account.
- chem_smoke now uses process() just like foam, we remove the reaction from crossed() and Move(), it's only done in process() now.
- optimization of effect/smoke, OOP! And now all smoke effects use objprocessing instead of shitty sleep/spawn
- removed mob var/coughedtime.
- add a volume check to item/acid_act(), there's a threshold to be able to melt and then a probability to melt (acidpwr&volume).
- greatly lowered the amount of reagent in the smoke from dead blobspore (so the volume isn't enough for melting)
- human/acid_act(): damage to limbs depends on acidpwr&volume.
- fixes metalfoam not working.
- smoke powder: only one start() call.
- Amound of smoke objects depends on amount of smoke recipe created.
- Adds an argument to add_reagent() to block automatic call of handle_reaction()
- When using reagents/proc/trans_to(), reactions are now only handled after every reagent is transfered and not before.
- Amount of smoke objects depends on amount of smoke reagent created.
- radius of foam reaction depends on amount of foam reagent created.
- The amount of other reagents inside the smoke/foam decides the life expectancy of the effect.
- The amount of reagents in each small smoke cloud/foam cell depends on the amount of other reagents in the initial reaction but also

how much smoke/foam was created (more smoke means dilution of the reagents).
- smoke/foam's reagent reaction on mob decreases the life expectancy of the effect (to avoid reagent duplication)
- The amount of reagent reacting with atoms is less if the life expectancy is high.(to avoid reagent duplication)
- The amount of movement from the smoke now depends on the number of smoke clouds created.
- removing some useless code in chem_grenade/prime().
- When calling human/acid_act(), item acid melting chance lowers after each each successful melt in the list, some of the acid is

"used" to melt that item so the next items have a lower chance to melt (to make melting every clothing harder).
- remove the banned reagent list from sprays, not needed anymore now that acid is nerfed.
- chem_grenade reaction, if there's no reagent left after reaction (smoke/foam/etc, reagents cleared) you don't get the steam effect

and immediate reaction with all atoms around the grenade explosion. (Fixes foam cleaner grenade deleting bloodstains around it as soon

as the grenade explodes, even if the foam hasn't reached the tile yet).
- melted storage items now drop their content instead of deleting everything.
2015-06-22 00:35:24 +02:00
Remie Richards
f15c81d527 Caps armour to 90% damage reduction, bai bai invincibility, Adds armour_penetration variable to /item, counted for melee weapon and gun combat, Xenomorphs also have 10 armour_penetration per attack. 2015-06-18 20:36:36 +01:00
phil235
e6dcabf245 Merge pull request #9960 from xxalpha/bass
Put drop_item() calls inside ifs. Replaced some drop_item() with unEq…
2015-06-18 15:50:35 +02:00
xxalpha
b2e84a0d3c Put drop_item() calls inside ifs. Replaced some drop_item() with unEquip( 2015-06-14 20:11:40 +01:00
MrPerson
9dc713ba9c Merge branch 'master' of https://github.com/tgstation/-tg-station into screen_alert_2
Conflicts:
	code/_onclick/hud/alert.dm
	code/game/objects/items.dm
	code/modules/mob/living/carbon/human/human.dm
	icons/mob/screen_alert.dmi
2015-06-09 03:23:18 -07:00
Cheridan
6c12887367 Pressure_resistance Tweaks
-Adjusts pressure resistance, which determines how easily things can get pushed around by atmos.
-Most items (handheld stuff) are less resistant, while most larger items (mobs, structures, machinery) are more resistant.
-Removes the cooldown on air pushing stuff, which should make it feel more 'responsive', as opposed to the current push->pause->push->pause effect it does now.
-MAGBOOTS/NOSLIPS NOW PREVENT SPACEWIND PUSHING! !!!
-Adds a little wooshy breeze sound to when you would get pushed
2015-06-03 23:22:25 -05:00
Incoming
061478165a upgrades the HARDFEET species flag to PIERCEIMMUNE
In addition to keeping golem feet safe as always golems are now immune to object embeding. As a mitagating nerf and logical extension, golems can no longer be injected with chems either.
2015-05-31 18:54:30 -04:00
Cheridan
10f2b7ae00 Merge pull request #9559 from xxalpha/cardtrick
Card deck fixes and storage fixes.
2015-05-28 21:41:00 -05:00
phil235
ec6e318343 Fixes extinguisher (w/safety off) spraying water when placed on a table.
Fixes runtime when putting beaker in autolathe.
Fixes spray can empty message appearing when placing it on a table.
Fixes experimentor manual not having a title.
Fixes runtime with engine goggles updating nearby objects visibility.
Fixes runtime when looking at picture from the AI camera.
Updating the 'can_be_placed_into' list for items so their afterattack don't do anything when placing them in experimentor, autolathe, destructive analyzer.
Fixes soap starting to clean the table when placed on it.
Fixes drinking glasses having capitalized names.
2015-05-23 16:03:48 +02:00
xxalpha
adccdd38e9 Made a proc and fixed other buggy items. 2015-05-19 00:28:15 +01:00
Cheridan
ba20b8a265 Merge pull request #9352 from Jordie0608/redefiningwhatitmeanstobeadefine
Resolves #1358, /code/defines/obj.dm reorganization
2015-05-13 09:23:56 -05:00
Firecage
e80e08d552 Allows you to pick up stuff with the verb while buckled. 2015-05-05 15:54:49 +02:00
Jordie0608
e810855367 reorganizing stray objs in /defines 2015-05-05 21:18:21 +10:00
Jordie
3606662c88 Merge pull request #9106 from phil235/BundleFix5
Cyborgs, MMIs, and other fixes
2015-05-02 23:59:22 +10:00
Jordie
4da4d09ffb Merge pull request #9190 from phil235/XenoManipFix
Xenomorphs with has_fine_manipulation  can now pick up even big items
2015-04-28 23:48:46 +10:00
phil235
de7724f8d4 Xenomorphs with has_fine_manipulation (admin var edit only) can now pick up even big items of w_class 4 and 5. 2015-04-26 21:59:12 +02:00
GunHog
3ed9dc50bc Acid_Act() fix
acid_act() now respects the unacidable flag for items exposed to acid,
but are not worn on a mob.
2015-04-26 02:29:04 -05:00
phil235
9132838420 Merge branch 'master' of https://github.com/tgstation/-tg-station into BundleFix5
Conflicts:
	code/game/machinery/computer/ai_core.dm
	code/game/objects/items.dm
	code/game/objects/items/robot/robot_parts.dm
	code/modules/mob/living/carbon/brain/MMI.dm
2015-04-25 19:52:14 +02:00
kingofkosmos
1d14471d00 Ellipses to waiting messages. Warning-spanclasses to failing messages with an exclamation mark. 2015-04-24 20:50:50 +03:00