Commit Graph

54 Commits

Author SHA1 Message Date
ShadowLarkens
097d4fa283 TGUI Research 2020-08-25 13:30:47 -07:00
ShadowLarkens
951f37d2e3 TGUI Engineering: Squashed Edition (Commits Below)
TGUI APCs

 TGUI vending machines

 Fix AI default_tgui_interaction

 TGUI Airlocks

 Station & Atmospheric Alert TGUI + Misc NTOS-TGUI Fixes

 TGUI Air Alarms & Central Atmospheric Control

 Airlock TGUI

 TG... got rid of UI for fire alarm. í´·

 TGUI Gas Heating/Cooling System

 TGUI Gas Pump & Passive Gate + Fixes

 TGUI Omni Atmospherics

 TGUI Pipe Dispensers & RPD

 TGUI IntelliCore & Vending Fix

 TGUI Handheld Tanks

 TGUI Portable Pump & Scrubber

 TGUI Tank Dispenser & Canisters

 TGUI Radios

 TGUI SMES & Air Alarm adjustment

 Tweak vending machine interfaces a tad

 TGUI Algae Farm

 TGUI general_air_control

 - Distro & Waste Console
 - Riot Control Console
 - Atmos Intake Console
 - Engine Cooling Console

 TGUI Heavy Scrubber Control (and body scanner fix)

 TGUI trinary devices & shutoff monitor

 TGUI Telecomms Log Browser

 TGUI Telecomms Machine Browser

 TGUI Spaceheater Internal Panel

 TGUI Gravity Generator

 TGUI Id Cards & Fix ID Card Images

 TGUI Id Card Redesign

 TGUI Turbolift

 TGUI Suit Cycler & Suit Storage Unit & Vending Fixes

 TGUI Power Monitor

 TGUI Signalers

 TGUI Employment Records

 TGUI Drone Console

 TGUI RIGSuits

 TGUI PA & PACMAN, and Margin Fix

 TGUI Solar Panels & Fix Power Monitor

 Adjust TGUI modules & their interaction with NTOS

 TGUI RCON

 TGUI Message Monitor

 Bump TGUI line limit to 120 (ParadiseSS13/Paradise#14002)

 TGUI Exonet & NTNet Relay

 TGUI Telecomms Multitool Menu

 TGUI Shield Capacitor & Shield Generator

 TGUI Supermatter-everything & Refactors
2020-08-09 04:46:31 -07:00
Cerebulon
8b031dd8ad Persistent Trash/Dirt/Graffiti/Notices 2020-07-24 05:24:56 -04:00
ShadowLarkens
1cded01770 TGUI v3.0
This ports TGUI, and makes the old nano crew monitor and the disposal
bins use it as first examples.
2020-07-16 14:59:45 -07:00
Aronai Sieyes
aa6d22097b Port SSnightshift from Paradise
Makes the station have a night mode.
2020-05-03 17:51:05 -04:00
Aronai Sieyes
8ec31c9aa4 Refactor AI into two subsystems and clean up targeting some 2020-04-26 23:32:45 -04:00
Aronai Sieyes
984415e9c9 Merge pull request #7177 from VOREStation/sscleanup/openspace
Refactor the Open Space controller into MC Subsystem
2020-04-12 21:55:20 -04:00
Leshana
5bf15efcbc Refactor the Open Space controller into MC Subsystem
- Basically just refactor doWork() into fire() with the capablity to return in the middle with MC_TICK_CHECK.
- Move some vars around to be more organized.
- Only functional change is that when a turf is queued twice in one cycle, the second queue moves it to the end of the list instead of it being in the queue twice
2020-04-10 12:10:21 -04:00
Leshana
c4a8aa2b7b Refactor the gameticker into SSticker
- Instead of independently spawn'd while/sleep loops, it stores its state and lets the MC fire it.
  - Convert relative path indentation procs to absolute path as per modern style standards.
  - Break apart the inner loops into separate procs so you can see what is actually going on.
  - It now shows up in MC tab, along with stats about what phase it is in.
2020-04-10 11:41:38 -04:00
Atermonera
ba4af183f4 Increases SSjobs init priority so it's accessible earlier (#6955) 2020-04-10 01:20:08 -04:00
Atermonera
5c03273ce8 Merge pull request #6884 from Neerti/event_system_fix
Rewrites the Rewritten Event System
2020-04-06 16:23:39 -04:00
Atermonera
8986eb7720 Merge pull request #6902 from VOREStation/vplk-ssalarm
Convert alarm_manager into SSalarm subsystem.
2020-03-30 20:41:10 -04:00
Atermonera
752d560d76 Converted old supply_controller to SSsupply 2020-03-27 17:38:05 -04:00
Leshana
96a3242c6e Remove temporary debug logging from SStimer 2020-03-25 00:18:19 -04:00
Leshana
86c435f4b7 Ports Skybox Parallax
- Port based on Baystation's implementation and customized for our code and usages.
- Switched space icon_state permutation to a "dust" overlay that is permutated the same way. As an overlay, the dust can be *above* the parallax planes. Space turfs are now white to allow skybox to BLEND_MULTIPLY onto them.
- Added skybox hud effect that replaces background space turfs with an image moved to create a parallax effect.
- Added skybox subsystem to generate and manage skybox parallax images, and lots of images for it!
2020-03-11 11:11:40 -04:00
Novacat
f6b72c9997 Update subsystems.dm 2020-03-09 01:27:06 -04:00
Neerti
0d9345adde Half-Refactors Jobs 2020-03-03 16:28:33 -05:00
Novacat
b44f8e0911 Merge pull request #6592 from VOREStation/vchat-rebase
VChat: Redone chat output in Vue.js
2020-03-01 10:51:29 -05:00
Atermonera
772a95c68e Adds an In-game Feedback System 2020-02-24 16:35:08 -05:00
ShadowLarkens
22c85075f4 Ported tg asset cache 2020-02-19 19:55:01 -05:00
Arokha Sieyes
d5b820fc58 VChat: Redone chat output in Vue.js
Co-authored-by: Leshana <Leshana@users.noreply.github.com>
2020-02-19 19:55:01 -05:00
Heroman3003
6f80f45eed Ports character setup subsystem 2019-05-14 11:48:34 +10:00
Unknown
cecbac2831 Emergency fix to Timer Subsystem 2019-04-10 18:53:15 -04:00
Neerti
3256202407 [READY]Ports /tg/station pixel projectiles, processing subsystems, timer subsystems, and some misc stuff to make it all work 2019-03-27 22:02:07 -04:00
kevinz000
6415e4193f [READY]Makes a bunch of processes subsystems instead 2019-03-27 16:03:51 -04:00
Unknown
03dcb65c01 Fixes most of the issues 2019-03-27 00:38:44 -04:00
Neerti
86174593bf Replaces GoonPS scheduled_tasks and obj processing with SMC processing subsystems and timer 2019-03-26 23:58:26 -04:00
Atermonera
2df5e9fe0e Merges AI Branch into Master 2018-12-01 00:06:38 -05:00
Neerti
3a9c13b937 Ports Vote to SMC 2018-10-20 01:53:13 -04:00
Arokha Sieyes
b099ac6e4c Merge branch 'master' of https://github.com/VOREStation/Polaris into sync-09272018
# Conflicts:
#	code/__defines/holomap.dm
#	code/__defines/mobs.dm
#	code/_helpers/icons.dm
#	code/_helpers/unsorted.dm
#	code/_onclick/hud/hud.dm
#	code/_onclick/item_attack.dm
#	code/controllers/Processes/supply.dm
#	code/controllers/subsystems/planets.dm
#	code/datums/supplypacks/munitions.dm
#	code/datums/supplypacks/science.dm
#	code/datums/supplypacks/security.dm
#	code/datums/supplypacks/supply.dm
#	code/game/area/Space Station 13 areas.dm
#	code/game/atoms_movable.dm
#	code/game/machinery/autolathe.dm
#	code/game/machinery/doors/door.dm
#	code/game/machinery/jukebox.dm
#	code/game/machinery/recharger.dm
#	code/game/machinery/vending.dm
#	code/game/mecha/equipment/tools/medical_tools.dm
#	code/game/mecha/equipment/weapons/weapons.dm
#	code/game/objects/items/devices/PDA/PDA.dm
#	code/game/objects/items/devices/megaphone.dm
#	code/game/objects/items/poi_items.dm
#	code/game/objects/items/weapons/implants/implantlanguage.dm
#	code/game/objects/items/weapons/storage/firstaid.dm
#	code/game/objects/items/weapons/tools/weldingtool.dm
#	code/game/objects/structures/flora/trees.dm
#	code/game/objects/structures/plasticflaps.dm
#	code/game/supplyshuttle.dm
#	code/game/turfs/simulated/wall_attacks.dm
#	code/modules/admin/admin_verbs.dm
#	code/modules/assembly/infrared.dm
#	code/modules/client/client procs.dm
#	code/modules/client/preference_setup/loadout/loadout_utility.dm
#	code/modules/client/preferences.dm
#	code/modules/clothing/suits/miscellaneous.dm
#	code/modules/holomap/holomap_datum.dm
#	code/modules/holomap/station_holomap.dm
#	code/modules/integrated_electronics/core/printer.dm
#	code/modules/mining/machine_processing.dm
#	code/modules/mob/living/carbon/human/human_defense.dm
#	code/modules/mob/living/carbon/human/species/virtual_reality/avatar.dm
#	code/modules/mob/living/death.dm
#	code/modules/mob/living/silicon/ai/ai.dm
#	code/modules/mob/living/silicon/pai/pai.dm
#	code/modules/mob/living/silicon/robot/robot.dm
#	code/modules/mob/living/simple_animal/animals/parrot.dm
#	code/modules/mob/mob_movement.dm
#	code/modules/organs/organ_external.dm
#	code/modules/organs/organ_icon.dm
#	code/modules/organs/subtypes/standard.dm
#	code/modules/planet/weather.dm
#	code/modules/power/cable.dm
#	code/modules/power/fusion/core/core_control.dm
#	code/modules/power/fusion/fuel_assembly/fuel_control.dm
#	code/modules/power/fusion/gyrotron/gyrotron_control.dm
#	code/modules/projectiles/gun.dm
#	code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm
#	config/names/first_name_skrell.txt
#	config/names/last_name_skrell.txt
#	icons/mob/head.dmi
#	icons/mob/robots.dmi
#	icons/mob/species/tajaran/helmet.dmi
#	icons/obj/ammo.dmi
#	icons/obj/gun.dmi
#	icons/obj/mining.dmi
#	icons/obj/projectiles.dmi
#	icons/obj/rig_modules.dmi
#	icons/obj/surgery.dmi
#	icons/turf/walls.dmi
#	maps/southern_cross/southern_cross-1.dmm
#	maps/southern_cross/southern_cross-3.dmm
#	maps/southern_cross/southern_cross-6.dmm
#	maps/southern_cross/southern_cross-8.dmm
#	maps/submaps/surface_submaps/mountains/backup/IceCave1.dmm
#	maps/submaps/surface_submaps/mountains/backup/IceCave1A.dmm
#	maps/submaps/surface_submaps/mountains/backup/IceCave1B.dmm
#	maps/submaps/surface_submaps/mountains/backup/IceCave1C.dmm
#	maps/submaps/surface_submaps/mountains/crashedcontainmentshuttle.dmm
#	maps/submaps/surface_submaps/mountains/deadspy.dmm
#	maps/submaps/surface_submaps/mountains/mountains_areas.dm
#	maps/submaps/surface_submaps/plains/Thiefc.dmm
#	maps/~map_system/maps.dm
#	vorestation.dme
2018-09-27 18:01:09 -04:00
Neerti
3aca2c38e2 Yet Another Circuit Update (#5549)
* Circuit updates, adds new components, improves printer, new assemblies.

* Finishes powernet circuit.

* Adds wearable assemblies.

* Finialization before merging with GLOB port.

* Finishes circuit update, hopefully.

* Forgot to undo map.

* Removes debug output.
2018-09-12 20:51:32 -05:00
Anewbe
eebb627f00 Partially ports the GLOB system 2018-08-14 18:14:09 -05:00
Woodratt
cd20465d38 Holomap Port
- Port of Holomaps from Virgo
2018-08-02 15:52:56 -07:00
Arokha Sieyes
633bc2cc3d Merge branch 'master' of https://github.com/VOREStation/Polaris into aro-sync07062018
# Conflicts:
#	code/__defines/species_languages.dm
#	code/__defines/subsystems.dm
#	code/controllers/Processes/planet.dm
#	code/game/machinery/cloning.dm
#	code/game/machinery/recharger.dm
#	code/modules/mob/living/carbon/human/emote.dm
#	code/modules/organs/organ_icon.dm
#	code/modules/organs/robolimbs.dm
#	code/modules/paperwork/photography.dm
#	code/modules/projectiles/guns/energy/special.dm
#	code/modules/reagents/Chemistry-Recipes.dm
#	html/changelogs/.all_changelog.yml
#	maps/southern_cross/southern_cross-1.dmm
#	vorestation.dme
2018-07-06 17:20:03 -04:00
Arokha Sieyes
7c050dd35c Fix merge conflict, update virgo planet things 2018-06-16 10:43:45 -04:00
Anewbe
98b3af60fa Move planets to SSplanets 2018-06-15 19:05:38 -04:00
Arokha Sieyes
462effc1d2 Creates SSplanets subsystem
For SPEEDYNESS

It probably works. I mean it's hard to sit there for 8 hours and test it. But it seems to work okay. At worst if it doesn't you'll have weather that doesn't make sense. ;v
2018-06-02 19:09:35 -04:00
Arokha Sieyes
6c686e6a2f Merge branch 'master' of https://github.com/PolarisSS13/Polaris into aro-sync-04252018
# Conflicts:
#	README.md
#	code/game/jobs/job/job.dm
#	code/modules/client/preference_setup/loadout/loadout_utility.dm
#	code/modules/mob/living/carbon/human/examine.dm
#	code/modules/mob/living/carbon/human/npcs.dm
#	code/modules/mob/living/carbon/human/species/station/prometheans.dm
#	html/changelogs/.all_changelog.yml
#	maps/RandomZLevels/Academy.dmm
#	maps/RandomZLevels/beach.dmm
#	maps/RandomZLevels/blackmarketpackers.dmm
#	maps/RandomZLevels/challenge.dmm
#	maps/RandomZLevels/example.dmm
#	maps/RandomZLevels/jungle.dmm
#	maps/RandomZLevels/listeningpost.dmm
#	maps/RandomZLevels/spacebattle.dmm
#	maps/RandomZLevels/stationCollision.dmm
#	maps/RandomZLevels/wildwest.dmm
#	maps/RandomZLevels/zresearchlabs.dmm
#	maps/northern_star/polaris-1.dmm
#	maps/southern_cross/southern_cross-1.dmm
#	maps/southern_cross/southern_cross-3.dmm
#	maps/southern_cross/southern_cross-6.dmm
#	maps/southern_cross/southern_cross-7.dmm
#	maps/submaps/surface_submaps/mountains/CrashedMedShuttle1.dmm
#	maps/submaps/surface_submaps/plains/Boathouse.dmm
#	maps/submaps/surface_submaps/wilderness/Blackshuttledown.dmm
#	maps/submaps/surface_submaps/wilderness/Boombase.dmm
#	maps/submaps/surface_submaps/wilderness/DJOutpost1.dmm
#	maps/submaps/surface_submaps/wilderness/DecoupledEngine.dmm
#	maps/submaps/surface_submaps/wilderness/Drugden.dmm
#	maps/submaps/surface_submaps/wilderness/Rockybase.dmm
#	maps/submaps/surface_submaps/wilderness/Shack1.dmm
#	maps/virgo/virgo-6.dmm
#	vorestation.dme
2018-04-25 17:23:33 -04:00
Leshana
63257bf40b Use define constants for subsystem init order and priority.
Replaced all hard coded numbers for subsystem priority with defines in subsystem.dm - Much easier to see them in order that way.
2018-04-20 13:18:55 -04:00
Leshana
741e02407a Port SSoverlays & Convert turfs to use it (#5004)
* Added "Display Initialize() Log" admin debug command so you can see it mid-round.

* Ported the core of the overlays management subsystem from /tg

- Added SSoverlays subsystem for compiling overlay lists and applying them to atoms in a controlled anti-lag subsystem.
- Added vars and procs to atom which should eventually replace all direct interaction with BYOND's /atom/overlays var outside the subsystem.
- Added OVERLAY_QUEUED flag to var/atom/flags bitfield.
- Added small framework for subsystem performance tracking. So far used only by SSoverlays
- Added admin debug command "Display overlay Log" to see performance stats mid-round.

* Fix runtime on universal pipe adaptor update_icons

* Workaround for appearance_bro not initialized

Unfortuantely BYOND's initialization order is strange, and the appearance_bro var is only half initialized when map starts to load, causing errors.  We temporarily fix by moving it to be a global-scoped global.

* Convert fire alarms to use add_overlay() A good first test.

* Convert turfs to use add_overlays(), eliminating the turf_overlay_holder!

- Converted as much as I could find about turf overlays to use add_overlay().
- This should be enough to stop BYOND from crashing, so we can eliminate the turf_overlay_holder hack.
- This also lets us remove the anti-corruption hacks from walls and open space.
- ZAS gas overlays can use priority overlays, so this also fixes the gas-goes-away-when-crowbarring-plating issue.
- Stuff like that

* Convert turf overlay interactions to use add_overlay.

Note: This is a plain and simple conversion of existing code to use SSoverlays. However I look at the line changed, and note that that line likely never fully worked as intended, as it has no way of re-applying itself.
I would make it use a priority overlay, but there is no code present for *removing* said overlay from neighbors when it is no longer required.  That code should be implemented by original author.
2018-03-05 19:43:23 -06:00
Leshana
56bb1c46ec Reorganzied Holo Minimaps into SSholomaps subsystem.
Running its init as part of proper init sequence lets us time it properly.
Plus its nicer than the hacky override of the old master controller.
2018-03-04 21:54:20 -05:00
Leshana
f2f630fa89 Ported the core of the overlays management subsystem from /tg
- Added SSoverlays subsystem for compiling overlay lists and applying them to atoms in a controlled anti-lag subsystem.
- Added vars and procs to atom which should eventually replace all direct interaction with BYOND's /atom/overlays var outside the subsystem.
- Added OVERLAY_QUEUED flag to var/atom/flags bitfield.
- Added small framework for subsystem performance tracking. So far used only by SSoverlays
- Added admin debug command "Display overlay Log" to see performance stats mid-round.
2018-02-24 17:40:35 -05:00
Leshana
1d0f5262d8 Merge remote-tracking branch 'upstream-polaris/master' into polaris-sync-2018-02-07
# Conflicts:
#	code/__defines/subsystems.dm
#	code/controllers/master_controller.dm
#	code/controllers/subsystems/atoms.dm
#	code/game/machinery/Sleeper.dm
#	code/game/machinery/doors/airlock.dm
#	code/game/machinery/vr_console.dm
#	code/game/objects/items/devices/communicator/phone.dm
#	code/game/turfs/flooring/flooring_decals.dm
#	code/modules/admin/admin_verbs.dm
#	code/modules/mob/living/carbon/carbon.dm
#	code/modules/multiz/movement.dm
#	code/modules/projectiles/gun.dm
#	code/modules/shuttles/shuttle.dm
#	code/modules/shuttles/shuttles_web.dm
#	icons/obj/doors/doormed.dmi
#	maps/southern_cross/items/headset_sc.dm
#	maps/southern_cross/southern_cross-3.dmm
#	vorestation.dme
2018-02-07 19:30:50 -05: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
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
Leshana
79464c7315 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-03 20:34:44 -05:00
Leshana
ef73c090ab 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-03 00:59:06 -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
Leshana
4c8bce00b4 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-27 01:59:24 -05:00