Commit Graph

28 Commits

Author SHA1 Message Date
Aronai Sieyes
b7aae34335 Merge branch 'master' into pol-defaultparts 2020-05-05 22:51:02 -04:00
Atlantiscze
539b5cc0c8 Implements another batch of feedback 2020-05-03 23:29:03 +02:00
Aronai Sieyes
b3e9960029 Move machines to use default_apply_parts() 2020-04-27 11:57:43 -04:00
Atlantiscze
fbf33fc5df Final tweaks
- Refactors some code to more modern standards, fixes problem with PSUs not reacting to UI input.
- Adds cable coil recoloring using multitool (Bay went the path of having dedicated cable painter device but that really feels as too much of a hassle having to carry another device for this - lets just say the paint is electrically reactive in some way).
- Adds changelog
2020-04-20 08:16:19 +02:00
Atlantiscze
78925e2993 Ports over power-related enhancements and tweaks i coded for Bay a while back
- Please fasten your seatbelts, this will be a long one as it joins few older Bay PRs into one.

1. Ports https://github.com/Baystation12/Baystation12/pull/12626
- SMES units may now be damaged and destroyed. Charged SMES units fail quite violently. Damage can be fixed by welding tool.
- PSUs completely refactored, ghetto variant no longer exists.
- Cell rack PSUs now can be considered a hybrid between large battery charger and a SMES. They actually use the cells to store power (so you can hot-swap the cells to get more juice simply via the UI without deconstructing the whole machine), but in comparison to SMES have poor throughput and capacity in general (cells are simply too small). They are also somewhat limited in configuration options (lacks the precision electronics of a SMES). Better matter bin lets you put in more cells, up to 9.
- Cell rack PSU also has a mode that allows charge-balancing all inserted batteries (moves energy around so each battery has the same charge %)

2. Ports https://github.com/Baystation12/Baystation12/pull/11977
- SMES units now have full load balancing capability, getting rid of that annoying "One SMES charges at full, other SMES gets nothing" problem. If insufficient power is available on input, all inputting SMESes will now charge at same percentage. If more SMESes power a single output, they will all output equal percentage of their setting.
- This appears to have a pleasant side effect of fixing the issue where SMESes could starve APCs of energy. SMESes are ALWAYS last to input power on a powernet.
- This also appears to have fixed weird values displayed in SMES output/input load readings in the UI. By weird values i mostly mean inputs/outputs actually higher than the SMES is set to have.

3. Ports https://github.com/Baystation12/Baystation12/pull/18137
- SMES units (and subtypes, therefore effectively also PSUs from previous entry) can now have more than one terminal. This effectively allows a setup where two (or more) sources feed a single SMES, which then feeds the output. SMESes can not exceed input setting even with multiple terminals.
- Typical example of use in practice would be SMES that runs something important (for example an AI, telecomms, pick whatever you want). It could have one input from the power grid, and second input from a PACMAN generator set up nearby as a backup. Before the generator would have to be wired into main grid, therefore main grid would siphon off power from it. Now the generator can be separate and dedicated for whatever use you want.
2020-04-17 08:26:29 +02:00
Anewbe
729ce71aa0 Converts most istype(thing,tool) procs into an appropriate thing.is_tool() format 2018-08-02 21:45:15 -05: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
Anewbe
19710d9bd8 Reworks empulse and emp_act 2017-03-05 12:22:45 -06: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
Kelenius
35a20002c6 Merge branch 'dev' into ofResearchAndPrototypes
Conflicts:
	baystation12.dme
	code/defines/obj/weapon.dm
	code/game/mecha/equipment/tools/medical_tools.dm
	code/game/mecha/equipment/tools/tools.dm
	code/game/mecha/mecha.dm
	code/game/mecha/mecha_parts.dm
	code/game/objects/items/devices/flash.dm
	code/game/objects/items/devices/powersink.dm
	code/game/objects/items/devices/scanners.dm
	code/game/objects/items/stacks/sheets/glass.dm
	code/game/objects/items/stacks/sheets/sheet_types.dm
	code/game/objects/items/weapons/RCD.dm
	code/game/objects/items/weapons/circuitboards/machinery/biogenerator.dm
	code/game/objects/items/weapons/circuitboards/machinery/cloning.dm
	code/game/objects/items/weapons/circuitboards/machinery/mining_drill.dm
	code/game/objects/items/weapons/circuitboards/machinery/pacman.dm
	code/game/objects/items/weapons/circuitboards/machinery/power.dm
	code/game/objects/items/weapons/circuitboards/machinery/recharge_station.dm
	code/game/objects/items/weapons/circuitboards/machinery/research.dm
	code/game/objects/items/weapons/circuitboards/machinery/shieldgen.dm
	code/game/objects/items/weapons/circuitboards/machinery/telecomms.dm
	code/game/objects/items/weapons/circuitboards/machinery/unary_atmos.dm
	code/game/objects/items/weapons/flamethrower.dm
	code/game/objects/items/weapons/handcuffs.dm
	code/game/objects/items/weapons/kitchen.dm
	code/game/objects/items/weapons/shields.dm
	code/game/objects/items/weapons/storage/backpack.dm
	code/game/objects/items/weapons/surgery_tools.dm
	code/game/objects/items/weapons/teleportation.dm
	code/game/objects/items/weapons/tools.dm
	code/modules/assembly/igniter.dm
	code/modules/assembly/infrared.dm
	code/modules/assembly/mousetrap.dm
	code/modules/assembly/proximity.dm
	code/modules/assembly/signaler.dm
	code/modules/assembly/timer.dm
	code/modules/assembly/voice.dm
	code/modules/clothing/glasses/glasses.dm
	code/modules/hydroponics/trays/tray_tools.dm
	code/modules/mining/drilling/scanner.dm
	code/modules/mining/mine_items.dm
	code/modules/mining/ore.dm
	code/modules/mob/living/silicon/robot/analyzer.dm
	code/modules/power/rust/circuits_and_design.dm
	code/modules/projectiles/ammunition/boxes.dm
	code/modules/projectiles/guns/energy/laser.dm
	code/modules/projectiles/guns/energy/special.dm
	code/modules/projectiles/guns/energy/stun.dm
	code/modules/research/circuitprinter.dm
	code/modules/research/designs.dm
	code/modules/research/destructive_analyzer.dm
	code/modules/research/protolathe.dm
	code/modules/research/rdconsole.dm
	code/modules/research/research.dm
	code/modules/research/server.dm
	code/modules/research/xenoarchaeology/genetics/reconstitutor.dm
