示例#1
0
        private void UpdateBottomDisplays()
        {
            var net = (Envoy.ComputeValue(EnvoyColumns.SelectedResources) + EnvoyColumns.TradeMoney) -
                      (Envoy.ComputeValue(PlayerColumns.SelectedResources) + PlayerColumns.TradeMoney);

            TotalDisplay.Text = String.Format("${0}", net);
            TotalDisplay.Invalidate();

            SpaceDisplay.Text = String.Format("{0}/{1}",
                                              EnvoyColumns.TotalSelectedItems - PlayerColumns.TotalSelectedItems,
                                              Player.AvailableSpace);
            SpaceDisplay.Invalidate();
        }
示例#2
0
 private void UpdateLineItemText(Widget LineItem, ResourceAmount Resource)
 {
     LineItem.GetChild(1).Text = String.Format("{0} at ${1}e",
                                               Resource.NumResources,
                                               ValueSourceEntity.ComputeValue(Resource.ResourceType));
     LineItem.GetChild(1).Invalidate();
 }
示例#3
0
        private void UpdateLineItemText(Widget LineItem, ResourceAmount Resource)
        {
            var resourceInfo = ResourceLibrary.GetResourceByName(Resource.ResourceType);

            LineItem.GetChild(1).Text = resourceInfo.ShortName ?? resourceInfo.ResourceName;
            LineItem.GetChild(1).Invalidate();
            LineItem.GetChild(2).Text = String.Format("{0}",
                                                      ValueSourceEntity.ComputeValue(Resource.ResourceType));
            var counter = LineItem.GetChild(0).Children.Last();

            counter.Text = Resource.NumResources.ToString();
            counter.Invalidate();
            LineItem.GetChild(0).Invalidate();
            LineItem.Tooltip = resourceInfo.ResourceName + "\n" + resourceInfo.Description;
            for (int i = 0; i < 3; i++)
            {
                if (i > 0)
                {
                    LineItem.GetChild(i).TextColor = Resource.NumResources > 0
                        ? Color.Black.ToVector4()
                        : new Vector4(0.5f, 0.5f, 0.5f, 0.5f);
                }
                LineItem.GetChild(i).BackgroundColor = Resource.NumResources > 0
                    ? resourceInfo.Tint.ToVector4()
                    : new Vector4(0.5f, 0.5f, 0.5f, 0.5f);
                LineItem.GetChild(i).Tooltip = resourceInfo.ResourceName + "\n" + resourceInfo.Description;
                LineItem.GetChild(i).Invalidate();
            }
        }
示例#4
0
        private void UpdateLineItemText(Widget LineItem, ResourceAmount Resource)
        {
            var resourceInfo = Library.GetResourceType(Resource.Type);
            var font         = LineItem.Root.GetTileSheet("font10");
            var label        = resourceInfo.ShortName ?? resourceInfo.Name;

            if (font != null)
            {
                Point measurements = font.MeasureString(resourceInfo.ShortName ?? resourceInfo.Name);
                label = font.WordWrapString(label, 1.0f, 128 / GameSettings.Default.GuiScale, LineItem.WrapWithinWords);
                if (128 / GameSettings.Default.GuiScale < measurements.X)
                {
                    LineItem.MinimumSize.Y = font.TileHeight * label.Split('\n').Length;
                }
            }
            LineItem.GetChild(1).Text = label;
            LineItem.GetChild(1).Invalidate();
            LineItem.GetChild(2).Text = String.Format("{0}",
                                                      ValueSourceEntity.ComputeValue(Resource.Type));
            var counter = LineItem.GetChild(0).Children.Last();

            counter.Text = Resource.Count.ToString();
            counter.Invalidate();
            LineItem.GetChild(0).Invalidate();
            LineItem.Tooltip = resourceInfo.Name + "\n" + resourceInfo.Description;
            for (int i = 0; i < 3; i++)
            {
                if (i > 0)
                {
                    LineItem.GetChild(i).TextColor = Resource.Count > 0
                        ? Color.Black.ToVector4()
                        : new Vector4(0.5f, 0.5f, 0.5f, 0.5f);
                }
                LineItem.GetChild(i).BackgroundColor = Resource.Count > 0
                    ? resourceInfo.Tint.ToVector4()
                    : new Vector4(0.5f, 0.5f, 0.5f, 0.5f);
                LineItem.GetChild(i).Tooltip = resourceInfo.Name + "\n" + resourceInfo.Description;
                LineItem.GetChild(i).Invalidate();
            }
        }
示例#5
0
 private void UpdateLineItemText(Widget LineItem, TradeableItem Resource)
 {
     if (Resource.Prototype != null)
     {
         var font  = LineItem.Root.GetTileSheet("font10");
         var label = Resource.Prototype.DisplayName;
         if (font != null)
         {
             Point measurements = font.MeasureString(label);
             label = font.WordWrapString(label, 1.0f, 128 / GameSettings.Current.GuiScale, LineItem.WrapWithinWords);
             if (128 / GameSettings.Current.GuiScale < measurements.X)
             {
                 LineItem.MinimumSize.Y = font.TileHeight * label.Split('\n').Length;
             }
         }
         LineItem.GetChild(1).Text = label;
         LineItem.GetChild(1).Invalidate();
         LineItem.GetChild(2).Text = String.Format("{0}", ValueSourceEntity.ComputeValue(Resource.Prototype));
         LineItem.GetChild(0).Text = Resource.Count.ToString();
         LineItem.GetChild(0).Invalidate();
         LineItem.Tooltip = Resource.Prototype.DisplayName + "\n" + Resource.Prototype.Description;
         for (int i = 0; i < 3; i++)
         {
             if (i > 0)
             {
                 LineItem.GetChild(i).TextColor = Resource.Count > 0
                     ? Color.Black.ToVector4()
                     : new Vector4(0.5f, 0.5f, 0.5f, 0.5f);
             }
             LineItem.GetChild(i).BackgroundColor = Resource.Count > 0
                 ? Resource.Prototype.Tint.ToVector4()
                 : new Vector4(0.5f, 0.5f, 0.5f, 0.5f);
             LineItem.GetChild(i).Tooltip = Resource.Prototype.DisplayName + "\n" + Resource.Prototype.Description;
             LineItem.GetChild(i).Invalidate();
         }
     }
 }
示例#6
0
 private DwarfBux ComputeNetValue(List <ResourceAmount> playerResources, DwarfBux playerTradeMoney,
                                  List <ResourceAmount> envoyResources, DwarfBux envoyMoney)
 {
     return((Envoy.ComputeValue(playerResources) + playerTradeMoney) - (Envoy.ComputeValue(envoyResources) + envoyMoney));
 }
示例#7
0
 private DwarfBux ComputeNetValue()
 {
     return(Player.ComputeValue(PlayerColumns.SelectedResources) * 0.25f);
 }
示例#8
0
 private DwarfBux ComputeNetValue()
 {
     return(Player.ComputeValue(PlayerColumns.SelectedResources.SelectMany(i => i.Resources).ToList()) * 0.25f);
 }