コード例 #1
0
ファイル: HyperCube.cs プロジェクト: Eternal-Team/MassStorage
        public override void SpecialDraw(int i, int j, SpriteBatch spriteBatch)
        {
            TileEntities.HyperCube hyperCube = Utility.GetTileEntity <TileEntities.HyperCube>(i, j);
            if (hyperCube == null)
            {
                return;
            }

            Tile tile = Main.tile[i, j];

            if (!tile.IsTopLeft())
            {
                return;
            }

            Item item = hyperCube.Handler.GetItemInSlot(0);

            if (item.IsAir)
            {
                return;
            }

            Vector2 position = new Point16(i + 1, j + 1).ToScreenCoordinates();

            spriteBatch.DrawItemInWorld(item, position + new Vector2(0, 2), new Vector2(16f));

            string  text = item.stack < 1000 ? item.stack.ToString() : item.stack.ToSI("N0");
            Vector2 size = Main.fontMouseText.MeasureString(text);

            ChatManager.DrawColorCodedStringWithShadow(spriteBatch, Main.fontMouseText, text, position - new Vector2(0, 4f), Color.White, 0f, size * 0.5f, new Vector2(0.6f));
        }
コード例 #2
0
ファイル: HyperCube.cs プロジェクト: Eternal-Team/MassStorage
        public override void KillMultiTile(int i, int j, int frameX, int frameY)
        {
            TileEntities.HyperCube hyperCube = Utility.GetTileEntity <TileEntities.HyperCube>(i, j);
            BaseLibrary.BaseLibrary.PanelGUI.UI.CloseUI(hyperCube);

            Item.NewItem(i * 16, j * 16, 32, 32, mod.ItemType <Items.HyperCube>());
            hyperCube.Kill(i, j);
        }
コード例 #3
0
ファイル: HyperCube.cs プロジェクト: Eternal-Team/MassStorage
        public override void RightClick(int i, int j)
        {
            TileEntities.HyperCube hyperCube = Utility.GetTileEntity <TileEntities.HyperCube>(i, j);
            if (hyperCube == null)
            {
                return;
            }

            BaseLibrary.BaseLibrary.PanelGUI.UI.HandleUI(hyperCube);
        }