Commit Graph

302 Commits

Author SHA1 Message Date
Menshin
9afe050025 Replaced last occurences of gc_destroyed by qdeleted(). 2016-03-05 01:58:56 +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
Bjorn Neergaard
0f89670107 Prevent picking up anchored items 2016-02-12 01:00:55 -06: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
Bjorn Neergaard
8d3e3d4202 Fix space heater interaction 2016-01-25 12:03:18 -06:00
Bjorn Neergaard
1599742f7e Re-structure tgui's ui_act 2016-01-22 19:25:36 -06:00
Bjorn Neergaard
3ae2397d9f Fix interacting with intercoms as AI 2016-01-19 17:02:59 -06:00
Bjorn Neergaard
1c34479376 Fix uplink code once and for all
Fixes #14733
2016-01-19 16:42:57 -06:00
duncathan salt
f9e35f1695 Merge pull request #14706 from xxalpha/straightouttajacket
Fixes the straightjacket
2016-01-19 07:24:51 -06:00
Bjorn Neergaard
5cfc60d9da tgui radios; clean up frequency code 2016-01-18 14:28:33 -06:00
Bjorn Neergaard
a1ff8e8783 Refactor tgui interactions
Removes a lot of duplicated code, thanks to @nullquery's parent tweaks
2016-01-18 14:27:56 -06:00
Bjorn Neergaard
ff5d6292c8 tgui uplinks; repath uplinks 2016-01-18 14:22:00 -06:00
xxalpha
53b74da4bd Fixes the straightjacket
More straightfixes
2016-01-17 22:12:34 +00:00
tkdrg
5930ee0d66 Merge pull request #13588 from Lo6a4evskiy/quick-equip-refactor
Refactor quick-equip verb
2015-12-29 14:26:48 -03:00
Lo6a4evskiy
ab6fb1ab36 Refactor using slot_equipment_priority 2015-12-29 17:59:56 +04:00
KorPhaeron
b7efa4ca3c Nerfs the ultimate stealth weapon 2015-12-20 05:32:42 -06:00
Cheridan
a973a2518b Merge pull request #13585 from KorPhaeron/reactive_expansion
Reactive mechanics expansion and shooting grenades/flamethrowers out of peoples hands
2015-12-17 17:05:53 -06:00
KorPhaeron
f32da8b449 jesus christ 2015-12-14 19:56:54 -06:00
KorPhaeron
d8a37204e7 Makes burn_state use defines 2015-12-13 05:36:55 -06:00
KorPhaeron
09c95d9551 Grenades, flamethrowers, better shields 2015-12-12 00:34:04 -06:00
KorPhaeron
36c45e0247 Starting work, I'll finish this later maybe 2015-12-11 00:53:17 -06:00
duncathan salt
0472592b97 Merge pull request #13327 from KorPhaeron/reactive
check_shields() refactor
2015-12-07 19:58:17 -06:00
MrStonedOne
a5f0f3f594 changes spawn() throw_at to throw_at_fast set waitfor = 0
Set waitfor = 0 has massively less overhead then spawn() but still does basically the same thing.

It causes the first sleep in the stack from that point on to make the set waitfor = 0 proc return . then continue on as if it was spawn()'ed, but it doesn't have to copy over the local vars of the proc so a lot less overhead

http://pastebin.com/kx538RqS
2015-12-04 04:37:16 -08:00
KorPhaeron
6be3a6fd58 Cleans up copypaste but this time it compiles 2015-11-30 16:50:17 -06:00
KorPhaeron
fab3cdc3a2 Cleans up copypaste, adds missing block chances 2015-11-30 16:39:02 -06:00
KorPhaeron
2609adb29d Blocking overhaul 2015-11-30 16:22:31 -06:00
Jordie
da0c466f82 Merge pull request #13149 from Firecage/toolspeed
Adds toolspeed
2015-11-29 21:06:15 +11:00
Remie Richards
62d301bfe5 Merge pull request #12998 from YotaXP/drone-fixes
Allows drones to use 'pick up' and watertanks
2015-11-27 20:38:23 +00:00
Firecage
9fe09959a4 Changes the base toolspeed var to 1 2015-11-21 19:40:20 +02:00
Firecage
c933363062 Adds the toolspeed var and adds it to most usages of tools which has a timer 2015-11-21 19:24:14 +02:00
YotaXP
4ece522dff Removed snowflake. 2015-11-15 02:34:17 -05:00
Tkdrg
11ab5901ee Pickup() improvements
Fixes flashlight exploit.
Removes unused proc can_use_hands().

Fixes #11282
2015-11-14 17:05:08 -03:00
YotaXP
c8de15116c Allow drones to use the pick-up verb.
Fixes #12896
2015-11-12 20:10:31 -05:00
Remie Richards
cb5458cfc3 Expands large-inhands to large-any-worn-item, Adds a system for overlays on top of inhands and other clothing (Think ammo counters, primed grenade flashing etc.), Removes almost all of the copypaste in the update_icons() system 2015-10-18 15:54:09 +01:00
GunHog
839d22f842 Proper name extraction
Uses the Protolathe procs to obtain the correct tech and material names!
2015-10-09 19:44:18 -05:00
GunHog
dcbcfefa01 Action buttons + More mobs!
- Scanner control is now an action button.
- Fixed multiple scanner bugs (I think)
- Gave ability to drones and borgs.
2015-10-08 11:30:39 -05:00
GunHog
647dd5dbb4 Icons on component scan
- Because RR likes pretty pictures.
- Also closes a span properly.
2015-10-07 16:12:34 -05:00
GunHog
4a5caf968a Research Examines!
Science Goggles and the Prototype Hardsuit Helmet may now scan items for
their research potential and machines for their contents.

Examine an item to gain additional data.
- Tech levels
- Materials that can be salvaged from it if recycled
- Reliability rating
- Crit failure, if present.

Examine a machine to learn the components used to build it.
2015-10-07 13:45:51 -05:00
xxalpha
f493bff99c Fixed merge. 2015-09-24 03:26:52 +01:00
xxalpha
deb60ae309 Replaced /proc/is_sharp() with /obj/item/proc/is_sharp(). 2015-09-24 03:08:28 +01:00
Swag McYolosteinen
606c6e0ae4 Merge pull request #11677 from xxalpha/aliums
Xeno tweaks and bugfixes.
2015-09-14 17:00:14 +02:00
Swag McYolosteinen
d57fac141a Merge pull request #11724 from RemieRichards/LargeInhands
Inhands can now come in ANY SIZE, not just 32x32!
2015-09-13 17:23:36 +02:00
Remie Richards
82e577be0b Items may now have inhands from 1x1 (why) to INFINITYxINFINITY (again, WHY), this allows for ridiculously large items!
Adds a center_image() proc that centers an image larger or smaller than world.icon_size (32) so that it appears in the center of a human mob, like inhands.
2015-09-12 00:45:14 +01:00
bear1ake
f697ae90f5 removes a bunch of .0 2015-09-10 20:57:30 +09:00
xxalpha
b238ac02e8 Xeno tweaks and bugfixes. 2015-09-09 17:54:59 +01:00
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