-Changed the air assimilation for ReplaceWithFloor() and ReplaceWithPlating() so that it doesn't count non-floors/non-space turfs against the average.
-Commented them as well
Fixes Issue 851
-Standardized AIbots a bit, primarily with vars, attackby(), emag() and such (Mostly excludes M.U.L.E.'s though)
-AIbots now have a maintenece panel on them, which can be opened after unlocking the access panel by using a screwdriver
-The bots are now repaired by opening the maint panel and using a welder
-Emagging the access panel will unlock it permanatly, and emagging it with the maint panel open will trigger the emag behavior
-Floorbots will actually pull up tiles when emagged, 90% to just pull up the plating (And add it to the tile stock), and 10% to replace the floor with lattice
-When destroyed, floorbots will actually drop all the tiles they have stored, not just 1
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4528 316c924e-a436-60f5-8080-3fe189b3f50e
-Gave back the miner borg stun arm to account for the smaller improvement for drills
-Fixed an issue where I accidentally made borg emag modules invisible
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4525 316c924e-a436-60f5-8080-3fe189b3f50e
-Added a proc for cyborg modules to 'rebuild', which makes it possible to remove items from the modules without clogging up the module menu
-Made the emag for minerborgs work better as a result
-Gave borgs their special radios back
-Fixed an apparently ancient bug where everything inside a borg will appear on the screen (MMI, cell, radio, etc...). It wasn't complex at all and I can't believe no one had fixed it yet.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4524 316c924e-a436-60f5-8080-3fe189b3f50e
-TCommsat machines no longer use their Z level to check if they can receive the signal or not. Instead, they use listening_level. It defaults to 0 for machines that don't change the value. If it is 0 when the telecomms machine's New() is called it will set itself to it's Z level.
-This allows you to manually change the value to other Z levels. I call this an off-site relay. I've added an off-site relay on the satelitte for the station and removed the one in the communications room.
-Players can create an offsite relay with two receivers, two broadcasters and, if necessary, a relay. Why two receivers and broadcasters? Otherwise any player can go to the Ruskie/Mining relays and turn them into off-site relays for the station! It would harm the TCommsat's usefulness. Instead, you will have to setup another broadcaster and receiver if you want to do that. Though it may be pointless, if someone sabotages the Commsat they would have destroyed/depowered the other machines there too.
-About the option to have an offsite relay, there is only a single Z level that you can lock onto at the moment and that's the station. Gameplay wise, the TCommsat is orbiting the station and if we do get the away missions then it would not make sense for the TCommsat's broadcaster/receiver signal to be able to pickup there. More sense if the Receivers and Broadcasters from there
are sent here... maybe. I don't know, seems more fun this way.
-Fixed an issue that doesn't let the Engineer Borg (or Borgs with multitools) be able to link machines with their multitool module.
-All-In-Ones do not have a Z level restriction. They can pick up ALL signals and send ALL signals (to Z levels 1-10)
-Fixed an issue with the player being unable to remove frequencies from the filter.
-Added support for additional interaction options for certain machines. To use it, create a new Options_Menu() and Options_Topic(href, href_list) for your machine.
-Added EMP_ACT to Telecommunication Machines. I've also added an event called "telecommunications_blackout()", it will loop through all telecomm machines, in telecomms_list, and EMP_ACT them. The EMP will last 2 minutes. Currently only admins can use it.
-Fixed issue 831
-Changed the map. The station no longer has the station relay, it is now on the Satellite. There's an empty room now, it should be used for something after the feature freeze.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4522 316c924e-a436-60f5-8080-3fe189b3f50e
The singularity can no longer stunlock dead or unconscious people.
tgstation.dme updated since one of the files were removed
Changelog updated to put the 'have a bug to report?' bit to a spot just above where coders put their changes.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4521 316c924e-a436-60f5-8080-3fe189b3f50e
I've cleared out most of the .dm files in code/game/objects/ and put it into appropriate files/folders. The stuff I've left is stuff I believe may conflict with carn's work and some code for stuff that does not have a home yet.
TODO:
- Files that were left in code/game/objects that may conflict with carns work
- Go through all the files in all the subfolders of code/game/objects.
- Move all the defines from /defines/ to their proper spots
Not much right?
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4520 316c924e-a436-60f5-8080-3fe189b3f50e
Removed some pointless, unused objects. (i'm looking at you, rubber chicken without a sprite)
Added a few new "features"- lighting cigs with igniters, and toggle-able bedsheets.
Slightly improved the cow gib sprite because if I don't commit it now I'll revert it.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4517 316c924e-a436-60f5-8080-3fe189b3f50e
Committing this early to allow pete to commit something involving the .dme file which would probably conflict otherwise.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4514 316c924e-a436-60f5-8080-3fe189b3f50e
There are many files, folders and chunks of code in areas that make absolutely no sense and thanks to the defines being located mostly in a completely separate file, it can be damn-near impossible to find something. Before moving defines to where the rest of their code is located; I'm going to move some code around into places that actually make sense to begin with. I'll mainly be focusing on the code/game/objects folder.
This commit mainly lays the groundwork for the work I'll be doing by adding in the effects, structures, decals and turfs folders. I'll slowly be moving appropriate files and code into these folders. I may end up moving machinery into 'objects' and mech stuff into its own module folder but I'll ask for some opinions on coderbus before doing that.
I've also gotten rid of the /magic/ folder. I've moved the library stuff into its own folder in modules/library, the cult stuff is now in gamemode/cult with the rest of it and musician.dm is now in objects/structures since the piano is a structure apparently.
I think I've got the hang of how DM and SVN handles folders and files but it's quite possible that something will break simply by svn committing it oddly. Please let me know if that's the case!
Remember to clean compile.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4513 316c924e-a436-60f5-8080-3fe189b3f50e
Items equipped with the 'equip' button now update the player's hands. Unfortunately since the procs it uses forces an update_icons() call, using the equip button will now call it twice.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4512 316c924e-a436-60f5-8080-3fe189b3f50e
Next up, objects! One day we'll be able to click on something in the object tree, and actually end up where all the object code is.
I standardized robot/life.dm while I was at it.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4510 316c924e-a436-60f5-8080-3fe189b3f50e
Station-heads who are monkied now count as 'dead' for round completion.
- This previously applied to revheads but not station heads.
Changed get_all/living_heads to pull from the mob list instead of the player list.
- It was causing players to get skipped by the check-antag verb admins have if they were disconnected.
Runtime fix by Erro for:
runtime error: Cannot execute null.show inv().
proc name: done (/obj/effect/equip_e/human/done)
source file: inventory.dm,562
usr: Nodrak Davis (/mob/living/carbon/human)
src: the human (/obj/effect/equip_e/human)
call stack:
the human (/obj/effect/equip_e/human): done()
the human (/obj/effect/equip_e/human): process()
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4509 316c924e-a436-60f5-8080-3fe189b3f50e
A proper fix for teleport data-cards. Instead of just doing player.loc = landmark.loc it now properly uses the teleporter datum. It sets a new 'one time use' variable which means that only one person or object can pass through the teleporter before it looses the coordinates. This is also in place to prevent hand-teles from opening portals to the clown planet.
Players will not really notice any change except that when they insert the clown-coordinates, they must then walk through the teleporter.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4503 316c924e-a436-60f5-8080-3fe189b3f50e
- The problem was actually down to an ancient bug, which wrongly calculates the temperature of tiles with very little gas on them - tiles exposed to space. Space suits protect down to a temperature of 2.0K, space is 2.7K, which I assumed to be the lowest temperature anywhere. Unfortunately I forgot about this bug at the time, which can cause the gas temperature on tiles with little air to even hit negative kelvins (Nobel prize, plox). This happens relatively often, each floor tile that meets the criteria experiences this about once every 50 ticks and if you're standing on it when it happens, your cold protection will be 0%, because the temperature on the tile will be lower than 2.0K. Everything will be fine in the next tick cold-protection-wise, but your body temperature is already lowered to under the damage threshold by then.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4498 316c924e-a436-60f5-8080-3fe189b3f50e
Fixes Issue 827
-Added a sound to conjure spells for artificers, to provide feedback and be less confusing.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4497 316c924e-a436-60f5-8080-3fe189b3f50e
- Added a message_admins() message which is sent if a character setup mismatch is detected to help diagnose the problem.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4496 316c924e-a436-60f5-8080-3fe189b3f50e
- Increased the mining satchel capacity from 30 to 50
- Fixed the issue where picking up all the items from a tile would display the pick-up message as many times as there were items to pick up.
- Fixed the problem which made ores sometimes stay on your screen after being inserted into an ore box.
- Restored the ability to empty satchels, and any other storage item that has the 'empty contents' verb, by just using them on themselves.
- Fixed an ages-old desync bug which happened when you used the a crossbow on a storage item.
- Fixed a potential problem which caused removed item's layers to not get updated properly.
- Fixes issue 819
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4490 316c924e-a436-60f5-8080-3fe189b3f50e
All credits to the author for this handy little script.
I Committed the modified python script to tool directory. Although it needs to be in the root folder of your repo to work.
To notice the improved compile times, in dreammaker go to Build > Preferences > and untick "automatically set file_dir for subfolders"
If this commit inteferes with any large projects just revert it, do your thing, then rerun the script. Easy-peasy.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4488 316c924e-a436-60f5-8080-3fe189b3f50e
- Fixed it being possible to drag-drop any storage item to either hand from.. anywhere... You can now only do that if the backpack is somewhere on you.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4485 316c924e-a436-60f5-8080-3fe189b3f50e
- Moved update_icon() calls from storage/fancy to all storage items, whenever an item is added or removed from the storage item. Also renamed updateIcon() to update_icon(), since that's the obj-wide proc.
- Part of fixing issue u
- Removed crayon and crayonbox snowflake code
- Removed bible snowflake code
- Made the click-drag to move to l_hand or r_hand thing something that works on all storage items.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4484 316c924e-a436-60f5-8080-3fe189b3f50e
-Syringes can now only be loaded from tiles that are adjacent/diagonal to you, and taking windows/doors into account
-As a tradeoff, you can now load syringes from storage items by clicking them
-Range to analyze reagents reduced to 3 tiles, but doesn't factor obstacles
-Mobs can no longer be scanned for reagents, because it didn't make much sense at all, and for balance
Fixes issue 520
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4483 316c924e-a436-60f5-8080-3fe189b3f50e
- Fixed an issue where the monkey's slot_l_hand and slot_r_hand slot identifiers were being assigned to the two pieces of the 'swap hand' button instead of the actual hand screen items. Not tomention them being the wrong way around...
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4482 316c924e-a436-60f5-8080-3fe189b3f50e
- Adds logging for throwing. Pulling and grabbing does not need to be logged in detail, since kill-intent grabbing is logged already.
- Something broke throwing, which made it runtime. This also fixes that.
- Fixes the problem of applying wires to a stack of glass, which only contains one piece of glass using wires, deleting the glass piece and not spawning a light tile. A call of the glass' use(1) was misplaced, which had the chance of deleting the object, thus stopping the proc, before it spawned the light tile.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4478 316c924e-a436-60f5-8080-3fe189b3f50e
Now if someone busts out of a mob it will gib and the contents of its stomach will fly out as intended
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4473 316c924e-a436-60f5-8080-3fe189b3f50e