public void CatchBlock2(Player sender, BlockChangeEventArgs args)
 {
     args.Unregister();
     Vector3S FirstBlock = (Vector3S)sender.GetDatapass("CmdDatapassExample_FirstBlock");
     Vector3S SecondBlock = new Vector3S(args.X, args.Z, args.Y);
     sender.SendMessage("This is where we would initiate a Cuboid!");
 }
        //public void CatchBlock2(Player p, ushort x, ushort z, ushort y, byte NewType, bool placed, object DataPass)
        public void CatchBlock2(Player sender, BlockChangeEventArgs args)
        {
            args.Cancel();
            args.Unregister();
            sender.SendBlockChange(args.X, args.Z, args.Y, sender.Level.GetBlock(args.X, args.Z, args.Y));
            CatchPos cpos = (CatchPos)sender.GetDatapass("CmdMeasure_cpos");
            Vector3S FirstBlock = cpos.FirstBlock;
            ushort   xx, zz, yy;
            int      count = 0;

            for (xx = Math.Min((ushort)(FirstBlock.x), args.X); xx <= Math.Max((ushort)(FirstBlock.x), args.X); ++xx)
            {
                for (zz = Math.Min((ushort)(FirstBlock.z), args.Z); zz <= Math.Max((ushort)(FirstBlock.z), args.Z); ++zz)
                {
                    for (yy = Math.Min((ushort)(FirstBlock.y), args.Y); yy <= Math.Max((ushort)(FirstBlock.y), args.Y); ++yy)
                    {
                        if (cpos.ignore == null || !cpos.ignore.Contains(sender.Level.GetBlock(xx, zz, yy)))
                        {
                            count++;
                        }
                    }
                }
            }
            sender.SendMessage(count + " blocks are between (" + FirstBlock.x + ", " + FirstBlock.z + ", " + FirstBlock.y + ") and (" + args.X + ", " + args.Z + ", " + args.Y + ")");
        }
Example #3
0
        public void CatchBlock2(Player sender, BlockChangeEventArgs args)
        {
            args.Unregister();
            Vector3S FirstBlock  = (Vector3S)sender.GetDatapass("CmdDatapassExample_FirstBlock");
            Vector3S SecondBlock = new Vector3S(args.X, args.Z, args.Y);

            sender.SendMessage("This is where we would initiate a Cuboid!");
        }
Example #4
0
        private void OnPlayerBlockChangeOnNormal2(Player sender, BlockChangeEventArgs args)
        {
            args.Unregister();
            args.Cancel();
            var data = (KeyValuePair <KeyValuePair <string, byte>, Vector3D>)sender.GetDatapass(Name);

            new Zone(data.Value, new Vector3D(args.X, args.Z, args.Y), sender, data.Key.Key, data.Key.Value);
        }
 public void CatchBlock(Player sender, BlockChangeEventArgs args)
 {
     args.Unregister();
     Vector3S FirstBlock = new Vector3S(args.X, args.Z, args.Y);
     sender.SendMessage("Please place another block...");
     sender.SetDatapass("CmdDatapassExample_FirstBlock", FirstBlock);
     sender.OnPlayerBlockChange.Normal += new BlockChangeEvent.EventHandler(CatchBlock2);
 }
Example #6
0
        public void CatchBlock(Player sender, BlockChangeEventArgs args)
        {
            args.Unregister();
            Vector3S FirstBlock = new Vector3S(args.X, args.Z, args.Y);

            sender.SendMessage("Please place another block...");
            sender.SetDatapass("CmdDatapassExample_FirstBlock", FirstBlock);
            sender.OnPlayerBlockChange.Normal += new BlockChangeEvent.EventHandler(CatchBlock2);
        }
Example #7
0
 public void BC1(Player p, BlockChangeEventArgs args)
 {
     p.ExtraData["Mark1"] = new Vector3S(args.X, args.Z, args.Y);
     p.SendMessage("First coordinate marked. (" + args.X + ", " + args.Z + ", " + args.Y + ")");
     args.Unregister();
     args.Cancel();
     p.SendMessage("Break or place a block to select the second point.");
     p.OnPlayerBlockChange.Normal += new BlockChangeEvent.EventHandler(BC2);
 }
 //public void CatchBlock(Player p, ushort x, ushort z, ushort y, byte NewType, bool placed, object DataPass)
 public void CatchBlock(Player sender, BlockChangeEventArgs args)
 {
     CatchPos cpos = (CatchPos)sender.GetDatapass("CmdReplaceNot_cpos");
     cpos.pos = new Vector3S(args.X, args.Z, args.Y);
     args.Unregister();
     sender.SetDatapass("CmdReplaceNot_cpos", cpos);
     sender.OnPlayerBlockChange.Normal += new BlockChangeEvent.EventHandler(CatchBlock2);
     //p.CatchNextBlockchange(CatchBlock2, (object)cpos);
 }
Example #9
0
 public void CatchBlock(Player sender, BlockChangeEventArgs args)
 {
     CatchPos cpos = (CatchPos)sender.GetDatapass("CmdReplace_cpos"); ;
     cpos.pos = new Vector3S(args.X, args.Y, args.Z);
     args.Unregister();
     args.Cancel();
     sender.SetDatapass("CmdReplace_cpos", cpos);
     sender.OnPlayerBlockChange.Normal += new BlockChangeEvent.EventHandler(CatchBlock2);
 }
Example #10
0
 public void BC1(Player p, BlockChangeEventArgs args)
 {
     p.ExtraData["Mark1"] = new Vector3S(args.X, args.Z, args.Y);
     p.SendMessage("First coordinate marked. (" + args.X + ", " + args.Z + ", " + args.Y + ")");
     args.Unregister();
     args.Cancel();
     p.SendMessage("Break or place a block to select the second point.");
     p.OnPlayerBlockChange.Normal += new BlockChangeEvent.EventHandler(BC2);
 }
