Paste #16810: Edit of P#16809 - Maintenance Mode v0.1

Date: 2015/06/23 12:12:49 UTC-07:00
Type: Denizen Script

View Raw Paste Download This Paste
Copy Link


MaintenanceMode:
  type: world
  events:
    on server start:
    - while true {
      - if <server.has_flag[maintenanceEnabled]> {
        - foreach <server.list_online_players> {
          - while !<player.has_permission[denizen.maintenance.bypass]> {
            - execute as_server "kick <player.name> Server is undergoing maintenance. Check back in a little while!"
            } else {
            - narrate "<green>MaintenanceMode enabled."
          }
        }
      }
    on player join:
    - if <server.has_flag[maintenanceEnabled]> && !<player.has_permission[denizen.maintenance.bypass]> {
      - execute as_server "kick <player.name> Server is undergoing maintenance. Check back in a little while!"
      } else {
      - narrate "<green>MaintenanceMode is enabled."
      }   
MaintenanceEnableCommand:
  type: command
  name: enablemaintenance
  description: Toggle on maintenance mode.
  usage: /enablemaintenance
  permission: denizen.maintenance.enable
  script:
  - announce "<aqua>Maintenance mode will be enabled in 30 seconds!"
  - wait 30s
  - announce "<aqua>Maintenance mode enabled."
  - flag global maintenanceEnabled
MaintenanceDisableCommand:
  type: command
  name: disablemaintenance
  description: Toggle off maintenance mode.
  usage: /disablemaintenance
  permission: denizen.maintenance.disable
  script:
  - announce "<aqua>Maintenance mode will be disabled in 30 seconds!"
  - wait 30s
  - announce "<aqua>Maintenance mode disabled."
  - flag global maintenanceEnabled:!