Пример #1
0
  public void pasteClipboard(InstanceData i, Vector where) {
    Log.debug("AsyncManager.pasteClipboard");
    DungeonData d = i.getDungeon();

    AsyncEditSession es =
        (AsyncEditSession) this.ess.getEditSession(InstancedDungeon.getIDungeonDim(), 999999999);
    // esRegistry.put(p, es);
    String p = es.getPlayer();
    Log.debug("Player is : " + p);
    es.setAsyncForced(true);
    es.setFastMode(true);

    AsyncCuboidClipboard cc = new AsyncCuboidClipboard(p, d.getSchematic());

    int id = bp.getJobId(p);
    id = id + 1;
    Log.debug("Job ID is reported as : " + id);
    fpRegistry.put(id, i);
    je.add(bp.getJob(p, id));
    this.bp.addListener((IBlockPlacerListener) this);
    cc.setOffset(new Vector(0, 0, 0));

    try {
      Log.debug("Doing Paste.");
      cc.paste(es, where, true);
      Log.debug("Post Paste.");

    } catch (MaxChangedBlocksException e) {
      e.printStackTrace();
    }
  }
Пример #2
0
  private RetVal subEntrance(ArrayList<String> arg, String pName) {
    Log.debug("CommandDungeon.subEntrance");
    RetVal r = new RetVal();

    if (arg.isEmpty()) {
      r.Err(
          Config.ecol
              + "Error - Invalid number of arguments! Command is /"
              + Config.command
              + " dungeon entrance <dungeon name> (while standing at the warp-in point)!");
      return r;
    }

    DungeonData d = DungeonManager.getDungeon(arg.get(0));
    if (d == null) {
      r.Err(Config.ecol + "Error - Invalid argument! '" + arg.get(0) + "' not a valid Dungeon!");
      return r;
    }

    InstanceData i = InstanceManager.getEditInstanceForDungeon(d.name);

    if (i == null) {
      r.Err(
          Config.ecol
              + "Error - Invalid argument! '"
              + arg.get(0)
              + "' does not have an edit Instance!");
      return r;
    }

    Location l = bridge.getPlayerLoc(pName);
    Vector v = l.getPosition();
    Vector vOff = v.subtract(i.getBounds().getMinimumPoint());

    d.setSpawn(vOff.getBlockX(), vOff.getBlockY(), vOff.getBlockZ(), l.getYaw(), l.getPitch());

    r.add("Successfully added spawn in location to Dungeon '" + arg.get(0) + "'");

    r.tru();

    return r;
  }