public bool IsInput(EPlayerInput input) { if (_inputDic.ContainsKey(input)) { return(_inputDic[input]); } return(false); }
public void AddCondition(EPlayerState state, EPlayerInput input) { if (!_conditions.ContainsKey(state)) { _conditions[state] = new HashSet <EPlayerInput>(CommonIntEnumEqualityComparer <EPlayerInput> .Instance); } _conditions[state].Add(input); }
public bool IsInputEnalbed(EPlayerInput input) { foreach (var state in _gameStates) { if (!state.IsInputEnabled(input)) { return(false); } } return(true); }
public bool IsEnabled(EPlayerState state, EPlayerInput input) { if (!_conditions.ContainsKey(state)) { return(false); } if (!_conditions[state].Contains(input)) { return(false); } return(true); }
/// <summary> /// 屏蔽掉状态对应无效的输入 /// </summary> /// <param name="BlockUnavaliableInputs"></param> public void BlockUnavaliableInputs(IFilteredInput filteredInput) { for (int i = 0, maxi = unavaliableInputs.Count; i < maxi; i++) { EPlayerInput input = unavaliableInputs[i]; #if UNITY_EDITOR if (GlobalConst.EnableInputBlockLog && input == GlobalConst.serachedInput) { DebugUtil.MyLog("player state {0} block {1}", ownedState, input); } #endif filteredInput.SetInput(input, false); } }
public bool IsInputEnabled(EPlayerInput input) { return(avaliableInputs.Contains(input)); }
public bool IsInput(EPlayerInput input) { return(inputStates[(int)input]); }
public void SetInput(EPlayerInput input, bool val) { inputStates[(int)input] = val; }
public void BlockInput(EPlayerInput input) { _inputDic[input] = false; _blockedInputs.Add(input); }
public bool IsInputEnalbed(EPlayerInput input) { int index = currStateInputItems.FindIndex((state) => !state.IsInputEnabled(input)); return(index == -1); }
public void SetInput(EPlayerInput input, bool val) { _inputDic[input] = val; _blockedInputs.Remove(input); }
public bool IsInputBlocked(EPlayerInput input) { return(_blockedInputs.Contains(input)); }
public bool IsInput(EPlayerInput input) { return(false); }
public bool IsInputEnabled(EPlayerInput input) { return /*avaliableInputs.Contains(input)*/ (avaliableInputsContain[(int)input]); }
public bool IsInputBlocked(EPlayerInput input) { return(false); }
public void BlockInput(EPlayerInput input) { }
public void SetInput(EPlayerInput input, bool val) { }