Exemplo n.º 1
0
    void Start()
    {
        ServerPlacedScript server    = GameData.CurrentServer;
        InputField         nameField = this.transform.Find("Server Name").GetComponent <InputField>();

        nameField.text = server.data.serverName;

        nameField.onValueChanged.AddListener(delegate
        {
            server.data.serverName = nameField.text;
        });
    }
Exemplo n.º 2
0
    void Start()
    {
        ServerPlacedScript server = GameData.CurrentServer;

        foreach (int port in server.data.portsOpen)
        {
            EnablePort(port);
        }

        PortHandler(server, "OpenFTP", new int[] { 20, 21 });
        PortHandler(server, "OpenSSH", new int[] { 22 });
        PortHandler(server, "OpenSMTP", new int[] { 25 });
        PortHandler(server, "OpenHTTP", new int[] { 80 });
    }
    void SetCoolingLvlValue()
    {
        ServerPlacedScript server = GameData.CurrentServer;

        this.transform.Find("Cooling Lvl").GetChild(0).GetComponent <Text>().text = server.data.coolingUpgrades + " / " + Settings.MAX_SECURITY_UPGRADES;

        if (server.data.coolingUpgrades < Settings.MAX_COOLING_UPGRADES)
        {
            coolingUpgradeBtn.GetComponentInChildren <Text>().text = "£" + Settings.COOLING_UPGRADE_COST + " Cooling Upgrade";
        }
        else
        {
            coolingUpgradeBtn.GetComponentInChildren <Text>().text = "Maximum Upgrades";
            coolingUpgradeBtn.interactable = false;
        }
    }
    void SetSecurityLvlValue()
    {
        ServerPlacedScript server = GameData.CurrentServer;

        securityLvlText.text = server.data.securityUpgrades + " / " + Settings.MAX_SECURITY_UPGRADES;

        if (server.data.securityUpgrades < Settings.MAX_SECURITY_UPGRADES)
        {
            securityUpgradeBtn.GetComponentInChildren <Text>().text = "£" + Settings.SECURITY_UPGRADE_COST + " Security Upgrade";
        }
        else
        {
            securityUpgradeBtn.GetComponentInChildren <Text>().text = "Maximum Upgrades";
            securityUpgradeBtn.interactable = false;
        }
    }
Exemplo n.º 5
0
    private void PortHandler(ServerPlacedScript server, string portName, int[] portNums)
    {
        Transform obj = this.transform.Find(portName);

        ButtonToggle toggle = obj.GetComponent <ButtonToggle>();

        obj.GetComponent <Button>().onClick.AddListener(delegate
        {
            listeners.Add(delegate
            {
                if (toggle.isDown)
                {
                    server.data.portsOpen.AddRange(portNums);
                }
                else
                {
                    foreach (int clientId in server.data.clients)
                    {
                        Client client = GameData.storage.clients.GetClient(clientId);
                        if (Array.Exists(client.reqPorts, i => Array.Exists(portNums, j => j == i)))
                        {
                            this.transform.Find("Do not turn off ports").gameObject.SetActive(true);
                            toggle.Down();
                            return;
                        }
                    }

                    server.data.portsOpen.RemoveAll(delegate(int i)
                    {
                        foreach (int p in portNums)
                        {
                            if (p == i)
                            {
                                return(true);
                            }
                        }
                        return(false);
                    });
                }
            });
        });
    }
    // Use this for initialization
    void Start()
    {
        ServerPlacedScript server             = GameData.CurrentServer;
        ServerDef          def                = server.data.def;
        Slider             overclockingSlider = this.transform.Find("Overclocking Slider").GetComponent <Slider>();

        overclockingSlider.value = server.data.overclockedPercent;
        overclockingSlider.onValueChanged.AddListener(delegate
        {
            server.data.overclockedPercent = overclockingSlider.value;
        });

        securityLvlText = this.transform.Find("Security Lvl").GetChild(0).GetComponent <Text>();
        coolingLvlText  = this.transform.Find("Cooling Lvl").GetChild(0).GetComponent <Text>();

        securityUpgradeBtn = this.transform.Find("Security Upgrade").GetComponent <Button>();
        coolingUpgradeBtn  = this.transform.Find("Cooling Upgrade").GetComponent <Button>();

        SetSecurityLvlValue();
        SetCoolingLvlValue();

        securityUpgradeBtn.onClick.AddListener(delegate
        {
            if (server.data.securityUpgrades < Settings.MAX_SECURITY_UPGRADES)
            {
                GameObject.Find("Money").GetComponent <economy>().DecreaseProfit(Settings.SECURITY_UPGRADE_COST);
                server.data.securityUpgrades++;
                SetSecurityLvlValue();
            }
        });

        coolingUpgradeBtn.GetComponent <Button>().onClick.AddListener(delegate
        {
            if (server.data.coolingUpgrades < Settings.MAX_COOLING_UPGRADES)
            {
                GameObject.Find("Money").GetComponent <economy>().DecreaseProfit(Settings.COOLING_UPGRADE_COST);
                server.data.coolingUpgrades++;
                SetCoolingLvlValue();
            }
        });
    }
