Commit Graph

116 Commits

Author SHA1 Message Date
GunHog bc11259282 Merge remote-tracking branch 'remotes/upstream/master' into AI_STOLE_MY_BIKE
Conflicts:
	code/game/machinery/computer/aifixer.dm
2015-06-15 11:27:11 -05: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
GunHog b655ade95e Merge remote-tracking branch 'remotes/upstream/master' into AI_STOLE_MY_BIKE
Conflicts:
	code/game/mecha/mecha.dm
	code/modules/mob/living/silicon/ai/ai.dm
2015-06-04 08:40:42 -05:00
Firecage 3a826fe13c Changes alot of datum/ to /datum/ 2015-05-31 02:40:54 +02:00
Cheridan 78e25c3175 Merge pull request #9220 from RemieRichards/PlasmaaaaaaaMeeeeeeen
Ports VG's Plasmamen + Species breathing additions
2015-05-04 00:19:18 -05:00
MrStonedOne 702181e605 git rebase mishap fix part 2 2015-04-29 02:35:36 -07:00
MrStonedOne 2f0db5c46e Rebase mishap fix part 1 2015-04-29 02:34:40 -07:00
MrStonedOne 9d78b82ddc Makes hud/alert's destroy request obj pooling 2015-04-29 02:30:50 -07:00
MrStonedOne bd6d51a0b5 Massive MC and subsystem rewrite
MC:
	No longer tracks a subsystem's cpu usage. This was basically worthless and took up space on the stat panel
	Can calculate wait down to a tenth of a decisecond to make it fps/world.ticklag agnostic
	Now allows subsystems to have a dynamic wait, that is based on a ratio of how long that subsystem has been taking to process(cost). (This system allows for upper and lower bounds, and an changeable cost delta for each subsystem)
	MC can now be told to init a zlevel

All Subsystems:
	Stats panel now allows child subsystems to pass it a message to add to its stats entry. All subsystems have been moved over to this system - This should cut down on subsystems having to copy and paste the stats proc in order to add to it
	All subsystems now properlly handle being given a zlevel in their init proc

Subsystem changes:
	Air:
		Added air to the dynamic wait subsystem. upper bound: 50, lower bound: 5, cost delta: 3 times process cost
		Air now fires 4 times faster when it can do so without lagging things up
		Pipenet has been merged into air
		Atmos machinery now processes with process_atmos(), ticked by air, not machinery.
		Hotspots (the fire object) are now object pooled
	Pipenet:
		Deleted, added to air
	Machinery:
		Moved all atmos calcualtions in all objects's process() to process_atmos().
	Lighting:
		Added Lighting to the dynamic wait subsystem. upper bound: 20, lower bound: 5, cost delta: 3 times process cost
	Ticker:
		Fixed ticker not updating the lobby panel when game start delayed
		Fixed the game start timer updating rapidly from queued fires when game start delay is removed
	Garbage/qdel:
		qdel will now limit its process time to 2ds a fire.
		qdel can now be given hints as a return to Destroy() as to what should be done with the object.
		the options are:
			queue: (default) this is the normal behavior.
			letmelive: old default to non-null/zero. does nothing with the object
			iwillgc: functionally the same as above, mainly to let people working with objects know that the object will not be queued for GC checking
			harddel: this will queue the object to be deleted without storing a soft reference, mainly to save locate() processing time.
			harddel_now: this will del() the object. To allow for a clean removal of every del() not in qdel
		All objects have been updated to the new system, harddel and iwillgc was not added to any new objects.
		Fixed some objects not GCing because they didn't properlly clear references in Destory()
		Fixed some objects getting qdel'ed preventing other objects from getting GCed because they did not null their reference to that object.
2015-04-29 02:00:25 -07:00
Remie Richards e9363ef31a Fixes alert feedback typo 2015-04-28 21:36:55 +01:00
Remie Richards fca3c0bdb5 Adds Plasmamen! Adds the ability for species to breathe other gases! 2015-04-28 20:48:14 +01:00
MrPerson 8f0cda1afa More screen alerts
High (uses "Hallucinating" icon), blind, embedded objects, asleep, weightlessness, new law (silicons), hacked (cyborgs), and locked down (cyborgs). The new law alert times out on its own after 30 seconds. The code for timing out is rough but works.

Sprites are provided by ZyloWalsh and can be seen at https://tgstation13.org/phpBB/viewtopic.php?f=11&t=3167
Drunk isn't in atm because I was waiting on phil to finish some reagent stuff. Hallu kind of ruined the "surprise" so I decided not to use it. Weaken/stun/paralysis are also not in right now because I'm lazy. All the sprites are included even if they're unused.

