Commit Graph

75 Commits

Author SHA1 Message Date
Leshana
32a8f8a455 Fixed build_overmap() to actually work. 2020-05-02 22:24:03 -04:00
Leshana
4adfc00800 Transform overmap ship icons to exact angle of heading. 2020-05-02 22:23:51 -04:00
Aronai Sieyes
6ebd249748 Rewrite examine() to pass a list around 2020-04-29 16:42:50 -04:00
Aronai Sieyes
d3da6ae4a5 Refactor move code 2020-04-26 16:42:50 -04:00
Aronai Sieyes
bed4f26f95 Fix what's considered station levels 2020-04-26 12:10:29 -04:00
Unknown
dfedf60c0f Requested Changes 2020-04-26 10:58:56 -04:00
Leshana
742a9b16c9 Fix gas thrusters turning off when trying to burn.
They expected use_power_oneoff to return the amount of power that *couldn't* be used, but they return the amount of power that *could*
2020-04-25 12:45:13 -04:00
Leshana
763753648b 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-04-23 19:04:34 -04:00
Leshana
f80c320c0f VS machinery power update procs. 2020-04-22 20:47:16 -04:00
Leshana
93fb3f7865 Call update procs instead of directly setting idle_power_usage or active_power_usage.
- Adds the update_idle_power_usage() and update_active_power_usage() procs for the respective vars.
- Switches all places modifying those vars directly to call the procs instead.
- This will let us react to the change appropriately, paving the way towards static area power.
- Adds update_power_channel proc for the sake of completeness, but no machines actually modify it so far.
2020-04-22 20:47:15 -04:00
Aronai Sieyes
d91be67bef Make Talon engines BEEFIER 2020-04-18 21:12:37 -04:00
Aronai Sieyes
01f57d4245 Merge pull request #7310 from VOREStation/vplk-lazy-landables
Lazy ship/landable Overmap Levels
2020-04-17 14:13:04 -04:00
Aronai Sieyes
3551edd8cc Improve ship scanners 2020-04-17 13:11:03 -04:00
Leshana
796c406965 Lazily create landable ship's overmap z-level on first use.
- Create the landmark as normal, but instead of allocating a z-level and placing it, register a pre_move listener on the shuttle and setup the z-level only when the shuttle is about to move to its overmap landmark.
- Change when shuttles fire the shuttle_pre_move_event to before calculating translation list to give us a chance to allocate the z-level.
2020-04-17 10:22:22 -04:00
Leshana
0c3126ffad Fix overmap spacemove not actually re-using deepspace sectors. 2020-04-17 10:22:22 -04:00
Leshana
64eb2cf552 Ports the disperser beam from Baystation. 2020-04-16 21:31:49 -04:00
Aronai Sieyes
92ae9dca42 Move skybox representation into procs and vars 2020-04-16 18:08:41 -04:00
Aronai Sieyes
d9b3739669 Merge branch 'master' into vplk-shuttle-construction 2020-04-13 09:30:05 -04:00
Aronai Sieyes
4e0a62996b Add nav console modular program and fix crew mon bug 2020-04-12 22:52:57 -04:00
Leshana
ea4e928519 Adds a "champagne bottle" to dynamically create landable overmap ship shuttles in-game. 2020-04-11 19:54:07 -04:00
Leshana
4d9cc39664 Make shuttle control consoles constructable.
- Adds circuit boards for shuttle consoles. (Ferry, Multi, and Overmap).
- Deconstructing a console saves the linked shuttle tag in the board for when it is re-constructed.  New boards start blank but will auto-link if you build the console on a shuttle.
- Boards know what type of shuttle they can control and will only auto-link with a shuttle if it is the appropriate type.

