public ActionResult ViewPreviousDamages(Guid id)
        {
            VehicleDamage damage = db.VehicleDamages.Where(x => x.Id == id).First();

            return(PartialView(db.VehicleDamages
                               .Where(x => x.VehicleId == damage.VehicleId && x.VehicleDamageTypeId == damage.VehicleDamageTypeId).ToList()));
        }
Example #2
0
 void Start()
 {
     tr           = transform;
     rb           = GetComponent <Rigidbody>();
     vp           = GetComponent <VehicleParent>();
     va           = GetComponent <VehicleAssist>();
     vd           = GetComponent <VehicleDamage>();
     initialSpeed = speed;
 }
        public ActionResult ReportDamage(VehicleDamage vehicleDamage, IEnumerable <HttpPostedFileBase> image)
        {
            if (ModelState.IsValid)
            {
                foreach (var item in image)
                {
                    string error;
                    if (!FileHelper.CheckIfFileIsImage(item, out error))
                    {
                        ModelState.AddModelError("", error);
                        ViewBag.VehicleId           = new SelectList(DataFilter.GetVehicles(TempData.Peek("Id") + ""), "Id", "Name");
                        ViewBag.VehicleDamageTypeId = new SelectList(db.VehicleDamageTypes, "Id", "Description");
                        return(View(vehicleDamage));
                    }
                }

                vehicleDamage.Id = Guid.NewGuid();

                string basePath = Server.MapPath(Constants.VEHICLE_DAMAGE_UPLOAD_BASE_PATH + vehicleDamage.Id + "/");
                FileHelper.SaveFiles(image, basePath);

                db.Damages.Add(vehicleDamage);
                db.SaveChanges();

                VehicleDamageStatus status = new VehicleDamageStatus
                {
                    DateOfArrival   = DateTime.Now,
                    Id              = Guid.NewGuid(),
                    VehicleDamageId = vehicleDamage.Id,
                    Official        = ChainOfCommandHelper.GetHigherOfficial()
                };
                status.CaseId = vehicleDamage.Id;
                db.DamageStatuses.Add(status);
                db.SaveChanges();

                return(RedirectToAction("ViewOpenTickets"));
            }

            ViewBag.VehicleId           = new SelectList(DataFilter.GetVehicles(TempData.Peek("Id") + ""), "Id", "Name");
            ViewBag.VehicleDamageTypeId = new SelectList(db.VehicleDamageTypes, "Id", "Description");
            return(View(vehicleDamage));
        }
