コード例 #1
0
ファイル: KBind.cs プロジェクト: mvaganov/20210131_ggj2021
 public bool HasModifier(KModifier m)
 {
     if (modifiers == null || modifiers.Length == 0)
     {
         return(false);
     }
     for (int i = 0; i < modifiers.Length; ++i)
     {
         if (modifiers[i].Equals(m))
         {
             return(true);
         }
     }
     return(false);
 }
コード例 #2
0
ファイル: KBind.cs プロジェクト: mvaganov/20210131_ggj2021
        public bool AddModifier(KModifier kCode)
        {
            KModifier mod = (KModifier)kCode;             //new Modifier(kCode);

            if (HasModifier(mod))
            {
                return(false);
            }
            List <KModifier> mods = new List <KModifier>();

            if (modifiers != null)
            {
                mods.AddRange(modifiers);
            }
            mods.Add(mod);
            mods.Sort();
            modifiers = mods.ToArray();
            return(true);
        }
コード例 #3
0
 public static void Bind(IList <KBind> KeyBinds, KCode kCode, KModifier modifier, string name, string methodName, object value = null, object target = null)
 {
     KeyBinds.Add(new KBind(new KCombo(kCode, modifier), name, pressFunc: new EventBind(target, methodName, value)));
 }
コード例 #4
0
ファイル: KBind.cs プロジェクト: mvaganov/20210131_ggj2021
 public KCombo(KCode key, KModifier modifier) : this(key) {
     if (modifier != KModifier.None)
     {
         AddModifier(modifier);
     }
 }
コード例 #5
0
 public void KeyBind(KCode kCode, KModifier modifier, string name, string methodName, object value = null, object target = null)
 {
     Bind(KeyBinds, kCode, modifier, name, methodName, value, target);
 }