2015-05-20 11:50:28 +03:00
StarSmasher
4afe2e46e6 Updates code based off of GinjaNinja's Feedback 2015-05-05 17:16:10 +02:00
StarSmasher
2675bac50e Applies Icon Caching to battery racks, Fixed edition
I did a whoops, should be good now, I hope.
2015-05-05 16:50:23 +02:00
Mloc
82b810d363 Revert "Applies Icon Caching to battery racks" 2015-05-05 15:36:19 +01:00
StarSmasher
b27dbdaaf5 I'm too broken for this
Also fixes this one, probably.
2015-05-05 14:21:28 +02:00
StarSmasher
1c9dbfdb2b Removes unneeded variable
All good now.
2015-05-05 14:13:26 +02:00
StarSmasher
89b65e216f Applies Icon Caching to battery racks
In my tests a while ago, I found that the battery racks came quite high in the profiler. So I decided to see if I could alleviate some of that trouble.

Very simple, caches the icons based off of previous work done on the APC, requires less processing for the icon updates.
Function has been tested and has been used on a live server for a few weeks prior to said server's shutdown.
Will make a 2nd PR following another like this except for HUD icons.
2015-05-05 13:12:52 +02:00
PsiOmega
1ae0ad6d92 Updates the atom_pool, now datum_pool, to handle any datum object.
Makes the garbage collector similarly robust. Continues the whole Destroy/qdel porting.
2015-04-24 09:59:05 +02:00
Kelenius
db30c15e4c Updates to science
Protolathe and CI build procs moved to them from RD console.
Protolathe and CI now have a build queue. Designs take varying time to
build.
P and CI material storage is now a list instead of a set of vars.
origin_tech is now a list.
All sheets now contain exactly 2000 units of matter.
In design datum, chemicals and materials are two separate lists.
Designs are now sorted. The method is kinda hacky but flexible. They
have a var, sort_string. Designs are sorted alphabetically using it.
Circuits how show whether they build a machine or a computer in CI menu.
Adds item construction, for now protolathe is used.
2015-04-04 13:38:03 +03:00
Amunak
4a7fdbf595 Removed unused substation batteryrack code. 2014-12-17 14:31:57 +01:00
Amunak
1a972974bc Moves all circuitboards to their respective files.
Computer boards are now in /code/game/objects/items/weapons/circuitboards/computer/.
Buildable machinery boards are in /code/game/objects/items/weapons/circuitboards/machinery/.
Everything else is just in /code/game/objects/items/weapons/circuitboards/.
The circuitboard parent definition is in /code/game/objects/items/weapons/circuitboards/circuitboard.dm.
Did some minor renaming and capitalization fixes on the boards.
2014-12-17 14:31:21 +01:00
PsiOmega
a1c19b78be Ports more of /tg/'s powernet code.
Among other things this fixes a a bug where SMES would draw excess power from the powergrid they were outputting to, rather than drawing from.
2014-10-29 14:01:35 +01:00
PsiOmega
3a7066c6c1 Replaces add_load with draw_power. Issue about silly battery handling remains. Fixes the build-error. 2014-10-20 19:18:27 +02:00
PsiOmega
1cabbbf5a6 Master controller no longer annihilate powernets, powernets annihilate themselves.
Some misc. changes.
2014-10-15 09:44:15 +02:00
Atlantiscze
975070c1ba ENGINEERING SUBSTATIONS!
- Mapped in engineering substations
- Completely reworked station wiring (Z level 1)
- Wire colours: Yellow - Local Power (engine, solars), Red - Main Grid, Green - Sub Grid (department grid)
- Adds breaker box variant that starts enabled
- Substation PSUs are now not set to charge themselves by default (as this caused quite large loads)
2014-08-31 03:52:38 +02:00
Atlantiscze
845c0a0b17 SMES (de)construction
- Adds Superconducting Magnetic Coils - SMES specific construction item.
- Each SMES can have up to 5 additional coils added , similar to PSUs with cells.
- It is possible to create multi coil SMESs by changing "cur_coils" variable while mapping them in.
- SMES can be deconstructed, salvaging their board and coil(s)
- It is currently not possible to obtain these by any other way than deconstructing existing SMESs. This will be added in another commit.
2014-08-30 15:55:38 +02:00
mwerezak
4b070a2de6 Fixes #5935
Also improves apc/process() (doesnt add and then remove charge from
cells when it doesn't have to).
2014-08-10 03:44:56 -04:00
igalan
9a27556421 Let's test this rebase thing. 2014-06-14 15:20:25 +01:00