Exemplo n.º 1
0
    public List <Node> GetNeighbors(Node node, float maxDistance, ModelRefs <SolarModel> stars)
    {
        //Set neighbors

        node.neighbors = new List <Node>(stars.Count);
        for (int i = 0; i < stars.Count; i++)
        {
            if (nodes[i] == null)
            {
                nodes[i] = Node.NodeFromStar(i, stars);
            }
            node.neighbors.Add(nodes[i]);
            node.neighbors[i].distance = Node.GetDistance(node, node.neighbors[i]);
        }
        node.neighbors.Sort((n1, n2) => n1.distance.CompareTo(n2.distance));
        //Get neighbors
        List <Node> neighbors = new List <Node>();

        for (int i = 0; i < node.neighbors.Count; i++)
        {
            if (node.neighbors[i].distance < maxDistance && node.neighbors[i].distance != 0)
            {
                neighbors.Add(node.neighbors[i]);
            }
            else if (node.neighbors[i].distance != 0)
            {
                break;
            }
        }

        return(neighbors);
    }
Exemplo n.º 2
0
    internal static Node NodeFromStar(int index, ModelRefs <SolarModel> stars)
    {
        Node node = new Node(index, 1, stars[index].galacticPosition);

        node.index = index;
        return(node);
    }
Exemplo n.º 3
0
 public GovernmentModel(string _name, ModelRefs <CreatureModel> _leaders)
 {
     name         = _name;
     leaders      = _leaders;
     identityType = IdentityType.Government;
     GameManager.instance.data.governments.Add(this);
 }
Exemplo n.º 4
0
 // Use this for initialization
 void Start()
 {
     trees    = new ModelRefs <TreeModel>();
     seeds    = new GameObject("Seeds");
     date     = new Date();
     instance = this;
 }
Exemplo n.º 5
0
 private void Awake()
 {
     instance          = this;
     mapButtonCanvases = new List <Canvas>();
     hyperSpaceShips   = new ModelRefs <ShipModel>();
     game = GameManager.instance;
     cam  = game.GetComponent <Camera>();
 }
Exemplo n.º 6
0
    private void UpdateYAxisLabels(List <int> data, ModelRefs <AxisNumberModel> mod)
    {
        for (int i = 0; i < data.Count; i++)
        {
            mod[i].numberText = data[i].ToString();

            mod[i].NotifyChange();
        }
    }
Exemplo n.º 7
0
    private void UpdateXAxisLabels(List <int> dataNames, ModelRefs <AxisNumberModel> mod, ModelRefs <GraphNumberModel> graphMod)
    {
        int i = 0;

        foreach (int dataI in dataNames)
        {
            mod[i].numberText = model.dataNames[dataI];;
            mod[i].NotifyChange();

            graphMod[i].maxHeight = maxYValue;
            graphMod[i].height    = model.data[dataI, model.selectedDataPreference];
            graphMod[i].label     = model.data[dataI, model.selectedDataPreference].ToString();
            graphMod[i].NotifyChange();

            i++;
        }
    }
Exemplo n.º 8
0
    private void UpdateXAxisLabels(Dictionary <string, float> data, ModelRefs <AxisNumberModel> mod, ModelRefs <GraphNumberModel> graphMod)
    {
        int i = 0;

        foreach (KeyValuePair <string, float> dataPair in data)
        {
            mod[i].numberText = dataPair.Key;;
            mod[i].NotifyChange();

            graphMod[i].maxHeight = maxYValue;
            graphMod[i].height    = dataPair.Value;
            graphMod[i].label     = dataPair.Value.ToString();
            graphMod[i].NotifyChange();

            i++;
        }
    }
Exemplo n.º 9
0
    protected override void OnInitialize()
    {
        //Find GameObjects
        ToggleGroup[] toggleGroups = gameObject.GetComponentsInChildren <ToggleGroup>();
        dataNameGroup       = toggleGroups[0];
        dataPreferenceGroup = toggleGroups[1];

        //Set GameObjects
        yAxisModels       = new ModelRefs <AxisNumberModel>();
        xAxisModels       = new ModelRefs <AxisNumberModel>();
        graphNumberModels = new ModelRefs <GraphNumberModel>();

        //Reset Scale++
        transform.localScale = Vector3.one;

        title.text = "Bar Graph";

        //MessageListeners
        Message.AddListener <ToggleMessage>(OnToggleMessage);

        //CreateYAxis
        CalculateMaxYValue();


        foreach (int num in yDataPoints)
        {
            //Initiate Models
            AxisNumberModel mod = new AxisNumberModel();
            yAxisModels.Add(mod);

            //Set variables

            mod.numberText = num.ToString();

            //Initialize Controllers
            Controller.Instantiate <AxisNumberController>(yAxisNumber, mod, yAxisParent);
        }

        //Create XAxis
        foreach (int i in model.selectedDataNames)
        {
            float num = model.data[i, model.selectedDataPreference];
            xAxisPoints++;

            //Initiate Models
            AxisNumberModel  mod      = new AxisNumberModel();
            GraphNumberModel graphMod = new GraphNumberModel();
            xAxisModels.Add(mod);
            graphNumberModels.Add(graphMod);

            //Set variables
            mod.numberText = "--";

            graphMod.height    = num;
            graphMod.maxHeight = maxYValue;
            graphMod.width     = 20;
            graphMod.label     = num.ToString();

            //Initialize Controllers
            Controller.Instantiate <AxisNumberController>(xAxisNumber, mod, xAxisParent);
            Controller.Instantiate <GraphNumberController>(graphNumber, graphMod, graphParent);
        }

        //Create Toggle Buttons for the Toggle Group Data Names

        CreateToggleGroup("Data Names", model.dataNames, dataNameGroup.transform, false);
        CreateToggleGroup("Data Prefs", model.dataPrefs, dataPreferenceGroup.transform);

        title.text = model.title;
    }