public ActionResult CreateShips([FromBody] CreateShips shipsInfo) { var shipSpecs = shipsInfo.Coordinates.Split(',', StringSplitOptions.TrimEntries); var ships = shipSpecs.Select(spec => _shipFactory.Create(spec)); _gameService.BeginGame(ships); return(Ok()); }
private void Awake() { var shipFactory = new ShipFactory(Instantiate(shipConfiguration)); var shipBuilder = shipFactory.Create(shipPlayerConfiguration.ShipId.Id); shipBuilder.WithShipConfiguration(shipPlayerConfiguration) .WithTypeOfInput(TypeOfInput.TouchInput) .WithPrefabProjectile(shipPlayerConfiguration.ProjectileId); ship = shipBuilder.Build(); }
public void Horizontal4ShipShouldGameOverAfter4Hits() { game.Setup(); game.PlaceShip(factory.Create(4), 1, 0, Orientation.Horizontal); var status = CoordinateStatus.Unknown; Assert.False(game.IsOver()); status = game.Hit(1, 0); Assert.Equal(CoordinateStatus.Hit, status); status = game.Hit(1, 1); Assert.Equal(CoordinateStatus.Hit, status); status = game.Hit(2, 3); Assert.Equal(CoordinateStatus.Missed, status); status = game.Hit(1, 2); Assert.Equal(CoordinateStatus.Hit, status); status = game.Hit(1, 3); Assert.Equal(CoordinateStatus.Hit, status); Assert.True(game.IsOver()); }
protected override void Run(ETModel.Session session, M2C_CreateShips message) { ShipComponent unitComponent = ETModel.Game.Scene.GetComponent <ShipComponent>(); foreach (ShipInfo unitInfo in message.Ships) { if (unitComponent.Get(unitInfo.ShipId) != null) { continue; } Ship ship = ShipFactory.Create(unitInfo.ShipId); ship.Position = new Vector3(unitInfo.X, unitInfo.Y, unitInfo.Z); } }
private void SpawnShip(SpawnConfiguration configuration) { foreach (var shipConfigurationLocal in configuration.ShipToSpawnConfigurations) { var shipBuilder = factory.Create(shipConfigurationLocal.ShipId.Id) .WithPosition(spawnLocation.position) .WithRotation(spawnLocation.rotation) .WithTypeOfInput(TypeOfInput.MachineInput) .WithShipConfiguration(shipConfigurationLocal) .WithPrefabProjectile(shipConfigurationLocal.ProjectileId) .WithCurve(shipConfigurationLocal.Curve); var enemiShip = shipBuilder.Build(); } }
public void PlaceShip(Player player, ShipType shipType, string startCoordinates, string endCoordinates) { Ship ship = _shipFactory.Create(shipType, startCoordinates, endCoordinates); player.Board.Ships.Add(ship); }