User: Помоги мне писать скрипты для Denizen плагина майнкрафт. Я кину тебе пару примеров скриптов, а ты мне должен будешь помочь. Понял?
Assistant: Да, я понял! Присылайте примеры скриптов, и я помогу вам с их улучшением или созданием новых.
User: Запомни этот скрипт:

911:
    type: command
    usage: /911 arg
    name: 911
    tab complete:
    - choose <context.args.size>:
      - case 0:
        - determine 'Опишите суть вызова и никнейм нарушителя при необходимости'
      - case 1:
        - if <context.args.get[1].advanced_matches[жалоба]||false> && <context.raw_args.split[].last.equals[<&sp>].not>:
          - determine 'Опишите суть вызова и никнейм нарушителя при необходимости'
    script:
        - if <player.in_group[police]>:
            - narrate '<&f>[<&c>!<&f>]<&c> ФПС не может вызывать ФПС!'
        - else:
            - if <player.has_flag[police.call].not> && <player.has_flag[police.cooldown].not>:
                - define count <server.online_players.filter[in_group[police]].size>
                - define message <context.args.get[1].to[<context.args.size>].separated_by[<&sp>]||null>
                - if <[message]> == null:
                    - narrate '<&f>[<&c>!<&f>]<&c> Укажите суть вызова!'
                    - stop
                - flag <player> police.call expire:5m
                - flag <player> police.cooldown expire:5m
                - narrate '<&f>Вы вызвали гвардию, в сети гвардейцов: <&6><[count]>' targets:<player>
                - narrate '<&6>⚠<&f> Игрок <&6><player.name><&f> вызывает гвардию! <&6><&lb><player.location.block.xyz.replace_text[,].with[,<&sp>]>, <player.world.name><&rb><n><&f>✉ <&7>» <&6><[message]><n><&7>Используйте <&6><element[/takecall <player.name>].on_hover[Нажмите, чтобы принять<&6> вызов].on_click[/takecall <player.name>].type[RUN_COMMAND]><&7> чтобы принять вызов' targets:<server.online_players.filter[in_group[police]]>
                - playsound <server.online_players.filter[in_group[police]]> sound:ENTITY_PLAYER_LEVELUP
                - playsound <player> sound:ENTITY_PLAYER_LEVELUP
                - wait 5960t
                #- wait 1150t
                - if <player.has_flag[police.call]>:
                    - narrate '<&f>[<&c>!<&f>]<&c> Ваш вызов никто не принял!'
                    - narrate '<&f>[<&c>!<&f>]<&c> Никто не принял вызов игрока <&6><player.name><&c>! M1atrix разозлился!' targets:<server.online_players.filter[in_group[police]]>
                    - stop
            - else:
                - define message <context.args.get[1].to[<context.args.size>].separated_by[<&sp>]||null>
                - if <[message]> == 'cancel':
                    - narrate '<&f>[<&c>!<&f>]<&c> <&6><player.name><&c> отменил вызов!' targets:<server.online_players.filter[in_group[police]]>
                    - narrate '<&f>[<&c>!<&f>]<&c> Вы отменили вызов!'
                    - flag <player> police.call:!
                    - stop
                - narrate '<&f>[<&c>!<&f>]<&c> Вы уже вызвали ФПС! Подождите еще <player.flag_expiration[police.cooldown].add[1t].duration_since[<util.time_now>].formatted.replace_text[s].with[с].replace_text[m].with[м].replace_text[h].with[ч].replace_text[d].with[д]>'