Example #4
0
        public void AddVehicle(
            uint elementId, byte elementType, uint?parentId, byte interior,
            ushort dimension, ElementAttachment?attachment, bool areCollisionsEnabled,
            bool isCallPropagationEnabled, CustomData customData, string name,
            byte timeContext, Vector3 position, Vector3 rotation, ushort model,
            float health, Color[] colors, byte paintJob, VehicleDamage damage,
            byte variant1, byte variant2, Vector2?turret, ushort?adjustableProperty,
            float[] doorRatios, byte[] upgrades, string plateText, byte overrideLights,
            bool isLandingGearDown, bool isSirenActive, bool isFuelTankExplodable,
            bool isEngineOn, bool isLocked, bool areDoorsUndamageable, bool isDamageProof,
            bool isFrozen, bool isDerailed, bool isDerailable, bool trainDirection,
            bool isTaxiLightOn, float alpha, Color headlightColor, VehicleHandling?handling,
            VehicleSirenSet?sirens
            )
        {
            AddEntity(
                elementId, elementType, parentId, interior,
                dimension, attachment, areCollisionsEnabled,
                isCallPropagationEnabled, customData, name, timeContext
                );

            builder.WriteVector3WithZAsFloat(position);
            builder.WriteVectorAsUshorts(rotation);
            builder.Write((byte)(model - 400));
            builder.WriteVehicleHealth(health);

            builder.WriteCapped((byte)colors.Length - 1, 2);
            foreach (var color in colors)
            {
                builder.Write(color);
            }
            builder.WriteCapped(paintJob, 2);

            WriteVehicleDamage(damage.Doors, 3);
            WriteVehicleDamage(damage.Wheels, 2);
            WriteVehicleDamage(damage.Panels, 2);
            WriteVehicleDamage(damage.Lights, 2);


            builder.Write(variant1);
            builder.Write(variant2);

            if (turret != null)
            {
                builder.Write((short)(turret.Value.X * (32767.0f / MathF.PI)));
                builder.Write((short)(turret.Value.Y * (32767.0f / MathF.PI)));
            }

            if (adjustableProperty != null)
            {
                builder.WriteCompressed(adjustableProperty.Value);
            }

            foreach (var doorRatio in doorRatios)
            {
                if (doorRatio == 0 || doorRatio == 1)
                {
                    builder.Write(false);
                    builder.Write(doorRatio == 1);
                }
                else
                {
                    builder.Write(true);
                    builder.WriteFloatFromBits(doorRatio, 10, 0, 1, true);
                }
            }

            builder.Write((byte)upgrades.Length);
            foreach (var upgrade in upgrades)
            {
                builder.Write(upgrade);
            }

            builder.WriteStringWithoutLength(plateText.PadRight(8).Substring(0, 8));
            builder.WriteCapped(overrideLights, 2);

            builder.Write(isLandingGearDown);
            builder.Write(isSirenActive);
            builder.Write(isFuelTankExplodable);
            builder.Write(isEngineOn);
            builder.Write(isLocked);
            builder.Write(areDoorsUndamageable);
            builder.Write(isDamageProof);
            builder.Write(isFrozen);
            builder.Write(isDerailed);
            builder.Write(isDerailable);
            builder.Write(trainDirection);
            builder.Write(isTaxiLightOn);

            builder.WriteCompressed((byte)(255 - alpha));

            builder.Write(headlightColor != Color.White);
            if (headlightColor != Color.White)
            {
                builder.Write(headlightColor);
            }

            builder.Write(handling != null);
            if (handling != null)
            {
                WriteVehicleHandling(handling.Value);
            }

            WriteSirens(sirens);
        }
        void SetupVehicleComponents(VehicleController vehicle, bool enabled)
        {
            VehicleTelemetry     vehicleTelemetry = vehicle.GetComponent <VehicleTelemetry>();
            VehicleStandardInput vehicleInput     = vehicle.GetComponent <VehicleStandardInput>();
            VehicleDamage        vehicleDamage    = vehicle.GetComponent <VehicleDamage>();

            if (vehicleInput != null)
            {
                if (m_commonInput != null)
                {
                    if (overrideVehicleComponents)
                    {
                        vehicleInput.enabled  = false;
                        m_commonInput.enabled = true;
                        m_commonInput.target  = enabled ? vehicle : null;
                    }
                    else
                    {
                        vehicleInput.enabled  = enabled;
                        m_commonInput.enabled = false;
                    }
                }
                else
                {
                    vehicleInput.enabled = enabled;
                }
            }
            else
            {
                if (m_commonInput != null)
                {
                    m_commonInput.enabled = true;
                    m_commonInput.target  = enabled ? vehicle : null;
                }
            }

            if (vehicleTelemetry != null)
            {
                if (m_commonTelemetry != null)
                {
                    if (overrideVehicleComponents)
                    {
                        vehicleTelemetry.enabled  = false;
                        m_commonTelemetry.enabled = true;
                        m_commonTelemetry.target  = enabled ? vehicle : null;
                    }
                    else
                    {
                        vehicleTelemetry.enabled  = enabled;
                        m_commonTelemetry.enabled = false;
                    }
                }
                else
                {
                    vehicleTelemetry.enabled = enabled;
                }
            }
            else
            {
                if (m_commonTelemetry != null)
                {
                    m_commonTelemetry.enabled = true;
                    m_commonTelemetry.target  = enabled ? vehicle : null;
                }
            }

            if (vehicleDamage != null)
            {
                vehicleDamage.enableRepairKey = enabled;
            }
        }