Exemple #1
0
 /// <summary>
 /// Проверяет, что транспорт можно спавнить
 /// </summary>
 private bool CanSpawn(Client player, VehicleInfo vehicle)
 {
     if (vehicle.IsSpawned)
     {
         API.sendNotificationToPlayer(player, "~r~Транспортное средство не припарковано", true);
         return(false);
     }
     return(true);
 }
Exemple #2
0
        /// <summary>
        /// Записывает информацию о транспорте игрока
        /// </summary>
        public void SetInfo(Client player, VehicleInfo vehicleInfo)
        {
            var playerInfo = _playerInfoManager.GetInfo(player);

            if (playerInfo.Vehicles.ContainsKey(vehicleInfo.Id))
            {
                playerInfo.Vehicles[vehicleInfo.Id] = vehicleInfo;
            }
            else
            {
                playerInfo.Vehicles.Add(vehicleInfo.Id, vehicleInfo);
            }
        }
Exemple #3
0
        /// <summary>
        /// Записывает информацию о транспорте игрока
        /// </summary>
        public void SetInfo(VehicleInfo vehicleInfo)
        {
            var player = API.getAllPlayers().FirstOrDefault(e => e != null && vehicleInfo.OwnerId == (long)e.getData(PlayerInfoManager.ID_KEY));

            if (player != null)
            {
                SetInfo(player, vehicleInfo);
            }
            else
            {
                _vehiclesProvider.Update(new List <VehicleInfo> {
                    vehicleInfo
                });
            }
        }
        /// <summary>
        /// Может ли игрок парковаться в гараже
        /// </summary>
        private bool CanParking(Client player, HouseInfo house, Vehicle vehicleInfo)
        {
            var vehiclesInGarage = _playerInfoManager.GetInfo(player).Vehicles.Values.Count(e => e.HouseId == house.Id);

            if (HouseHelper.GarageIsFull(house.Type, vehiclesInGarage))
            {
                API.sendNotificationToPlayer(player, "~r~В гараже больше нет мест", true);
                return(false);
            }
            if (vehicleInfo == null)
            {
                API.sendNotificationToPlayer(player, "~r~Нельзя парковать чужой транспорт в гараж", true);
                return(false);
            }
            return(true);
        }
 /// <summary>
 /// Припарковать транспорт
 /// </summary>
 private void ParkVehicle(Client player, HouseInfo house, Vehicle vehicleInfo)
 {
     vehicleInfo.HouseId = house.Id;
     _houseManager.SetHouse(house);
     _vehicleInfoManager.SetInfo(player, vehicleInfo);
 }
Exemple #6
0
 /// <summary>
 /// Добавить участника
 /// </summary>
 public abstract void AddMember(Client player, Vehicle vehicle = null);