コード例 #1
0
    void Start()
    {
        var conversationDisables = new List <PAction>(new [] {
            PAction.Attack
        });

        var cutsceneDisables = new List <PAction>(new [] {
            PAction.Attack,
            PAction.OpenInventory
        });

        var tiedDownPuzzleDisables = new List <PAction>(new [] {
            PAction.Move,
            PAction.Attack
        });

        Debug.Log(AllowedAction(PAction.Move) + ", " + AllowedAction(PAction.Attack) + "," + AllowedAction(PAction.OpenInventory));
        var tiedPuzDisablesToken = allowedActions.AddLens(new Lens <List <PAction> >(
                                                              0,
                                                              (actions) => actions.Except(tiedDownPuzzleDisables).ToList()
                                                              ));

        Debug.Log(AllowedAction(PAction.Move) + ", " + AllowedAction(PAction.Attack) + "," + AllowedAction(PAction.OpenInventory));
        var cutsceneDisablesToken = allowedActions.AddLens(new Lens <List <PAction> >(
                                                               0,
                                                               (actions) => actions.Except(cutsceneDisables).ToList()
                                                               ));

        Debug.Log(AllowedAction(PAction.Move) + ", " + AllowedAction(PAction.Attack) + "," + AllowedAction(PAction.OpenInventory));
        cutsceneDisablesToken.Remove();
        Debug.Log(AllowedAction(PAction.Move) + ", " + AllowedAction(PAction.Attack) + "," + AllowedAction(PAction.OpenInventory));
        tiedPuzDisablesToken.Remove();
        Debug.Log(AllowedAction(PAction.Move) + ", " + AllowedAction(PAction.Attack) + "," + AllowedAction(PAction.OpenInventory));
    }
コード例 #2
0
ファイル: InputManager.cs プロジェクト: Houkz/My-Repo
        public LensToken ActivateContext(InputContext inputContext)
        {
            LensToken token = currentInputContext.AddLens(new Lens <InputContext>(context =>
            {
                return(inputContext);
            }));

            return(token);
        }