Test NoobVehicles

This commit is contained in:
Mac_Slash
2020-04-21 14:20:53 +02:00
parent a2fb8c531e
commit e98150e4c4
6 changed files with 63 additions and 8 deletions

View File

@@ -0,0 +1,7 @@
namespace ReallifeGamemode.Database.Entities
{
public partial class NoobVehicle : ServerVehicle
{
//public int SchoolId { get; set; }
}
}

View File

@@ -136,6 +136,9 @@ namespace ReallifeGamemode.Database.Models
//Driving/Bike/Flight School //Driving/Bike/Flight School
public DbSet<Entities.SchoolVehicle> SchoolVehicles { get; set; } public DbSet<Entities.SchoolVehicle> SchoolVehicles { get; set; }
//Noob Vehicles
public DbSet<Entities.NoobVehicle> NoobVehicles { get; set; }
//Gangwar //Gangwar
public DbSet<Entities.Turfs> Turfs { get; set; } public DbSet<Entities.Turfs> Turfs { get; set; }

View File

@@ -1985,7 +1985,7 @@ namespace ReallifeGamemode.Server.Commands
} }
} }
[Command("save", "~m~Benutzung: ~s~/save [Typ = ~g~Blip~s~, ~g~Goto (X)~s~, ~r~Marker~s~, ~r~Ped~s~, ~r~Pickup~s~, ~r~TextLabel~s~, ~g~Vehicle~s~, ~g~FVehicle~s~, ~g~SVehicle (X)~s~, ~g~JVehicle (X)~s~, ~g~Location~s~] (Weitere Angaben) = (X)", GreedyArg = true)] [Command("save", "~m~Benutzung: ~s~/save [Typ = ~g~Blip~s~, ~g~Goto (X)~s~, ~r~Marker~s~, ~r~Ped~s~, ~r~Pickup~s~, ~r~TextLabel~s~, ~g~Vehicle~s~, ~g~FVehicle~s~, ~g~SVehicle (X)~s~, ~g~JVehicle (X)~s~, ~g~ShoolVehicle (X)~s~, ~g~NoobVehicle~s~, ~g~Location~s~] (Weitere Angaben) = (X)", GreedyArg = true)]
public void CmdAdminSave(Player player, string typ, string option1 = null, string option2 = null) public void CmdAdminSave(Player player, string typ, string option1 = null, string option2 = null)
{ {
if (!player.GetUser()?.IsAdmin(AdminLevel.HEADADMIN) ?? true) if (!player.GetUser()?.IsAdmin(AdminLevel.HEADADMIN) ?? true)
@@ -2164,6 +2164,16 @@ namespace ReallifeGamemode.Server.Commands
player.SetIntoVehicle(vehicle, 0); player.SetIntoVehicle(vehicle, 0);
} }
break; break;
case "noobvehicle":
if (player.IsInVehicle)
{
Vehicle vehicle = player.Vehicle;
vehicle = SaveManager.SaveNoobVehicleData(vehicle, (VehicleHash)vehicle.Model, vehicle.Position, vehicle.Heading, vehicle.NumberPlate,
vehicle.PrimaryColor, vehicle.SecondaryColor, vehicle.Locked, vehicle.EngineStatus);
player.SendNotification("Noobfahrzeug ~g~" + vehicle.DisplayName + "~s~ gespeichert.", true);
player.SetIntoVehicle(vehicle, 0);
}
break;
case "location": case "location":
if (option1 == null || option1.Length < 0) if (option1 == null || option1.Length < 0)

View File

@@ -39,13 +39,6 @@ namespace ReallifeGamemode.Server.Events
player.SendNotification("~r~Du darfst dieses Fahrzeug nicht benutzen!", true); player.SendNotification("~r~Du darfst dieses Fahrzeug nicht benutzen!", true);
return; return;
} }
else if (player.GetUser().FactionId == 0)
{
if(player.GetUser().PlayedMinutes > 1800)
{
player.SendNotification("~r~Du hast mehr als 30 Spielstunde, kaufe dir ein eigenes Fahrzeug!", true);
}
}
} }
if (vehicle.GetServerVehicle() is SchoolVehicle sVeh) if (vehicle.GetServerVehicle() is SchoolVehicle sVeh)
@@ -63,6 +56,15 @@ namespace ReallifeGamemode.Server.Events
return; return;
} }
} }
if (vehicle.GetServerVehicle() is NoobVehicle nVeh)
{
if (player.GetUser().PlayedMinutes > 1800)
{
player.StopAnimation();
player.SendNotification("~r~Du hast schon über 30 Spielstunden!", true);
return;
}
}
} }
} }
} }

View File

@@ -66,6 +66,14 @@ namespace ReallifeGamemode.Server.Extensions
{ {
numberplate = $"J{jV.JobId} " + numberplate; numberplate = $"J{jV.JobId} " + numberplate;
} }
if (veh is SchoolVehicle)
{
numberplate = "FS" + numberplate;
}
if (veh is NoobVehicle)
{
numberplate = "NV" + numberplate;
}
NAPI.Vehicle.SetVehicleNumberPlate(newVeh, numberplate); NAPI.Vehicle.SetVehicleNumberPlate(newVeh, numberplate);
veh.NumberPlate = numberplate; veh.NumberPlate = numberplate;

View File

@@ -131,6 +131,31 @@ namespace ReallifeGamemode.Server.Managers
} }
} }
public static Vehicle SaveNoobVehicleData(Vehicle veh, VehicleHash vehicleModel, Vector3 vehiclePosition, float vehicleHeading,
string vehicleNumberPlate, int vehiclePrimaryColor, int vehicleSecondaryColor, bool vehicleLocked, bool vehicleEngine)
{
using (var saveData = new DatabaseContext())
{
var dataSet = new NoobVehicle
{
Model = vehicleModel,
PositionX = vehiclePosition.X,
PositionY = vehiclePosition.Y,
PositionZ = vehiclePosition.Z,
Heading = vehicleHeading,
NumberPlate = vehicleNumberPlate,
PrimaryColor = vehiclePrimaryColor,
SecondaryColor = vehicleSecondaryColor,
Locked = vehicleLocked,
Active = true
};
saveData.NoobVehicles.Add(dataSet);
saveData.SaveChanges();
return dataSet.Spawn(veh);
}
}
public static Vehicle SaveFactionVehicleData(Vehicle veh, VehicleHash vehicleModel, Vector3 vehiclePosition, float vehicleHeading, public static Vehicle SaveFactionVehicleData(Vehicle veh, VehicleHash vehicleModel, Vector3 vehiclePosition, float vehicleHeading,