internal static Blip BlipVehicle(Vehicle vehicle, Color color) { var blip = vehicle.AddBlipSafe(color); if (blip != null && (vehicle != null && vehicle.IsValid())) { _Blips.Add(blip, vehicle); } GameFiber.StartNew(() => { var stopAt = DateTime.Now.AddMilliseconds(30000); while (DateTime.Now < stopAt) { GameFiber.Yield(); } try { if (blip != null && blip.IsValid()) { blip.Delete(); } } catch (Exception e) { Function.Log(e.Message); } }); return(blip); }
internal static Blip BlipVehicle(Vehicle vehicle, Color color) { if (_Blips.ContainsValue(vehicle)) { return(_Blips.Single(x => x.Value == vehicle).Key); } else if (vehicle.GetAttachedBlip()) { return(vehicle.GetAttachedBlip()); } var blip = vehicle.AddBlipSafe(color); if (blip != null && (vehicle != null && vehicle.IsValid())) { _Blips.Add(blip, vehicle); } GameFiber.StartNew(() => { var stopAt = DateTime.Now.AddMilliseconds(30000); while (DateTime.Now < stopAt) { GameFiber.Yield(); } try { if (blip != null && blip.IsValid()) { blip.Delete(); } } catch (Exception e) { Function.Log(e.Message); } }); return(blip); }