Пример #1
0
 public ResourceDisplay(IMyTextPanel panel, IEnumerable <Container> containers)
 {
     _panel                   = panel;
     _containers              = containers;
     _ctx                     = new ResourceRendererContext();
     _renderer                = new ResourceListRenderer(_ctx);
     _ini                     = new IniProps(_panel.CustomData);
     _tags                    = _ini.GetString(resources, "tags");
     _allow                   = _ini.GetString(resources, "allow");
     _ctx.Name                = _ini.GetString(resources, "name", "Resources");
     _ctx.RowWidth            = _ini.GetInt(resources, "rowWidth", 32);
     _ctx.ResourceNameSpace   = _ini.GetInt(resources, "nameSpace", 8);
     _ctx.ResourceTypeSpace   = _ini.GetInt(resources, "typeSpace", 5);
     _ctx.AmountSpace         = _ini.GetInt(resources, "amountSpace", 7);
     _ctx.AmountDecimalDigits = _ini.GetInt(resources, "decimalDigits", 0);
 }
Пример #2
0
        public void ResourceDisplay()
        {
            ResourceRendererContext ctx = new ResourceRendererContext();

            ctx.RowWidth            = 38;
            ctx.ResourceNameSpace   = 10;
            ctx.ResourceTypeSpace   = 6;
            ctx.AmountSpace         = 8;
            ctx.MaxAmount           = (MyFixedPoint)10000;
            ctx.AmountDecimalDigits = 2;
            ResourceListRenderer display = new ResourceListRenderer(ctx);
            string result = display.Render(new ResourceItemRenderer[] {
                new ResourceItemRenderer(new ResourceStack(Ice, (MyFixedPoint)5000)),
                new ResourceItemRenderer(new ResourceStack(MagnesiumIngot, (MyFixedPoint)1334.44))
            });
            string expected =
                "[Resources -]" + NL +
                "--------------------------------------" + NL +
                "Ice       (Ore)    (||||....)  5000   " + NL +
                "Magnesium (Ingot)  (|.......)  1334.44";

            Assert.AreEqual(expected, result);
        }