-
Notifications
You must be signed in to change notification settings - Fork 21
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
Add a "Salvo" mode #8
Comments
Brilliant idea but a huge advantage for player 1. A larger grid would reduce the advantage. I would still extend the GridState enum. IGridViewCommands Adding an OnPlayersComplete method to the IGridViewCommands interface would give you a clear point in which to switch from setup to battle mode (no matter what strategy is used). At this point it you could change the Conditional Formatting rules. Dropping (-1, 0, 1, 2) aka (Unknown, PreviewShipPosition, ShipPosition, InvalidPosition) and targeting (3, 4, 5, 6, 7) aka (PreviousMiss, PreviousHit, ?, ?, ?). |
It's the other way around: This is part of why the prompt "needs" to pop for each ship 😒 |
Actually commenting out the deployment prompt has no effect on game play (other then not having to click it). Public Sub ShowInfoBeginDeployShip(ByVal ShipName As String) When I do my rewrite, I plan on moving the deployment message from the marquee to a passive information box over the opposing grid. |
Just to clarify, I think the controller should fire a OnPlayersComplete(Players as Dictionary) event after the players are ready and before the battle begins. This would give the View a clear starting point to use to transition between modes. I also think that passing both players to the View, during this event, would unlocks the View's potential to be customized. Say for instance you wanted to add a "Player 1 vs Player 2` transition (btw IPlayer should have a name field), or if you wanted to show all the ships in PlayAIvsAI or what every. |
The |
Currently blocked by #7
Once there's an
IGameMode
interface, the game needs aSalvoMode
implementation so that each turn consists of:The
GridState
enum could have aMarkedPosition
value that recycles theInvalidPosition
member's value, which is currently only used in the deployment phase. Because of Worksheet UI limitations with the conditional formatting of the grid, no new enum values can be added.The text was updated successfully, but these errors were encountered: