コード例 #1
0
        public void ChangeVehicleColor(Client sender, string primaryHex, string secondaryHex, long vehicleId = -1)
        {
            if (!sender.HasRank(ServerRank.AdministratorRozgrywki2))
            {
                sender.SendWarning("Nie posiadasz uprawnień do ustawiania koloru pojazdu.");
                return;
            }

            if (!sender.IsInVehicle && vehicleId == -1)
            {
                sender.SendWarning("Wsiądź do pojazu lub podaj Id aby ustawić jego kolor.");
                return;
            }

            VehicleEntity vehicle = sender.IsInVehicle
                ? sender.Vehicle.GetVehicleEntity()
                : EntityHelper.GetVehicle(vehicleId);

            Color primaryColor;
            Color secondaryColor;

            try
            {
                primaryColor   = primaryHex.ToColor();
                secondaryColor = secondaryHex.ToColor();
            }
            catch (ColorConvertException e)
            {
                sender.SendError("Wprowadzony kolor jest nieprawidłowy.");
                Colorful.Console.WriteLine($"[Error] {nameof(AdminGroupsScript)} Nieprawidłowy kolor", System.Drawing.Color.DarkRed);
                Colorful.Console.WriteLine(e.Message, System.Drawing.Color.DarkRed);
                return;
            }

            vehicle?.ChangeColor(primaryColor, secondaryColor);
        }