コード例 #1
0
 public Vehicle(string name, EVehicleType type)
 {
     this.Name = name;
     this.Type = type;
     this.InternalInitParts();
     this.InternalInitAddOns();
 }
コード例 #2
0
 public VehicleDTO(int iD, string carBoard, EVehicleType type, int modelID, bool isActive)
 {
     ID       = iD;
     CarBoard = carBoard;
     Type     = type;
     ModelID  = modelID;
     IsActive = isActive;
 }
コード例 #3
0
 public static UnityEngine.Vector3 GetVehicleBirthPosition(EVehicleType type, int entityId)
 {
     if (UserTerrain)
     {
         return(type == EVehicleType.Car ? new UnityEngine.Vector3(4000, 200, 4005): new UnityEngine.Vector3(3950, 85, 3395));
     }
     else
     {
         return(type == EVehicleType.Car ? new UnityEngine.Vector3(15, 50, 10) : new UnityEngine.Vector3(0, 2, 103));
     }
 }
コード例 #4
0
        public bool Destroy(Vehicle vehicle, bool clearing = false)
        {
            if (vehicle == null)
            {
                return(false);
            }

            EVehicleType type = vehicle.GetVehicleType();

            vehicles[type].Remove(vehicle);

            switch (type)
            {
            case EVehicleType.UNKNOWN:

                break;

            case EVehicleType.PRIVATE:
                vehicle.Save();
                break;

            case EVehicleType.FRACTION:

                break;

            case EVehicleType.WORK:

                break;

            case EVehicleType.PUBLIC:
                //Globals.Systems.publicVehicles.RemovePublicVehicle(vehicle, clearing);
                break;

            case EVehicleType.EXAM:

                break;

            case EVehicleType.SALON:

                break;

            case EVehicleType.EVENT:

                break;
            }

            if (vehicle != null)
            {
                NAPI.Entity.DeleteEntity(vehicle);
            }

            return(true);
        }
コード例 #5
0
        public Vehicle Create(EVehicleType type, VehicleHash vehicleHash, Vector3 pos, Vector3 rot)
        {
            Vehicle vehicle = NAPI.Vehicle.CreateVehicle(vehicleHash, pos, rot, new Color(255, 255, 255).ToInt32(), new Color(255, 255, 255).ToInt32());

            vehicle.AddExtension();
            vehicle.SetVehicleType(type);
            vehicle.SetSharedData("type", type);
            vehicles[type].Add(vehicle);
            switch (type)
            {
            case EVehicleType.UNKNOWN:

                break;

            case EVehicleType.PRIVATE:

                break;

            case EVehicleType.FRACTION:

                break;

            case EVehicleType.WORK:

                break;

            case EVehicleType.PUBLIC:

                break;

            case EVehicleType.EXAM:

                break;

            case EVehicleType.SALON:

                break;

            case EVehicleType.EVENT:

                break;
            }
            return(vehicle);
        }
コード例 #6
0
        public override IVehicleFactory GetVehicle(EVehicleType type)
        {
            IVehicleFactory ObjVehicleFactory = null;

            switch (type)
            {
            case EVehicleType.Bike:
                ObjVehicleFactory = new Bike();
                break;

            case EVehicleType.Scooter:
                ObjVehicleFactory = new Scooter();
                break;

            case EVehicleType.Car:
                ObjVehicleFactory = new Car();
                break;

            case EVehicleType.Bus:
                ObjVehicleFactory = new Bus();
                break;

            case EVehicleType.Lorry:
                ObjVehicleFactory = new Lorry();
                break;

            case EVehicleType.Train:
                ObjVehicleFactory = new Train();
                break;

            case EVehicleType.Ship:
                ObjVehicleFactory = new Ship();
                break;

            case EVehicleType.Helicopter:
                ObjVehicleFactory = new Helicopter();
                break;

            default:
                break;
            }

            return(ObjVehicleFactory);
        }
コード例 #7
0
        public void OnPlayerEnterVehicle(Client player, Vehicle vehicle, sbyte seatID)
        {
            EVehicleType type = vehicle.GetVehicleType();

            switch (type)
            {
            case EVehicleType.UNKNOWN:

                break;

            case EVehicleType.PRIVATE:

                break;

            case EVehicleType.FRACTION:

                break;

            case EVehicleType.WORK:

                break;

            case EVehicleType.PUBLIC:
                //Globals.Systems.publicVehicles.OnPlayerEnterPublicVehicle(player, vehicle, seatID);
                break;

            case EVehicleType.EXAM:

                break;

            case EVehicleType.SALON:

                break;

            case EVehicleType.EVENT:

                break;
            }
        }
