Commit Graph

182 Commits

Author SHA1 Message Date
Neerti
7c0d44a00c Finds another shuttle change from Virgo and fixes overmap shuttles hopefully. 2021-07-02 19:48:22 -04:00
MarinaGryphon
593246b595 Linter diagnostics + bans non-var relative pathing (#8150)
* Linter diagnostics + bans non-var relative pathing

* Enable DreamChecker Annotations

* make it executable

* update hashFiles

* oops

* tries to fix it... again

* trying again

* path

* repath

* fix perms

* fixes weird capitalisation issue
2021-06-20 13:14:29 -09:00
Aronai Sieyes
1fd1d84deb Runechat (#8121)
* Message piece combiner returns a list

* Emote formatter returns a list

* Port Runechat

* Various onamonapoea

* Suggested changes, small opts

* Fix chat message on different size mobs

* Couple more runefixes

* Enable encoding chat emphasis in runechat

* Remove extra asterisks from rune audible messages

* Fix runedefines
2021-06-13 22:18:43 -09:00
Neerti
fdabe51ee8 Linter Introduction + Cleanup (#8085)
* Adds linter defines to repo.

* Uncomments linter defines already in the code.

* Resolves unreachable code linter errors.

* Nukes decade+ old syndie specops code except for computer since that's mapped in?????

* Resolves procs has no parent linter error.

* Proc signature fixes

* Bad comments

* "In" danger

* Type safety

* Implied nested list abuse

* Top level ..() usage

* Sleepy coder typos

* Invalid kwargs calls

* Pointless returns

* Linter hacks (see full message)

Byond doesn't care and it has no effect but linter doesn't like var/proc
for holding references to procs, despite that it's valid byond code.

Also, the linter seems to have serious issues figuring out relative
proc names. This commit is a sort of take-it-or-leave-it thing. It's not
required, it just cuts down on warnings, but this code is valid DM code.

* WHATEVER THIS IS

* Trick dreamchecker linter into ignoring this file's sins in it's weird use of vars

* Fix list decoration syntax - Its a list, not list of lists

- To declare that a var is a list you can `var/list/blah = list()` syntax or the `var/blah[0]` syntax.  Both do exactly the same thing. But if you do `var/list/blah[0]` that is just like doing `var/list/list/blah = list()`

* Hopefully stops the ai holder subtype folder from going quantum and sometimes changes capitalization over time, and incidentally causing 20+ linter errors.

* Fixes unwrapped negated object in list linter error.

* Resolves colon-like list accessing linter error.

* Turns linter on in linter config.

* Fixes closet indentation properly and cleans up suit storage unit switch.

Co-authored-by: Aronai Sieyes <arokha@arokha.com>
Co-authored-by: Leshana <Leshana@users.noreply.github.com>
2021-05-25 18:17:26 -09:00
MistakeNot4892
b22a0568a3 Sideports a couple of init unit tests from Neb. (#7893)
* Sideports a couple of init unit tests from Neb.

* Trying to unfuck initialize logic.

* Removing del()s.

* Adjusting return values to Initialize().

* Moving some dangerous object logic from obj onto the two types that use it.

* Rolling back some init changes and commenting out initialized atom unit test.

* this comment formatting is a minor war crime

* Removed sleep() from signaler circuit Initialize().

* Additional Init fixes post-rebase.

* Uncomments subsystem test since that's passing.
2021-02-21 12:03:34 -09:00
Aronai Sieyes
ad75bb86bd Alter playsound paradigm 2020-05-19 11:06:28 -04:00
Atermonera
2812b663e3 adds logging variable to enable shuttle log spam (#7110) 2020-05-09 01:22:44 -07:00
Aronai Sieyes
dcf88640ee Adds an overmap helper to find what sector you're in 2020-04-27 10:34:28 -04:00
Leshana
a279c698e3 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-23 19:10:52 -04: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
f7982d0e64 Fix mothershuttles moving sub-shuttles when they're away. 2020-04-23 19:08:11 -04:00
Atermonera
eb39fba4f8 Fixes supply shuttle display timer (#6947)
* Fixes supply shuttle display timer

* Update shuttle_supply.dm

* Radio_frequency dark magicks
2020-04-04 19:35:25 -07: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
Leshana
8c1ab54467 Converted old supply_controller to SSsupply
- Removed the old processController process and refactored it into a subsystem
- Updated references from supply-controller to SSsupply
- Changed from 1.5 points per 30 seconds to 1 point per 20 seconds.  Same rate of 3 per min, but avoids fractional points.
2020-03-25 00:32:10 -04:00
Leshana
faefb918d6 Let all ferry shuttles ignore docking codes.
Ferry shuttles generally shouldn't have to worry about docking codes.  Thats for exploration or antag shuttles. Therefore let them read the docking codes and dock anyway.
Given we put this on all ferry shuttles, we don't need specific code for it on the supply shuttle anymore.
2020-03-23 20:19:28 -04:00
Aronai Sieyes
b26f25eff4 More docking codes features
- Adds docking codes to normal shuttles naoui.
- Adds docking codes sheet of paper.
2020-03-23 20:19:27 -04:00
Leshana
9007a3aad9 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-23 20:19:27 -04:00
Leshana
748ea0a98f Fixes and additional mapping convenience for landmark shuttles.
- Improvement to web-shuttle: Don't update docking controller until jump() is completed.
  - It is now consistent with autodock behavior (for better or worse)
- Add shuttle process_state to enable processing of web shuttle autopilot.
- Convert Arrivals shuttles to be a subtype of /datum/shuttle/autodock/ferry
- Default shuttle landmarks flags to SLANDMARK_FLAG_AUTOSET
  - Made this safe and backwards compatible by having SLANDMARK_FLAG_AUTOSET not overwrite already specified base_turf or base_area
2020-03-13 00:27:30 -04:00
Leshana
984a0414db Make sure supply shuttle can dock even with codes
(cherry picked from commit 48dd03d237)
2020-03-13 00:26:22 -04:00
Leshana
661cda354c Add upgrade mapping guide. 2020-03-13 00:26:21 -04:00
Leshana
85d3cbfa12 Replaced "area" shuttles with "landmark" shuttles.
Largely ported from the work done at Baystation in Baystation12#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.

(cherry picked from commit c837078105)
2020-03-13 00:26:08 -04:00
Arokha Sieyes
5b15917d32 to_chat replacing stream operator 2020-02-17 13:14:08 -05:00
Shadow
6088899908 Round One 2020-01-11 02:25:38 -06:00
kevinz000
46c79c7d3e [READY]Makes a bunch of processes subsystems instead (#5814
* Converts various New() definitions to Initialization()
* Adds absolute pathing
2019-01-15 22:58:06 -08:00
kevinz000
ab3f30b28f Merge remote-tracking branch 'polaris/master' into PS_PORT_SCHEDULER 2018-12-09 20:34:39 -08:00
kevinz000
c2c688c4c8 caps 2018-12-06 18:34:37 -08:00
kevinz000
d15f7efa5b Merge branch 'master' into PS_PORT_SCHEDULER 2018-12-06 18:10:48 -08:00
kevinz000
8da11c17a2 Makes math helpers defines for performance (#5654) 2018-12-06 13:13:59 -08:00
kevinz000
a52c341861 Merge remote-tracking branch 'polaris/master' into PS_PORT_SCHEDULER 2018-12-06 10:20:46 -08:00
Neerti
c25e94938e Buildmode enhancement and removes simple_animal for real this time. 2018-10-24 06:49:41 -04:00
kevinz000
84ea3c0931 JFC 2018-10-14 19:45:38 -07:00
Anewbe
0c0246e3fa Still more simple_mob conversions (#5523)
* Fixes 6 pAI faces

PAIs are no longer coded to only recognize 9 emotions. This enables the use of the neutral, silly, nose, smirk, exclamation points, and question mark faces as a pAI. Before, those buttons did nothing.

* Fixes the PDA Halogen Scanner's tendency to be number one.

* Unfolded pAIs can be picked up

Because who doesn't want a robotic cat on their head? Adds in the missing code to allow pAIs to actually be picked up, and held sprites for the newer 4 chassis options.

* Adds the Gigaphone, a suped-up Megaphone.

* Constant Chip has a sprite

* Fireaxe cabinets find their fireaxes in initialize(), rather than new()

* Speeds up alcohol

* fixed mining cloak not being in loadouts

* Admin Supermatter Setup now closes the monitoring room shutters (#5442)

* Admin Supermatter Setup now closes the monitoring room shutters

* Fixes a copy-paste error

* Begins work on lightning.

* Fixes #5447 (Deadspy submap not overwriting mapgen) (#5448)

* Map fix

* fixed deadspy.dmm

* Added Squid plushies of varying colours

I added a few Squid plushies in different colours, changing the files code/game/objects/items/toys.dm
and obj/toy.dmi

* Added hat functionality to Squid plushies

I added the ability to wear my Squid plushies as hats. They're damn good hats.

* Replaces Skrell namegen (#5453)

Created a first name list for Skrell, to replace the syllable assembler.

Created a surname list for Skrell to replace the syllable assembler.

Replaced the Skrell namegen with pre-written namelists, instead of the old syllable assembler.

* Mechoid makes mistakes. Fix telepathic gigaphones.

* Lets people be colorblind

Adds four types of colorblindness to the traits in the setup menu - protanopia, deuteranopia, tritanopia, and monochromacy. Previously, there were ones defined in the code, but not actually usable to players.

* Whoops, worded that wrong

* Adds beams to the Type var list for View Variables.

* Unfuck my Master

* Adds beams to the Type var selection in View Variables.

* Finishes thunderstorms.

* Adds logging.

* APC Sprite Change

- Port from Virgo recolored slightly to match closer to the old sprite
- Addition of directional sprites for the APCs

* Refactors supply controller.
Supply consoles now run nanoUI

* Missing '

* [Excitedly updates changelog]

* btw i use arc

* Removes supermatters from cave PoIs.

* Holomap Port

- Port of Holomaps from Virgo

* Changing species (via ling or admin button) should no longer ruin your HUD

* Converts most istype(thing,tool) procs into an appropriate thing.is_tool() format

* Removes empty file, gives the QM a control console again (Was replaced with an ordering console)

* Hopefully fixes some tool-conversion things

* Makes the Northern Star still compile

* Keeps NS up to date

* Taj and Unathi should have explorer mask sprites now

* Corgi rune now summons the corgi in a flash of harmless lightning

* Forces mech construction to work with the is_tool() procs

* Various things and floors no longer associate with dirt

* MultiZ falling tweaks

* Fixes the clusterbang grenade

* Added new hairstyles

* Added new hairstyles

* Fixes spelling of Strike in Lightning Strike admin verb

* I don't know how we keep breaking falling

* Hallucinations now use the old system again, but with the more modern components.

* Ambience Refactor (#5476)

* Refactors how ambience is assigned, removes bad ambience, ports good ambience from tg

* Apparently that file is still used, not worth the salt to remove it.

* Changelog

* The speed-related chem effects are no longer a one-or-none affair, oxy causes slowdown

* Corrects noted issues

* Add some missing sprites for xenoarch excavation.

* Become thwarted, thot.

* Fixes the Ultra AC2's burstfire bug.

* The Major Bill's shuttle is actually contagious now.

* penguins are from earth

capitalize this, anewbe, i dare you

* Mechoid's a butt

* Adds new job/department specific teshari clothing to the loadout (#5481)

* adding the new department specific teshari outfits

* Slightly cleans up hooded suit code (#5471)

* FBPs can have brute damage repaired externally again

* Windoors fix

* Cleans up some largecrate code

* Weather refactor.

* NanoUI makes me sad.

* Drinking more booze gets you drunk faster

* Ports the supermatter grenade, supporting code

* May or may not make movement seem smoother

* Fixes the Sleepy Ring

* Partially ports the GLOB system

* Fixes the bug(s) that allow meat bodies to have metal brains

* ports VOREStation/VOREStation#4165 - i forgot to check if advanced who was a thing here

* Optimizes supply UI

* Transfer shuttle grammar fixes

* Fixes borked E and W fish sprites

* Fixes incorrect ETA in crew transfer announcement

* Mech Mini 'Revamp'. Will need playtesting. (#5480)

* Exosuits are now capable of holding more equipment, of specific types.

* Tweaks regarding feedback in staffside thread, other concerns.

* Tweak to be more consistent. Why did the Odysseus have two universals. Tweak to weapon restriction on Med - > Odyss

* Weapons only fit in universal combat slots.

* Adds smart magazine, magazine functionality

* Adds a new subset of grenades that shoot projectiles

* Low alpha now makes HUDs and tooltips not show up on you

* Fixes a UI bug with emptying currently-open bags into smartfridges...hopefully. (#5515)

* Update smartfridge.dm

* actually indicates which line solves the bug

* Adds a whole bunch of Exosuit weapons and other miscellaneous parts.

* Minifrags now use the small fragments mainly as they should.

* Iced beer no longer freezes you to 3 degrees C, which is enough to seriously burn a Skrell. Seriously, that's weird.

* Touch stuff in reference to responses.

* NanoUI now processes again

* Converts more simple_animal mobs to simple_mob

* Submap correction
2018-08-28 11:25:33 -07:00
Atermonera
de65c3c643 NanoUI now processes again 2018-08-25 21:13:16 -07:00
Neerti
be73b8c36a for(var/bad_code in world)
Removes a very large amount of world loops.
Adds a macro to painlessly generate a global list, and the needed code to modify the list when an object is made or deleted automatically.
Cleans up some commented out code.
2018-04-29 17:55:04 -04:00
Arokha Sieyes
9292a56201 POLARIS: Silly piloting helmet animation
Bonk helmet on shuttle computer to link. No, it doesn't work if you're off the shuttle, no remote info transfer.
2018-03-20 22:52:49 -04:00
Arokha Sieyes
1bc490630d POLARIS: Fix two mistakes with the shuttle_arrival procs 2018-03-20 22:52:29 -04:00
Arokha Sieyes
24ccae5a24 POLARIS: Call procs on areas when shuttles arrive/depart 2018-03-13 19:23:45 -04:00
Marina Gryphon
42e896da0d Should fix #4740. 2018-02-06 11:28:26 -06:00
Leshana
2c90995dcc Let objects register to be informed when shuttles have been setup.
* Switch /obj/shuttle_connector to use it instead of the icky process hack.
2018-02-05 15:50:15 -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
5847319443 Update every initialize() proc to return an initialize hint.
* Yes, all of them.
* Also did a few corrections to redundant New() and broken Destroy() along the way
* Renamed the turf_initializer.initialize() proc to InitializeTurf to avoid confusion.
* Subsumed /area/proc/initialize into /atom/proc/initialize() - Made /area's LateInitialize to get same behavior as before.
2018-02-05 15:50:13 -05:00
Arokha Sieyes
d71a2be346 POLARIS: Add shuttle door/environment sensors 2018-02-03 20:57:49 -05:00
Neerti
fd6d378e09 Merge pull request #4655 from VOREStation/aro-connector
Shuttle connector for lateloaded maps
2018-01-30 05:40:16 -05:00
Aronai Sieyes
e69af92218 Move these defines into proper files (#4653) 2018-01-28 18:09:35 -08:00
Arokha Sieyes
7915d5ea99 POLARIS: Shuttle connector object for lateloaded Z-levels and other stuff 2018-01-27 14:54:30 -05:00
atermonera
caf3735500 Shuttles can announce over radio too! 2018-01-15 17:00:03 -08:00
Neerti
d0d6689263 Web Shuttle Update
Adds autopilot functionality for shuttle one and shuttle two. It can be enabled and disabled by the flight computer.
Autopilot is active by default on both shuttles. The shuttle waits for two minutes when it reaches the outpost or station, except for the first flight, where it waits for about ten minutes, which should be plenty of time for people to get on and for the pilot to turn it off if one exists.
Adds renaming feature to all shuttles.
Ports /tg/'s 'shuttle warning' effect, which adds a bunch of blue circles where a ship is about to land, which should prevent surprise shuttle crushes if paying attention.
Flight times for all routes are cut in half to act as the bonus for flying manually. Automatic flight takes twice as long, and so it will take the current amount of time.
Makes Ninja shuttle faster because Nippen steal.
Does some cleanup with temporary effects.
2018-01-14 14:03:58 -05:00
Leshana
a1734c97e9 Moved makepowernets() into SSmachines initialization proc. 2017-12-29 15:32:06 -05:00
Belsima
3320690a1e I before E (#4287)
* except after C

* maroonic mistake

* Improved use of sound files.

Also more grammar.

* now with less fuckup
2017-11-19 03:00:14 -06:00
Belsima
e61efc752a more gammers (#4052)
* Update medsci.dm

* Update miscellaneous.dm

* Update arcade.dm

* Update transform.dm

* Update implanter.dm

* Update shuttle_console.dm
2017-10-13 23:32:22 -05:00