takecall:
    type: command
    usage: /takecall
    name: takecall
    permission: dmc.police
    tab complete:
        - define violators <server.online_players_flagged[police.call].parse[name]>
        - foreach <[violators]>:
            - determine <[value]>
    script:
        - define violator <context.args.get[1]||null>
        - if <server.match_player[<[violator]>]||null> == null:
            - narrate '<&c>Введите ник пострадавшего!'
            - stop
        - if <server.match_player[<[violator]>].is_online.not>:
            - narrate '<&c>Такого игрока не существует или он не онлайн!'
            - stop
        - if <server.match_player[<[violator]>].has_flag[police.call].not>:
            - narrate '<&c>У игрока <[violator]> нет вызова!'
            - stop
        - flag <server.match_player[<[violator]>]> police.call:!
        - narrate '<&f>Вы приняли вызов игрока <&6><[violator]><&f>!<n>Выдвигайтесь на <&6><&lb><server.match_player[<[violator]>].location.block.xyz.replace_text[,].with[,<&sp>]>, <server.match_player[<[violator]>].world.name><&rb><&f> чтобы решить его проблему' targets:<player>
        #- flag server calls.<util.time_now.month_name>:++
        - flag server telemetry.911.players.monthly.<player.name>.<util.time_now.month_name>:++
        - flag server telemetry.911.server.monthly.<util.time_now.month_name>:++
        - define date <util.time_now.format[dd/MM/yy]>
        - flag server telemetry.911.players.daily.<player.name>.<[date]>:++
        - flag server telemetry.911.server.daily.<[date]>:++
        - define weak <util.time_now.format[W/MM/yy]>
        - flag server telemetry.911.players.weekly.<player.name>.<[weak]>:++
        - flag server telemetry.911.server.weekly.<[weak]>:++
        - narrate '<&6>⚠<&f> Игрок <&6><player.name><&f> принял вызов игрока <&6><[violator]><&f>!' targets:<server.online_players.filter[in_group[police]].exclude[<player>]>
        - playsound sound:entity_player_levelup targets:<server.online_players.filter[in_group[police]]>
        - narrate '<&6>⚠<&f> Гвардеец <&6><player.name><&f> принял ваш вызов! Ожидайте его прибытия в ближайшее время' targets:<server.match_player[<[violator]>]>
        - playsound sound:entity_player_levelup targets:<server.match_player[<[violator]>]>

