//Make sure to add new actions to CollectActionInputs(List) method //Copies keybinds into other holder public void CopyInto(InputActionHolder holder) { holder.up = up.Copy(); holder.down = down.Copy(); holder.left = left.Copy(); holder.right = right.Copy(); holder.slow = slow.Copy(); holder.rotateLeft = rotateLeft.Copy(); holder.rotateRight = rotateRight.Copy(); holder.release = release.Copy(); holder.hook = hook.Copy(); holder.shoot = shoot.Copy(); holder.zoomIn = zoomIn.Copy(); holder.zoomOut = zoomOut.Copy(); }
InputAction CheckForIssues(InputAction currentInput, InputAction defaultInput) { Debug.Log("InputActionHolder: Checking " + currentInput + " against default " + defaultInput); //Check for null if (currentInput == null) { hadIssues = true; Debug.Log("InputActionHolder: missing action input for " + defaultInput.displayName); return(defaultInput.Copy()); } //Force name currentInput.displayName = defaultInput.displayName; if (currentInput.primary == null && currentInput.secondary == null) { Debug.Log("InputActionHolder: missing keybinds for " + defaultInput.displayName); defaultInput.CopyKeysInto(currentInput); hadIssues = true; } return(currentInput); }