Commit Graph

39 Commits

Author SHA1 Message Date
Zuhayr d71573e749 Further work on properly integrating, updating and fixing prosthetic options.
WIP
Allowed heads/bodies to be prosthetic. Removed IPC. Refactored some flags.
2015-12-24 21:10:33 +10:30
Zuhayr 3c477dfa5e Merge branch 'master' of https://github.com/Baystation12/Baystation12 into dev-freeze
Conflicts:
	code/game/jobs/access.dm
	code/modules/mob/living/carbon/brain/brain_item.dm
	code/modules/mob/living/carbon/human/update_icons.dm
	code/modules/organs/organ_icon.dm
2015-08-22 03:11:53 +09:30
Zuhayr bb82f80885 Added get_bodytype() species proc as groundwork for subspecies.
Conflicts:
	code/modules/mob/living/carbon/human/update_icons.dm
	code/modules/organs/organ_icon.dm
2015-08-22 02:53:16 +09:30
PsiOmegaDelta 9b4d09c974 Merge remote-tracking branch 'upstream/dev-freeze' into dev
Conflicts:
	code/_helpers/unsorted.dm
	code/game/objects/items/weapons/RCD.dm
	code/game/objects/items/weapons/grenades/emgrenade.dm
	code/modules/clothing/spacesuits/rig/rig_attackby.dm
2015-07-11 10:58:49 +02:00
PsiOmegaDelta 265802d270 Merge remote-tracking branch 'upstream/master' into dev-freeze
Conflicts:
	code/controllers/_DynamicAreaLighting_TG.dm
	code/game/objects/effects/chem/chemsmoke.dm
	code/game/objects/explosion.dm
2015-07-10 12:57:46 +02:00
mwerezak d1b15fc601 Fixes a couple more virus oversights/bugs
Fixes contact viruses spreading through windows, fixes bad copypasta in
infection_spreading_check()
2015-07-10 01:02:16 -04:00
Zuhayr d6e3df5fba Attempting to guarantee immunity to viruses for virus_immune var. 2015-05-25 15:52:51 +09:30
Zuhayr e0f23aead5 Collapsed all organs into one object type. Added more interesting amputation. Added dislocation. WIP. 2015-03-11 21:17:51 +10:30
Zuhayr 1984ef6e51 Master into dev-freeze. 2015-03-07 11:33:39 +10:30
PsiOmega 0262ab0de0 Runtime fixes
Fixes
````
runtime error: Cannot read null.name
proc name: sql report cyborg death (/proc/sql_report_cyborg_death)
  source file: statistics.dm,87
  usr: the maintenance drone (106) (/mob/living/silicon/robot/drone)
  src: null
````

````
runtime error: Cannot read null.name
proc name: sql report death (/proc/sql_report_death)
  source file: statistics.dm,52
  usr: null
  src: null
````
````
runtime error: Cannot read null.armor
proc name: infection check (/proc/infection_check)
  source file: helpers.dm,16
  usr: null
  src: null
````
````
runtime error: bad client
proc name: open (/datum/nanoui/proc/open)
  source file: nanoui.dm,419
  usr: null
  src: /datum/nanoui (/datum/nanoui)
/datum/nanoui (/datum/nanoui): open()
````
````
runtime error: undefined variable /obj/effect/plantsegment/var/movable
proc name: update canmove (/mob/proc/update_canmove)
  source file: mob.dm,862
  usr: null
  src: the monkey (643) (/mob/living/carbon/monkey)
````
2015-03-06 18:39:44 +01:00
Chinsky 3384f13a31 Merge pull request #8029 from GinjaNinja32/viro
Virology rework
2015-02-06 00:18:13 +03:00
Zulker Nayeen Nahiyan 0a3f523066 Merge remote-tracking branch 'refs/remotes/origin/dev' into dev
Conflicts:
	code/__HELPERS/maths.dm
	code/__HELPERS/type2type.dm
	code/modules/clothing/head/hardhat.dm
	code/modules/clothing/spacesuits/captain.dm
	code/modules/clothing/spacesuits/miscellaneous.dm
	code/modules/clothing/spacesuits/rig/rig_pieces.dm
	code/modules/clothing/spacesuits/rig/suits/light.dm
	code/modules/clothing/spacesuits/spacesuits.dm
	code/modules/clothing/suits/armor.dm
	code/modules/clothing/suits/utility.dm
	code/modules/events/event_manager.dm
	code/modules/mob/living/living.dm
	code/setup.dm
