For this reason, the exosuit fabricators will be removed from the process() list at roundstart.
(cherry picked from commit 8e191ebac99dc1f93b1b03a89784212f31f4b985)
Now each human will have a list of HUD images, that will be refreshed if it's required, say, a medic walking near you with a medHUD will refresh both medical images.
The list, called hud_list, uses seven defines for all the images, defined in the __DEFINES.dm
I also added a check for not rounding the health bar if the pacient it's dead, fixing some issues with showing dead people in critical or with possitive health.
They also added extra checks to
-Everytime a mob attacked (checking for super strength and electric hands)
-Every time a mob was attacked (checking for dermal armour)
-Every time a human was shot (checking for reflex)
-Every time a human breathed (checking for rebreather)
-Every tick of human life (checking for regen)
-Every hud update (checking for radar)
Not to mention just cluttered mob code in general. I know there won't be any noticeable performance increase from this but seeing as they were never going to be finished (I asked Doohl beforehand) and mob code is messy enough as is, I think only good can come of removing the code.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5587 316c924e-a436-60f5-8080-3fe189b3f50e
How is this an improvement? Before we looped through every possible reaction to see if a reaction would occure with our list of reagents. Now we already make a list of reagents which can have a reactions, cutting down on searching every single time. This will decrease the loop expensive iterations from 100s to only a handful.
How does it work? We format our chemical_reactions_list like this:
chemical_reactions_list[reagent_id] = list()
And then we fill that list of possible reactions. Thanks to Exadv1, to cut down on redundancy we only need to have a reaction in a single list at a single time, because our handle_reaction() loop will handle that.
Here is a paste of the structure of the list on runtime. http://privatepaste.com/327bb61628
(has: = an entry in the list that it is nested in)
- Fixed mecha weapons shooting over people lying down.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5569 316c924e-a436-60f5-8080-3fe189b3f50e
Fixes Issue 1183
-Most game-specific messages now print to all non-new_player mobs instead of the world, round-end reports are unchanged but request consoles and other announcements will not be heard by people in the lobby any more
Fixes Issue 1158
-Tweaked the temperature resistance of mechs to be more inline with current fires. Most mechs protect almost as well as a full fire suit, and the firefighter mech is just over 2x more effective
Fixes Issue 1027
-False-walls can no longer be fixed when on top of a dense turfs
Fixes Issue 1196
-Tweaked how damage was read for CPR and self-examining so you can't perform CPR on yourself at 100 damage
Fixes Issue 1202
-Made stun-glove construction use the cable/Use() instead of just amount-2, so you can no longer get 0 amount coils
Fixes Issue 1206
-Glass reagent containers and droppers now log attacks like syringes do, with the list of reagents
Fixes Issue 1234
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5508 316c924e-a436-60f5-8080-3fe189b3f50e
Standardization of the object tree and some modified functionality.
Moved a lot of storage/*_kit and similar boxes to storage/box/* ; most of these can now be found in boxes.dm. First aid kits remain a separate item type.
Replacement Light boxes pick up lights (for example broken ones) when used on them
Moved weapon/secstorage to storage/secure
Moved plant bags, ore satchel, trash bag, and sheet snatcher to storage/bag, in bags.dm
Fixed reagent_containers and snacks to pass through attackby() so the use_to_pickup code works. This affects plant bags, trash bags, and pill bottles.
Dice packs are now pill bottles, and all pill bottles can pick up dice.
Added error handling to uplink/generate_menu() so that one mistyped string doesn't bork the whole syndie uplink menu, since strings cannot be type-checked at compile time.
Cigarette packs and crayon boxes are now storage/fancy, however they retain existing update_icon() code.
Added a comment to storage.dm so that future people know where to look for use_to_pickup and allow_quick_gather code.
Updated all maps.
I've tried to test this thoroughly but I wouldn't be surprised if there were a few lingering issues. Try not to panic if you encounter any.
Full (i think) list of changed paths:
/obj/item/weapon/storage/flashbang_kit > /obj/item/weapon/storage/box/flashbangs
/obj/item/weapon/storage/body_bag_box > /obj/item/weapon/storage/box/bodybags
/obj/item/weapon/storage/chemimp_kit > /obj/item/weapon/storage/box/chemimp
/obj/item/weapon/storage/trackimp_kit > /obj/item/weapon/storage/box/trackimp
/obj/item/weapon/storage/seccart_kit > /obj/item/weapon/storage/box/seccarts
/obj/item/weapon/storage/handcuff_kit > /obj/item/weapon/storage/box/handcuffs
/obj/item/weapon/cigpacket > /obj/item/weapon/storage/fancy/cigarettes
/obj/item/weapon/storage/mousetraps > /obj/item/weapon/storage/box/mousetraps
/obj/item/weapon/storage/PDAbox > /obj/item/weapon/storage/box/PDAs
/obj/item/weapon/storage/id_kit > /obj/item/weapon/storage/box/ids
/obj/item/weapon/storage/lightbox/mixed > /obj/item/weapon/storage/box/lights/mixed
/obj/item/weapon/storage/donkpocket_kit > /obj/item/weapon/storage/box/donkpockets
/obj/item/weapon/storage/beakerbox > /obj/item/weapon/storage/box/beakers
/obj/item/weapon/storage/syringes > /obj/item/weapon/storage/box/syringes
/obj/item/weapon/storage/gl_kit > /obj/item/weapon/storage/box/rxglasses
/obj/item/weapon/storage/diskbox > /obj/item/weapon/storage/box/disks
/obj/item/weapon/storage/stma_kit > /obj/item/weapon/storage/box/masks
/obj/item/weapon/storage/lglo_kit > /obj/item/weapon/storage/box/gloves
/obj/item/weapon/storage/lightbox/bulbs > /obj/item/weapon/storage/box/lights/bulbs
/obj/item/weapon/plantbag > /obj/item/weapon/storage/bag/plants
/obj/item/weapon/storage/satchel > /obj/item/weapon/storage/bag/ore
/obj/item/weapon/trashbag > /obj/item/weapon/storage/bag/trash
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5494 316c924e-a436-60f5-8080-3fe189b3f50e
-Fixed a runtime with mechfabs where they would loop a 'return process_queue()' forever, that was an oversight on my part
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5463 316c924e-a436-60f5-8080-3fe189b3f50e
This fixes a fuckload of runtimes and makes structures and machinery being able to cause damage on attackby procs, for example, using TK.
I'm not entirely happy of doing this, adding another var to a base class, but it's better than leaving a lot of hasvar() procs and it's easier than moving obj/machinery, obj/structure, etc, to obj/object/machinery, obj/object/structure, etc.
Also it doesn't break the entire game.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5457 316c924e-a436-60f5-8080-3fe189b3f50e
Runtime fix for being hit by something without there being a usr. This was most likely due to explosions or possibly mass drivers.
Runtime fix for simple animals using department channels. Only parrots can use them now as they are the only simple animal with the 'ears' variable.
Runtime fix for the mech's energy relay process() when there is no battery in the mech.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5405 316c924e-a436-60f5-8080-3fe189b3f50e
Removed all critter code/replaced it with their simple animal paths where applicable.
Replaced the critters on the maps with simple_animal versions.
If I missed any vars/icons/etc when I ported them over, let me know.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5210 316c924e-a436-60f5-8080-3fe189b3f50e
-Reduced the chunks of code about minerals in door_assembly.dm
Preeeetty much this commit is just to update all the files to the new path of the minerals. From here, if I can, I'll start changing one by one to remove the huge chunks of code.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5087 316c924e-a436-60f5-8080-3fe189b3f50e
-Fixes Issue 1085 - Artificers creating turfs with buggy lighting
-Spells now will use the proper proc to create turfs
Due to the amount of files changed, this is just the 'part one'. The merging in turf.dm is not finished, mineral walls and buildmode are still using the old system. The creation of turfs on the game panel is not using the proper procs yet. Stay tuned for this changes, but now, sleep.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5054 316c924e-a436-60f5-8080-3fe189b3f50e
- Changed Energy Relays so that they no longer offset equipment drain to APCs while charging from them (Essentially infinite power for the most part), buffed the charge rate so it will compensate for a Ripley's movement as a benchmark.
- Updated tgstation.2.0.9.dmm to remove a stray pipe that was sitting on the arrival shuttle, even though it was being deleted at round-start
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4977 316c924e-a436-60f5-8080-3fe189b3f50e
The path has changed from /obj/item/weapon/mousetrap to /obj/item/device/assembly/mousetrap
Deleted mousetraps.dm, and removed the original define from weapon.dm
Added a new /obj/item proc, on_found(). It's called when pockets are emptied, and whenever someone looks in a storage item. Currently used only by mousetraps and facehuggers~
Updated the map with path changes.
Updated the changelog.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4969 316c924e-a436-60f5-8080-3fe189b3f50e
(the fix is shitty, but then, so is mech code)
Fixes issue 1043. Safe structure allows users to teleport any item in the game to them
Increases the firefighter heat resistance to 4500.
Removes firefighter.dm, as it was entirely commented out. Firefighters are in ripley.dm.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4968 316c924e-a436-60f5-8080-3fe189b3f50e
-Atmos delay is now based on active players, to help fight lag for massive player rounds.
-Changed some for(blah in world) loops to use the correct lists.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4958 316c924e-a436-60f5-8080-3fe189b3f50e