コード例 #1
0
        private void Awake()
        {
            // Adds each key currently in player prefs or set to deault to a dictionary.
            // Adds each text element to a dictionary.

            keys.Add("Forward", (KeyCode)System.Enum.Parse(typeof(KeyCode), PlayerPrefs.GetString("Forward", "W")));
            keytexts.Add("Forward", forwardButton);
            keys.Add("Backward", (KeyCode)System.Enum.Parse(typeof(KeyCode), PlayerPrefs.GetString("Backward", "S")));
            keytexts.Add("Backward", backwardButton);
            keys.Add("Left", (KeyCode)System.Enum.Parse(typeof(KeyCode), PlayerPrefs.GetString("Left", "A")));
            keytexts.Add("Left", leftButton);
            keys.Add("Right", (KeyCode)System.Enum.Parse(typeof(KeyCode), PlayerPrefs.GetString("Right", "D")));
            keytexts.Add("Right", rightButton);
            keys.Add("Jump", (KeyCode)System.Enum.Parse(typeof(KeyCode), PlayerPrefs.GetString("Jump", "Space")));
            keytexts.Add("Jump", jumpButton);
            keys.Add("Inventory", (KeyCode)System.Enum.Parse(typeof(KeyCode), PlayerPrefs.GetString("Inventory", "Tab")));
            keytexts.Add("Inventory", inventoryButton);
            keys.Add("Cancel", (KeyCode)System.Enum.Parse(typeof(KeyCode), PlayerPrefs.GetString("Cancel", "Escape")));
            keytexts.Add("Cancel", cancelButton);
            keys.Add("Interact", (KeyCode)System.Enum.Parse(typeof(KeyCode), PlayerPrefs.GetString("Interact", "E")));
            keytexts.Add("Interact", interactButton);
            keys.Add("Sprint", (KeyCode)System.Enum.Parse(typeof(KeyCode), PlayerPrefs.GetString("Sprint", "LeftShift")));
            keytexts.Add("Sprint", sprintButton);
            keys.Add("Crouch", (KeyCode)System.Enum.Parse(typeof(KeyCode), PlayerPrefs.GetString("Crouch", "LeftControl")));
            keytexts.Add("Crouch", crouchButton);

            // Sets each text element to the corresponding keybind.
            foreach (KeyValuePair <string, Text> item in keytexts)
            {
                foreach (KeyValuePair <string, KeyCode> keyValuePair in keys)
                {
                    if (item.Key.Equals(keyValuePair.Key))
                    {
                        item.Value.text = keyValuePair.Value.ToString();
                        break;
                    }
                }
            }

            if (!inMenu)
            {
                // Find objects incase we need them (only when in game)
                player    = FindObjectOfType <Movement>();
                inventory = FindObjectOfType <UIInventory>();
                interact  = FindObjectOfType <Interact>();
                pause     = FindObjectOfType <PauseMenu>();
            }

            // Sets gameobject inactive after completing awake.
            gameObject.SetActive(false);
        }
コード例 #2
0
 private void Start()
 {
     linearInventory = FindObjectOfType <LinearInventory>();
     uIInventory     = FindObjectOfType <UIInventory>();
 }