2015-02-04 04:44:09 +06:00
GinjaNinja32 c4788ad6f5 Merge remote-tracking branch 'upstream/dev' into viro
Conflicts:
	code/modules/virus2/disease2.dm
2015-02-03 15:33:37 +00:00
GinjaNinja32 1b08463b7e Antibodies rework. 2015-01-26 05:32:00 +00:00
Kelenius 10de826ca3 Removes FPRINT and TABLEPASS flags 2015-01-23 22:27:32 +03:00
unknown 7590bbac99 Infection chance proc improvements
Instead of magic type bits, the infection protection value of clothing is mostly based on it's bio armor value, which is much more flexible. Also gloves and shoes to contribute to protection values, and adjusts surgical mask bio protection.
Hardsuits gain voidsuit level bio protection, when sealed.
Wearing a face mask helps prevent others from catching airborne diseases.
Also fixes #7909
2015-01-22 11:10:57 -05:00
Zulker Nayeen Nahiyan 490027405a Merge remote-tracking branch 'origin/dev' into dev
Conflicts:
	code/modules/virus2/helpers.dm
2015-01-19 02:15:38 +06:00
mwerezak d61c808fef Cleans up infect_virus2() typecheck 2015-01-10 12:29:35 -05:00
mwerezak 8ac0450c01 Sets chance_maxm for several disease effects
Also lengthens the time to get from stage 1 to stage 2
2015-01-10 12:26:12 -05:00
mwerezak 654769016e Fixes virus events failing because of lack of compatible species 2015-01-10 03:18:52 -05:00
mwerezak 1c5ca01dae Restricts Gibbingtons, Suicide, and Monkism syndromes
Restricts Gibbingtons, Suicide, and Monkism syndromes from even greater
diseases. Admins can still generate diseases with these syndromes
through secrets.

Fixes virus events potentially having people share the same virus datum.
2015-01-10 03:08:42 -05:00
mwerezak 9b5eded546 Fixes major virus event generating lesser viruses, makes lesser viruses actually less severe
Makes more of a distinction between lesser and greater viruses by
restricting lesser viruses to only have the "Nil" syndrome for stage 4.
2015-01-10 01:25:19 -05:00
Zulker Nayeen Nahiyan 6e550d7308 Cleanup helper files maths.dm, time.dm, type2type.dm, add macros for bit-manipulation
`maths.dm`:
	Rewrite `Gcd(x)` to remove recursive behaviour.
	Remove `RaiseToPower(x)` and its usage from `event_manager.dm`.
	Rename `Lerp()` to `Interpolate()`.
	Add `Square(x)`, which squares a number.
	Rearrange most of the functions in the file. (trigonometric functions together, etc.)

`type2type.dm`:
	Rewrite `num2hex()` and optimise `hex2num()` for superior clarity and a 100% speed improvement.
	Correct indenting, spaces, make switches more concise.

`time.dm`:
	Remove old, slanderous commented-out function `/proc/time_stamp()`

`lists.dm`:
	Add the macros, `BITTEST(bitfield,index)`, `BITSET(...)`, `BITRESET(...)`
	  and `BITFLIP(...)` for bit-manipulation and use them where 20+ files
	  do it manually, for arguments of reader clarity and standardness.
2015-01-09 21:55:11 +06:00
Chinsky 15536d27a4 Fixes #5264
Viruses are properly transferred to spilled blood now.
Antigens prevent from infection properly.
Lowered frequency of blood puddle virus check to cut down on processing.
2014-06-21 17:52:59 +04:00
Ccomp5950 98fba3b6b0 Merge branch 'master' of github.com:Baystation12/Baystation12 into dev
Conflicts:
	code/modules/mining/machine_processing.dm
	code/modules/mob/living/carbon/human/life.dm
	code/modules/mob/living/silicon/ai/ai.dm
	code/modules/virus2/helpers.dm
