Exemplo n.º 1
0
        public void OpenJailMenu()
        {
            var job = JobManager.GetModule().GetJob <PoliceJob>();

            CaseBuilder = new JailCase();

            new Menu($"{job.Label} | Fängsla person")
            {
                Items = new List <MenuItem>
                {
                    new MenuItem("security", "Säkerhet")
                    {
                        Profile = new MenuProfileSlider
                        {
                            Translations = CaseBuilder.GetSecurityLevels()
                        }
                    },
                    new MenuItem("pursue_case", "Fänsla")
                },
                Callback = (menu, item, operation) =>
                {
                    if (operation.Type != MenuOperationType.Select)
                    {
                        return;
                    }
                }
            }.Commit();
        }
Exemplo n.º 2
0
        private void ChangeType()
        {
            switch (SelectedCaseType.ToLower())
            {
            case "empty":
                Case = new EmptyCase();
                break;

            case "property":
                Case = new PropertyCase();
                break;

            case "chance":
                Case = new ChanceCase();
                break;

            case "chest":
                Case = new ChestCase();
                break;

            case "jail":
                Case = new JailCase();
                break;

            case "station":
                Case = new StationCase();
                break;

            case "tax":
                Case = new TaxCase();
                break;
            }
        }
Exemplo n.º 3
0
        public void SetInactive(JailCase jailCase)
        {
            var temp = ZoneBlip;

            API.RemoveBlip(ref temp);

            ZoneBlip = 0;
        }
Exemplo n.º 4
0
        public void SetActive(JailCase jailCase)
        {
            var position = Positions[jailCase.JailSecurity].AsVector();
            var temp     = ZoneBlip;

            API.RemoveBlip(ref temp);

            var blip = API.AddBlipForRadius(position.X, position.Y, position.Z, 300f);

            API.SetBlipColour(blip, 6);
            API.SetBlipAlpha(blip, 75);

            ZoneBlip = blip;
        }
Exemplo n.º 5
0
        public async void Unjail(JailCase jailCase)
        {
            Atlas.DetachTickHandler(OnTick);

            if (jailCase.HasEscaped)
            {
                return;
            }

            API.DoScreenFadeOut(0);

            await Cache.Entity.Teleport(ReleasePosition);

            await BaseScript.Delay(3000);

            API.DoScreenFadeIn(5000);

            LastJailCase = null;
        }
Exemplo n.º 6
0
        public async void Jail(JailCase jailCase)
        {
            API.DoScreenFadeOut(0);

            var character = Cache.Character;

            Chat.SendGlobalMessage("Fängelse",
                                   $"{character.Fullname} Har blivit fängslad i {jailCase.GetDate(jailCase.IssuedAt)} med {jailCase.GetSecurity().ToLower()} säkerhet:",
                                   Color.FromArgb(255, 0, 0));
            Chat.SendGlobalMessage($"- {jailCase.Crime}", Color.FromArgb(255, 255, 255));

            await Cache.Entity.Teleport(Positions[jailCase.JailSecurity]);

            SetActive(jailCase);

            jailCase.Commit(character);
            LastJailCase = jailCase;

            Atlas.AttachTickHandler(OnTick);

            await BaseScript.Delay(3000);

            API.DoScreenFadeIn(5000);
        }
Exemplo n.º 7
0
        /// <summary>
        /// Fill the default cases :
        /// -Start
        /// -Parking
        /// -Jail
        /// -FreeJail
        /// </summary>
        public void FillDefaultCase()
        {
            Cases.Clear();
            for (var i = 0; i < NumberCase - 1; i++)
            {
                AbstractCase createCase = new EmptyCase();
                switch (i)
                {
                case 0:
                    createCase = new ParkingCase();
                    break;

                case 10:
                    createCase = new JailCase();
                    break;

                case 29:
                    createCase = new FreeJail();
                    break;
                }
                Cases.Add(createCase);
            }
            Cases.Add(new StartCase());
        }