ibbignerd

Beacon protection with Worldedit

Jan 10th, 2013
45
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /*/////////////////////////////////////////////////////////////////////
  2. // Created by: ibbignerd
  3. // Contact: http://www.reddit.com/message/compose/?to=ibbignerd
  4. // Version: 1.3.1
  5. // Date: 01/10/13 10:32:24
  6. // Plugins: WorldEdit by sk89q http://wiki.sk89q.com/wiki/WorldEdit
  7. //          WorldGuard by sky89q http://wiki.sk89q.com/wiki/WorldGuard
  8. // Script type: Craftscript
  9. // Language: JavaScript
  10. // Copyright: This work is licensed under a Creative Commons
  11. // Attribution-NonCommercial 3.0 United States License.
  12. //
  13. // Description: After selecting the beacon of a beacon tower, commands
  14. // can be run to create protections on each layer of the beacon.
  15. //
  16. /////////////////////////////////////////////////////////////////////*/
  17.  
  18. importPackage(Packages.com.sk89q.worldedit);
  19.  
  20. var session = context.getSession();
  21. var region = session.getRegion();
  22.  
  23. context.checkArgs(1, -1, "                                                                                                      1) define <id> <height not including beacon> <owner> [owner] [owner]...                                                                                                   2) delete <id> <height not including beacon>                                    3) add <id> <height not including beacon. If unknown, enter 4> <owner> [owner] [owner]...                                                                       4) remove <id> <height not including beacon. If unknown, enter 4> <owner> [owner] [owner]...");
  24. if(argv[1] == "define") {
  25.     for (var g = argv[3];g>0;g--) {
  26.         var id = argv[2];
  27.         var c = region.getMinimumPoint().getY() - 1;
  28.         var xmin = region.getMinimumPoint().getX();
  29.         var zmin = region.getMinimumPoint().getZ();
  30.         var xmax = region.getMaximumPoint().getX();
  31.         var zmax = region.getMaximumPoint().getZ();
  32.         var xmin = xmin - 1;
  33.         var zmin = zmin - 1;
  34.         var xmax = xmax + 1;
  35.         var zmax = zmax + 1;
  36.         var amin = Vector(xmin, c, zmin);
  37.         region.setPos1(amin);
  38.         var amax = Vector(xmax, c, zmax);
  39.         region.setPos2(amax);
  40.         var owners = "";
  41.         for (h=4;h<15;h++) {
  42.             if (typeof argv[h] !== 'undefined') {
  43.             owners = owners + argv[h] + " "
  44.             }
  45.         }
  46.         player.getPlayer().chat("/region define " + id + "_" + g +  " " + owners);
  47.     }
  48. }
  49.  
  50. if(argv[1] == "delete") {
  51.     if (typeof argv[3] == 'undefined') {
  52.         for (var j = 4;j>0;j--) {
  53.         player.getPlayer().chat("/region remove " + argv[2] + "_" + j);
  54.         }
  55.     }
  56.     else {
  57.         for (var i = argv[3];i>0;i--) {
  58.         player.getPlayer().chat("/region remove " + argv[2] + "_" + i);
  59.         }
  60.     }
  61. }
  62.  
  63. if(argv[1] == "add") {
  64.    
  65.     for (var k = 4;k>0;k--) {
  66.         var addowners = "";
  67.         for (l=4;l<15;l++) {
  68.             if (typeof argv[l] !== 'undefined') {
  69.             addowners = addowners + argv[l] + " ";
  70.             }
  71.         }
  72.     player.getPlayer().chat("/region addowner " + argv[2] + "_" + k + " " + addowners);
  73.     }
  74. }
  75. if(argv[1] == "remove") {
  76.     for (var k = 4;k>0;k--) {
  77.         var removeowners = "";
  78.         for (m=4;m<15;m++) {
  79.             if (typeof argv[m] !== 'undefined') {
  80.             removeowners = removeowners + argv[m] + " ";
  81.             }
  82.         }
  83.     player.getPlayer().chat("/region removeowner " + argv[2] + "_" + k + " " + removeowners);
  84.     }
  85. }
Add Comment
Please, Sign In to add comment