-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Basic Shuttle Purchasing/Selling system #61
Conversation
Shipyard
All new systems/commands/components/etc should be in the _Citadel folder, including ShipYardSystem. It should not build off ShuttleSystem if possible and instead you should add public APIs to shuttlesystem/cargosystem upstream if you can. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Big ol pile of formatting and style issues.
Content.Server/_Citadel/Shipyard/Commands/PurchaseShuttleCommand.cs
Outdated
Show resolved
Hide resolved
Content.Server/_Citadel/Shipyard/Commands/PurchaseShuttleCommand.cs
Outdated
Show resolved
Hide resolved
Content.Server/_Citadel/Shipyard/Commands/PurchaseShuttleCommand.cs
Outdated
Show resolved
Hide resolved
Content.Server/_Citadel/Shipyard/Commands/SellShuttleCommand.cs
Outdated
Show resolved
Hide resolved
Content.Server/_Citadel/Shipyard/Commands/SellShuttleCommand.cs
Outdated
Show resolved
Hide resolved
Content.Server/_Citadel/Shipyard/Commands/PurchaseShuttleCommand.cs
Outdated
Show resolved
Hide resolved
Content.Server/_Citadel/Shipyard/Commands/SellShuttleCommand.cs
Outdated
Show resolved
Hide resolved
cleaned up the formatting and fixed all of the suggestions. I can do localizations I suppose but where do I even put them. and what tool can I use to actually search through them because even the existing localization right now is a disaster that I cannot navigate well. If we should do our own separate folder for them, maybe we could sort them better. Unless they are that way for some particular reason. |
oh I need to make this do not merge until I upstream a few things now |
using tryload instead but then i incorporated all the checks in loadgrid here |
About the PR
This is the first step towards implementing #6. On roundstart, the first station to init will also init a 'shipyard' map that is paused. This map handles loading or pausing vessels/grids before they are added/removed from play. The function to auto-dock a ship requires it to be loaded in order for it to get it's docks and aabb.
As of now, there are 2 commands that an admin can run in the console to run basic functions and for later use in a UI wrapper function:
purchaseshuttle <stationID> <mapPath>
loads a grid into the shipyard map, appraises it and for now just prints into the server log the price of the grid according to cargo, then attempts to auto-dock it to the station. If it cannot auto-dock, it will ftl nearby instead. Priority sorting is hardcoded into emergencyshuttle system unfortunately, and we also don't have a concrete implementation of who or where these will be called in to. I can look into emergencyshuttle system and do a different sort after we know what entity is going to be considered the 'nearest' to the dock we want.sellshuttle <stationID> <gridID>
first checks to make sure that the given grid is attached to the given station (no telepathic ship selling for now), then checks to make sure nobody is on the grid, and if it's all clear, it appraises the grid and prints it to the server log, and then deletes the grid.Media
2022-12-31.19-54-41.mp4
Changelog