The new global list is called mechas_list, it contains all the mechs (sadly the 8 mechs of centcomm are added to this list, just to avoid problems with other servers with different maps)
Clowns, goats and spiders still use the old way to track targets (the view() proc).
The goal of this commit is to reduce lag, it will be really noticeable on the carp migration event, they should be 70% less laggy.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5820 316c924e-a436-60f5-8080-3fe189b3f50e
Removed targeting hands and feet. Those areas now go to arms and legs instead.
Updated the zone_sel.dmi icon_states for this.
MouseDown() is now completely unused. From the Byond ref:
"Don't define this unless you need it, because it generates extra communication that is otherwise avoided."
Fixes issue 1378. Carbon jetpacks are used as internals
Back tanks are now checked last when searching for internals.
Moved var/foldable from /obj/item/weapon/storage to ..storage/box.
Changed verb/quick_equip() to be on humans instead of all mobs (it was only usable by humans anyway.)
Updated locker resist code a little bit, mainly removing a spawn(0).
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5819 316c924e-a436-60f5-8080-3fe189b3f50e
- Restructured viruses in the reagent container to be more maintainable. Should also fix some issues with vaccines.
- Restructured some code in the PANDEMIC.
- You can now mix vaccines together, it will combine the list of viruses it will vaccine against.
- Fixed Carp stunning Cyborgs.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5817 316c924e-a436-60f5-8080-3fe189b3f50e
forcesay() takes what's currently typed in the player's chatbar, and if that is 'Say "'... it will remove any radio information, and automatically say it. It also ignores emotes.
Updated some more text styles.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5816 316c924e-a436-60f5-8080-3fe189b3f50e
Adds a new 'userdanger' class, which is bold and red. 'danger' is now just red. Adjusts all dangerous messages I could think of to use the appropriate class.
Trash items can now be washed away in sinks.
Removes the robodropper, on account of it being awful. Borgs get a normal dropper instead.
Changes the probability of blood spatter from attacking someone from 33 to item.force * 2
Path changes:
/obj/item/weapon/reagent_containers/ld50_syringe > /obj/item/weapon/reagent_containers/syringe/lethal
/obj/item/weapon/reagent_containers/ld50_syringe/choral > /obj/item/weapon/reagent_containers/syringe/lethal/choral
possibly some others? i think this is it.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5815 316c924e-a436-60f5-8080-3fe189b3f50e
A lot of different calls for update_inv_[slot] now won't call for update_icons.dm(). Such as dropping, throwing, picking up objects, moving objects around your gear, using your active hand, firing guns, stripping, etc.
All the different calls for UpdateDamageIcon() now they won't call for update_icons()
The different sprites of humans/monkeys will now have their own layer, humans starting with MUTANTRACE_LAYER in layer -1 to R_HAND_LAYER in layer -20, so the sprites don't get messy overlapping eachother if update_icons() is not called. To help this change, all layers numbers were changed, R_HAND_LAYER used to be 1, now it's 20. (This can be changed back if it ends up being confusing or ugly to read)
TL;RL I removed 90% of the calls for update_icons() modifying the different update procs of update_icons.dm of monkeys/humans. The goal is to reduce lag.
JUST IN CASE, lying down will call for update_icons(), so players have an easy way to update their icons if something goes horribly wrong. Which won't. I hope.
Fixes issue 842. Handcuffs sprites appearing on the player's UI if this one was handcuffed. Because I liked this we'll call it feature and add some awesome sprites made by Cheridan, you'll now have a new sprite on your UI telling you "you're handcuffed buddy!". (Also he named the sprites so don't blame me)
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5809 316c924e-a436-60f5-8080-3fe189b3f50e
- Added a missing "changed = 0" to update the chunk's status. Thanks Uristqwerty for pointing it out. Should help optimize freelooking even more.
- Moved a camera so it had better vision of the hallway.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5808 316c924e-a436-60f5-8080-3fe189b3f50e
- Committed carn's fix to events happening every 5 minutes, on the dot.
- Changed some more turf which play sound so they do not play to everyone in the area.
- Made the join screen a little bigger for the "view player polls" option.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5801 316c924e-a436-60f5-8080-3fe189b3f50e
- Greatly decreased the goat attack damage. Fixes Issue 1310.
- Changed how the suffixes are assigned for mulebots. Fixes Issue 1204.
- Added some checks for occupants in sleepers/cryo/cloner pod, stops an exploit of being able to have a friend teleport you to the sleeper when you're in danger.
- Re-added advance proc call for debug flag.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5796 316c924e-a436-60f5-8080-3fe189b3f50e
-Moves the Add Note/Notes verbs from OOC tab to IC tab, since Notes holds your IC information such as traitor objectives.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5789 316c924e-a436-60f5-8080-3fe189b3f50e
Admin rejuvinate now clears the mob's reagent's list meaning that mobs who died due to toxins in their bloodstream wont just fall over dead after being revived again. Fixes issue 1338.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5785 316c924e-a436-60f5-8080-3fe189b3f50e
Added alien brains and surgery for getting them out of aliens. It differs from the human brain removal surgery.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5784 316c924e-a436-60f5-8080-3fe189b3f50e
Because of this, borgs will no longer save all the images on their client, avoiding the display of thousands of HUD images on a single mob, lagging or crashing the player's client.
If I'm right, this will reduce 90% of the del() lag. Cross your fingers!
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5773 316c924e-a436-60f5-8080-3fe189b3f50e
-Replaced some notice spans with a more appropriate danger span
-Reduced resistance of visionloss symptom and added a check to stop spamming you with "You are blinded!" notices
-Added a check to the reagent symptoms so you don't get ridiculously high volumes in your body if you wait long enough
-Added more coins around the station
-Moved message monitor decryption key to CE's office since the RD can't even access it any more (and is not relevent to his duties)
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5766 316c924e-a436-60f5-8080-3fe189b3f50e
Adds two new variables to surgery steps- accept_hand, and accept_any_item. They are compatible and you can use both at once.
Removes the always_advance variable on surgery steps, in favour of the success() and failure() procs returning 1 or 0 to advance or not.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5765 316c924e-a436-60f5-8080-3fe189b3f50e
- Facehuggers will now let you open the bag even if you're wearing facehugger proof gear.
- Added some sanitizing to signal().
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5756 316c924e-a436-60f5-8080-3fe189b3f50e
- Added a new area proc, mob_activate, which is called by a living mob's Life(). You can use it to have mobs react differently to different areas.dm
- Used the above change to make transit areas push mobs backwards.
- Fixed the server room air alarm from freaking out.
- Reverted my change to singularities, they will now pull correctly.
- Made the wire interface screen bigger to accommodate for different fonts.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5749 316c924e-a436-60f5-8080-3fe189b3f50e
Fixes issue 1316. Operating Computer broken
Updated the surgical drill sprite.
Removed code/game/objects/items/weapons/surgery_tools.dm, as the tools have now been moved to the surgery module.
Removed the music folder, as it has been empty and unused since the beginning of time.
Path changes:
/obj/machinery/optable > /obj/structure/optable
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5748 316c924e-a436-60f5-8080-3fe189b3f50e
Adds lipoplasty, plastic surgery and gender reassignment surgery.
Adds a var/target_must_be_fat to the surgery datum, for surgeries exclusive to fatties.
Adds a var/always_advance to the surgery step datum, for when it should advance to the next step even on failure.
Adds /proc/get_location_accessible(), which is used by surgery to make sure you have access to the area you're operating on.
It's a fairly horrible, but it's not called that often, so it should be fine. Correct me if I'm wrong.
Updated the changelog.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5727 316c924e-a436-60f5-8080-3fe189b3f50e
Being killed as an adult slime now puts the player in one of the babies.
Fixed the mutation chance for the player controlled slime splitting to be the same as the automated one.
Added a check to AI construction for the AI_ALLOWED config option.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5724 316c924e-a436-60f5-8080-3fe189b3f50e
var/obj/item/weapon/back
var/obj/item/clothing/mask/wear_mask
var/obj/item/weapon/tank/internal
from /mob to /mob/living/carbon.
/mob/proc/abiotic() no longer does any extra checks even if full_body == 1.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5722 316c924e-a436-60f5-8080-3fe189b3f50e
http://forums.nanotrasen.com/viewtopic.php?f=16&t=12245#p189186
Ported all the random events to Pete/Gia's event system:
>Event system now supports weighting. default is 10. a weight of 5 is half as likely as default, 20 twice as likely....etc.
>Increased the frequency of events (dust happens over 60% of the time though)
>tidied up some ninja code: ninjas now get ~5 objectives. So they are hardmode.
>made the gravity toggle into a random event
>event system now supports round-start events
>event system now supports holiday events
>event system now supports events which can only happen after the round has lasted a certain number of ticks
>event system now supports max_occurrences for events. Setting any event's max_occurrences to 0 will stop it randomly occurring
>events now support being fed associative lists inside new(). This allows you to override their variables easily.
>wormhole events no longer cause loads of lag. They are extremely deadly. wormholes should be avoided
Other:
>replaced the procs for fetching candidates for ninjas and aliums with /proc/get_candidates(be_special_flag), it returns a list of active clients with that be_special preference enabled.
>minor fixes to minds
>your memories are displayed to you at Login()
>removed aliens_allowed
>removed ninjas_allowed
>pick_n_take() is now more efficient (uses Cut() rather than Remove()
Things I added:
- Made the pandemic call ..() instead of doing the checks itself.
- Made the staff of animation use more charge.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5720 316c924e-a436-60f5-8080-3fe189b3f50e
- Added some garbage collecting procs for NTSL.
- APCs now have its missing status text, for the wire interface.
- Clicking on a hand HUD slot, while the hand is actively selected, will make the item being held call attack_self().
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5715 316c924e-a436-60f5-8080-3fe189b3f50e
Changed four vars which hold what slimes can evolve into, into a list.
Removed a pointless 'else' from cloning
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5708 316c924e-a436-60f5-8080-3fe189b3f50e
- Made a proc for grabbing which updates the grab status, as it is usually done in the grab's process, then made tables update the grab and check if the grab still exists. Fixes Issue 1285.
- Made the blind check remove the blind screen if they're not blind but the layer is set to a non-zero layer. Fixes Issue 1286.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5704 316c924e-a436-60f5-8080-3fe189b3f50e
Basically, surgeries are now initiated by bedsheets or surgical drapes, and consist of separate steps.
Appendicitis is sort of hacky, but it should work for now. I'll update it when I add processing organs.
Added getbrain() and getappendix() procs, which can be used instead of checking the old (now missing) x_op_stage variables.
Added a surgical apron, using old sprites by matty.
Updated the map:
Removed the note with spell descriptions from the wizard's den for Kor.
Updated the operating room.
Updated xenobio to have appropriate tools for slime surgery.
Path changes:
/obj/item/brain > /obj/item/organ/brain
/obj/item/weapon/reagent_containers/food/snacks/appendix > /obj/item/organ/appendix
/obj/item/weapon/reagent_containers/food/snacks/appendix/inflamed > /obj/item/organ/appendix
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5703 316c924e-a436-60f5-8080-3fe189b3f50e
*Excessive Shedding (makes you bald)
*Stimulant (Body creates its own Hyperzine)
*Necrotizing Fasciitis (Flesh-eating disease)
-Buffed protection helmets give against acids. I wasn't aware you could combine the two to stack effects.
-Changed a /red I wrote to use <span> instead.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5695 316c924e-a436-60f5-8080-3fe189b3f50e
- Wire datums arrive! These are wire datums which allows you to easily add wires in a maintainable manner. All wires by default will be allowed to have a signallers attached to it. I have converted cyborg wires, airlock wires, camera wires and mulebot wires to the new system.
- Cameras will no longer have random wires for each camera. The power wire will toggle the power of the camera when pulsed.
- Robots have a new wire! The lockdown wire will toggle the lockdown status of robots. You can now fix cyborgs that have been locked down and had the robotics computer destroyed. Should be interesting now that you can remotely pulse all datum wires.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5663 316c924e-a436-60f5-8080-3fe189b3f50e
-pAIs are no longer deaf to sounds and they see emotes.
The pAI mob now follows the card just like the AI eye tracking someone or a ghost using the verb follow.
I do not close the issue because intellicards are not fixed yet.
-Added a "On/Off" for some things on the pAI interface
-Fixed some really obscure runtimes about a human using the pAI card interface when the pAI is dead.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5661 316c924e-a436-60f5-8080-3fe189b3f50e
- Increased the allowed w_class things in secure briefcases. Equalized the amount of stuff you can put in a briefcase with the backpack.
- The staff of animation will turn animations onto their side, if they were created by a different user.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5658 316c924e-a436-60f5-8080-3fe189b3f50e
-New clones start disfigured, but will turn normal during the cloning process.
-Excessive radiation can make you bald now.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5657 316c924e-a436-60f5-8080-3fe189b3f50e
http://forums.nanotrasen.com/viewtopic.php?f=16&t=12096
> UpdateAffectingLights() is a bit less silly. It now uses oview() to find lights which could be shining on it. It only searches a maximum of LIGHTING_MAX_LUMINOSITY_STATIC-1 away from itself, as this is all it needs to do (reducing the number of atoms it searches/lights it updates).
> UpdateAffectingLights() is called more sensibly, generally it will only be called when opacity actually changes on a lit turf (or something in a lit turf), as opposed to before where it would be called simply if something was opaque.
> Fixes a typo in cheap_hypotenuse(), it will now work correctly.
> Added circular lighting (using cheap_hypotenuse, a cheap linear approximation of pythagoras theorem). Old square lighting is toggable by commenting out #define LIGHTING_CIRCULAR
> Wall-fixed lighting will break when Move()ed. This means their lighting will not be updating whilst the singulo is on a rampage (which would cause lots of lighting updates). This should help reduce lighting updates a fair bit in such circumstances. Also the lord of darkness actually creates darkness! omg
>Halved the theoretical number of calls to UpdateAffectingLights() by turfs being deleted/created (aka replaced), by moving relevant code from New/Del into ChangeTurf(). Tidied ChangeTurf up a little.
>SpaceVines now update opacity correctly (this somewhat worries me though)
>Reduced the range of dynamic lighting effects for most objects. Fixed the bug where mob luminosity could try to go negative when dropping many held active flashlights.
>Space area no longer uses dynamic lighting. (at request)
>Fewer shades of darkness (reduced from 7 to 6) - means fewer shift_to_subarea calls and makes lower luminosity lights appear brighter
>Turfs can be luminous, removed the warnings. capped luminosity effects of turfs to a radius of 1.
>PDAS ARE NO LONGER SUNS!
>ChangeTurf() no longer replaces turfs with turfs of the same type. This means that singulos will no longer replace space with space with space over and over and over every tick
>there is a cpu-usage cap thingy on the lighting process(). It's currently set to (a ridiculously high) 98. This simply stops the process attempting to do any more work when the server is already dying. If you're feeling brave you could probably reduce further.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5650 316c924e-a436-60f5-8080-3fe189b3f50e
Added a bullet act to resin doors/nerfed their health.
Removed larva/drone from the possible xeno transformations with staff of change so using it doesn't always derail into a xeno round/the wizard getting facehugged.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5638 316c924e-a436-60f5-8080-3fe189b3f50e
Anyway the bluespace slime finally brings back the old metroid teleport for its extract effect.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5630 316c924e-a436-60f5-8080-3fe189b3f50e
Fixes issue 1219. Cloning Scanner Popping Out Prematurely
Fixes issue 1182. Using wrapping paper on a bodybag
Fixes issue 1238. Reading while blind (fixes paper, photographs, and books)
Fixes issue 1253. Braindead message when converting non braindead people (rev)
Fixes issue 1188. Head revs converting unconscious people
Added is_blind(A) as a helper proc for blindness. It returns 1 if A is a fully blinded carbon mob.
Updated the loot spawner to use a list instead of a text string.
Updated gun reloading to use text styles.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5619 316c924e-a436-60f5-8080-3fe189b3f50e