Coordinate Battle Code
utilities.verse
| | |
| --- | --- |
| | using{/Verse.org/Simulation} |
| | using{/Verse.org/Random} |
| | using{/UnrealEngine.com/Temporary/SpatialMath} |
| | |
| | DataTypes<public> := module: |
| | |
| | tile_coordinate<public> := class<concrete>: |
| | Left<public>:int = 0 |
| | Forward<public>:int = 0 |
| | |
| | bounds<public> := class<concrete>: |
| | @editable |
| | Low<public>:int = 0 |
| | @editable |
| | High<public>:int = 0 |
| | |
| | board_bounds<public> := class<concrete>: |
| | @editable |
| | LeftBounds<public>:bounds = bounds{} |
| | @editable |
| | ForwardBounds<public>:bounds = bounds{} |
| | |
| | marker_type<public> := enum<open>: |
| | Hit |
| | Miss |
| | Unknown |
| | |
| | move_type<public> := enum<open>: |
| | Attack |
| | Reveal |
| | Unknown |
| | |
| | UtilityFunctions<public> := module: |
| | |
| | using{DataTypes} |
| | |
| | Abs(TileCoordinate:tile_coordinate)<transacts>:tile_coordinate = |
| | tile_coordinate: |
| | Left := Abs(TileCoordinate.Left) |
| | Forward := Abs(TileCoordinate.Forward) |
| | |
| | operator'-'(LeftTileCoordinate:tile_coordinate, RightTileCoordinate:tile_coordinate)<transacts>:tile_coordinate = |
| | tile_coordinate: |
| | Left := LeftTileCoordinate.Left - RightTileCoordinate.Left |
| | Forward := LeftTileCoordinate.Forward - RightTileCoordinate.Forward |
| | |
| | ManhattanDistance<public>(TileCoordinateOne:tile_coordinate, TileCoordinateTwo:tile_coordinate)<transacts>:int = |
| | Difference := Abs(TileCoordinateOne - TileCoordinateTwo) |
| | Difference.Left + Difference.Forward |
| | |
| | AreTileCoordinatesEqual<public>(LeftTileCoordinate:tile_coordinate, RightTileCoordinate:tile_coordinate)<decides><transacts>:void = |
| | LeftTileCoordinate.Left = RightTileCoordinate.Left |
| | LeftTileCoordinate.Forward = RightTileCoordinate.Forward |
| | |
| | GenerateUniformRandomTileCoordinate<public>(BoardBounds:board_bounds)<transacts>:tile_coordinate = |
| | tile_coordinate: |
| | Left := GetRandomInt(BoardBounds.LeftBounds.Low, BoardBounds.LeftBounds.High) |
| | Forward := GetRandomInt(BoardBounds.ForwardBounds.Low, BoardBounds.ForwardBounds.High) |
| | |
| | NumberOfTileCoordinates<public>(BoardBounds:board_bounds)<transacts>:int = |
| | (BoardBounds.LeftBounds.High - BoardBounds.LeftBounds.Low) * (BoardBounds.ForwardBounds.High - BoardBounds.ForwardBounds.Low) |
You're reading a preview
The full reference is free for BrainDeadGuild Discord members — sign in to read it all, or open the original at the source.
Sign in with your BrainDead.TV / BrainDeadGuild Discord account for full access.