diff --git a/src/LuaLib.ts b/src/LuaLib.ts index 2ab5d33ba..4e4c8008a 100644 --- a/src/LuaLib.ts +++ b/src/LuaLib.ts @@ -52,7 +52,6 @@ export enum LuaLibFeature { MathAtan2 = "MathAtan2", MathModf = "MathModf", MathSign = "MathSign", - Modulo50 = "Modulo50", New = "New", Number = "Number", NumberIsFinite = "NumberIsFinite", diff --git a/src/lualib/Modulo50.ts b/src/lualib/Modulo50.ts deleted file mode 100644 index 4b9729436..000000000 --- a/src/lualib/Modulo50.ts +++ /dev/null @@ -1,5 +0,0 @@ -/** @noSelfInFile */ - -export function __TS__Modulo50(a: number, b: number): number { - return a - Math.floor(a / b) * b; -} diff --git a/src/transformation/visitors/binary-expression/index.ts b/src/transformation/visitors/binary-expression/index.ts index 3b5521490..e02615be7 100644 --- a/src/transformation/visitors/binary-expression/index.ts +++ b/src/transformation/visitors/binary-expression/index.ts @@ -70,7 +70,8 @@ function transformBinaryOperationWithNoPrecedingStatements( } if (operator === ts.SyntaxKind.PercentToken && context.luaTarget === LuaTarget.Lua50) { - return transformLuaLibFunction(context, LuaLibFeature.Modulo50, node, left, right); + const mathMod = lua.createTableIndexExpression(lua.createIdentifier("math"), lua.createStringLiteral("mod")); + return lua.createCallExpression(mathMod, [left, right], node); } let luaOperator = simpleOperatorsToLua[operator];