static public void AddActionBinding(MSV_Action a, string name)
 {
     ActionBindings.Add(new ActionBinding()
     {
         Action = a, Name = name
     });
     ActionDirty = true;
 }
    static public bool GetAction(MSV_Action a)
    {
        if (ActionDirty)
        {
            ActionBindings.Sort();
        }
        ;
        var actionIdx = ActionBindings.FindIndex(search => a == search.Action);

        if (actionIdx == -1)
        {
            return(false);
        }
        while (actionIdx < ActionBindings.Count && ActionBindings[actionIdx].Action == a)
        {
            if (Input.GetButton(ActionBindings[actionIdx].Name))
            {
                return(true);
            }
            ++actionIdx;
        }
        return(false);
    }
 static public void RemoveActionBinding(MSV_Action a, string name)
 {
     ActionBindings.RemoveAll(search => a == search.Action && name == search.Name);
     ActionDirty = true;
 }