Commit Graph

1059 Commits

Author SHA1 Message Date
Arokha Sieyes
cdd2030811 POLARIS: Ports Bay's wall-mounted air pumps 2018-02-18 13:24:23 -06:00
Neerti
6c26c84695 Merge branch 'master' of https://github.com/PolarisSS13/Polaris into 2/17/2018_make_AI_great_again 2018-02-17 09:40:46 -05:00
Neerti
abb3a5f602 Begins work on new AI. 2018-02-17 09:40:22 -05:00
Aronai Sieyes
15a5e5e10b Merge branch 'master' into pol-sa-playerqol 2018-02-15 21:56:53 -06:00
BillyBangles
f5dfbff1bd Build igloos and snowmen (#4811)
* adds packed snow brick material

* makes snow walls spawnable for mapping

* adds snowmen

craft them with snow. duh.

* snow spider triggers arachnophobia

also changelog.
2018-02-15 14:25:51 -06:00
Arokha Sieyes
e248b89b7b POLARIS: Player-controlled SA QOL 2018-02-15 01:49:53 -06:00
BillyBangles
ef86caf177 Adds decorative bones and bone loot pile (#4800)
* adds various bones and bone loot pile

credit to schnayy for most of these sprites

* removes the crossbow bolt from the loot list
2018-02-12 22:13:47 -06:00
Anewbe
9688dcb6be Removes a stray space, replaces it with glorious underscore 2018-02-11 01:47:20 -06:00
Anewbe
2eac03ec08 Adjusts certain simple mobs, adds some things (#4778) 2018-02-10 23:31:03 -08:00
mistyLuminescence
fa6ff94474 What's Yours Is Mined (#4556)
* Boom!

* Wires!
2018-02-09 18:56:46 -08:00
Anewbe
442b5cbdf6 Comments out the automatic firemode code (#4748) 2018-02-07 09:59:42 -08:00
Andromeda-K22
58cf8000ba Automatic firemode for guns (#4730)
* New gun firemode: automatic

Full-auto destruction at the tip of your fingers! If you're an admin. Switch the automatic var to 1 to make any gun automatic.

This code is largely donated by Mport and the SS:CM project. Relevant modifcations are located in automatic.dm, special.dm, and automagical.dm

* Removes '/blue's

* Removes a block of pseudocode.

* Welp. Missed some things.

* Automatic removed from the Suppression gun, as requested by @Anewbe in #4730

* Requested changes.
2018-02-06 22:57:53 -06:00
Leshana
676efe73e5 Move Xenoarcheology globals and initialization into a subsystem
* Move the global spawning_turfs lists from master_controller into SSxenoarch.  Rename all references.
* Move the call to SetupXenoarch from master_controller.setup() to SSxenoarch.Initialize()  Put SSxenoarch init order near the end to match current behavior.
2018-02-06 01:08:10 -05:00
Leshana
95b9e67660 Ports callback datum from TG
* A callback datum system was created, a common framework that handles all of the nuts and bolts so anyone can implement callbacks easily without worrying about how to invoke procs.
* Adapted from tgstation/tgstation#22476 by MrStonedOne
2018-02-05 15:50:14 -05:00
Leshana
8bec38ee00 Implement SSshuttles subsystem
* Replaces the shuttle_controller and shuttle process with the shuttles subsystem.  Instead of docking ports being initialized by the game ticker, its part of the StonedMC Master init order.
* The main advantage of this is control over the initialization order, as well as letting Master be aware of CPU we're using up with shuttle processing.
* By being part of the Master init order, we reduce the uncertainty about "are objects initialized yet?" which is nice, since shuttle docks break if machines aren't finished initializing!
2018-02-05 15:50:14 -05:00
Leshana
44dc4b7286 Implement SSatoms
* Moves proc/initialize() from being on /atom/movable, /are and /turf/simulated to being on /atom - Now turfs can initialize too
* Added the SSatoms subsystem which controls initialization of atoms at roundstart and during normal conditions.
* Disabled the old auto_init = 0 behavior, ALL atoms should get initialized() called on them now.
* Refactored the way initialize() is called during /New() to utilize SSatoms instead of SScreation
* Removed SScreation, as it was only a stop-gap until SSatoms could be ported.
* Updated the maploader to inform SSatoms when it is loading maps instead of SScreation.
* Updated the template map loader to use SSatoms to perform initTemplateBounds
* Renamed 'initialized' var in seed_storage to deconflict.
* Removed usage of auto_init = 0, replaced with a no-op initialize() proc for atoms that don't need initialization.
2018-02-05 15:50:06 -05:00
Andromeda-K22
cee3066a41 RUST additions and updates, Modular guns, and Lead. (#4667)
* expanding rupture procs
adds hydromagnetic traps for power production.

* Minor tweaks.

* Adds modular guns using research components.

* Updates materials to have a radiation_resistance variable, used in calculating radiation. Adds Lead as a material.

* Un-zeros stock material radiation resistance.

* Adds, and enables four 'end-events' for the RUST in place of the old Rupture() proc.

* Map muckery?

* absolute pathing i guess?

* getting angry, travis.

* TRAVIS
STAHP

* I...
Comments? Lists? Who the hell knows.
2018-02-04 18:04:28 -06:00
Cameron653
9e52040d5a Loadout Text-To-Speech device. (#4697)
* TTS Device

* Makes it a proper /device

* boop

* to_chat and message change
2018-02-03 22:47:01 -06:00
Neerti
a493a379fe Merge pull request #4661 from VOREStation/vplk-ss-zas-airflow
Convert ZAS into StonedMC Subsystems
2018-02-01 21:08:41 -05:00
Woodratt
ed29353021 Further Map Fixes and Adjustments
- Deck 3 Port Airlock fixed
- Vent added to cargo delivery office to fix over pressure
- Windoor in Robotics given proper access and named
- Parachute crate added to pilot areas
- Access around cargo made more consistent
- Fixed first deck starboard hallway area
- Pilots now have access to maintenance around the hangars
- More ATMs added
- Center door on bridge removed
- Open sign from Bar borrowed for cafeteria as well
- Critical addition, Dog bed in HoP office
- Fixed T-comms turrets yet again
- Adjustments to engine room allowing for a second set of TEGs to properly be set up (Thanks to Kerbal/Mazian). Also moved vent control to a different position to stop a certain headmin from repeatedly hitting it
2018-01-31 05:11:23 -08:00
Leshana
8c09d39ef1 Convert ZAS "Airflow" into a subsystem plus fixes
* Port of the "Airflow" portions of Yonaguni/EuropaStation#618
* The "airflow" part of ZAS used to be handled by a sleep'd loop.   This has the potential to bunch up and lag.  Switching to a StonedMC managed subsystem improves it.
* Fixed to ensure that zshadow mobs cannot be blown around by the wind no matter how fierce.
* Added a message to mobs informing them when their boots save them from being wind-thwapped.
* Check w_class on non-item objects if they have it defined (might as well since var/w_class is on /obj)
* Tiny optimization of c_airblock
2018-01-30 12:28:45 -05:00
Leshana
5a2162a264 Preliminary implementation of ZAS as a StonedMC subsystem.
* Creates the SSair subsystem which replaces the Setup, Start(), and Tick() procs of air_master.
* It may be best to have SSair completely replace air_master, but for now we are having them work together.   It does completely replace the old processScheduer air ticker however.
* Remove the obsolete Setup and Tick procs.
* Adjust admin and debug verbs that dealt with some ZAS internals to work with the new implementation.
2018-01-30 12:28:45 -05:00
Neerti
b2e7b88cff Switches to the Southern Cross. For real. 2018-01-26 01:17:49 -05:00
elgeonmb
3d5740c909 adds an e-reader full of news to the loadout (#4619)
* adds an e-reader full of news to the loadout

* Political Almanac -> Pocket Newscaster
2018-01-25 18:18:35 -06:00
Cerebulon
53e546c526 Radioactive Manhole 2018-01-21 04:42:21 +00:00
Leshana
db0ba60f64 Implements the Tesla engine and supporting features (#4539)
* Adds "typecache" utility functions. A fast way to filter lists by type.

Ported from TG

* Ports the "orbit" feature and subsystem from TG

* Adds a feature that allows mobs and objs to "orbit" around some atom.  They literally are moved around in circles.  See the `orbit` proc in orbit.dm.
* Adds a subsystem that processes the actual movement of orbiting items.

* Adds utility methods for common machinery behavior.

* Adds default_unfasten_wrench which handles the standard anchor/unanchor behavior of wrenches being used on machines.  Together with the other default_x_tool machinery procs we can eliminate having that code duplicated in dozens of places!
* Adds is_wire_tool proc to easily detect when a machine is hit with a tool that should open its wires UI (if it has one).

Based on ideas from Paradise, with improvements for us.

* Implements the Tesla Engine

Ported from a mixture of TG and Paradise code and assets: Edison's Bane

Includes the tesla energy ball itself, the generator that makes it, tesla coils, grounding rods, the circuits and frames to build them.

* Switch dusting to zapping on impact and spin better

Ported /tg SpinAnimation which supports more than triangles.
2018-01-19 14:56:08 -06:00
Neerti
5b54f4c875 Surface Map Work (#4557)
* Tweaks Surface, POI system

* More Stuff

* Travis Appeasement

* Fixes invisible banner.
2018-01-17 13:46:19 -06:00
Arokha Sieyes
f2fef6f410 Planes Framework (#4545)
* Polaris initial plane upstream merge

* POLARIS: Fix RIG visors with new plane system, and material scanner VIS_FULLBRIGHT

* POLARIS: Fix GetFlatIcon so that cameras and id pictures don't show the HUD overlays.

* POLARIS: Adds a 'alter values' proc for plane master ease of tweaking

Setting stuff like colorblindness variety and things.

* Remove NIF reference, fix lighting layer define

* Handle effects above lighting plane

* Moved all layer defines to planes+layers.dm
* Fixed overlays that are supposed to be above lighting to use the PLANE_LIGHTING_ABOVE

* Merge: 3000% human/update_icons() speed improvement

* Merge: Avoid ghosts pointing at things
2018-01-17 13:45:54 -06:00
Anewbe
bfadcb8669 Revert "Revert "Revert "Revert "Revert "Revert "Revert "Revert "Revert "Switches us to the Southern Cross for testing""""""""" 2018-01-16 17:35:43 -06:00
Anewbe
14f0060f28 Merge pull request #4531 from VOREStation/vplk-beam-upgrade
Ports the Paradise rewrite of TG rewrite of the Beam() proc
2018-01-14 14:59:46 -06:00
Neerti
96d3d361d0 Adds Boats, Ports /TG/ Buckling (#4527)
* Adds Boats, Ports /TG/ Buckling

* Travis Appeasement

* Changelog
2018-01-14 14:58:15 -06:00
Neerti
3715fa1f12 Ports /TG/'s Marker Beacons (#4529)
Ports an item stack that can be used to mark trails, useful for explorers, miners, and anyone else who doesn't want to get lost or wants to make the room more colorful.
2018-01-14 14:48:39 -06:00
Leshana
7e4b5901ec Ports the Paradise rewrite of TG rewrite of the Beam() proc
* New proc is more efficient and also supports:
- Multiple simultaneous beams from the same source.
- Doesn't block the thread while the beam is on.
2018-01-13 18:34:33 -05:00
Anewbe
4c17f28cd0 Merge pull request #4519 from Neerti/12/15/2017_berserking
Adds Berserk
2018-01-11 20:57:50 -06:00
Anewbe
a73f989db6 Rebegins the chain of map change PRs 2018-01-11 19:24:02 -06:00
Neerti
cca2cc5a23 Adds Berserk 2018-01-11 01:35:14 -05:00
Neerti
e23c002eb5 Merge pull request #4493 from Atermonera/Weatherapp
Weatherapp Update
2018-01-06 09:18:49 -05:00
Anewbe
2b2a5dc565 Merge pull request #4503 from Neerti/1/1/2018_bonfires
Adds Bonfires
2018-01-05 13:36:19 -05:00
Neerti
42a421e8e1 Adds Bonfires 2018-01-05 02:35:19 -05:00
Neerti
9ab7c0bf0c Merge pull request #4470 from VOREStation/vplk-ss-machines
Convert machinery controller to StonedMC subsystem
2018-01-02 23:21:47 -05:00
Atermonera
e004d1c4ec Weather app has atmospheric scan 2018-01-01 23:43:24 -08:00
Neerti
7b303d70db Revert "Revert "Revert "Revert "Revert "Revert "Revert "Switches us to the Southern Cross for testing""""""" (#4491) 2018-01-01 23:36:36 -08:00
MarinaGryphon
3f98312535 Ports hoists, as well as some macros, from Aurorastation. (#4451)
* Ports hoists.

* Ports use_check
2018-01-01 12:17:35 -08:00
Neerti
bbe5fda915 Merge pull request #4466 from Atermonera/Weatherapp
Adds a weather app to the communicator
2017-12-30 21:44:21 -05:00
Anewbe
b088aff6bd Revert "Revert "Revert "Revert "Revert "Revert "Switches us to the Southern Cross for testing"""""" 2017-12-30 16:28:39 -06:00
Leshana
a97a574278 Transformed the machinery processor into an StonedMC subsystem
* This is PHASE 1 of a multi-phase conversion.  In this first phase we implement the subsystem, but leave it processing the existing global list variables.  In the next phase we will switch to use datum variables in the subsystem.  The main reason for splitting into two phases is ease of code review; change the meaningful code without the hundreds of machines -> SSmachines.machinery substitutions.
* We did declare macros for adding/removing things to the processing lists, and convert everywhere to use the macros.
* Added var/is_processing to /datum to keep track of whether an instance is already in a processing list (prevents it being in the list twice!) and also debugging, making sure its not in two lists etc.
* NOTE: The global machines list is **no longer sorted** for performance reasons.  As far as I know, the only module that actually ever cared was cameras.   Our camera system already handles its own sorting in the cameranets anyway, so it should no longer be needed.
2017-12-29 15:31:59 -05:00
Leshana
66e9d9cfdf Unify datum var definitions
Inspired by https://github.com/tgstation/tgstation/pull/29636
Also consolidated some sideways overridden /datum/Delete() here to reduce proc-call overhead.
2017-12-29 14:23:13 -05:00
Atermonera
7870ee529c Adds a weather app to the communicator
Splits communicator.dm into multiple files
Also a few bits from my PDA->communicator project, should be commented out
2017-12-28 21:33:23 -08:00
Leshana
c6e8184b58 Ports https://github.com/tgstation/tgstation/pull/30184
* Adds defines for world.tick_usage
* This provides no useful benefit whatsoever, but /tg and Baystation12 have done it, so it will make porting future code easier if we do too.  No real harm done either.
2017-12-27 19:10:15 -05:00
Neerti
522a3b5f98 Merge pull request #4456 from VOREStation/vplk-frames
Replaced bare numbers in frame construction with defined constants.
2017-12-26 22:37:33 -05:00