Note: By default the only mapped-in shuttle consoles that are deconstrutable are overmap and multi shuttle consoles.   For any others, consoles built mid-game will be deconstrutable but the mapped-in ones will not.  That way the arrival, escape, supply ferry shuttles etc won't be messed with unless the mapper specifically chooses to override and make them that way.
2020-04-11 19:54:03 -04:00
Leshana
13d4144bc1 Add feedback to user if successful when reconnecting ship computers to ship. 2020-04-11 18:13:19 -04:00
Leshana
bd2a734bc3 Add circuitboards to make overmap ship computers constructable. 2020-04-11 18:13:18 -04:00
Aronai Sieyes
942ed8d806 Adds an overmap helper to find what sector you're in 2020-04-11 12:03:10 -04:00
Leshana
aaa0fa5539 Cleanup code and comments.
- Refactor ion_storm to actually operate using start()/end()/announce()
- Remove unused variable and enhance comments.
2020-04-07 03:37:10 -04:00
Aronai Sieyes
1626df366c Merge pull request #7102 from VOREStation/aro-fakez
Improves space edge-of-map behavior and add mapping tools
2020-04-02 10:58:13 -04:00
Aronai Sieyes
f080a4baf3 [PORT] Speed up map load significantly 2020-04-02 10:25:03 -04:00
Aronai Sieyes
09003a6c61 Improve space map edges 2020-04-02 01:08:07 -04:00
Leshana
3ac3641b79 Spelling corrections. 2020-03-27 18:11:39 -04:00
Leshana
f6835c639a Mark VOREStation edits 2020-03-27 18:08:12 -04:00
Aronai Sieyes
2c761ec367 Extra overmaps for adminbuse and bluespace rifts 2020-03-27 17:25:16 -04:00
Aronai Sieyes
524ce4e2c4 Move overmap wrapping onto edge turfs
Allows there to be several overmaps
2020-03-27 14:33:06 -04:00
Aronai Sieyes
8ca275ed96 Add directional sensors 2020-03-26 15:58:53 -04:00
Aronai Sieyes
834af70066 Add 'extra z levels' var on sectors 2020-03-26 15:58:23 -04:00
Aronai Sieyes
d8d7ebf99a Remove announcements from overmap events 2020-03-21 19:17:36 -04:00
Aronai Sieyes
c994134b23 Add tooltips to visitable sectors on the overmap 2020-03-20 14:19:54 -04:00
Leshana
f2a582569b Ports overmap events from Baystation12
- Move overmap defines to _defines folder.  Rename old file to turfs.dm since that is what it contains.
- Definition of overmap event objects and the overmap event handler.
- Upgrades to SSevents and SSskybox to tie in the overmap events.
- Enhancement to /datum/event itself to support affecting_z and victim ship.
- Upgrade to the five event types used on the overmap to support new vars.
- Upgrade to dust and meteor spawning code to support targeting z-levels.
2020-03-19 20:29:43 -04:00
ShadowLarkens
2e23dcdb49 Speed up mapload significantly
Co-authored-by: Aronai Sieyes <arokha@arokha.com>
2020-03-19 00:29:24 -04:00
Leshana
73c4809d26 Add proc set_viewsize() to allow hooking actions when client.view is changed.
- Proc is on mob to simplify the standard use case; maybe someday actually save it there too if desired.
2020-03-15 17:59:17 -04:00
Aronai Sieyes
c44f306724 Fix refueling into fuelports
They still work from roundstart cus they have fuel in them. Just can't refuel without asking an admin to move a fuel tank into contents.
2020-03-11 22:06:43 -04:00
Aronai Sieyes
465bce2dd4 Rebalance gas/ion thrusters 2020-03-11 11:11:43 -04:00
Aronai Sieyes
0e2346ce8c Make transit look nicer with transit dust 2020-03-11 11:11:43 -04:00
Leshana
9cbdf184ff Ported Basic Overmap Functionality
- Ports the overmap, ships, sectors, and "landable" ships from baystation.
- Ports necessary computers to control ships and overmap shuttles.
- Shims missing machine and computer functionality pending future enhancements.
- Includes required new sprites and sounds.
2020-03-11 11:11:40 -04:00
Leshana
c837078105 Replaced "area" shuttles with "landmark" shuttles.
Largely ported from the work done at Baystation in https://github.com/Baystation12/Baystation12/pull/17460 and later commits.

 - Shuttles no longer require a separate area for each location they jump to.
   Instead destinations are indicated by landmark objects, which are not necessarily exclusive to that shuttle.
   This means that more than one shuttle could use the same docking port (not at the same time of course).
 - Enhanced shuttle control computers to use nanoui if they didn't.
 - Organizes shuttle datum code a bit better so there is less re-inventing the wheel in subtypes.
 - Allows the possibility of shuttles (or destinations) that start on late-loaded maps.
 - Deprecate the "extra" shuttle areas that are no longer needed and update shuttle areas in unit tests

This all required a bit of infrastructure improvements.

 - ChangeArea proc, for changing the area of a turf.
 - Fixed lighting overlays actually being able to be destroyed.
 - Added a few utility macros and procs.
 - Added "turf translation" procs which are like move_contents_to but more flexible.
2020-03-05 10:29:08 -05:00
Novacat
466516b066 Revert "Un-kevinzes nanoui and chemistry subsystems back into processes for greater good" 2019-04-08 15:24:27 -04:00
Heroman
b11015107c REVERT of nanoui/chemistry becoming subsystems (temp) 2019-04-05 13:30:32 +10:00
Novacat
dce3466f3b Merge pull request #4684 from VOREStation/upstream-merge-5814
[MIRROR] [READY]Makes a bunch of processes subsystems instead
2019-03-27 17:46:31 -04:00
kevinz000
6415e4193f [READY]Makes a bunch of processes subsystems instead 2019-03-27 16:03:51 -04:00
Neerti
fe0b7373b3 Ports TGstation view variables + admin proccall guards, and all the baggage that comes with it 2019-03-27 14:49:30 -04:00
Neerti
b9adc37685 Standardizes rotation verbs 2019-03-27 03:17:07 -04:00