Rewrite of vehicle system

This commit is contained in:
hydrant
2018-11-28 19:36:46 +01:00
parent 52ab83f5ea
commit d5b249e8e1
12 changed files with 137 additions and 174 deletions

View File

@@ -0,0 +1,40 @@
using GTANetworkAPI;
using reallife_gamemode.Model;
using reallife_gamemode.Server.Managers;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Text;
namespace reallife_gamemode.Server.Entities
{
public abstract class ServerVehicle
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
public VehicleHash Model { get; set; }
public float PositionX { get; set; }
public float PositionY { get; set; }
public float PositionZ { get; set; }
public float Heading { get; set; }
[StringLength(8)]
public string NumberPlate { get; set; }
public int PrimaryColor { get; set; }
public int SecondaryColor { get; set; }
public bool Locked { get; set; }
public bool Active { get; set; }
[NotMapped]
public Vector3 Position => new Vector3(PositionX, PositionY, PositionZ);
public Vehicle Spawn()
{
Vehicle veh = NAPI.Vehicle.CreateVehicle(this.Model, this.Position, this.Heading, this.PrimaryColor, this.SecondaryColor, this.NumberPlate, locked: this.Locked, engine: false);
VehicleManager.AddVehicle(this, veh);
return veh;
}
}
}