示例#1
0
 /// <summary>
 /// 清空一个单位的Level1的Level2的事件列表
 /// </summary>
 /// <param name="objId">被清空单位ID</param>
 /// <param name="typeLevel1">被清空类型Level1</param>
 /// <param name="typeLevel2">被清空类型Level2</param>
 public void ClearSkillTriggerData(ObjectID objId, TriggerLevel1 typeLevel1, TriggerLevel2 typeLevel2)
 {
     if (triggerList.ContainsKey(objId))
     {
         var dicLevel1 = triggerList[objId];
         if (dicLevel1.ContainsKey(typeLevel1))
         {
             var dicLevel2 = dicLevel1[typeLevel1];
             if (dicLevel2.ContainsKey(typeLevel2))
             {
                 dicLevel2[typeLevel2].Clear();
             }
         }
     }
 }
示例#2
0
 static int ClearSkillTriggerData(IntPtr L)
 {
     try
     {
         ToLua.CheckArgsCount(L, 4);
         SkillManager  obj  = (SkillManager)ToLua.CheckObject(L, 1, typeof(SkillManager));
         ObjectID      arg0 = (ObjectID)ToLua.CheckObject(L, 2, typeof(ObjectID));
         TriggerLevel1 arg1 = (TriggerLevel1)ToLua.CheckObject(L, 3, typeof(TriggerLevel1));
         TriggerLevel2 arg2 = (TriggerLevel2)ToLua.CheckObject(L, 4, typeof(TriggerLevel2));
         obj.ClearSkillTriggerData(arg0, arg1, arg2);
         return(0);
     }
     catch (Exception e)
     {
         return(LuaDLL.toluaL_exception(L, e));
     }
 }
示例#3
0
 /// <summary>
 /// 取出事件数据列表
 /// </summary>
 /// <param name="objId">被取单位ID</param>
 /// <param name="type1">被取出类型Level1</param>
 /// <param name="type2">被取出类型Level2</param>
 /// <returns>如果有列表返回列表, 否则返回null</returns>
 public List <TriggerData> GetSkillTriggerDataList(ObjectID objId, TriggerLevel1 type1,
                                                   TriggerLevel2 type2)
 {
     if (triggerList.ContainsKey(objId))
     {
         var dicLevel1 = triggerList[objId];
         if (dicLevel1.ContainsKey(type1))
         {
             var dicLevel2 = dicLevel1[type1];
             if (dicLevel2.ContainsKey(type2))
             {
                 return(dicLevel2[type2]);
             }
         }
     }
     return(null);
 }
示例#4
0
    static int set_TriggerLevel1(IntPtr L)
    {
        object o = null;

        try
        {
            o = ToLua.ToObject(L, 1);
            SkillBase     obj  = (SkillBase)o;
            TriggerLevel1 arg0 = (TriggerLevel1)ToLua.CheckObject(L, 2, typeof(TriggerLevel1));
            obj.TriggerLevel1 = arg0;
            return(0);
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e, o == null ? "attempt to index TriggerLevel1 on a nil value" : e.Message));
        }
    }
示例#5
0
    static int get_TriggerLevel1(IntPtr L)
    {
        object o = null;

        try
        {
            o = ToLua.ToObject(L, 1);
            SkillBase     obj = (SkillBase)o;
            TriggerLevel1 ret = obj.TriggerLevel1;
            ToLua.Push(L, ret);
            return(1);
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e, o == null ? "attempt to index TriggerLevel1 on a nil value" : e.Message));
        }
    }
示例#6
0
 static int GetSkillTriggerDataList(IntPtr L)
 {
     try
     {
         ToLua.CheckArgsCount(L, 4);
         SkillManager  obj  = (SkillManager)ToLua.CheckObject(L, 1, typeof(SkillManager));
         ObjectID      arg0 = (ObjectID)ToLua.CheckObject(L, 2, typeof(ObjectID));
         TriggerLevel1 arg1 = (TriggerLevel1)ToLua.CheckObject(L, 3, typeof(TriggerLevel1));
         TriggerLevel2 arg2 = (TriggerLevel2)ToLua.CheckObject(L, 4, typeof(TriggerLevel2));
         System.Collections.Generic.List <TriggerData> o = obj.GetSkillTriggerDataList(arg0, arg1, arg2);
         ToLua.PushObject(L, o);
         return(1);
     }
     catch (Exception e)
     {
         return(LuaDLL.toluaL_exception(L, e));
     }
 }