Commit Graph

70 Commits

Author SHA1 Message Date
c0 6c9be9c82d Adds breathing tube implant, changes how heart works, reworks arm-mounted implants 2016-02-25 12:50:45 +03:00
phil235 57203430fd Merge branch 'master' of https://github.com/tgstation/-tg-station into ActionButtonUpdateRefactor
Conflicts:
	code/modules/clothing/clothing.dm
	code/modules/mob/living/carbon/inventory.dm
	code/modules/mob/living/carbon/life.dm
	icons/mob/actions.dmi
2016-02-23 19:49:38 +01:00
phil235 0ec876d9fe Refactored the item's action system. Items can now hold multiple actions.
The "set internals" button of tank items now turn green when it's used as internals.
Removed research scanner from drones (since cyborgs don't have it, it's more consistent)
Removed the ignore_madkadjust mask var.
The sechailer mask now has an adjust mask action button, so I removed the adjust verb that it was using.
The item's action are now created on item/New() instead of trying to create it every time someone picks the item up.
I split hud/action.dm, the datum/action stuff is now in the datum folder (/datum/action.dm), whereas the code for action buttons is kept in the hud folder under action_button.dm. Also I moved some /datum/action code that was in some files back into datum/action.dm where it belongs.
2016-02-23 19:37:42 +01:00
phil235 91839f5f70 Action buttons will now only update when needed instead of every Life().
The action buttons now update their icon instantly.
Fixes versions of pickup(),equipped() and dropped not calling the parent.
Fixes drone not being able to remove a defib from their storage.
You can now cycle the mime mask by clicking it in your hand.
The action buttons for hardsuit and hooded suits now only appears when you're wearing the suit.
Created two mob helper procs getBeltSlot() and getBackSlot().
Created /datum/species/proc/on_species_loss() to handle stuff when our race change, currently only used by jelly and slime race to remove their exotic blood from our reagents and to remove slime people's action buttons.
2016-02-22 00:34:59 +01:00
oranges 54e14878b1 Nerf the defib heavily 2016-02-22 10:10:32 +13:00
phil235 7e1efca13a Created two new procs to handle reviving mobs more easily:
- can_be_revived(), used so we don't revive a mob who would immediately die again (lack of brain organ for carbons).
- fully_heal(), called by revive when we want to completely heal a mob before trying to ressuscitate it.

I gave some arguments to revive() so the proc can be used by more than just the admin healing code (ai revived by the AI fixer console, drone revived by another drone clicking it, strange reagent ressuscitating you, borg revived by restart circuitboard, changeling using his revive ability, etc)

