Commit Graph

404 Commits

Author SHA1 Message Date
c0 990c5e4ff6 Adds lungs 2016-02-26 12:50:15 +03:00
Incoming5643 611248a4f8 Fixes Travis 2016-02-18 18:27:35 -05:00
Incoming dd8b4f5568 Adds a bunch of ape names from the forum/previous pull.
Adds a rare pet list for some of the most supreme of meme names.
2016-02-18 12:08:45 -05:00
Incoming f61707c6f9 Pun Pun has gained a few persistence save file features
Whatever Pun Pun is wearing on his/her head and face at round end will still be there at the start of the next round. Back and hands do not save for obvious balance reasons.
If Pun Pun dies but leaves an intact corpses his/her successor will be named Pun Pun II and inherit the items his corpse was wearing at the end of the round.
If Pun Pun gets gibbed the chain of monkeys is broken and the next round monkey will be a new progenitor with a potentially different name. Obviously their items won't be saved in this case.
2016-02-15 21:20:29 -05: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
Firecage 0cb6814c18 Merge conflict fix 2016-01-17 19:15:30 +02:00
Firecage 332bde0f4f Does the rest of the if()'s/ else's 2016-01-17 19:03:12 +02:00
KorPhaeron 407960a358 Copypasted wrong 2016-01-07 14:46:12 -06:00
KorPhaeron 7d332e869c Fixes monkeys 2016-01-07 14:41:55 -06:00
Cheridan 4e81912656 Merge pull request #14356 from phil235/AlienEvolveFix
Fixes some bug about alien evolving
2016-01-04 23:15:27 -06:00
phil235 0b98fffeef - Adds a visible message when the larva grows into a humanoid.
- Removes some duplicated code in alien growth code (larva-to-humanoid, praetorian and queen now all use the same proc).
- Alien drones can no longer evolve into a praetorian while inside a pipe (praetorian can't ventcrawl) or other containers.
- Removed an unneeded check in larva_evolve/fire().
- Fixes bug where a larva could evolve despite being incapacitated/dead during the selection of the alien caste.
- Remove outdated code in monkey/attack_hand about disarm and grab intent.
- Evolving into a royal alien no longer delets what you hold in your hands and the content of your stomach.
2016-01-03 23:19:30 +01:00
MrStonedOne b50e8d2a63 removes a bunch of unneeded spawns
spawns have a high overhead.

I only went for easy targets, almost every spawn could be removed with a few subsystems in place to handle delays or cooldowns
2016-01-02 18:23:02 -08:00
AnturK e36853d7c9 Convert bots to simple animals - Updated 7.0 2015-11-26 22:06:07 +01:00
blah 652e0114d7 Cleans up a tiny bit of changeling code that was copy pasted in monkey and human by merging it at carbon/life.dm 2015-11-03 22:50:51 +00:00
Razharas 122796dfb7 Merge pull request #12726 from MrPerson/delay_of_game_5_yard_penalty_repeat_first_down
Refactor mob movement delay calculation
2015-11-01 02:04:44 +03:00
MrPerson d575219887 Refactor mob movement delay calculation
Basic premise: Get all mob movement delays calculated in movement_delay() instead of having half of them in Client/Move(). Except for the slowdown from grabbing, which is so shit I can't even. The idea here is to eventually have the AI movements be at the same speed as client-initiated ones.

Let's try this again: Removes TickComp because it's a useless pile of shit that's based on a false idea of how BYOND's ticks and tile-based movement work.
2015-10-29 05:15:41 -07:00
GunHog 438babc197 HUD fixes
- Data HUDs that apply only to humans (medical, security) are now
prepared only for humans, preventing errors.
- The RD's hardsuit helmet now deactivates its own HUD if a diagnostic
HUD item is worn.
- HUDs on newly spawned entities now update properly.
2015-10-23 18:47:58 -05:00
Razharas 653dcbc0f4 Merge pull request #12380 from MrPerson/alert_rewrite
Mild rewrite of screen alerts to enable more functionality
2015-10-16 09:04:50 +03:00
MrPerson 610483ea1e Mild rewrite of screen alerts to enable more functionality
Specifically I wanted to allow #12043 to correctly implement clicking an "on fire" alert to call resist without affecting other alerts which is currently impssible. Plus this whole mess was stupid and bothering me so here we go.
2015-10-13 17:16:23 -07:00
phil235 3c788fcc59 Fixes Atmos fire helmets spawning in the wardrobe closet instead of the atmos closet.
Fixes Toggle Helmet light verb on security helmet with seclite attached being usable while dead.
Fixes Lizard snout is poking through helmet
Fixes Space helmets not hiding masks and glasses (especially the large gar glasses)
Eva harsuit helmet no longer has a semi transparent part (incompatible with hiding masks and glasses, and causes lizard snout protruding from that helmet)
Made equip_to_slot() and unEquip proc more OOP at the carbon level which removes some duplicate code between monkey and human.
Readding code\modules\mob\living\carbon\brain\login.dm that someone (probably me) unchecked some time ago by mistake.
2015-10-12 21:50:59 +02:00
Razharas d3aa84e978 Merge pull request #11937 from KorPhaeron/profligateslikeyoubelongonthecross
Hanging any mob from the kitchen spike
2015-09-24 02:14:06 +03:00
KorPhaeron c11edd8418 Butcher update 2015-09-23 12:30:56 -05:00
phil235 f90ee4aa8c - Fixed monkey starting with no dna.
- Fixed bugs with monkeyize/humanize: 7803 (humanized monkey nobloodtype)
- Fixes 9298 monkeyed ling have troubles humanizing themself (already fixed?)
- Fixes despawning clothes when monkeyizing. 11855
- Replaced check_dna_integrity proc by simpler has_dna proc when required.
- created set_species() proc
- fixed space retrovirus not transfering SE (despite having a domutcheck()). Still need to check if it needs a name = real_name.
- I renamed mecha/var/dna to dna_lock to avoid confusion
- I renamed an armor var in a species proc to armor_block to avoid confusion with species/var/armor.
- I removed many if(dna) checks in lots of files.
- I removed duplicate defense procs between human/proc/X and dna.species/proc/X since dna is now always set.
- Anatomic panacea from changeling removes alien embryo correctly. 6247
- Fixes runtime when trying to put dna-less brain mmi into a dnalocked mech.
- Removed carbon/var/list/features, we now only have dna.features and prefs.features
- Remove hulk mutation from lizards and other species (Fixed 6413); only real humans can acquire hulk. (less work on sprites for each ones, fixes lizard tail not in hulk color)
- Fixes cloning not setting up correctly dna UE and dna.real_name
- I fixed the issue with sucked+cloned ling being unable to absorb
- I fixed issue with changeling proc checking if they have the dna already not working.
- Fixed 4095, low health hulk with DAA getting stuck in loop of acquiring/losing hulk.
- I added a second layer for mutations to differientate mutations that go below and above the body layer (Fixes 7858)
- Fixes 10048, the transform to initial appearence button was fucking up the dna.

- Fixes cloning not setting up correctly dna UE and dna.real_name
- Fixed the issue with sucked+cloned ling being unable to absorb
- Fixed issue with changeling proc checking if they have the dna already not working.
- Fixed 4095, low health hulk with DAA getting stuck in loop of acquiring/losing hulk.
- Added a second layer for mutations to differientate mutations that go below and above the body layer (Fixes 7858)
- Fixes 10048, the transform to initial appearence button was fucking up the dna.
2015-09-19 22:18:28 +02:00
Swag McYolosteinen ac41b600ce Merge pull request #11718 from phil235/TableClimbingFixes
Tableclimbing & reagent runtime fixes
2015-09-13 17:26:33 +02:00
phil235 c069ea0a7d Fixes runtime in monkey/attack_hand()
Fixes tableclimbing: no more success message when failing; you can no longer pass through barricade when tableclimbing.
Fixes runtime with krokodil addiction
Xenomorph can no longer get addicted or overdose on reagents.
2015-09-11 18:08:54 +02:00
bear1ake f697ae90f5 removes a bunch of .0 2015-09-10 20:57:30 +09:00
Aranclanos 3714bdf0d2 Fixes alien larva breathing.
Moves the create_reagets() to carbon New() instead of each subtype calling it by themselves.
2015-08-28 18:21:28 -03:00
Cheridan d824f7b35f Merge pull request #11382 from Ergovisavi/bot_swarm
Adds "Swarmers" - Simple mob side antagonist
2015-08-28 00:21:23 -05:00
Ergovisavi 9572bd6aa6 -First revision of Swarmer mob, hud, icons, etc
-Adds functionality of ignored damage types to simple mobs
-Adds functionality of melee damage types to simple mobs
2015-08-25 03:24:34 -07:00
phil235 1f37141b8b Alien humanoids and monkeys can now use "me".
Alien hivemind chat now uses <span class='alien'> (dark purple). Also the alien queen name now appears bigger in the hivemind chat.
2015-08-24 22:53:45 +02:00
phil235 cb1cd5b1e7 Monkey and aliens now all use carbon/examine().
Fixes monkeys being able to strip and uncuff people while handcuffed themselves.
Add an inhand sprite for facehuggers (taken from Xhuis) (but they don't appear for large queens, it'd look ugly).
Xenos now regenerate plasma on alien weed even when injured but at half the normal rate.
Moved queen/large/update_icons() to humanoid/update_icons.dm
2015-08-24 17:07:09 +02:00
c0 2e5cedef74 Added alien organs 2015-08-09 01:12:32 +03:00
c0 691f6fb66d Surgery & Organs Rework: Phase 2 2015-08-06 09:56:54 +03:00
Jordie d5a88d3f98 Merge pull request #10957 from Core0verload/surgery-organs-implants
Implants, Surgery and Organs rework: Phase 1
2015-08-04 21:45:02 +10:00
c0 600d424ea5 Moved cyberimplants to internal organs system 2015-08-02 22:28:45 +03:00
Summoners 8e167bd46e DEATH OF THE S REMOVAL AND THE UNDERSCORES 2015-08-02 13:44:07 +09:00
c0 04f7b3f2de Surgery, Implants and Organs rework: Phase 1 2015-07-31 22:18:31 +03:00
AnturK b018dd89fd Fixes monkey lings not regenerating chems 2015-07-26 23:13:49 +02:00
phil235 d72cbcaf2f - fixes handcuff overlay on monkey not showing.
- Fixes the lack of handcuff icon on the hand screen object for alien humanoids..
- fix legcuff overlay not showing on monkey.
- fixes fire overlay for monkey, aliens and cyborg, no longer looks human shaped.
- Made the regenerate_icons's subprocs at the carbon level more OOP.
2015-07-17 01:15:21 +02:00
duncathan ae417d2a03 Merge branch 'master' of https://github.com/tgstation/-tg-station into atmosrefactor2
Conflicts:
	code/ATMOSPHERICS/atmospherics.dm
	code/ATMOSPHERICS/components/binary_devices/binary_atmos_base.dm
	code/ATMOSPHERICS/components/binary_devices/passive_gate.dm
	code/ATMOSPHERICS/components/binary_devices/pump.dm
	code/ATMOSPHERICS/components/binary_devices/volume_pump.dm
	code/ATMOSPHERICS/components/trinary_devices/filter.dm
	code/ATMOSPHERICS/components/trinary_devices/mixer.dm
	code/ATMOSPHERICS/components/trinary_devices/trinary_base.dm
	code/ATMOSPHERICS/components/unary_devices/Freezer.dm
	code/ATMOSPHERICS/components/unary_devices/cryo.dm
	code/ATMOSPHERICS/components/unary_devices/unary_base.dm
	code/ATMOSPHERICS/components/unary_devices/vent_scrubber.dm
	code/modules/events/vent_clog.dm
	code/modules/mob/living/carbon/human/species.dm
	config/admins.txt
2015-07-16 04:27:25 -06:00
Firecage 4688c2c969 Fixes proc arguments 2015-07-15 23:52:35 +02:00
duncathan e074fb7856 makes air flow; fixes EVERYTHING 2015-07-11 18:45:19 -06: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
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
kingofkosmos c8d79e7034 Removed unnecessary spaces in these situations:
"span class = '" changed to "span class='"
"'> " changed to "'>"
2015-06-14 12:13:19 +03:00
Iamgoofball 8aa79e1f1c fixes and changes 2015-06-06 18:40:38 -07:00
Jordie0608 e82c02744e paerbin clickdown, removed protectstation, rounded ui chem/plasma count, non-mob hivebot beacon 2015-05-27 16:54:13 +10:00
phil235 fc158ef7bd - crate mimic have wrong icon var. 8953
- fixes constructable chem master icon when parts are exchanged. 8616
- lowers toolboxes inhands sprite, fixes missing one. 8433
- fixes exploit in pandemic to avoid the bottle creation cooldown. 8031
- fixes chem grenade not getting to southwest side. 8019
- remove handle_env, /handle_random_events() and handle_blood at carbon level, identical to living level.
- fixes human bodytemp dropping to 20C in normal environment. (32.5C 90.5F when naked now)
- you now need both adequate headgear+suit to protect against pressure. (removing two defines)
- fixes alien hunter being immune to env fire in stalk mode (removing hunter/handle_env())
- fixes monkey not metabolizing reagents, also make larva metabolize them. 7108
- remove calculate_affecting_pressure from monkey level, simplification.
- refactors monkey's handle environment, no more handle_temp_damage proc, it's all in handle_env.Fixes temperature alert not showing for monkey.
- refactor monkey/handle_fire (similar to alien/human now.)
- replaces morphine with stimulants in adrenal implant. 8832
- refactor handle_breath_temperature.
2015-04-20 18:15:06 +02:00
phil235 5f169e8e47 Remove SpeciesCanConsume() proc, replaced by iscarbon checks.
Remove alloweat var from masks, remove MASKCOVERSMOUTH flag from mime and clown masks so you can still eat through them.

Some adjustments in surgery checks for bodyparts covered.
Fixes a runtime in weapon/energy attack_verb.

Humans can now CPR monkeys.
Slight changes to CPR code.
Fixes runtime with drones trying to do CPR.

Rewrites /obj/item/weapon/reagent_containers/proc/canconsume to be less shitty.

Adds an is_mouth_covered() proc to carbons to check for mask and headgear with MASKCOVERSMOUTH or HEADCOVERSMOUTH, with argument to restrict the check to only mask or only head.
2015-04-11 22:16:42 +02:00