public override bool Put(ContainerItemView item) { ContainerNodeView root = GetComponent <ContainerNodeView>(); if (item is ContainerNodeView) { if (((Tuple <string, SystemComponent>)item.GetModel()).Item2 is PowerComponent) { return(false); } root.AddNode <ContainerNodeView>((ContainerNodeView)item); } else { if (item.GetModel() is PowerComponent) { return(false); } int count = root.GetTree().Count(); if (count >= (int)ScreenManager.currentManager.sharedData["count"]) { return(false); } FindObjectOfType <ShipBuilderViewsUpdater>().SetCurrentCount(count + 1); root.AddNode(item.GetModel()); item.Release(); } return(true); }
protected virtual SystemLink GetLink(ContainerNodeView node) { if (node is SystemComponentView) { return(SystemLink.Pack(((SystemComponentView)node).GetItem())); } else { return(SystemLink.Pack(new FakeComponent())); } }
protected override SystemLink GetLink(ContainerNodeView node) { var l = node.GetModel(); if (l == null) { return(SystemLink.Pack(new FakeComponent())); } else { return(SystemLink.Pack(((SystemLink)l).item)); } }
public bool RemoveNode(ContainerNodeView node) { return(tree.RemoveTree(node)); }
public void AddNode(ContainerNodeView node) { node.transform.SetParent(content); tree.AddTree(node); UpdateNodes(); }