예제 #1
0
 public override void OnSlide(params object[] args)
 {
     list.Clear();
     if (showFour)
     {
         list.AddRange(GameResources.GetAllShiphulls().Select(h => h.name));
     }
     else
     {
         list.AddRange(GameResources.GetAllShiphulls().Where(h => h.shipClass != 4).Select(h => h.name));
     }
 }
예제 #2
0
    public override void OnSlide(params object[] args)
    {
        screenSlider.sharedData.Clear();

        ships.Clear();
        ships.AddRange(GameResources.GetShipsNames());
    }
예제 #3
0
    public void SetUI(LinksGroup[] groups)
    {
        linkGroups.Clear();

        linkGroups.AddRange(groups);

        this.groups = groups.Select(g => mvb.GetView <LinksGroupViewBehaviour>(g.link)).ToArray();

        theme.UpdateTheme();
    }
예제 #4
0
 protected override void OnSetModel(ref object model)
 {
     string[] arr = (string[])model;
     list.Clear();
     list.AddRange((string[])model);
     for (int i = 0; i < arr.Length; i++)
     {
         int index = i;
         ((StringInputContainerView)list.GetItem(i)).onValueChanged += s => arr[index] = s;
     }
     UpdateValue((string[])model);
 }
예제 #5
0
    public override void OnSlide(params object[] args)
    {
        inventory.Clear();
        string buildMode = (string)screenSlider.sharedData["BuildMode"];

        switch (buildMode)
        {
        case "edit":
            string shipName = (string)screenSlider.sharedData["shipName"];
            if (shipName != "")
            {
                var model = (ShipSystemModel)screenSlider.sharedData["ShipModel"];
                var kc    = model.system.BuildForest(n => new TreeNode <Tuple <string, SystemComponent> >(new Tuple <string, SystemComponent>("", n.item)));
                model.GetKeys(kc, (n, k) => n.item.Item1 = k);

                systemTree.SetTree(kc.BuildForest(n => new TreeNode <object>(n.item)));

                screenSlider.sharedData.Add("hullName", model.hull.hullName);
            }
            else
            {
                throw new System.Exception("shipName's null. Please put shipName arg to the sharedData if you want edit ship.");
            }
            break;

        case "new":
            break;

        case "free":
            break;
        }

        var hull = GameResources.GetShipHull((string)screenSlider.sharedData["hullName"]);

        inventory.AddRange(Enumerable.Range(0, 5).SelectMany(i => Inventory.GetExamples(i)).Concat(Inventory.GetBaseExamples(hull.shipClass)).Select(c => new InfiniteStack <SystemComponent>(c)));

        var count = hull.GetTackleCount();

        screenSlider.sharedData.Add("count", count);
        countText.text = "0 / " + count.ToString();
    }
예제 #6
0
 void UpdateView()
 {
     stage.SetModel(campaign.current);
     resourceList.Clear();
     resourceList.AddRange(campaign.resources);
 }