Commit Graph

198 Commits

Author SHA1 Message Date
Tigercat2000
d20298e996 -tg- atom pooling system, qdel changes
This commit first and foremost ports the -tg- atom pooling system, and
removes the old experimental system entirely.

Secondly, this PR modifies the qdel system to use a -tg- lookalike
"destroy hint" system, which means that individual objects can tell qdel
what to do with them beyond taking care of things they need to delete.
This ties into the atom pooling system via a new hint define,
QDEL_HINT_PUTINPOOL, which will place the atom in the pool instead of
deleting it as per standard.

Emitter beams are now fully pooled.

Qdel now has semi-compatibility with all datum types, however it is not
the same as -tg-'s "Queue everything!" system. It simply passes it through
the GC immediately and adds it to the "hard del" lists. This means that
reagents can be qdel'ed, but there is no purpose as of yet, as it is more
or less the same as just deleting them, with the added effect of adding
logs of them being deleted to the garbage collector.
2015-06-21 15:47:57 -07:00
Krausus
c3a983739f Fixes several potential pipe runtimes
Pipes would naively assume they had a turf, even when they didn't
(probably after getting qdel'd); they'll now abort turf-sensitive
operations if turfless. This should cut down on pipe-deletion-related
runtimes.
2015-06-15 09:19:17 -04:00
Fox-McCloud
2ad1c74457 Singularity Refactor 2015-06-10 20:04:28 -04:00
Tigercat2000
74f304e88c Metastation: Compatibility modifications
This commit modifies metastation to actually be playable on our code
Squashed Commits:
 - [META] Fixes emergency shuttle being stuck
 - Toxins Mixing fix: chamber floor > engine
 - Adds research outpost + Chem lab to routpost
 - Add vox raider ship, fix pods and a few shuttle zones.
 - Remove step_x so TRAVIS likes it
 - Finish spawn points, add telepad.

 - Replace showroom with NT-rep/Blueshield Office
   Don't worry, the nuke keg is in the meeting room.
 - Convert art storage to barber shop, place artvend in tool storage
 - Buncha medbay tweaks, 2nd surgery table, body scanners, fixed sleepers,
   minor balance changes.
 - Add Mr. Changs to dorms
 - Update meta to latest paracode
 - Fix punpun
 - Atmos volume pumps, atmos control console
 - Add chicken statue to Mr. Chang's (*cry), Bar smartfridge
 - Fix mr. changs statue and chairs
 - Add togglable polarized windows to surgery, so surgeons can prevent seeing
   other surgery procedures if necessary
 - Actually add atmos control comp
 - Hydro trays are no longer dirt
 - Fix brig windoors
 - Fix escape shuttle sleepers
2015-06-04 19:28:45 -07:00
ZomgPonies
1935a82afe 2/3 of port done 2015-05-25 19:48:13 -04:00
Krausus
bf5bcadc61 Fixes runtime in pipe code
I noticed it while blowing things up with C4!
2015-05-25 05:17:09 -04:00
PJB3005
904e180938 Last fix 2015-05-17 02:06:53 +02:00
PJB3005
a901320238 Fixings 2015-05-15 17:06:51 +02:00
PJB3005
257e77c400 /vg/ Multitool menu port!
With 100% better squashing.

I hope.
2015-05-14 22:34:02 +02:00
ZomgPonies
0c9937982f Merge pull request #1007 from IAmBigCoat/test
Scrub/Supply pipe caps and a small schema fix
2015-05-13 20:50:07 -04:00
ZomgPonies
c29d2f4dac Merge pull request #1008 from tigercat2000/VcrawlFixes
Generic ventcrawling + Bugfixes
2015-05-12 14:35:01 -04:00
Tigercat2000
1266df1f3d Generic ventcrawling + Bugfixes
This commit makes the ventcrawling system operate independant of
ventcrawling verbs. Every type of /mob/living now has a ventcrawling
variable, which allows them to interact with the ventcrawling system if
set to 1 or 2. The AltClickOn() defines for each ventcrawling mob have
been removed, and replaced with a single AltClick() define on ventcrawl
machinery.
2015-05-11 06:28:44 -07:00
IAmBigCoat
dd9b6ebd4f Scrub/Supply caps and a small schema fix 2015-05-11 01:09:00 -04:00
Tigercat2000
e1249fc640 Lighting overhaul.
This commit overhauls the lighting system to Bay12 standards. It is better
in pretty much every way.
2015-05-10 12:03:27 -07:00
Tigercat2000
b14f7a429f Ventcrawling fixes
d3athrow/vgstation13#4251
tgstation/-tg-station#9296

 - Fixes moving between pipeline datums not updating pipe vision
 - Fixes login() not updating pipe vision
 - Removes hardcoded limit of entering through unary machinery-- does
   nothing *now*
 - Can see pipes in darkness as fullbright
 - More sanity checks
2015-05-03 09:19:27 -07:00
Tigercat2000
4f1053f5b7 LINDA, Stage 1
This commit ports the base system of LINDA from TG. This version of linda
is the original version, with none of -tg-'s fixes, rewrites, or other
such improvements attached.

The mob ignite system has been 100% removed, as LINDA does not support
this normally. It may be added back in when the improvements and refactors
to LINDA have been ported.
2015-04-28 08:43:42 -07:00
Tigercat2000
e3b3db6d31 Fix major bug with ventcrawl
Because we have insane-r movecode than VG, there was a bug that you could
end up getting violently sucked into an atmos machine and shoved out into
the vents. This commit fixes this in a workaround manner.
2015-04-24 12:18:29 -07:00
ComicIronic
b96f5ea7ef OOP pipe-crawling procs
You can now weld scrubbers, which stops their airflow and also crawling
through them. There is now a proc for if a mob can ventcrawl through a pipe.
2015-04-20 14:44:52 -07:00
ComicIronic
65ea7e07d9 Ventcrawl Overhaul
Ventcrawling mobs now no longer get a teleportation menu, instead, they
are put inside the vents, the client gets an overlay of the pipes in the
pipe network, and it is up to them to navigate.
2015-04-20 13:09:04 -07:00
DZD
dae033a6a5 Pipe Fingerprint Transferring
- Wrenching down a pipe will now transfer prints from the pipe object to
the pipe machine. Vice versa for unwrenching a pipe.
- Wrenching down or unwrenching a pipe will now leave a fingerprint on
the pipe.
2015-04-11 22:52:42 -04:00
ZomgPonies
5c14d9c5f2 vg Garbage Collector 2015-02-23 17:18:38 -05:00
Markolie
672305e034 Adds a "params" parameter to attackby(), so it keeps track of pixel_x and pixel_y among other things 2015-02-22 22:12:11 +01:00
Markolie
377dfe894d Add attack animations 2015-02-22 21:15:54 +01:00
Markolie
d2dcb7a041 Fix AI tracking, atmospherics construction, blob talk fix, ERT radio fix 2015-02-21 20:56:55 +01:00
DZD
b3a0c9a975 Removes TABLEPASS and FPRINT flags
- Also adds ABSTRACT and NODROP flags in preparation for removal of
canremove and abstract vars.
- Sorts some of the setup.dm flags so they're in order.
- Replaces 'flags & 2' in policetape.dm with pass_flags & PASSTABLE,
should have the same effect.
2015-02-10 17:41:37 -05:00
Markolie
7285f39fc1 Defib update, cell path update 2015-02-09 16:12:01 +01:00
Markolie
d3d54b53fd Further atmos fixes 2015-02-01 12:09:47 +01:00
Markolie
acda8e7730 Atmos bug fixes 2015-01-30 15:42:55 +01:00
Markolie
956f2ba703 Event overhaul from Bay, atmos fixes 2015-01-21 23:05:59 +01:00
Markolie
183362eabd Proper pipe freezer fix, give sec spacepod laser 2015-01-21 20:04:59 +01:00
Markolie
8cd104e58e Fixes all duplicate pipe instances 2015-01-21 19:42:53 +01:00
Markolie
9f9875ed54 Toxins tank fix 2015-01-21 19:27:20 +01:00
Markolie
b6e1c35f55 Fix pipe freezer, map fixes 2015-01-21 19:24:11 +01:00
Markolie
f7ce7e55df Major atmos overhaul: scrubbers and pipes can now co-exist 2015-01-18 02:24:24 +01:00
Bone White
ea1feb41dd Further atmos changes
mixers and filters no longer have density = 1, so mobs can walk over
them.
new item: pipe freezer, can temporarily freeze pipes to allow
unwrenching when over the threshold internal pressure
note: has a temporary skin of hand labeler, needs a new sprite really.
2014-08-11 17:45:18 +01:00
Mark Aherne
9b45dbabfb Continued work in progress on a major revision of the NanoUI templating system.
Conflicts:
	code/ATMOSPHERICS/components/omni_devices/filter.dm
	code/ATMOSPHERICS/components/omni_devices/mixer.dm
	code/game/dna/dna_modifier.dm
	code/game/machinery/cryo.dm
	code/game/machinery/kitchen/smartfridge.dm
	code/modules/nano/nanoexternal.dm
	code/modules/nano/nanomanager.dm
	code/modules/nano/nanoui.dm
	code/modules/power/apc.dm
	code/modules/power/smes.dm
	code/modules/reagents/Chemistry-Machinery.dm
	nano/css/shared.css
	nano/js/nano_update.js
	nano/templates/escape_pod_console.tmpl
2014-07-15 07:22:15 -04:00
d3athrow
6527202080 Derp 2014-05-28 09:09:49 -04:00
d3athrow
4bdf486010 Should fix #702, volume pumps always outputting. 2014-05-27 14:10:16 -04:00
UristMcKerman
68ccde25e1 Added heat radiation to H/E pipes
Added black-body heat radiation to H/E pipes placed over /turf/space
according to Stephan-Botzmann law

Conflicts:
	code/ATMOSPHERICS/he_pipes.dm
2014-05-20 16:03:59 -04:00
Ravensdale
345efee151 Atmos mainline pipe code moved and enabled. 2014-04-30 13:51:29 -04:00
Mloc-Argent
e179e95dea atmos: remove a few force-deletes in merge code
Removes del(giver) from pipeline/merge(), turf/assume_air() and
atom/assume_air().
Thanks to valzargaming on reddit/github for pointing it out.
fixes #4717

Signed-off-by: Mloc-Argent <colmohici@gmail.com>
2014-04-20 03:37:46 -04:00
Ccomp5950
a939b32020 Code Effeciency Project: Vent scrubbers have a bit more sanity.
No longer checking for 0.00000000000000000000000001 moles of toxins scrubers can only detect stuff worse then 0.001 moles.

Have a nice day.

Conflicts:
	code/ATMOSPHERICS/components/unary/vent_scrubber.dm
2014-04-19 16:05:45 -04:00
ZomgPonies
1ab8df4b13 Garbage collection fixes 2014-02-19 20:24:31 -05:00
Loganbacca
f73c2d93e3 Vent pump efficiency
- Tweaked the pressure delta check to "> 0.5", so pumps will stop transferring minor volumes of air every tick (because a delta of 3.05176e-005 is still greater than 0). This also reduces the calls to gas_mixture/merge() and gas_mixture/remove() significantly once the air in the environment has equalized.

The results after running the game for 10 minutes:
```
Proc Name												Self CPU	Total CPU	Real Time	Calls
/obj/machinery/atmospherics/unary/vent_pump/process		0.035		0.141		0.141		3808	<- before
/obj/machinery/atmospherics/unary/vent_pump/process		0.014		0.042		0.043		3808	<- after
```
2014-02-19 19:39:22 -05:00
Rob Nelson
c3b021e246 Added a garbage collector implementation based on rumors from Goon and proc references in released gooncode.
And holy shit it's fast

Conflicts:
	baystation12.dme
	code/ATMOSPHERICS/pipes.dm
	code/game/machinery/Sleeper.dm
	code/game/machinery/rechargestation.dm
	code/game/objects/structures/crates_lockers/crates.dm
	code/game/objects/structures/tables_racks.dm
	code/modules/mining/mine_turfs.dm
	code/modules/paperwork/photocopier.dm
	code/modules/power/cable.dm
	html/changelog.html
2014-01-29 23:45:21 -05:00
Mark Aherne (Faerdan)
deb354fb68 Added no-network check to heat_source to fix a runtime if not connected to a network. 2014-01-24 22:05:08 -05:00
ZomgPonies
031f67110b Fixes some sounds 2014-01-16 05:23:32 -05:00
SkyMarshal
e4fdc17405 Some turf cleanup and the like. Trace gases are now properly handled by ZAS on world load.
Fixes #2485

Conflicts:
	code/game/turfs/simulated/floor_types.dm
2014-01-09 20:59:31 -05:00
ZomgPonies
5daf979b72 Pretty much all new click code 2013-10-12 14:44:36 -04:00
ZomgPonies
37e732d8db Updated ZAS and Atmo 2013-10-12 14:41:43 -04:00