public void AddShip(ShipDatablock shipScript, HexCoord formation) { var ship = new Ship(); ship.SetupFromScriptableObject(shipScript, formation, player); player.ships.Add(ship); }
//public Ship() //{ //} public void SetupFromScriptableObject(ShipDatablock _script, HexCoord _formation, Player _player) { player = _player; Formation = _formation;// HexCoord.AtOffset(_formation); equipmentSlots = new List<ComponentSlot>(); equipmentSlots.Add(new CaptainSlot(_script.captainType)); equipmentSlots.Add(new ChassisSlot(_script.chassisType)); equipmentSlots.Add(new ShieldSlot(_script.shieldType)); equipmentSlots.Add(new EngineSlot(_script.engineType)); equipmentSlots.Add(new DriveSlot(_script.driveType)); equipmentSlots.Add(new WeaponSlot(_script.weapon1Type)); equipmentSlots.Add(new WeaponSlot(_script.weapon2Type)); utilitySlots = new List<UtilitySlot>(); cargoSlots = new List<CargoSlot>(); _script.utilityType.ForEach(a => utilitySlots.Add(new UtilitySlot(a))); _script.cargoType.ForEach(a => cargoSlots.Add(new CargoSlot(a))); Icon = _script.Icon; Name = _script.name; ConnectStats(); }