Example #11
0
        private void OnPlayerBlockChangeOnNormal(Player sender, BlockChangeEventArgs args)
        {
            args.Unregister();
            args.Cancel();
            var data = (KeyValuePair <string, byte>)sender.GetDatapass(Name);

            sender.SetDatapass(Name, new KeyValuePair <KeyValuePair <string, byte>, Vector3D>(data, new Vector3D(args.X, args.Z, args.Y)));
            sender.SendMessage("Now, please place a 2nd block to finish defining the region");
            sender.OnPlayerBlockChange.Normal += OnPlayerBlockChangeOnNormal2;
        }
Example #12
0
 //public void CatchBlock(Player p, ushort x, ushort z, ushort y, byte NewType, bool placed, object DataPass)
 public void CatchBlock(Player sender, BlockChangeEventArgs args) {
     args.Cancel();
     args.Unregister();
     sender.SendBlockChange(args.X, args.Z, args.Y, sender.Level.GetBlock(args.X, args.Z, args.Y));
     CatchPos cpos = (CatchPos)sender.GetDatapass("CmdMeasure_cpos");
     cpos.FirstBlock = new Vector3S(args.X, args.Z, args.Y);
     sender.SetDatapass("CmdMeasure_cpos", cpos);
     sender.OnPlayerBlockChange.Normal += new BlockChangeEvent.EventHandler(CatchBlock2);
     //p.CatchNextBlockchange(new Player.BlockChangeDelegate(CatchBlock2), (object)cpos);
 }
        //public void CatchBlock(Player p, ushort x, ushort z, ushort y, byte NewType, bool placed, object DataPass)
        public void CatchBlock(Player sender, BlockChangeEventArgs args)
        {
            args.Cancel();
            args.Unregister();
            sender.SendBlockChange(args.X, args.Z, args.Y, sender.Level.GetBlock(args.X, args.Z, args.Y));
            CatchPos cpos = (CatchPos)sender.GetDatapass("CmdMeasure_cpos");

            cpos.FirstBlock = new Vector3S(args.X, args.Z, args.Y);
            sender.SetDatapass("CmdMeasure_cpos", cpos);
            sender.OnPlayerBlockChange.Normal += new BlockChangeEvent.EventHandler(CatchBlock2);
            //p.CatchNextBlockchange(new Player.BlockChangeDelegate(CatchBlock2), (object)cpos);
        }
Example #14
0
 public void BC2(Player p, BlockChangeEventArgs args)
 {
     Vector3S _s = new Vector3S();
     p.ExtraData["Mark2"] = new Vector3S(args.X, args.Z, args.Y);
     p.SendMessage("Second coordinate marked. (" + args.X + ", " + args.Z + ", " + args.Y + ")");
     args.Unregister();
     args.Cancel();
     Vector3S m1 = (Vector3S)p.ExtraData["Mark1"];
     Vector3S m2 = (Vector3S)p.ExtraData["Mark2"];
     p.SendMessage("Marked coordinates:");
     p.SendMessage("(" + m1.x + ", " + m1.z + ", " + m1.y + "), (" + m2.x + ", " + m2.z + ", " + m2.y + ")");
     p.ExtraData["HasMarked"] = true;
 }
Example #15
0
        public void BC2(Player p, BlockChangeEventArgs args)
        {
            Vector3S _s = new Vector3S();

            p.ExtraData["Mark2"] = new Vector3S(args.X, args.Z, args.Y);
            p.SendMessage("Second coordinate marked. (" + args.X + ", " + args.Z + ", " + args.Y + ")");
            args.Unregister();
            args.Cancel();
            Vector3S m1 = (Vector3S)p.ExtraData["Mark1"];
            Vector3S m2 = (Vector3S)p.ExtraData["Mark2"];

            p.SendMessage("Marked coordinates:");
            p.SendMessage("(" + m1.x + ", " + m1.z + ", " + m1.y + "), (" + m2.x + ", " + m2.z + ", " + m2.y + ")");
            p.ExtraData["HasMarked"] = true;
        }
Example #16
0
 //public void CatchBlock2(Player p, ushort x, ushort z, ushort y, byte NewType, bool placed, object DataPass)
 public void CatchBlock2(Player sender, BlockChangeEventArgs args) {
     args.Cancel();
     args.Unregister();
     sender.SendBlockChange(args.X, args.Z, args.Y, sender.Level.GetBlock(args.X, args.Z, args.Y));
     CatchPos cpos = (CatchPos)sender.GetDatapass("CmdMeasure_cpos");
     Vector3S FirstBlock = cpos.FirstBlock;
     ushort xx, zz, yy;
     int count = 0;
     for (xx = Math.Min((ushort)(FirstBlock.x), args.X); xx <= Math.Max((ushort)(FirstBlock.x), args.X); ++xx)
         for (zz = Math.Min((ushort)(FirstBlock.z), args.Z); zz <= Math.Max((ushort)(FirstBlock.z), args.Z); ++zz)
             for (yy = Math.Min((ushort)(FirstBlock.y), args.Y); yy <= Math.Max((ushort)(FirstBlock.y), args.Y); ++yy) {
                 if (cpos.ignore == null || !cpos.ignore.Contains(sender.Level.GetBlock(xx, zz, yy))) {
                     count++;
                 }
             }
     sender.SendMessage(count + " blocks are between (" + FirstBlock.x + ", " + FirstBlock.z + ", " + FirstBlock.y + ") and (" + args.X + ", " + args.Z + ", " + args.Y + ")");
 }