Added a proc human/has_embedded_objects() that returns 1 if src has any objects embedded in any limbs.
2015-04-18 16:54:36 -07:00
GunHog 365d9889ac Malf AI Mech Jacking!
- Malf AI, for 30 CPU, can hack into a mech and gain control of it.
- This strategy is permanent. Once installed, there is no escape.
Period. The mech dies, so does the AI.
2015-04-14 16:46:15 -05:00
AnturK 42699ad4b4 - Made hide/show button mesh better 2015-04-11 17:06:45 +02:00
AnturK e2c869bc77 - Adds generic action and action buttons system 2015-04-11 17:06:43 +02:00
hornygranny efdb97983f Merge pull request #8696 from MrStonedOne/actionbuttonfix
Raises action button count from 5 to 30
2015-04-10 12:52:33 -07:00
phil235 2ef8e76560 Merge pull request #8785 from AnturK/alien_proc_holder
Turns alien abilities into proc holders
2015-04-10 21:19:49 +02:00
kingofkosmos c8931f4cfc Only actual internals masks work now for internals. 2015-04-08 21:08:16 +03:00
kingofkosmos f114768c1d it broke 2015-04-08 19:17:18 +03:00
AnturK fdcae0a7ba - Turns alien abilites into proc holders 2015-04-08 16:56:43 +02:00
kingofkosmos 97cbc65d6d usr -> C 2015-04-06 10:38:51 +03:00
kingofkosmos 8e63fe05c1 Breath mask autotoggle
Now if you have a breath mask on your face, but lowered, and decide to start running on internals, you will automatically adjust the mask back on your face!
2015-04-05 22:03:24 +03:00
MrStonedOne 04a946c524 Raises action button count from 5 to 30
Just a note, as long as we are gonna senselessly move everything to action buttons, lets not forget that only humans have them, and atm monkeys and the like can not use action buttons for things where object verbs have been removed.

Something to think about before it gets to the point where simple mobs/monkeys/borgs/etc can't use anything.
2015-04-02 01:33:32 -07:00
Remie Richards 5b20448e2b Monkeys can now wear hats! Monkeys can now also wear all masks, instead of the select few they had icons for (which have been removed, since they are no longer needed) 2015-03-26 15:23:52 +00:00
Cheridan e5428c1519 Merge pull request #8256 from phil235/StrangenessTextFix
Strangeness text, janicart, alien nest, weak golem fixes
2015-03-13 15:23:30 -05:00
MrPerson e7ba8df654 Moved all pull icon updating to update_icon(), to reduce copy+paste.
Made the pull icon update_icon() as part of creation as requested by oranges.
2015-03-13 12:10:13 -07:00
phil235 71d560bd3a Fixes a runtime with buckling screen alert
Fixes being able to buckle to janicart while crit and when there's a dense object on the janicart's turf.
Fixes alien nest not buckling and being wrongly pixel shifted, and fixed a runtime.
Fixes golems being super easy to weaken by punch and not doing more damage themselves via punch.
Fixes some typos.
2015-03-09 19:09:52 +01:00
MrPerson 24dcf08b2e Merge branch 'master' of https://github.com/tgstation/-tg-station into alert_alert_ur_a_faget
Conflicts:
	code/modules/mob/living/carbon/alien/humanoid/life.dm
	code/modules/mob/living/carbon/alien/larva/life.dm
	code/modules/mob/living/carbon/alien/life.dm
	code/modules/mob/living/carbon/monkey/life.dm
	icons/mob/screen_alien.dmi
2015-03-02 12:04:38 -08:00
Cheridan d218256e32 Merge pull request #7854 from phil235/LifeProcsDuplicateFix
Life procs duplicate fix
2015-03-02 09:16:09 -06:00
MrPerson 8ffbc1be14 On screen alert system
Replaces some of the hardcoded HUD icons defined at mob level with a pair of mob procs throw_alert() and clear_alert(). Alerts will appear on the top-right side of the screen.
You can shift-click alerts to get a description of what's wrong and sometimes a tip on how to solve the alert.

Alerts can be given a master, which overlays the master on top of a box and forwards clicks of the alert to that master. Getting buckled will put an alert of what you're buckled to, for example. If it's a chair, you just click the alert and you're unbuckled. The idea I'm shooting for is to replace resist entirely with this kind of stuff.

Making a new alert and using it is a little complicated. This explanation will suck, but this is simpler than I'm making it sound, I promise. Throw_alert() has 4 args, category, id, severity, and obj/new_master. If you don't supply an id, category will be used as id. Only 1 alert per category is allowed; any duplicate will be replaced. Additionally clear_alert() clears alerts by category. Id MUST match a type path of /obj/screen/alert/[id]. That type path is where the alert's name and desc come from. The icon_state of the alert will either be "template" if new_master is set or [id][severity] otherwise. new_master is totally optional.

