Commit Graph

234 Commits

Author SHA1 Message Date
Atermonera
15a1747f11 Ports manifest duplication fix from Virgo (#7230) 2020-05-24 14:24:04 -07:00
Atermonera
15df57b021 Fixes runtime in ticker.dm, 424: Cannot read null.mob_type 2020-05-23 18:26:11 -07:00
Atermonera
52799474f8 Fixes runtime in ticker.dm, 411: Cannot read null.mobtype (#7226) 2020-05-21 20:28:28 -07:00
Leshana
ccef6cc908 Implements "static" area machinery power usage
- Instead of using auto_use_power to re-tally up machinery's power usage every cycle, track the steady "static" load separately from the transient "oneoff" usage.  Machines then only need to inform the area when they use oneoff power or *change* their steady usage.
- Remove auto_use_power and stop SSmachines from calling it.
- Add vars to track "static" usage for each of the three power channels to /area
- Rename the existing three vars to "oneoff" so its clear what they mean (and to catch people accidentally updating them directly)
- Update area power procs and APCs to use the new variables.
- Rename /area/proc/use_power() to use_power_oneoff() to make it clear what it is doing.
- Deprecate /obj/machinery/use_power() in favor of use_power_oneoff() but don't delete yet.  Can transition gradually.
- Add logic to the update_power procs on machines to calculate the deltas and update static area power whenever their usage changes.
- Add logic to machines to update area power when they are created, destroyed, or move.
- Moved /obj/machinery procs related to area power usage into machinery_power.dm to make them easier to find.
- Added or updated comments in several places to explain what is going on and how to use it.
2020-05-19 20:17:48 -04:00
Aronai Sieyes
c0f1feb351 Move openspace object updating to event listeners 2020-05-19 16:29:43 -04:00
Atermonera
54577cc012 Merge pull request #7104 from VOREStation/pol-aiborgrefac
Refactor some job joining things related to robofriends
2020-05-10 15:29:14 -07:00
Arokha Sieyes
07e2efb9b8 Fix/rename some timing stuff 2020-05-08 01:51:24 -04:00
Aronai Sieyes
01c98b93e4 Some refactors of noncarbon joins 2020-05-07 19:51:02 -04:00
Aronai Sieyes
df12cd888a Port SSnightshift from Paradise
Makes the station have a night mode.
2020-05-03 21:17:55 -04:00
Aronai Sieyes
bfaf43e65f Planet subsystem static lists 2020-05-03 21:17:20 -04:00
Atermonera
653cb2f2c3 Merge pull request #7053 from VOREStation/pol-airefactor
Refactor AI into two subsystems
2020-05-01 12:09:08 -07:00
Atermonera
9523a5e590 Merge pull request #7042 from VOREStation/vplk-iconsheet-asset-cache
Add "icon sheet" asset type
2020-04-29 13:55:07 -07:00
Aronai Sieyes
c9495707cc Remove AI subsystems TICKER flag 2020-04-28 23:25:03 -04:00
Aronai Sieyes
b98027d050 Various fixes while waiting on PR 2020-04-27 10:48:04 -04:00
Aronai Sieyes
dcf88640ee Adds an overmap helper to find what sector you're in 2020-04-27 10:34:28 -04:00
Aronai Sieyes
c170436256 Refactor AI into two subsystems 2020-04-27 10:11:49 -04:00
Atermonera
abb66e24ed Merge pull request #7035 from VOREStation/vplk-shuttle-construction
[PORT] Ship/Shuttle Console Construction
2020-04-25 13:22:12 -07:00
Leshana
63f0f69ce8 Add "icon sheet" asset type
This asset class bundles entire dmi files worth of icons together into a single CSS file using inline data urls.  Much faster than sending dozens of files.
Also changed it so we don't need a hard coded list of all types of asset daturms.
2020-04-25 15:58:27 -04:00
Leshana
ec86a98e16 [PORT] Refactor the gameticker controller into SSticker (#6994)
* Move gameticker to subsystem folder before editing to track history thru rename.

* 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.

* Revamp Start Now admin verb to actually wait until init is done before starting.

* Update Lobby stat panel to show voting and server init status.

* Fix: Only call autogamemode vote once.

* Spawn statistic_cycle off to not sleep SSticker.

* Add SStickere changelog

* Change to use to_world and add wrapping spans.

* Added filtering spans by specific request of Polaris.
2020-04-25 12:26:54 -07:00
Leshana
acbbe7d9c5 Setup auto-configuration of shuttle consoles.
- Its now possible to put shuttle consoles on a shuttle without a specific subtype or mapediting the shuttle_tag on them.
- After shtutle initialization, SSshuttles gives each initialized shuttle the chance to scan its areas for consoles it wants to claim and configure.
2020-04-23 19:08:30 -04:00
Leshana
5dbf08b462 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-14 09:38:23 -04:00
Leshana
2d37c09d12 Commit move of open_space_controller.dm to subsystems folder to track history through rename. 2020-04-14 09:37:58 -04:00
Atermonera
28bede5936 Merge pull request #6977 from VOREStation/vplk-remove-ss-references
Remove non-global references to SSgameMaster and SSevent_ticker
2020-04-12 23:14:20 -07:00
Atermonera
f65aa7eb13 Merge pull request #6981 from VOREStation/vplk-overal-missed-fixes
Port followup misc fixes
2020-04-10 23:50:48 -07:00
Atermonera
68927cbc0d Merge pull request #6970 from VOREStation/pol-couplefix
Fix 2 bugs
2020-04-10 23:49:46 -07:00
Aronai Sieyes
491d94d850 Port 7145: CHECK_TICK in xenoarch setup for the sake of largermaps 2020-04-10 19:54:17 -04:00
Atermonera
e399e21434 Merge pull request #6950 from VOREStation/pol-maphelp
Improves space edge-of-map behavior and add mapping tools
2020-04-08 23:09:56 -07:00
Aronai Sieyes
b3be065ae4 Port: Merge pull request 6900 from VOREStation/vplk-overmap-events
Overmap Events
2020-04-06 17:54:26 -04:00
Leshana
31c634e334 Remove non-global references to SSgameMaster and SSevent_ticker
- Best practice to avoid holding onto references to the subsystem instances aside from the global variables. (In case of restart/recover etc).
- The reference to GM was entirely unused by any event or meta-event.  /datum/game_master would work fine using the global refs.
2020-04-06 17:22:53 -04:00
Aronai Sieyes
647bcb7597 Fix per-zlevel skyboxes not really allowing custom ones
It's not going to break the world to remove this 'assumption' cache
2020-04-06 12:12:31 -04:00
Neerti
eea37d024d Does some of the things Ater wants. 2020-04-05 17:33:48 -04:00
Neerti
ba56f7951f Hopefully fixes conflicts. 2020-04-05 17:07:37 -04:00
Atermonera
29014350bb Adds confirmations message to cancel vote (#6945) 2020-04-04 19:29:08 -07:00
Unknown
856f29c999 Merge remote-tracking branch 'PolarisSS13/master' into nova-alerts 2020-04-03 13:30:51 -04:00
Aronai Sieyes
736626c94d Improve space map edges 2020-04-02 10:42:27 -04:00
Atermonera
eae8cade90 Merge pull request #6912 from VOREStation/aro-mapload
[PORT] Speed up map load significantly
2020-04-01 20:25:17 -07:00
Atermonera
e062f6a550 Merge pull request #6926 from VOREStation/pol-sscleanup
Clean up some subsystem things
2020-04-01 20:01:52 -07:00
Atermonera
957a95fba7 Merge pull request #6902 from VOREStation/vplk-ssalarm
Convert alarm_manager into SSalarm subsystem.
2020-03-30 17:40:24 -07:00
Aronai Sieyes
5262e97d97 Tweak output and check SSobjs and SSturfs for types 2020-03-30 15:47:11 -04:00
Aronai Sieyes
302e8212b7 Add Recover() to processing subsystems 2020-03-30 15:47:05 -04:00
Atermonera
253e3710d9 Inactivity subsystem kicks ghosts and admins again (#6886)
* inactivity subsystem kicks ghosts

* Removes admin exemption, adds can_kick() proc for downstreams

* Update inactivity.dm
2020-03-29 14:49:28 -07:00
Neerti
88b4e47e8b Fixes merge conflicts again. 2020-03-28 19:06:14 -04:00
Leshana
8da8e3e0b1 Convert alarm_manager into SSalarm subsystem.
- Switch to using MC_TICK_CHECK and replace all references.
- Optimize stat panel display by caching the active alarms.
2020-03-28 01:20:34 -04:00
Leshana
49a77165f3 Commit move of alarm.dm into subsystem folder to track history thru the rename. 2020-03-28 01:20:31 -04:00
ShadowLarkens
6b802b61e8 Port VOREStation PR 6914 Speed up map load significantly
- Set initialized = FALSE on unsimulated turfs that need to intialize.
- Most of area/New() to initialize
- Faster lookup of self-init on atoms
- Split air alarm and fire alarm files, move new to initialize
- Tweak decals and opacity

Co-authored-by: Aronai Sieyes <arokha@arokha.com>
Co-authored-by: Leshana <Leshana@users.noreply.github.com>
2020-03-27 20:37:02 -04:00
Atermonera
dfda8ea952 Merge pull request #6900 from VOREStation/vplk-sssupply
Converted old supply_controller to SSsupply
2020-03-27 14:37:31 -07:00
Aronai Sieyes
715de43f35 VChat: Redone chat output done in Vue.js (#6761)
* Better notifications

* Add buttons to del/move tabs in edit mode

* Add a <span> to emotes

* Fix duplicate IDs in VChat and add more logging

* VChat: Redone chat output in Vue.js

* Ported tg asset cache

* VChat DME Update

* Replace \image macro with bicon()

* NanoUI Subsystem Fixes

Don't do this, the asset subsystem does this for you

* Allow narrate/globalnarrate shenanigans

Allows HTML if your entire thing is HTML

* Disable bicon() icon object cache, and create text tag cache

* Ore Scanner is written incorrectly

Only revealed by vchat

* Fixes 2 VChat bugs

* Underline links in VChat

* Fix LOOC color

* VChat Improvements

Hopefully, anyway.
- Arbitrary font size setting
- Line height setting
- Multiple crush settings
- Rewrote how tabs work hopefully for performance
- Hidden messages are actually put elsewhere
- Attempts to correct chat backlog restore on rejoin

* Surgery steps to use <span>

* Some VChat Tweaks

- Chat remains between client reconnects if your client didn't close (so things like using the reconnect button, or autoreconnects at round end when that feels like working)
- The client doesn't send pings to the server, the server sends pings to the client. This fixes AFK measurements for AFK kick purposes.
- Turn latency indicator into a green/red indicator to show if you're connected, and when clicked will perform a one-time ping (and block doing it again for 10 seconds). It will display '?ms' if it never got a reply, or '999ms' if it did, but it was over 1s.

* Include date in filename for VChat log save

* Merge pull request #6767 from Cyantime/patch-2

Change chat export naming scheme

* Adds VChat tab saving

Saves every time you enter/exit edit mode. Persists between rounds, VChat reloads via verb, etc.

* Fix chat exporting when someone has used unicode

Only affects clients still using 512

* Use CLIENT_FROM_VAR for ease of code reading

* Update code/modules/client/asset_cache.dm

Co-Authored-By: Novacat <35587478+Novacat@users.noreply.github.com>

* Fix runtime when client disconnects before vchat loads

* Fix polaris version of command reports

* Fix LOOC color in oldchat

* Put some styles in various adminpm messages

* Round info and advanced who spans

* Fix missing tag-end

* Maybe fix images for linux and statpanel but also doom everyone

Co-authored-by: ShadowLarkens <ShadowLarkens@users.noreply.github.com>
Co-authored-by: Novacat <35587478+Novacat@users.noreply.github.com>
2020-03-27 14:07:28 -07:00
Unknown
517e9fe6af Ports SSmobs from Virgo
- Ports SSmobs from Virgo
- Has some debugging code, that was added a long time ago
2020-03-26 09:17:32 -04:00
Neerti
87c53a75af Updates to master and makes gravity event code be current. 2020-03-26 04:10:51 -04:00
Neerti
eab6cce82b Cleans up stuff. 2020-03-26 04:03:37 -04:00