public static int GetRandomNumberByAccumulateWeight(IntPtr l) { int result; try { RandomNumber randomNumber = (RandomNumber)LuaObject.checkSelf(l); Dictionary <int, int> weights; LuaObject.checkType <Dictionary <int, int> >(l, 2, out weights); int randomNumberByAccumulateWeight = randomNumber.GetRandomNumberByAccumulateWeight(weights); LuaObject.pushValue(l, true); LuaObject.pushValue(l, randomNumberByAccumulateWeight); result = 2; } catch (Exception e) { result = LuaObject.error(l, e); } return(result); }