guardians:
    type: command
    usage: /guardians arg nick
    name: guardians
    tab complete:
        - choose <context.args.size>:
            - case 0:
                - if <player.has_permission[dmc.invite]> && <player.has_permission[dmc.uninvite]>:
                    - determine <list[invite|uninvite|online|telemetry]>
                - else:
                    - determine online
            - case 1:
                - if <context.args.get[1].advanced_matches[invite|uninvite|online|telemetry]||false> && <context.raw_args.split[].last.equals[<&sp>].not>:
                    - determine <list>
                - if <context.args.get[1].advanced_matches[invite|uninvite|online|telemetry].not> && <context.raw_args.split[].last.equals[<&sp>].not>:
                    - define matchingActions <list[invite|uninvite|online|telemetry].filter[advanced_matches[<context.args.get[1]>*]]||<list>>
                    - determine <[matchingActions]>
                - choose <context.args.get[1]>:
                    - case invite:
                        - determine <server.online_players.parse[name]>
                    - case uninvite:
                        - determine <server.online_players.parse[name]>
                    - case online:
                        - determine <empty>
                    - case telemetry:
                        - determine <list[server|player]>
                    - default:
                        - determine <list>
            - case 2:
                - if <context.args.get[2].advanced_matches[player|server]||false> && <context.raw_args.split[].last.equals[<&sp>].not>:
                    - determine <list>
                - if <context.args.get[2].advanced_matches[player|server].not> && <context.raw_args.split[].last.equals[<&sp>].not>:
                    - define matchingActions <list[player|server].filter[advanced_matches[<context.args.get[2]>*]]||<list>>
                    - determine <[matchingActions]>
                - choose <context.args.get[2]>:
                    - case player:
                        - determine <server.online_players.filter[in_group[police]].parse[name]>

    script:
    - define action <context.args.get[1]||null>
    - if <[action].advanced_matches[invite|uninvite|online|telemetry].not||true>:
      - narrate '<&c>Выберите действие! (invite|uninvite|online)'
      - stop
    - choose <[action]>:
      - case invite:
        - if <player.has_permission[dmc.invite].not> && <player.has_permission[dmc.uninvite].not>:
            - narrate '<&c>Вы не глава МВД!'
            - stop
        - define player <context.args.get[2]||null>
        - if <[player]> == null:
            - narrate '<&c>Введите имя игрока!'
            - stop
        - if <server.match_offline_player[<[player]>].in_group[police]>:
            - narrate '<&c>Игрок и так уже в составе гвардии
            - stop
        - execute as_server 'lp user <[player]> parent add police'
        - narrate '<&a>Поздравляем! Вы были приняты в гвардию!' targets:<server.match_player[<[player]>]>
        - playsound sound:entity_player_levelup <server.match_player[<[player]>]>
        - narrate '<&a>Игрок <[player]> был принят в гвардию!' targets:<player>
      - case uninvite:
        - if <player.has_permission[dmc.invite].not> && <player.has_permission[dmc.uninvite].not>:
            - narrate '<&c>Вы не глава МВД!'
            - stop
        - define player <context.args.get[2]||null>
        - if <[player]> == null:
            - narrate '<&c>Введите имя игрока!'
            - stop
        - if <server.match_offline_player[<[player]>].in_group[police].not>:
            - narrate '<&c>Игрок и так уже не гвардеец!'
            - stop
        - execute as_server 'lp user <[player]> parent remove police'
        - narrate '<&c>Поздравляем! Вы были уволены нахуй и потеряли звание гвардейца!' targets:<server.match_player[<[player]>]>
        - playsound sound:block_anvil_destroy <server.match_player[<[player]>]>
        - narrate '<&a>Игрок <[player]> был уволен с гвардии!' targets:<player>
      - case online:
        - narrate '<&a>Гвардейцев онлайн: <&6><server.online_players.filter[in_group[police]].size>' targets:<player>
      - case telemetry:
        - if <player.has_permission[dmc.invite].not> && <player.has_permission[dmc.uninvite].not>:
            - narrate '<&c>Вы не глава МВД!'
            - stop
        - choose <context.args.get[2]||null>:
            - default:
                - narrate "<&c>Unrecognised command!"
            - case player:
                - define player_name <context.args.get[3]||null>
                - define player_data <server.flag[telemetry.911.players.daily.<[player_name]>]||null>
                - if <[player_data]> == null:
                    - narrate "<&c>Wrong player or empty telemetry!"
                    - stop
                - narrate "<&7><[player_name]> 911 telemetry:"
                - narrate " <&7>Accepted calls:"
                - define 911 <server.flag[telemetry.911.players.daily.<[player_name]>].reverse||<map>>
                - define 9111 <server.flag[telemetry.911.server.monthly]||<map>>
                - narrate <[9111].parse_value_tag[<&sp><&sp><&7><[parse_key].to_titlecase><&co><&sp><[parse_value]>].values.separated_by[<n>]>
                - narrate <[911].parse_value_tag[<&sp><&sp><&7><[parse_key].to_titlecase><&co><&sp><[parse_value]>].values.separated_by[<n>]>
            - case server:
                - narrate "<&7>Server 911 telemetry:"
                - narrate " <&7>Accepted calls:"
                - define 911 <server.flag[telemetry.911.server.daily].reverse||<map>>
                - define 9111 <server.flag[telemetry.911.server.monthly]||<map>>
                - narrate <[9111].parse_value_tag[<&sp><&sp><&7><[parse_key].to_titlecase><&co><&sp><[parse_value]>].values.separated_by[<n>]>
                - narrate <[911].parse_value_tag[<&sp><&sp><&7><[parse_key].to_titlecase><&co><&sp><[parse_value]>].values.separated_by[<n>]>
      - default:
        - narrate "<&c>Unrecognised command!"
Assistant: