Commit Graph

68 Commits

Author SHA1 Message Date
Leshana
a1bfd1fb46 Make gas turbine constructable and operational
* Make gas turbine constructable, as well as modernizing its code. Borrowed some from /tg
* Converted the gas turbine control computer to nano ui.
2018-02-22 15:43:38 -05:00
Cyantime
a2f3443828 SMES tweaks (#4793)
* SMES tweaks

* Replace some fireloss with electrocute_act
2018-02-12 20:39:58 -06:00
Leshana
01925e9de2 Add circuit and research design to allow constructing breaker boxes in game. 2018-01-21 20:36:44 -05:00
Leshana
224fe42e77 Prepare Atmospherics Machinery for SSatoms (#4501)
* to_chat() replacement.

* Revert calling target.init_dir() before connecting.

* This change was added in https://github.com/PolarisSS13/Polaris/pull/3775 to counteract `dir` not being set prior to New() for dynamically loaded maps.  The root cause was /atom/New() not calling _preloader.load().  Undoing the change now that /atom/New() is fixed.
* The addition of the init_dir() proc itself however, is useful, because there ARE other times some atmos machinery will want to re-initialize its dir, specifically whenever it is rotated.
* init_dir() must be called in the constructor of all atmospherics machines capable of connecting to another.   Since it has to happen for ALL machines, lets move that call to /obj/machinery/atmospherics/New()

* Rename /obj/machinery/atmospherics initialize() to atmos_init()

* These days `initialize()` is used to handle general object initialization that is moved outside of New().  The node connection discovery of atmos machinery needs to happen after all that, and so needs to be in a separate proc.
* Make sure to actually call atmos_init during system startup.
2018-01-06 10:52:56 -06:00
Cyantime
9ba6d5759a Fixes 'reques console' 2017-11-22 18:25:49 -05:00
Anewbe
fce9fe2c72 Merge pull request #4188 from Atermonera/VR_2
Virtual Reality
2017-11-03 15:10:53 -05:00
Atermonera
64942bd04c VR Core 2017-10-30 22:32:36 -07:00
killer653
0080539924 More fixes 2017-10-15 19:54:50 -04:00
Neerti
99eb6f9404 Updates Tools
Adds toolspeed var, which is a multiplier on how 'fast' the tool works.  0.5 means it goes twice as fast.
Adds usesound var, which determines what sound is used when a tool is being used.
Changes a lot of code to use those two vars instead.
Adds 'ayyy' tools, which are ported from /tg/'s abductor gamemode.  They're currently admin only but I might make them obtainable by xenoarch later.
Adds powertools, also from /tg/.  CE starts with them in a new toolbelt that spawns in their locker, ported from (you guessed it) /tg/.
Changes welder sprites to look nicer, ported yet again from /tg/.  Modified the blue welder slightly so it can be the electric welder sprite.
Adds various sounds from /tg/, for tools and welders.
2017-08-03 04:49:23 -04:00
Leshana
ab4c63791a Modernize the automatic pipe layer
* Upgrades the automatic pipe layer to modernize its code a bit towards latest standards and fixing various bugs.
* Make it constructable so it can acutally be used by someone!
2017-03-30 18:13:37 -04:00
Cerebulon
55fd0a2041 Adds hand sprites to many items in the engineering department 2017-03-29 04:09:33 +01:00
Neerti
12abb2d6f2 Ports a large chunk of the map datum system that europa/bay uses.
Links many map-specific details such as the station name, z-level information, and allowed jobs from global vars to map datum vars, which should help us maintain multiple maps at once in the future, which will be needed for the future Southern Cross.
Note that a config change will be needed to change GENERATE_ASTEROID to GENERATE_MAP, otherwise no changes should be required to continue normal map usage.
To change to a different map, it's suggested to tick the file that ticks all the other needed files, which for the Northern Star is called northern_star.dm.
2017-02-27 07:36:41 -05:00
Anewbe
9d0fd9b866 Merge pull request #3005 from Leshana/papershredder-enhancement
Enhances the Paper Shredder
2017-02-23 11:28:28 -06:00
Leshana
d7b82fc719 Added new "default_apply_parts" facility to machines to create default parts.
* Every constructable machine with a circuit board needs to create its required parts in its constructor.  These parts must be the same parts specified in the machine's circuit board, otherwise you get the wrong parts when you deconstruct.  This creates an opportunity for error which we can eliminate by reading the circuit board's part list and just adding those to the machine directly!  Plus its less tedious.
* Implemented it on the jukebox.
2017-02-22 17:28:24 -05:00
Leshana
dbd3622588 Enhances the Paper Shredder
* Makes the paper shredder constructable and deconstructable.
* Switches to some new sprites which are animated!
* Machine now requires power, icons respond to power on/off etc.
2017-02-21 19:21:32 -05:00
Anewbe
ccfbd7c9ac Mining outpost camera console should work now 2017-01-29 15:25:53 -06:00
Neerti
337ef499a1 Cleans Up WIP Event System + New Grid Check For It
Separates the 'count and assess everything' stuff to it's own datum, called the metric datum, which I plan to add on to in the future to make counting and metrics easier.
Makes decision process a bit more weight-based, will probably continue tweaking later.
Makes the admin debug UI have links to change settings easily.
Adds replacement for grid check event, which works similar to the old one, but is now based on a physical machine in the game world, that Engineering can hack to make the event end faster, if so desired.  Note that the machine is not mapped in, and won't be mapped in until the event system is ready for launch.
Adds grid_check variables to SMESes and APCs to make them stop doing work without draining the battery.
Grid checks in the new system are caused by a "power spike" which originates from the engine and will cause bad things, should no grid checker machine be connected to the power-net.  These power spikes occur when the GM decides that a grid check is a good event to have.
The grid checker can be built and deconstructed using the standard machine construction methods.
2016-10-05 21:40:07 -04:00
Neerti
828dacf485 Centralizes weight class definitions
A lot of new defines are now in inventory_sizes.dm, which contains;
All the size identifiers (the thing that tells the game if something is bulky, or w/e).
Storage costs for all the sizes, which are exponents of two, as previously.
A few constants for inventory size.

Also changes all storage item's capacity definitions by basing it off of how many 'normal slots' exist for it.  This allows one to change the definition for all of the defines in the file, and everything will follow along without needing to change 500 files.  In testing, I made all ITEMSIZE_COST_* defines doubled, and nothing had broke.

The benefit of doing all of this is that it makes adding new weight classes in the future much simpler, and makes knowing how much space a container has easier, as seeing ITEMSIZE_COST_NORMAL * 7 means it can hold seven normal items.
2016-09-22 00:51:51 -04:00
SinTwo
045c393683 Revert "Revert "Frame Cleanup""
This reverts commit 82722ba42f.
2016-08-13 19:55:57 -04:00
Yoshax
82722ba42f Revert "Frame Cleanup" 2016-08-06 00:27:03 +01:00
Yoshax
afa7878abb Merge pull request #2263 from SinTwo/frame_cleanup
Frame Cleanup
2016-08-05 21:14:35 +01:00
SinTwo
07b4eb2d95 final fixes, tweaks, and cleanups 2016-08-03 14:09:12 -04:00
SinTwo
66c3a007a9 frame cleanup fixes 2016-07-23 23:45:24 -04:00
Yoshax
93b7e661c4 Ensures contraband for supply computers can be properly acquired via hacking 2016-07-23 20:24:04 +01:00
SinTwo
eb120319eb Frame code cleanup 2016-07-23 13:31:30 -04:00
Arokha Sieyes
05f8a69821 Make FBPs Constructable
Print 'em out, slap an MMI or Posibrain in. They come from a new machine, the Prosthetics Fabricator. You can order license discs from cargo to print the proprietary limbs. Making FBPs requires a bit of research as well, otherwise you only get arms/legs. Also requires a bit of plasteel to make the critical parts. Mostly just need every limb, plus eyes. Torso comes with the snowflakey FBP battery.

Also adds an FBP 'self-diagnostics' verb. More vague than an analyzer.

**This adds a machine that needs to be placed on the map. "/obj/machinery/pros_fabricator"**

Personally, I would replace the right-side exosuit fab with it. I can add this to my PR but I'm unsure how you guys feel about non-devs submitting map changes.
2016-05-30 02:13:55 -04:00
Leshana
e37ac4da3e Fixes #145 - Makes jukeboxes constructable.
* Adds circuit board.
* Adds design to print board on autolathe.
* Makes jukeboxes deconstructable back to frame.
2016-05-25 21:35:24 -04:00
Neerti
4656db4aa9 Adds PDA Multicaster
Adds a new machine to telecomms, which contains special PDAs corresponding to each department on the station.  Sending a PDA message to one of these PDAs will duplicate it to everyone in the department the PDA is assigned to.  It determines what department someone is in by cartridge type.
Adds cartridges for several jobs that were missing them, for the purposes of being recognized as being in a department.  The cartridges otherwise do nothing.
New circuitboard to build the new pda multicaster.  It can also be deconstructed with the standard machinery deconstruction steps of screwdriver > crowbar.
2016-05-12 02:50:35 -04:00
SinTwo
5ae20ceb8b Buildables v1.2 (#1517)
* Removes text2path, adds constructability to a few things, adds a locker_painter.dm, and several fixes.

* Fixes Maps due to working on ancient versions.

* Path error.

* Adds a missing ..()
2016-05-03 22:18:12 +01:00
SinTwo
b356f5cf21 Construction Update 2016-03-25 16:02:36 -04:00
PsiOmegaDelta
e7686dd3e7 Camera fixes and performance tweaks.
Improves camera EMP handling. Now uses a var and processing to determine when the EMP should end, preventing inconsistent states when a camera is EMPd multiple times.

Reduces the process and bandwidth need for cameras.
* There is now a common camera repository, responsible for setting up cameras once for every invalidation.
* Camera consoles now only updates when the camera cache is invalidated, not every second.
* The console now only presents one network at a time, and only sends the data necessary to view that network (as opposed to sending the data for all cameras).
2016-03-21 17:30:52 -04:00
Yoshax
8be10d96dd Ports Byond 510 preperations from Bay
Updates comment

Updates supply file
2016-03-14 18:21:44 +00:00
Kelenius
63e8fbab46 Constructible drills
Mining head circuit available in R&D
Mining brace circuit added
Mining braces can be built and disassembled
2016-03-08 20:46:31 +03:00
Datraen
4c0bd923c3 Merge pull request #866 from Kelenius/viroRemoval
Removes the old virus system
2016-02-05 21:06:09 -05:00
Kelenius
b86c730695 Removes the old virus system
Appendicitis moved to appendix organ
2016-01-27 11:44:41 +03:00
Kearel
5727971690 Semi ports Baystation12/Baystation12#11445 2016-01-25 20:35:52 +00:00
Neerti
3e5436c4b7 Upgrades communicators to NanoUI, adds a new EPv2 fake networking system, adds new semi-telecomms machine, lets communicators call ghosts, call other communicators, and have as many ghosts or communicators linked as the user desires. Adds preference option to remain invisible on communicator device searches. 2015-12-14 15:43:53 -05:00
Neerti
4f77afece1 Revert 58ef59734f 2015-11-08 10:09:14 -05:00
Neerti
45f15930a0 Merge branch 'dev' of https://github.com/Baystation12/Baystation12 into 11/6/2015_neerti_breaks_everything_bay_merge
Conflicts:
	.travis.yml
	code/_helpers/lists.dm
	code/game/objects/structures/crates_lockers/closets/secure/engineering.dm
	code/global.dm
	code/modules/client/preferences.dm
	code/modules/client/preferences_savefile.dm
	code/modules/reagents/dispenser/dispenser2.dm
	polaris.dme
2015-11-06 17:41:18 -05:00
PsiOmegaDelta
19051ec27e Merge remote-tracking branch 'upstream/dev-freeze' into dev 2015-11-02 09:25:04 +01:00
PsiOmegaDelta
694a35c10b Merge remote-tracking branch 'upstream/master' into dev-freeze 2015-11-02 09:08:06 +01:00
PsiOmegaDelta
ab2ddfcba7 Atmospheric computer circuit additions.
Adds several missing variables used in the construction and deconstruction set of gas management computers. Fixes #11392.
Computers also no longer attemps to qdel a type on Destroy()
2015-10-29 16:55:58 +01:00
PsiOmegaDelta
27feb09a31 Merge remote-tracking branch 'upstream/dev-freeze' into dev
Conflicts:
	code/game/machinery/computer/computer.dm
	html/changelogs/.all_changelog.yml
2015-10-11 17:37:01 +02:00
PsiOmegaDelta
070ca0adea Merge remote-tracking branch 'upstream/master' into dev-freeze
Conflicts:
	code/game/objects/items/weapons/tanks/tanks.dm
	code/modules/holodeck/HolodeckControl.dm
	code/modules/mob/living/carbon/breathe.dm
	code/modules/mob/living/carbon/human/life.dm
	code/setup.dm
2015-10-11 17:17:41 +02:00
PsiOmegaDelta
fd3370c01f Fixes #11263.
Now possible to use items other than emags on holodeck computers
Blobs no longer make computers lose their density state.
Holodeck computers can now be repaired (and built, but since they cannot be configured they'll be useless).
Fixes #11263.
2015-10-10 10:11:48 +02:00
Neerti
00fa623c9d Merge branch 'dev' of https://github.com/Baystation12/Baystation12 into dev
Conflicts:
	.travis.yml
	code/controllers/configuration.dm
	code/game/gamemodes/changeling/modularchangling.dm
	code/game/jobs/job/medical.dm
	code/game/jobs/job/security.dm
	code/game/machinery/Sleeper.dm
	code/game/machinery/computer/communications.dm
	code/game/machinery/cryopod.dm
	code/game/objects/items/weapons/RCD.dm
	code/game/objects/items/weapons/storage/boxes.dm
	code/game/turfs/simulated/floor.dm
	code/game/turfs/simulated/floor_types.dm
	code/global.dm
	code/modules/materials/materials.dm
	code/modules/mob/living/silicon/ai/ai.dm
	code/modules/projectiles/guns/projectile/automatic.dm
	polaris.dme
2015-08-23 01:30:46 -04:00
Kelenius
7c1d9b5614 Mech chargers are now a single machine
Can be built and upgraded
Resolves #5215
2015-08-16 06:07:36 -07:00
Neerti
462eaa834b Merge branch 'dev' of https://github.com/Baystation12/Baystation12 into 6/25/2015_bay_sync
Conflicts:
	.travis.yml
	code/modules/clothing/spacesuits/rig/modules/combat.dm
	code/modules/clothing/spacesuits/rig/modules/utility.dm
	code/modules/mob/living/silicon/ai/ai.dm
	icons/mob/rig_back.dmi
	polaris.dme
2015-06-25 18:50:18 -04:00
PsiOmegaDelta
cc7c502fb8 Updates emag attackby usages to emag_act where it's not too much of a headache. 2015-06-16 09:34:13 +02:00
Neerti
2a45114038 Merge branch 'dev' of https://github.com/Baystation12/Baystation12 into 6/5/2015_bay_merge
Conflicts:
	.travis.yml
	code/controllers/configuration.dm
	code/datums/supplypacks.dm
	code/game/machinery/bluespacerelay.dm
	code/game/machinery/hologram.dm
	code/game/objects/items/weapons/RCD.dm
	code/game/objects/items/weapons/circuitboards/machinery/commsantenna.dm
	code/game/turfs/simulated/floor.dm
	code/game/turfs/simulated/floor_types.dm
	code/game/turfs/simulated/walls.dm
	code/global.dm
	code/modules/clothing/spacesuits/rig/suits/ert.dm
	code/modules/mob/living/silicon/ai/ai.dm
	code/modules/research/designs.dm
	config/example/config.txt
	icons/mob/feet.dmi
	icons/mob/head.dmi
	icons/mob/suit.dmi
	icons/obj/clothing/hats.dmi
	icons/obj/clothing/shoes.dmi
	icons/obj/clothing/suits.dmi
	icons/obj/rig_modules.dmi
	interface/interface.dm
	maps/exodus-3.dmm
	polaris.dme
2015-06-05 22:11:15 -04:00