Examples:
throw_alert("oxy") -- takes name/desc of obj/screen/alert/oxy, icon_state = "oxy" -- clear_alert("oxy")
throw_alert("nutrition","fat") -- takes name/desc of obj/screen/alert/fat, icon_state = "fat" -- clear_alert("nutrition")
throw_alert("nutrition","starving") -- takes name/desc of obj/screen/alert/starving, icon_state = "starving" -- clear_alert("nutrition")
throw_alert("temp","cold",1) -- takes name/desc of obj/screen/alert/cold, icon_state = "cold1" -- clear_alert("temp")
throw_alert("temp","cold",3) -- takes name/desc of obj/screen/alert/cold, icon_state = "cold3" -- clear_alert("temp")

If you pass a new_master, id is only used to get name/desc and still must match a path, but the icon_state is "template" and icon is from the mob's ui preference instead of icons/mob/screen_alert.dmi.

Several unused icons removed, like borg oxygen and temperature alerts. Also some icons were used but now are not and were removed, like the nutrition icon for being well-fed and cyborg charge icon for being fully charged.
2015-03-01 17:31:26 -08:00
paprka 1b62290572 remember to test your fixes before you act snarky 2015-02-27 04:35:46 -08:00
phil235 18323955a7 Merge branch 'master' of https://github.com/tgstation/-tg-station into LifeProcsDuplicateFix
Conflicts:
	code/modules/mob/living/carbon/human/life.dm
2015-02-25 19:01:59 +01:00
Remie Richards b1ff6b7220 Merge branch 'master' of https://github.com/tgstation/-tg-station into AttackbyParams
Conflicts:
	code/game/turfs/simulated/floor/light_floor.dm
2015-02-24 22:16:53 +00:00
phil235 e9a943218c Fixes being able to break free from a pull while handcuffed if the puller is buckled.
Add the incapacitated proc to mobs to check for stat, stun, weakened, paralysis, restrained. And replacing those checks by that new proc in some places.
2015-02-21 14:49:47 +01:00
phil235 c8b0a21baa Fixes a lot of duplicated code in life and its subprocs for carbon mobs.
Fixes cyborg and monkeys no seeing any flash when flashed.
2015-02-21 00:37:04 +01: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
Swag McYolosteinen f130872f4e Merge pull request #7517 from RemieRichards/MovableUIElements
Movable UI Elements!
2015-02-10 17:50:33 +01:00
Remie Richards 37809856ee Prevents movable and snap UI elements from being placed outside the screen region, resulting in runtimes. 2015-02-06 22:37:18 +00:00
Remie Richards 6290462c20 Adds Debug verbs for Movable and Snap UI Elements (R_DEBUG Admin rank required) 2015-02-03 22:38:45 +00:00
Remie Richards c271abe599 Adds 2 types of movable UI element, One the snaps to the turf grid, and one that places it's center where the cursor is. 2015-02-02 20:30:35 +00:00
xxalpha a9c181bbcc Repath all non jetpack tank types to tank/internals
Repath all portable tanks to tank/internals, except jetpacks

Update ministation
2015-02-01 18:25:39 +00:00
tkdrg 3752254766 Revert "Adds mouse pointers for different ui styles" 2014-12-31 02:17:50 -03:00
paprka 56d54d1294 Added changelog and fixes compile errors with preferences 2014-12-28 18:24:53 -08:00
paprka 2e8907ed4c adds a preference for custom pointers 2014-12-28 18:13:48 -08:00
paprka 5b9a831a90 adds mouse pointers for different ui styles 2014-12-27 03:06:55 -08:00
phil235 e354802d74 Fixes being able to remove clothing and inventory stuff while straightjacketed or handcuffed by clicking the inventory slot, not the worn item itself. 2014-12-14 18:03:49 +01:00
paprka 2b0af7e288 UI improvements, health doll final
Merge branch 'master' of https://github.com/tgstation/-tg-station into injurydoll
2014-11-28 13:06:22 -08:00
MrPerson c159878ace Throwing bugfixes
Removed an unused client verb, changed a usr to src where they're the same mob, and changed a type == check to istype().

Allow turning on throw mode when clicking the UI button (hotkeys already allow you to do this).
Disallow throwing when not on a turf.
Fixes #4823

Make storage items close out the onscreen stuff when they get thrown.
Fixes #5296
2014-11-09 00:29:20 -08:00
JJRcop 3675d40161 Fixes #5656
I forgot to make the cyborg pull button use /obj/screen/pull
2014-11-04 19:38:15 -05:00
JJRcop 3318f50cd2 Fixes path typo 2014-11-03 12:21:57 -05:00