2014-03-18 19:44:19 -05:00
Ccomp5950 ebc188c600 Code effeciency project: HUD items rewrite
Before: Every tick each HUD item would recalculate and redo images for every mob in view. For items like the secHUD where we're transversing implants and the various records this gets very expensive.

After: Mobs use their hud_list variable to store varius huditem images, when conditions change for those specific huditem images it updates the specific ones on demand. As a backup every 30 ticks or so the mob will update all of their hud_list.

Also: moved proc/RoundHealth() from 2 seperate locations into __HELPERS/mobs.dm

Conflicts:
	code/modules/mob/living/living.dm
2014-03-10 21:59:58 -05:00
Chinsky 16dd8bfcd2 Merge branch 'dev' of https://github.com/Baystation12/Baystation12 into virus-racism
Conflicts:
	code/modules/virus2/helpers.dm
2014-03-10 18:43:34 +04:00
Chinsky 0cb8a3377c Buffed protections.
Full biosuits and spacesuits now protect more against airborne infections, and completely against touch-based ones (when worn with gloves).
2014-03-09 22:57:09 +04:00
Chinsky 4177323dca Spaceacilline stronk.
Now it prevents new infections completely, and has a chance to cure virus on early stages (without giving antibodies though.)
2014-03-09 22:43:42 +04:00
Chinsky 16ab0c9885 Fixes single pane windows not blocking airborne viruses completely. 2014-03-09 22:07:07 +04:00
Ccomp5950 084c0754ad Code effeciency project: HUD items rewrite
Before: Every tick each HUD item would recalculate and redo images for every mob in view. For items like the secHUD where we're transversing implants and the various records this gets very expensive.

After: Mobs use their hud_list variable to store varius huditem images, when conditions change for those specific huditem images it updates the specific ones on demand. As a backup every 30 ticks or so the mob will update all of their hud_list.

Also: moved proc/RoundHealth() from 2 seperate locations into __HELPERS/mobs.dm
2014-03-09 10:25:36 -05:00
Chinsky 4dba89a288 Fix for #4542
Now synthetics do not contract viruses
2014-03-08 03:38:30 +04:00
Chinsky c906fbf7dd Added system for viruses to affect only certain species.
Currently it ignores synthetic species competely.
2014-03-08 03:32:10 +04:00
Chinsky 40e862fe00 GC's virus dummies #whoa #derp 2013-11-05 01:13:49 +04:00
Chinsky 3a425c6095 Another uncommented log debug line. 2013-11-05 01:08:31 +04:00
Chinsky f42631bdbe Adds contact-spread viruses.
Infection chance now calculated differently for airborne and contact ones.

Contact viruses spread on: infected people touching others, people touching naked infected people (clothed parts do not spread it).
Airborne viruses spread on: breathing (20% chance, then chance depending on worn clothing), coughing (now 2 tiles instead of 1)

Both types spread from mucous and blood puddles because lazy.

Fixes:
Blood and mucus now spread viruses correctly.
Lowered output of hyperzine generation syndrome, since it caused dedly ODs.
2013-10-06 08:49:51 +04:00
Chinsky 960a22ee43 Changes way viruses are stored in mobs.
Now it's an associative list:
uniqueID - virus datum

Updated most instances to match it.
2013-06-19 02:28:53 +04:00
Chinsky 7a8a822a92 Made it possible for mob to be infected with several viruses at once. 2013-06-09 13:31:16 +04:00
Chinsky 5703b8089d -Forgot to commit one file for previous iteration.
-Fixed derp with analyser.

Refactoring virus2, Part II - Viruses.
-Removed obsolete curing/resistance methods.
-Split base.dm into disease2.dm, effect.dm, helpers.dm.
2013-06-08 18:44:57 +04:00