docs: @SubscribeEvent
      public void onCheckSpawn(CheckSpawn cs)
      {
          // Decide whether or not to allow spawning.
          // We shouldn't allow spawning unless it has been specifically turned on - whether
          // a mission is running or not. (Otherwise spawning may happen in between missions.)
          boolean allowSpawning = false;
          if (currentMissionInit() != null && currentMissionInit().getMission() != null)
          {
              // There is a mission running - does it allow spawning?
              ServerSection ss = currentMissionInit().getMission().getServerSection();
              ServerInitialConditions sic = (ss != null) ? ss.getServerInitialConditions() : null;
              if (sic != null)
                  allowSpawning = (sic.isAllowSpawning() == Boolean.TRUE);
  
              if (allowSpawning && sic.getAllowedMobs() != null && !sic.getAllowedMobs().isEmpty())
              {
                  // Spawning is allowed, but restricted to our list.
                  // Is this mob on our list?
                  String mobName = EntityList.getEntityString(cs.getEntity());
                  allowSpawning = false;
                  for (EntityTypes mob : sic.getAllowedMobs())
                  {
                      if (mob.value().equals(mobName))
                      {
                          allowSpawning = true;
                          break;
                      }
                  }
              }
          }
          if (allowSpawning)
              cs.setResult(Result.DEFAULT);
          else
              cs.setResult(Result.DENY);
      }