This fixes borg revival not updating its vision correctly and not updating the diagnostic HUD. Same fix for changeling revival.
2016-02-16 23:27:08 +01:00
phil235 74e8bbf029 Fixes defibbed corpse not getting blind overlay despite being in crit.
Brain mobs that are beaten to death can still be inserted inside a brainless human corpse but defibbing the corpse cannot work (the brain is too damaged). On the other hand cloning that corpse will still work.
Deffibing a brainless corpse no longer gives "further attempts may be successful".
Fixes brain mob's container var not being nullified on Destroy().
2016-02-12 21:47:22 +01:00
phil235 83633edfed - I renamed some of the new adjust procs and create new ones for eye_blind,eye_blurry and eye_stat so they get three procs just like weakened/sleeping/etc.. (Sleeping, AdjustSleeping, SetSleeping)
- renamed the eye_stat var to eye_damage.
- mob/on_varedit() added. Manually var editing a mob's eye_blind var properly updates his vision.
- I removed update_vision_overlays(), we now just update the relevant fullscreens instead of all fullscreens whenever one needs to be updated.
- fixed climbing into mecha not giving you mecha sight.
- simplified and removed copypasta from update_tinttotal() (now update_tint() )
2016-02-07 18:50:18 +01:00
phil235 8b11d87b1d Merge branch 'master' of https://github.com/tgstation/-tg-station into VisionUpdateRefactor
Conflicts:
	code/ATMOSPHERICS/components/unary_devices/cryo.dm
	code/_onclick/hud/alert.dm
	code/_onclick/hud/hud.dm
	code/datums/mutations.dm
	code/datums/wires/robot.dm
	code/game/atoms.dm
	code/game/gamemodes/blob/overmind.dm
	code/game/machinery/alarm.dm
	code/game/machinery/machinery.dm
	code/game/machinery/suit_storage_unit.dm
	code/game/objects/items/weapons/tanks/tanks.dm
	code/game/objects/items/weapons/tools.dm
	code/game/objects/structures/morgue.dm
	code/modules/admin/verbs/adminjump.dm
	code/modules/atmospherics/machinery/atmosmachinery.dm
	code/modules/mob/inventory.dm
	code/modules/mob/living/carbon/alien/humanoid/death.dm
	code/modules/mob/living/carbon/alien/larva/death.dm
	code/modules/mob/living/carbon/brain/death.dm
	code/modules/mob/living/carbon/carbon.dm
	code/modules/mob/living/carbon/human/death.dm
	code/modules/mob/living/carbon/human/human.dm
	code/modules/mob/living/carbon/human/human_damage.dm
	code/modules/mob/living/carbon/human/life.dm
	code/modules/mob/living/carbon/human/species.dm
	code/modules/mob/living/carbon/human/species_types.dm
	code/modules/mob/living/carbon/life.dm
	code/modules/mob/living/carbon/monkey/death.dm
	code/modules/mob/living/life.dm
	code/modules/mob/living/living.dm
	code/modules/mob/living/silicon/ai/ai.dm
	code/modules/mob/living/silicon/ai/death.dm
	code/modules/mob/living/silicon/ai/life.dm
	code/modules/mob/living/silicon/pai/death.dm
	code/modules/mob/living/silicon/pai/pai.dm
	code/modules/mob/living/silicon/robot/death.dm
	code/modules/mob/living/silicon/robot/life.dm
	code/modules/mob/living/silicon/robot/robot.dm
	code/modules/mob/living/silicon/silicon.dm
	code/modules/mob/living/simple_animal/guardian/guardian.dm
	code/modules/mob/login.dm
	code/modules/mob/mob.dm
	code/modules/projectiles/gun.dm
	code/modules/reagents/chemistry/reagents/blob_reagents.dm
	tgstation.dme
