Commit Graph

1228 Commits

Author SHA1 Message Date
skull132
d536d9f4aa Merge branch 'fake-master' into development
# Conflicts:
#	code/ATMOSPHERICS/atmospherics.dm
#	code/defines/procs/announce.dm
#	maps/aurora/aurora-3_sublevel.dmm
2017-12-09 00:08:21 +02:00
Mykhailo Bykhovtsev
ac30301c26 Tesla-related fixes (#3902) 2017-11-25 21:27:12 -06:00
skull132
7dc02be204 Merge branch 'master' into development
# Conflicts:
#	code/controllers/subsystems/initialization/misc_early.dm
#	config/example/config.txt
#	maps/aurora/aurora-1_centcomm.dmm
#	maps/aurora/aurora-4_mainlevel.dmm
2017-11-11 20:57:28 +02:00
TheGreatJorge
b9266bb8c4 Map-Fixes (#3796)
Fixes #3790
Fixes #3792
Fixes #3788

Also hopefully fixes the tcomms foyer turret control, since it turned out to be in the same area as turrets.
Also swaps two doors in research sublevel anomaly lab.

EDIT:
Shifted burning chamber gas injector in sublevel toxins one pixel down to make it look better.
Also made light bulbs the right colour. Sorry for that.

EDIT 2:
Fixes #3806
by moving a no smoking sign and putting air alarm on it's place.
2017-11-05 12:50:15 +02:00
skull132
c0f22a1cdd Merge branch 'master' into development
# Conflicts:
#	maps/aurora/aurora-1_centcomm.dmm
2017-10-29 16:15:53 +02:00
chaoko99
1c7d46681b Fixes Tesla never deleting itself. (#3752)
It was hilarious, but it's time to stop.
2017-10-27 17:47:34 +03:00
TheGreatJorge
c724dd35ad Map-fixes (#3726)
Fixes #3690
Changed blast door orientation on many blast doors across the station, and one few in CC as well, provided picture is only example. Changed blast doors are in areas: Bridge, Cap office, Research, Security, Engine, CC departures. That should be it, I think.
Fixes #3716
Fixes #3708
Fixes #3706
Fixes #3704
Fixes #2937
Also reversed APC sprites on sideways directions.
Fixes #3725
Fixes #3723
Fixes #3457
Fixes #3159
Fixes #3140
2017-10-22 02:39:31 +03:00
Lohikar
61b5203d24 Runtime Map Loading (#3597)
changes:

Maps are no longer compiled in, instead loaded directly from the DMMs at runtime.
Z level defines have been moved from the config to map datums.
Unit tests now use typecaches.
DMMS now actually works.
DMMS has been updated slightly.
DMMS is now capable of loading simple lists of non-text types.
DMMS is now faster when loading many types without mapped in attributes and when loading area instances.
Asteroid generation is now defined on the map datum instead of being hard-coded in SSasteroid.
Holodeck presets are now defined on the map datum.
Atmos machinery now uses Initialize().
2017-10-18 23:07:34 +03:00
Lohikar
f110b123cc Dynamic CC Lighting (#3619)
Changes the Centcomm areas to use dynamic lighting and maps in lights so that CC isn't pitch-black.
2017-10-14 20:06:08 +03:00
Lohikar
37908e5c4b Port some tesla performance optimizations from /tg/ (#3612)
Seems to halve (!) the Tesla's CPU usage.
2017-10-14 19:25:54 +03:00
chaoko99
2d527d31d8 Gravity generator glows. (#3588)
Resolves #3583
2017-10-13 17:39:48 +03:00
TheGreatJorge
0aff2d8785 Coloured lighting & related stuff (#3555)
Makes all light tubes & bulbs have colour according to the light they emit. There are 6 preset colours: RGB CMY. Any other color is possible by simply changing the already present brightness_color variable. This PR makes it so it actually changes the color of the item and wall object too.
    Added two new colour defines used only along with preset coloured lights.
    Coloured lights are only obtainable by random maintenace loot, cargo spawn or trader.
    Added box of randomly mixed light colours and box for every preset light colour.
    Removed two sets of redundant defines.
    Converted light item New() to Initialize() (hopefully correctly).
    Made couple tiny tweaks to the lights code.

EDIT, 7. Oct 2017:

    When you hit light machinery or item with paint, it will change it's brightness_color var, instead of the color var.
    Paint buckets can now paint items and people again.
    You can now wash paint off by spraying yourself with fire extinguisher or otherwise covering yourself in water.

EDIT, 8. Oct 2017:

    Removed one apparently unused global list.
    Converted pain bucket New to Initialize and changed it's pathing style.
    Shower can now wash paint too.
    Fixed paint bucket sprites to be bit more dynamic and fixed the in hand sprite. Also added bucket lid.
2017-10-10 18:46:24 +02:00
Ron
153fd130de Fixes the gravity generator (#3590)
Fixes the gravity generator using the wrong processing, the event not working, and overlays.
Closes #3589
2017-10-06 18:26:44 -05:00
Lohikar
8db472ae15 More stats (#3562)
* MORE STATS FOR THE STATS GODS

* save them to the db
2017-10-06 19:39:15 +02:00
Ron
37b3c0049a Replaces unused span classes (#3539)
Replaces span class userdanger and sinister with things that exist. Also removes an unused proc.
2017-10-04 19:23:20 +02:00
Alberyk
8e53ea0c78 Cult and antag fixes/tweaks (#3524) 2017-10-02 22:34:01 -05:00
Lohikar
ee686e9276 APC & Fire Alarm offset tweaks (#3502)
changes:

APCs now have directional sprites for WEST and EAST directions.
Fire Alarms' offsets are now enforced similarly to APCs'.
Fire Alarms now have mapper convenience types for each direction to make mapping them easier.
All fire alarms on the map have been replaced with the above convenience types, fixing some strange offsets in the process.
APCs no longer pre-create their spark effect datum, instead using the spark() proc.
2017-09-25 21:12:14 +03:00
Lohikar
8f4b4effae Kill processing_objects (#3398) 2017-09-09 15:22:58 -05:00
Lohikar
67bac9475d Restore old machinery init behavior (#3380) 2017-08-31 22:56:05 -05:00
Lohikar
4ed82ce486 Add Runtime Station (#3350)
Ports Runtime Station from /tg/, a debugging map meant to speed up boot time during development.
Also adds RTGs, a low-output (< 10 kW) upgradable buildable infinite power source, and allows placement of cables on catwalks.
2017-08-29 12:39:35 -05:00
Ron
ceab73c63e Makes some machines upgradeable (#3311)
Adds the ability to upgrade the following:
- Sleepers
- The ore processor
- All cooking appliances (Minus the microwave)
- Tesla Coil

Also makes components not spawn in machines until they are needed (When they are being upgraded) to reduce the objects generated. Adds some new macro's and converts some istypes to use them. And moves stock parts into their own file.
2017-08-28 01:51:37 -05:00
Ron
59a0b88059 Fixes a few issues with the gravity generator (#3281)
Fixes a runtime and a bug with the gravity generator that caused it to bypass radiation suits.
2017-08-20 14:02:31 +03:00
Lohikar
c3c31c85ea Machinery Component Initialization Refactor (#3258)
Machinery objects' component_parts list is now automatically populated with the types in the component_types list. Types can have an associated number which is interpreted as an instruction to spawn that number of that type. This eliminates a few Initialize() procs, and simplifies others.
Example:

component_types = list(
    /obj/foo/bar,
    /obj/baz = 2
)
Other changes:

Cable coils will now no longer force a stack size of 30 when created without their stack size passed as a parameter - this fixes anonymous types not working correctly with cable coils.
2017-08-09 20:33:14 +03:00
Ron
cb5e227320 Converts some istype's to use helpers (#3224)
Converts various istype's to use helpers. Mainly:
Cable
Wrench
Screwdriver
Multitool
Crowbar
Wirecutter

And makes the helpers defines.
2017-08-06 22:08:42 +03:00
Ron
ad96a34dd8 Removes some in worlds (#3227)
Removes some in worlds and some commented out code that I don't think will ever be used.
2017-08-06 19:50:53 +03:00
skull132
0f072e15e9 Merge branch 'master' into development 2017-08-02 23:56:29 +03:00
Lohikar
69c4658d70 Fix tesla coils (#3208)
Fixes tesla coils not properly connecting to the powernet on anchor.
2017-08-02 19:55:12 +03:00
Ron
0a760075ee Adds the gravity generator (#3183)
Works like it did in old code with some minor additions. The sprite is the one TG uses.
2017-08-02 19:48:54 +03:00
Alberyk
cbc45b3b26 Cult improvements (#3143)
-removes the need for word research
-allows nullrods to shatter pylons on hit, to disable forcewalls, close gateways, and turn cult swords in less powerful claymores
-allows ghosts to flicks lights if the round is spooky enough
-renames some cult items
-converts ritual.dm and rune.dm into proper pathing and remove some in world from it
-adds a machine that allows people around it to see ghosts, with some side effects
-manifested ghosts don't count for nar'sie summoning anymore
-manifested ghosts do not use the dummy type anymore, they are their own species with a similar behavior
-visible ghosts can now whisper to people and move small objects around
-fixes #3145
2017-08-02 19:40:03 +03:00
skull132
0fc67f2cb9 Remove a whole bunch of in world loops and rework machinery global lists (#3053)
Removes a whole bunch of in world loops.
Reworks SSmachinery to hold two lists: all_machines and processing_machines. all_machines contains all machines 5ever. All of them. Literally. Forever. And ever. processing_machines only contains machines that process with the SSmachinery controller.

I checked most types at runtime on the live server to see whether they're in processing_machines or in all_machines, and did debug to ensure that most machinery ends up and stays in all_machines.

Includes a basic UT to make sure all mapped in machinery types remain within the all_machines list post-init.
2017-07-16 20:32:33 +03:00
Alberyk
2f949ecb45 Ports baystation armor system (#2954)
Ports Baystation12/Baystation12#12658

Changing how the calculation of armor works , instead of just being a check if it is protected fully, half or nothing. Making armor more reliable and less rng dependant.

Also, uranium meteors will irradiate nearby people when they explode.
2017-07-15 16:24:03 +03:00
Lohikar
b5472e50f4 Convert a fuck ton of machines to Initialize() (#2985)
Needs testing, but shouldn't break anything. Also adds Destroy() to the SMES base class.
2017-07-14 20:08:59 +03:00
Lohikar
687e56a8e0 Replace a bunch of overlay calls (#3005)
changes:

Converts a bunch of manual overlay manipulation to SSoverlay calls.
Moved more cache lists to SSicon_cache.
2017-07-13 21:12:53 +03:00
Lohikar
33c61f9f1e Remove some world loops (#2965)
changes:

Replaces a lot of in-world loops with more specific lists.
Recipes are now copied in SSmachinery/Recover()
Fixed bad sorting on all_areas list.
Added skeleton Destroy() to SMESes as they did not have one and are failing to GC.
Seems to shorten SSatoms init a bit, maybe from removal of in-world in MULEs?
2017-07-09 00:24:28 +03:00
Lohikar
9c010f92d1 isopenturf() macro, update_above improvements (#2931)
changes:

Added a isopenturf() macro, equivalent to istype(thing, /turf/simulated/open).
Converted most/all instances of istype(/turf/simulated/open) to isopenturf().
Made update_above()' aware of queue status & inlined a proc-call.
2017-07-03 12:04:18 +03:00
Lohikar
42f91d8117 Remove privacy poll & other tweaks/fixes (#2863)
changes:

Removed the privacy poll as it is unused.
Observing no longer creates a new mannequin, instead fetching one from SSmobs.
Observer ghosts now have a description again.
Converted new_player.dm to absolute pathing.
Fixed a bad init on holomaps.
Removed a sleep from light fixture Initialize().
Added a queue length stat to the MC panel for Icon Smoothing.
Halved time taken to create lighting overlay objects.
Species & body marking lists are now sorted alphabetically.
Commented out calls to lighting profiler to remove overhead of string interpolation in some procs.
Blood dries instantly if present during mapload instead of setting a timer.
2017-07-01 21:53:39 +03:00
Lohikar
0db557ac29 machinery_process() & auto_use_power efficiency tweaks (#2657)
changes:

Machinery now uses machinery_process() instead of process(), allowing machines to be put into SSprocessing-style lists in addition to the machinery list.
Automatic power calculations now involve less proc-calls.
2017-06-12 19:09:36 +03:00
LordFowl
ed5c571e19 Z Level Conscientious Dark Lords of Destruction (#2595)
The great dark lords, Nar'Sie and Singuloth, now respect multi-z. Nar'Sie will move up/down to match it's target Z. Singularity will move up/down whenever it fails to move laterally, or to chase it's singularity beacon.

Singularity will also consume everything above and below it.

As a bonus, supermatter cascades will also spread vertically.
2017-06-04 20:00:48 +03:00
skull132
61826d2fa1 SOFTREF macro (#2574)
Adds a SOFTREF macro because it's an actual PITA to write out. Refactors all applicable usecases of it to use it. I've left out some NanoUI stuff because you know my preference at being explicit when needed.
2017-06-02 20:22:38 +03:00
Lohikar
0038ff84f6 Misc tweaks & fixes (#2572)
changes:

Minor performance tweaks & light fixes to wall shield generators.
Added more subsystem targets to the subsystem panic verb.
Speculative fix for #2532.
Fix non-human voidsuit helmets not having a light overlay on the on-mob sprite.
2017-06-02 16:56:22 +03:00
Lohikar
1db5663128 Move various icon caches into a new subsystem for organization (#2538)
changes:

Blood overlays are now cached and do not involve world iteration.
Moved every global icon cache I could find into a new SS for organization & easier debugging. SS does not fire or init.
2017-05-31 08:37:39 +03:00
Lohikar
15c1b4969b Convert some overlays (#2525)
changes:

Converted some overlays to SSoverlay.
2017-05-29 13:04:57 +03:00
skull132
22c7748336 Merge branch 'master' into development
# Conflicts:
#	code/game/machinery/computer/shuttle.dm
#	code/game/machinery/doors/firedoor.dm
#	code/game/objects/items/weapons/weaponry.dm
#	code/modules/admin/admin_attack_log.dm
#	code/modules/admin/admin_verbs.dm
2017-05-27 20:11:54 +03:00
skull132
fd6a8305a5 Letting skull touch logging is now strictly haram (#2476)
Turns out. I did a bad.
2017-05-27 18:56:22 +03:00
skull132
547e78d93c Implement powersink surge (#2452)
Implements suggestion https://forums.aurorastation.org/viewtopic.php?f=21&p=78011 in the following fashion:

Powersinks explode ~18 minutes after being placed on normal SMES setup. Obviously more input from engineering will make this process go faster.
Upon reaching their capacity, they will now cause a larger area power surge. The surge will smash all lights belonging to APCs within close to moderate proximity, and call EMP act on all connected powernet items that are within range (severity depending on distance). All of those items have a small chance to cause a minor explosion as well, primarily because EMP act is fucking whimpy.
2017-05-27 12:25:47 +03:00
Ron
db7e2d1426 Malfunction tweaks (#2425)
Tweaks several aspects of the newmalf based on feedback and testing. Also fixes some bugs.
2017-05-24 02:54:31 +03:00
Lohikar
3be27b9efa Merge SSnanoui & Nanomanager (#2427)
Merges the NanoUI subsystem with Nanomanager, as well as cleans up some nanomanager code.
Most of the files in this commit are changed as a result of removing the nanomanager global in favor of the SSnanoui global.
2017-05-23 16:33:00 +03:00
LordFowl
8c119edefd Miningedits (#2363)
Does some mapping stuff, re-arranges mining. Adds catwalks.
Noises the open space sprite somewhat, effect could definitely be improved.
Adds a ghosttrap to mining drones
Adds holes to holes
Fixes some of the airlocks
2017-05-21 22:12:06 +03:00
Ron
790480c8da Removes all \red and \blue's (#2309)
Removes all \red's and \blues in favor of span classes. \red things that were bold were replaced with danger because it's warning but bold.
2017-05-21 12:07:57 +03:00
skull132
a073f5c111 Merge branch 'master' into development 2017-05-16 14:46:36 +03:00