0
JavaからLuaに(X、Y)の位置を返すことができる必要があります。 C APIでは、値をスタックにプッシュして戻り値の数を返しますが、それはLuaJavaの処理方法とは違います。助言がありますか?LuaJavaで複数の値を返す
JavaからLuaに(X、Y)の位置を返すことができる必要があります。 C APIでは、値をスタックにプッシュして戻り値の数を返しますが、それはLuaJavaの処理方法とは違います。助言がありますか?LuaJavaで複数の値を返す
問題は、最初のパラメータが常にJavaFunctionオブジェクトそのものである可能性があります。 addmult
の2つの数値を受け取り、その合計と積を返す関数が欲しいとしましょう。次のように数値パラメータは、インデックス2および3として取得する必要があります:
JavaFunction addmult = new JavaFunction(L) {
@Override
public int execute() throws LuaException {
double x = L.toNumber(2);
double y = L.toNumber(3);
L.pushNumber(x+y);
L.pushNumber(x*y);
return 2;
}
};
addmult.register("addmult");
を今、あなたはあなたのコード内で同様の結果が得られます。
print(addmult(3, 5)) --> 8 13