Example #1
0
        public void Save()
        {
            DbModel.Health                = GameVehicle.Health;
            DbModel.Door1Damage           = GameVehicle.IsDoorBroken(1);
            DbModel.Door2Damage           = GameVehicle.IsDoorBroken(2);
            DbModel.Door3Damage           = GameVehicle.IsDoorBroken(3);
            DbModel.Door4Damage           = GameVehicle.IsDoorBroken(4);
            DbModel.Window1Damage         = GameVehicle.IsWindowBroken(1);
            DbModel.Window2Damage         = GameVehicle.IsWindowBroken(2);
            DbModel.Window3Damage         = GameVehicle.IsWindowBroken(3);
            DbModel.Window4Damage         = GameVehicle.IsWindowBroken(4);
            DbModel.PrimaryColor          = GameVehicle.CustomPrimaryColor.ToHex();
            DbModel.SecondaryColor        = GameVehicle.CustomSecondaryColor.ToHex();
            DbModel.EnginePowerMultiplier = GameVehicle.EnginePowerMultiplier;
            DbModel.NumberPlateStyle      = GameVehicle.NumberPlateStyle;
            DbModel.NumberPlate           = GameVehicle.NumberPlate;
            DbModel.Fuel            = GameVehicle.GetSharedData("fuel");
            DbModel.FuelConsumption = GameVehicle.GetSharedData("fuelConsumption");
            DbModel.Milage          = GameVehicle.GetSharedData("milage");

            if (_nonDbVehicle)
            {
                return;
            }
            RoleplayContext ctx = Singletons.RoleplayContextFactory.Create();

            using (VehiclesRepository repository = new VehiclesRepository(ctx))
            {
                repository.Update(DbModel);
                repository.Save();
            }
        }
Example #2
0
 public bool UpdateVehicle(Vehicles entity)
 {
     try
     {
         bool isSuccess;
         using (var repo = new VehiclesRepository())
         {
             isSuccess = repo.Update(entity);
         }
         return(isSuccess);
     }
     catch (Exception ex)
     {
         LogHelper.Log(LogTarget.File, ExceptionHelper.ExceptionToString(ex), true);
         throw new Exception("BusinessLogic:VehiclesBusiness::UpdateVehicle::Error occured.", ex);
     }
 }
Example #3
0
        public void Trade(bool bank)
        {
            if (Getter.HasMoney(Money, bank))
            {
                if (_moneyToGroup && Sender.OnDutyGroup == null)
                {
                    Sender.SendInfo("Musisz znajdować się na służbie grupy.");
                    return;
                }

                if (ItemModel != null)
                {
                    ChatScript.SendMessageToNearbyPlayers(Sender,
                                                          $"{Sender.FormatName} podaje przedmiot {Getter.FormatName}",
                                                          ChatMessageType.ServerMe);

                    ItemModel.Character = Getter.DbModel;

                    RoleplayContext ctx = Singletons.RoleplayContextFactory.Create();
                    using (ItemsRepository repository = new ItemsRepository(ctx))
                    {
                        repository.Update(ItemModel);
                        repository.Save();
                    }
                }
                else if (Vehicle != null)
                {
                    ChatScript.SendMessageToNearbyPlayers(Sender,
                                                          $"{Sender.FormatName} podaje klucze {Getter.FormatName}",
                                                          ChatMessageType.ServerMe);

                    Vehicle.Character = Getter.DbModel;

                    RoleplayContext ctx = Singletons.RoleplayContextFactory.Create();
                    using (VehiclesRepository repository = new VehiclesRepository(ctx))
                    {
                        repository.Update(Vehicle);
                        repository.Save();
                    }
                }
                else if (Building != null)
                {
                    ChatScript.SendMessageToNearbyPlayers(Sender,
                                                          $"{Sender.FormatName} podaje klucze {Getter.FormatName}",
                                                          ChatMessageType.ServerMe);

                    Building.Character = Getter.DbModel;

                    RoleplayContext ctx = Singletons.RoleplayContextFactory.Create();
                    using (BuildingsRepository repository = new BuildingsRepository(ctx))
                    {
                        repository.Update(Building);
                        repository.Save();
                    }
                }

                if (_moneyToGroup)
                {
                    Sender.OnDutyGroup.AddMoney(Money);
                }
                else
                {
                    Sender.AddMoney(Money, bank);
                }

                Getter.RemoveMoney(Money, bank);

                _action?.Invoke(Getter);
            }
            else
            {
                Getter.SendWarning(bank
                    ? "Nie posiadasz wystarczającej ilości środków na karcie"
                    : "Nie posiadasz wystarczającej ilości gotówki.");
                Sender.SendError("Wymiana zakończona niepowodzeniem.");
            }
        }