2016-02-04 14:34:45 +01:00
phil235 81ce777ec2 - you now only see turfs when inside gas pipes.
- I renamed some vars of datum/hud to be more selfexplanatory
- Moved all datum/hud mob code into the hud folder.
- fixed alien's zone selection button not using the correct sprites.
- I removed the update_hud() proc (that needed to be removed).
- Fixed a typo in /mob/living/carbon/ContractDisease , using "internals" instead of "internal" (very different things)
- Fixed doTeleport() calling Entered() twice on the destination area.
- To reference a mob's selected zone, you now use a direct mob var ("H.zone_selected" instead of "H.zone_sel.selecting")
- mobs lose certain screen objects var ("healths", "zone_sel", "internals", etc) which are now vars of the mob's datum/hud instead.
- the Blind spell is now done via the blind mutation instead of the blind disabilities.
- Give to mobs a version of forceMove(), so the mob is always properly unbuckled, his pull stopped, his vision updated, etc.
- The "user" var of mob/camera/aiEye/remote is renamed to "eye_user" to avoid confusion.
- reset_view() is replaced by reset_perspective(). Now all changes to client.eye and client.perspective are done with this proc.
- I reworked /obj/machinery/computer/security code, changing camera is instantaneous now, as well as cancelling.
- I reworked /obj/machinery/computer/camera_advanced code as well.
- I changed /obj/item/mecha_parts/mecha_equipment/mining_scanner's meson view to be constant instead of by intermittent.
- Fixes not being able to use /obj/item/device/camera_bug while buckled.
- removed admin_forcemove() proc, admin force moving now uses forceMove() simply.
- Removed the client var "adminobs"
- Added var/vision_correction to glasses.
- Added a thermal_overload() proc for glasses, to remove copypasta in emp_act code.
- Remove the hal_crit mob var
- We no longer delete the mob's hud everytime he logs in.
- Added a stat == dead check in mob's metabolize() so we immediately stop metabolizing if one of the chem kills the mob.
- Being inside disposal bin lowers your vision, like wearing a welding helmet.
- removed the remote_view mob var.
- I changed advanced camera EYE, some fixes, removed unnecessary code when the eye moves, now the mob client eye properly follows the camera mob.
- fixes mob var "machine" not being nullified on logout.
- larva/death() was calling two "living_mob_list -= src"
- I made the Blind screen objects into a global_hud instead of giving one to each mob (like damage overlay).
- I untied tint and eye_blind, TINT_BLIND doesn't give you eye_blind=1.
- gave a visual overlay when inside locker (vimpaired)
- when inside disposal/gas pipes you get sight |= (BLIND|SEE_TURFS)
- glasses toggling updates (atmos meson toggle): DONE
- The new adjust procs serve to properly change eye_blind etc and call vision update procs when needed.
- I added an on_unset_machine() proc to handle perspective reset for camera consoles.
- I moved consequences of eye_check fail inside eye_check() procs themselves.
- I fixed vision updates being fucked by forceMove, especially pipe vision.
- I decided that damage overlay not appearing when dead.
- mob's hud_used is no longer deleted on each login()
- I refactored mob huds a bit, creating subtypes for each mob (/datum/hud/human)
- f12's hud toggling is now available to all mobs
- gave borgs a low_power_mode var so unpowered borg do not use stat= UNCONSCIOUS (which made things weird since you were unconscious but not blind)
- Fixed double Area entering when forced teleporting.
- I fixed larva pulling not being broken when cuffing them, and larva not seeing handcuff alert (and they can resist by clicking it)
- I removed pull updates from life() since it onyl checked for puller's incapacitation.
- I renamed camera/deactivate() to toggle_cam() to be more accurate.
- I fixed mmi brain being immortal (by removing the brain and putting it back)
- I simplified mmi brain emp damage.
2016-02-04 00:33:16 +01:00
KorPhaeron 1ce90959ef Notify 2016-01-06 22:40:50 -06:00
Tkdrg dd20530f0e Adds ghost alerts.
Adds ghost alerts for revival (cloning, MMIs, nar-sie, drones, etc).
2015-10-27 23:07:41 -03:00
Xhuis af31d566b2 Syndicate medical cyborgs 2015-09-17 20:02:48 -04:00
phil235 428a28a440 Fixes monkeyize/humanize removing the mob's viruses when they should be kept.
Fixes NOCLONE and CLUMSY being in both disabilities and mutations. they're now only disabilities.
Fixes minttoxin not gibbing people with the fat disabilities.
Fixes some runtimes, replacing usr by user in some places.
Fixes mutation overlays being removed when updating overlays.
Remove the now unused mob/var/list/mutations and human/var/blood_type
Fixed some formatting in preferences.dm
2015-09-13 22:52:38 +02:00
duncathan 51c09f16bf makes all Destroy()'s return properly 2015-08-31 00:21:01 -06:00
SconesC e2e7b3dc38 Why was it capitalized 2015-08-16 10:08:08 -07:00
SconesC d1655e335a makes it more clear 2015-08-15 21:27:49 -07:00
SconesC e05a127fd1 Updates defib message when >180 damage 2015-08-15 21:26:10 -07:00
c0 a06271733e Fixes and changes 2015-08-12 20:31:35 +03:00
c0 95285e7946 Changed cloning ghost notifications to be less copypasta 2015-07-31 18:42:03 +03:00
kingofkosmos 750e5d9b5e Changed span classes to include the re-entering link. 2015-07-23 18:58:15 +03:00
kingofkosmos 0095637eee Clickable link added to all re-enter corpse messages. 2015-07-23 10:50:45 +03:00
Firecage 4688c2c969 Fixes proc arguments 2015-07-15 23:52:35 +02:00
Cheridan 61d5425c3f Merge pull request #10503 from phil235/RevolverMisfireFix
Fixes for lighter, heart attack, defib, light fixture and other stuff
2015-07-11 19:01:04 -05:00
phil235 53a7b37a94 Modified detective revolver isn't deleted anymore when it misfires.
Heart attack: Moved heart attack var (and changed related code accordingly) from carbon to human since non humans have no use for it. I also added some feedback message when you recover from a heart attack.
Added a click cooldown on touching a light fixture.
burning yourself with a lighter now burns only the arm holding the lighter.
Fixes incorrect message when defibbing heart attack patient.
2015-07-10 00:18:35 +02: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
xxalpha b2e84a0d3c Put drop_item() calls inside ifs. Replaced some drop_item() with unEquip( 2015-06-14 20:11:40 +01:00
Xhuis 4b84cfe73d Fixes defibrillator breaking after harm use 2015-05-15 23:41:08 -04:00
Jordie0608 332419ca31 adds target to do_after 2015-05-10 15:44:54 +10:00
Jordie e71106ad13 Merge pull request #9289 from Xhuis/now_he's_poorly_from_too_much_electric
Adds a second functionality to the emagged defibrillator
2015-05-08 22:10:49 +10:00
Xhuis ce49f52405 Lowers charge time 2015-05-02 21:27:54 -04:00
Xhuis 08053c0235 Makes the emagged defib more worthwhile 2015-05-02 14:17:05 -04:00
phil235 be1708483e - Fixed nettle soup recipe says abstract nettle.
- Fixes hostile animals weakening non carbons, and adjusted weakening values 1958.
- fixes being able to drop defib paddle by resting, fix a runtime linked to this.
- can no longer pick card from deck while resting, same for paper bin and bedsheet bin.
- examining extinguisher and atmos watertank nozzle gives you the amount of water remaining.
2015-05-02 01:34:38 +02:00
Boggart 21b148d1d3 Makes ghosting after someone defibs you cause the process to fail by checking just before the revive. 2015-04-27 13:04:25 -06:00
Xhuis 0e63f6da8e Fixes defibrillator message 2015-04-25 19:56:14 -04:00
kingofkosmos de280c72b5 Removed some more spans from visible messages. 2015-04-24 21:06:59 +03:00
kingofkosmos 1d14471d00 Ellipses to waiting messages. Warning-spanclasses to failing messages with an exclamation mark. 2015-04-24 20:50:50 +03:00
phil235 2ed906b990 Fixes inhand sprites for eggs.
Fixes heart underwear sprite being too big.
Fixes being able to push a janicart through plastic flaps.
Fixes ERT medic closet starting with a combat defib with no cell. Empty combat defib can now get a cell inserted.
Fixes inconsistency in nukeop pinpointer upon activation, it now says standard pinpointer message plus the current mode (shuttle or disk).
2015-04-14 17:41:36 +02:00
Zelacks cb6bae5e52 -Defibs no longer have a minimum damage requirement. Previously the body required to be damaged in order to be defibbed (Required to be damaged, atleast 200 units). I can only assume that this was the case because the author had math that needed the body to have atleast 200 units of damage for it to work correctly, but I assume that the author naively thought it was impossible to heal corpses.
--Defibs now restore the health of the user to halfway between crit and death (-50 health or 150 sustained damage). If the user has little damage sustained, they will receive oxyloss to place them to the halfway point. If the corpse has more damage than the halfway point, they will be healed to the halfway point, in a ratio based on how much they sustained in each type of damage they took.
--Defibs will not heal cloneloss, and will still damage/heal the patient to the halfway point including the cloneless (eg a patient who is 0/0/0/0 with 30 cloneless receives 120 oxyloss). If the patient has too much cloneloss, they will heal fully, except they will still have the cloneloss (eg, they will be 0/0/0/0 with 180 cloneloss on revival)
--Additonal feedback given for some failure states for the defib.
2015-04-07 18:28:32 +08:00
Iamgoofball 33ffd33180 fixes and tweaks 2015-03-14 21:13:23 -07:00
Iamgoofball 3964cb3126 Adds heart attacks properly. 2015-03-02 20:50:48 -08:00
Remie Richards 5fc7af7fbf attackby() now has an argument containing the parameters of the click that called it. Items placed on tables now center their icon where the user clicked. this is NOT true for racks, since racks look organised in their sprite.
Items reset their pixel_x and pixel_y values on pickup.
2015-02-19 13:02:43 +00:00
paprka 89bbb80d1c small change 2015-02-08 17:09:31 -08:00
paprka 3e61bba236 defib changes 2015-02-08 17:06:34 -08:00
Steelpoint a097f86ac6 ERTBalancePassV1 2015-01-18 19:18:47 +08:00
phil235 d5a7d82959 Fixes a lot of "the the" in messages. 2014-12-16 22:59:55 +01:00
Hornygranny bb273c5034 path fixes 2014-12-15 18:40:50 -08:00
Hornygranny e91796d59c proper sound changes 2014-12-15 18:36:19 -08:00
Hornygranny 7288f865fe undoes tortoisegit merge fuckery 2014-12-15 18:23:50 -08:00
Cuboos 0bb7d2a5a5 Merge remote-tracking branch 'remotes/upstream/master' into CuboosSoundS1E1
Conflicts:
	code/game/objects/items/weapons/defib.dm
	config/admins.txt
2014-12-15 18:12:14 -08:00