public static int constructor(IntPtr l)
    {
        int result;

        try
        {
            GoodsType goodsTypeId;
            LuaObject.checkEnum <GoodsType>(l, 2, out goodsTypeId);
            int contentId;
            LuaObject.checkType(l, 3, out contentId);
            int nums;
            LuaObject.checkType(l, 4, out nums);
            ulong instanceId;
            LuaObject.checkType(l, 5, out instanceId);
            GoldUsableBagItem o = new GoldUsableBagItem(goodsTypeId, contentId, nums, instanceId);
            LuaObject.pushValue(l, true);
            LuaObject.pushValue(l, o);
            result = 2;
        }
        catch (Exception e)
        {
            result = LuaObject.error(l, e);
        }
        return(result);
    }
    public static int get_GoldCount(IntPtr l)
    {
        int result;

        try
        {
            GoldUsableBagItem goldUsableBagItem = (GoldUsableBagItem)LuaObject.checkSelf(l);
            LuaObject.pushValue(l, true);
            LuaObject.pushValue(l, goldUsableBagItem.GoldCount);
            result = 2;
        }
        catch (Exception e)
        {
            result = LuaObject.error(l, e);
        }
        return(result);
    }
    public static int HaveEffect(IntPtr l)
    {
        int result;

        try
        {
            GoldUsableBagItem goldUsableBagItem = (GoldUsableBagItem)LuaObject.checkSelf(l);
            IComponentOwner   owner;
            LuaObject.checkType <IComponentOwner>(l, 2, out owner);
            object[] param;
            LuaObject.checkParams <object>(l, 3, out param);
            int i = goldUsableBagItem.HaveEffect(owner, param);
            LuaObject.pushValue(l, true);
            LuaObject.pushValue(l, i);
            result = 2;
        }
        catch (Exception e)
        {
            result = LuaObject.error(l, e);
        }
        return(result);
    }