Exemplo n.º 7
0
    void Display()
    {
        ServerPlacedScript server = GameData.CurrentServer;
        ServerDef          def    = server.data.def;

        float cpu     = 0;
        float ram     = 0;
        int   storage = 0;

        if (server.data.clients.Count > 0)
        {
            cpu     = System.Math.Min(System.Math.Max(server.data.cpuUsage + GetRandomFluctuation(RANDOM_CPU_FLUCTUATION, 1), 0), server.data.def.cpu);
            ram     = System.Math.Min(System.Math.Max(server.data.ramUsage + GetRandomFluctuation(RANDOM_RAM_FLUCTUATION, 2), 0), server.data.def.ram);
            storage = (int)System.Math.Min(System.Math.Max(server.data.storageUsed + GetRandomFluctuation(RANDOM_STORAGE_FLUCTUATION, 1), 0), server.data.def.capacity);
        }

        SetText("Processor", cpu.ToString("N1") + " / " + server.data.overclockedCPU.ToString("N1") + " Ghz");
        SetColourWarning("Processor", server.data.cpuUsage / server.data.overclockedCPU, d => d >= 0.60, d => d >= 0.90);

        SetText("RAM", ram.ToString("N1") + " / " + def.ram + " Gb");
        SetColourWarning("RAM", server.data.ramUsage / def.ram, d => d >= 0.60, d => d >= 0.90);

        SetText("Storage", FormatStorage(storage) + " / " + def.capacity + " Gb");
        SetColourWarning("Storage", server.data.storageUsed / def.capacity, d => d >= 0.60, d => d >= 0.90);

        SetText("Security", server.data.securityLevel + "%");
        SetColourWarning("Security", server.data.securityLevel, d => d <= 50, d => d <= 35);

        SetText("Temperature", server.data.temperature + "\u2103");
        SetColourWarning("Temperature", server.data.temperature, d => d >= 55, d => d >= 70);

        SetText("Power Usage", server.data.powerUsage + " W");
        SetColourWarning("Power Usage", server.data.powerUsage, d => d >= 300, d => d >= 500);

        SetText("Cost Per Month", "\u00A3" + server.data.costPerMonth);
        this.transform.Find("Cost Per Month").GetChild(0).GetComponent <Text>().color = Settings.NEUTRAL_WARNING;
    }
    // Use this for initialization
    void Start()
    {
        ServerPlacedScript server = GameData.CurrentServer;

        clientObj  = this.transform.Find("Client Info");
        toggleList = this.transform.Find("Clients List").Find("List").GetComponent <ButtonToggleList>();

        clientObj.Find("Remove Client").GetComponent <Button>().onClick.AddListener(delegate
        {
            if (client != null)
            {
                removeClientWindow.gameObject.SetActive(true);
                removeClientWindow.client = client;
            }
        });

        int i = 0;

        foreach (int clientId in server.data.clients)
        {
            Client     client     = GameData.storage.clients.GetClient(clientId);
            GameObject clientItem = (GameObject)Instantiate(clientPrefab);

            clientItem.GetComponentInChildren <Text>().text = client.reqName;
            clientItem.transform.SetParent(list, false);

            clientItem.GetComponent <Button>().onClick.AddListener(delegate
            {
                this.client = client;
            });

            clientList.Add(client, clientItem);

            i++;
        }
    }
    // Update is called once per frame
    void Update()
    {
        if (client == null)
        {
            return;
        }

        if (toggleList.selected == null)
        {
            clientObj.gameObject.SetActive(false);
            return;
        }
        else
        {
            clientObj.gameObject.SetActive(true);
        }

        ServerPlacedScript server = GameData.CurrentServer;
        ServerDef          def    = server.data.def;

        SetText(clientObj, "Ports Open", string.Join(", ", client.reqPorts));
        clientObj.Find("Ports Open").GetChild(0).GetComponent <Text>().color = Settings.NEUTRAL_WARNING;

        double perc = client.clientCPU / server.data.overclockedCPU;

        SetText(clientObj, "CPU Utilisation", client.clientCPU.ToString("N1") + " Ghz (" + (perc * 100).ToString("N1") + "%)");
        SetColourWarning(clientObj, "CPU Utilisation", perc, d => d >= 0.60, d => d >= 0.90);

        perc = client.clientRAM / def.ram;
        SetText(clientObj, "RAM", client.clientRAM.ToString("N1") + " Gb (" + (perc * 100).ToString("N1") + "%)");
        SetColourWarning(clientObj, "RAM", perc, d => d >= 0.60, d => d >= 0.90);

        perc = client.clientStorage / def.capacity;
        SetText(clientObj, "Storage", client.clientStorage + " Gb (" + (perc * 100).ToString("N1") + "%)");
        SetColourWarning(clientObj, "Storage", perc, d => d >= 0.60, d => d >= 0.90);
    }
Exemplo n.º 10
0
    private void RemoveServer(System.Object server)
    {
        ServerPlacedScript sps = (ServerPlacedScript)server;

        SceneManager.UnloadSceneAsync(this.gameObject.scene);
    }