コード例 #8
0
        public static void AddVehicleComponentsPostInit(this VehicleEntity vehicle, EVehicleType type, UnityObject unityObj, PlayerContext playerContext, bool isServer)
        {
            var go = unityObj.AsGameObject;

            if (!vehicle.hasGameObject)
            {
                var controller = go.GetComponent <VehicleCommonController>();
                vehicle.AddGameObject(controller, unityObj);
                controller.PutToSleep();
            }

            if (!go.activeSelf)
            {
                var controller = go.GetComponent <VehicleCommonController>();
                controller.IsActive = true;
            }

            go.transform.position = GetNewBirthPositionOnOverlap(go);

            if (vehicle.HasDynamicData())
            {
                var dydata = vehicle.GetDynamicData();
                dydata.Position = go.transform.position;
            }

            if (!vehicle.hasVehicleType)
            {
                vehicle.AddVehicleType(type);
            }

            vehicle.AddEntityKeyIdentifier(vehicle.entityKey.Value);
            vehicle.AddVehicleObjectCollision(playerContext);

            vehicle.AddSeatComponent();
            vehicle.AddDynamicAndEffectDataPostInit();

            vehicle.AddVehicleAllGameData();
            vehicle.AddHitBoxComponent();
            vehicle.AddGameEventComponent();

            if (!vehicle.hasVehicleCmd)
            {
                vehicle.AddVehicleCmd();
            }

            if (!vehicle.hasVehicleCmdOwner)
            {
                vehicle.AddVehicleCmdOwner(new VehicleCmdOwnerAdapter(vehicle));
            }

            if (!vehicle.hasVehicleSyncEvent)
            {
                vehicle.AddVehicleSyncEvent(new Queue <IVehicleSyncEvent>());
            }

            if (!vehicle.hasVehicleCollisionDamage)
            {
                vehicle.AddVehicleCollisionDamage(new Dictionary <EntityKey, VehicleCollisionDamage>(new EntityKeyComparer()));
            }

            EntityAPI[vehicle.GetTypeValue()].InitController(vehicle, isServer, vehicle.vehicleAssetInfo.Id);

            vehicle.isFlagSyncSelf     = true;
            vehicle.isFlagSyncNonSelf  = true;
            vehicle.isFlagCompensation = true;
        }
コード例 #9
0
 public IEnumerable <VehicleBase> GetVehicleByType(EVehicleType type)
 {
     return(_vehicleRepository.GetAllVehicles()
            .Where(vehicle => vehicle.VehicleType == type)
            .Select(vehicle => vehicle.ToVehicleBase()));
 }
コード例 #10
0
 public abstract IVehicleFactory GetVehicle(EVehicleType type);
コード例 #11
0
        }                                 //for Serializer

        public Vehicle(EVehicleType type) //ALL CHILD VEHICLES USE THIS CONSTRUCTOR AS DEFAULT
        {
            this.Type = type;

            //this.InternalInitParts();//!!!
        }
コード例 #12
0
 public bool IsMatched(EVehicleType type)
 {
     return(_matchAll || _matchType == type);
 }
コード例 #13
0
 public VehicleTypeMatcher(EVehicleType type)
 {
     _matchAll  = false;
     _matchType = type;
 }
コード例 #14
0
ファイル: VehicleExtend.cs プロジェクト: hixio-mh/Serwer-GTA5
 public static void SetVehicleType(this GTANetworkAPI.Vehicle vehicle, EVehicleType newType)
 {
     vehicle.GetExtension().SetVehicleType(newType);
 }
コード例 #15
0
ファイル: VehicleExtend.cs プロジェクト: hixio-mh/Serwer-GTA5
 public void SetVehicleType(EVehicleType eType)
 {
     type = eType;
 }
コード例 #16
0
ファイル: VehicleExtend.cs プロジェクト: hixio-mh/Serwer-GTA5
 public static bool IsType(this GTANetworkAPI.Vehicle vehicle, EVehicleType eType)
 {
     return(vehicle.GetVehicleType() == eType);
 }