#pragma once extern "C" { #include #include "duktape.h" } #include "polycode/core/PolyBasicFileProvider.h" #include "polycode/core/PolyBezierCurve.h" #include "polycode/core/PolyBone.h" #include "polycode/core/PolyCamera.h" #include "polycode/core/PolyColor.h" #include "polycode/core/PolyConfig.h" #include "polycode/core/PolyCore.h" #include "polycode/core/PolyCoreFileProvider.h" #include "polycode/core/PolyCoreInput.h" #include "polycode/core/PolyCoreServices.h" #include "polycode/core/PolyCubemap.h" #include "polycode/core/PolyData.h" #include "polycode/core/PolyEntity.h" #include "polycode/core/PolyEvent.h" #include "polycode/core/PolyEventDispatcher.h" #include "polycode/core/PolyEventHandler.h" #include "polycode/core/PolyFont.h" #include "polycode/core/PolyGlobals.h" #include "polycode/core/PolyGPUDrawBuffer.h" #include "polycode/core/PolyImage.h" #include "polycode/core/PolyInputEvent.h" #include "polycode/core/PolyInputKeys.h" #include "polycode/core/PolyLabel.h" #include "polycode/core/PolyMaterial.h" #include "polycode/core/PolyMatrix4.h" #include "polycode/core/PolyMesh.h" #include "polycode/core/PolyObject.h" #include "polycode/core/PolyOpenGLGraphicsInterface.h" #include "polycode/core/PolyPAAudioInterface.h" #include "polycode/core/PolyParticleEmitter.h" #include "polycode/core/PolyPerlin.h" #include "polycode/core/PolyPhysFSFileProvider.h" #include "polycode/core/PolyQuaternion.h" #include "polycode/core/PolyQuaternionCurve.h" #include "polycode/core/PolyRay.h" #include "polycode/core/PolyRectangle.h" #include "polycode/core/PolyRenderDataArray.h" #include "polycode/core/PolyRenderer.h" #include "polycode/core/PolyResource.h" #include "polycode/core/PolyResourceManager.h" #include "polycode/core/PolyScene.h" #include "polycode/core/PolySceneEntityInstance.h" #include "polycode/core/PolySceneLabel.h" #include "polycode/core/PolySceneLight.h" #include "polycode/core/PolySceneLine.h" #include "polycode/core/PolySceneManager.h" #include "polycode/core/PolySceneMesh.h" #include "polycode/core/PolyScenePrimitive.h" #include "polycode/core/PolySceneRenderTexture.h" #include "polycode/core/PolySceneSound.h" #include "polycode/core/PolySceneSprite.h" #include "polycode/core/PolyScript.h" #include "polycode/core/PolyShader.h" #include "polycode/core/PolySkeleton.h" #include "polycode/core/PolySound.h" #include "polycode/core/PolySoundManager.h" #include "polycode/core/PolyString.h" #include "polycode/core/PolyTexture.h" #include "polycode/core/PolyTimer.h" #include "polycode/core/PolyTimerManager.h" #include "polycode/core/PolyVector2.h" #include "polycode/core/PolyVector3.h" #include "polycode/core/PolyVector4.h" using namespace std; namespace Polycode { duk_ret_t Polycode_BezierCurve(duk_context *context) { BezierCurve *inst = new BezierCurve(); duk_push_pointer(context, (void*)inst); return 1; } duk_ret_t Polycode_BezierCurve__get_insertPoint(duk_context *context) { BezierCurve *inst = (BezierCurve*)duk_to_pointer(context, 0); PolyBase *ptrRetVal = (PolyBase*)inst->insertPoint; duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_BezierCurve__set_insertPoint(duk_context *context) { BezierCurve *inst = (BezierCurve*)duk_to_pointer(context, 0); inst->insertPoint = (BezierPoint*)duk_to_pointer(context, 1); return 0; } duk_ret_t Polycode_BezierCurve__get_evaluationAccuracy(duk_context *context) { BezierCurve *inst = (BezierCurve*)duk_to_pointer(context, 0); duk_push_number(context, inst->evaluationAccuracy); return 1; } duk_ret_t Polycode_BezierCurve__set_evaluationAccuracy(duk_context *context) { BezierCurve *inst = (BezierCurve*)duk_to_pointer(context, 0); inst->evaluationAccuracy = duk_to_number(context, 1); return 0; } duk_ret_t Polycode_BezierCurve__delete(duk_context *context) { BezierCurve *inst = (BezierCurve*)duk_to_pointer(context, 0); delete inst; return 0; } duk_ret_t Polycode_BezierCurve_getControlPoint(duk_context *context) { BezierCurve *inst = (BezierCurve*)duk_to_pointer(context, 0); int index = duk_to_int(context, 1); PolyBase *ptrRetVal = (PolyBase*)inst->getControlPoint(index); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_BezierCurve_getNumControlPoints(duk_context *context) { BezierCurve *inst = (BezierCurve*)duk_to_pointer(context, 0); duk_push_int(context, inst->getNumControlPoints()); return 1; } duk_ret_t Polycode_BezierCurve_addControlPoint(duk_context *context) { BezierCurve *inst = (BezierCurve*)duk_to_pointer(context, 0); Number p1x = duk_to_number(context, 1); Number p1y = duk_to_number(context, 2); Number p1z = duk_to_number(context, 3); Number p2x = duk_to_number(context, 4); Number p2y = duk_to_number(context, 5); Number p2z = duk_to_number(context, 6); Number p3x = duk_to_number(context, 7); Number p3y = duk_to_number(context, 8); Number p3z = duk_to_number(context, 9); inst->addControlPoint(p1x,p1y,p1z,p2x,p2y,p2z,p3x,p3y,p3z); return 0; } duk_ret_t Polycode_BezierCurve_addControlPoint3dWithHandles(duk_context *context) { BezierCurve *inst = (BezierCurve*)duk_to_pointer(context, 0); Number p1x = duk_to_number(context, 1); Number p1y = duk_to_number(context, 2); Number p1z = duk_to_number(context, 3); Number p2x = duk_to_number(context, 4); Number p2y = duk_to_number(context, 5); Number p2z = duk_to_number(context, 6); Number p3x = duk_to_number(context, 7); Number p3y = duk_to_number(context, 8); Number p3z = duk_to_number(context, 9); inst->addControlPoint3dWithHandles(p1x,p1y,p1z,p2x,p2y,p2z,p3x,p3y,p3z); return 0; } duk_ret_t Polycode_BezierCurve_addControlPoint3d(duk_context *context) { BezierCurve *inst = (BezierCurve*)duk_to_pointer(context, 0); Number x = duk_to_number(context, 1); Number y = duk_to_number(context, 2); Number z = duk_to_number(context, 3); inst->addControlPoint3d(x,y,z); return 0; } duk_ret_t Polycode_BezierCurve_addControlPoint2dWithHandles(duk_context *context) { BezierCurve *inst = (BezierCurve*)duk_to_pointer(context, 0); Number p1x = duk_to_number(context, 1); Number p1y = duk_to_number(context, 2); Number p2x = duk_to_number(context, 3); Number p2y = duk_to_number(context, 4); Number p3x = duk_to_number(context, 5); Number p3y = duk_to_number(context, 6); inst->addControlPoint2dWithHandles(p1x,p1y,p2x,p2y,p3x,p3y); return 0; } duk_ret_t Polycode_BezierCurve_addControlPoint2d(duk_context *context) { BezierCurve *inst = (BezierCurve*)duk_to_pointer(context, 0); Number x = duk_to_number(context, 1); Number y = duk_to_number(context, 2); inst->addControlPoint2d(x,y); return 0; } duk_ret_t Polycode_BezierCurve_getPointAt(duk_context *context) { BezierCurve *inst = (BezierCurve*)duk_to_pointer(context, 0); Number a = duk_to_number(context, 1); Vector3 *retInst = new Vector3(); *retInst = inst->getPointAt(a); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_BezierCurve_getPointBetween(duk_context *context) { BezierCurve *inst = (BezierCurve*)duk_to_pointer(context, 0); Number a = duk_to_number(context, 1); BezierPoint* bp1 = (BezierPoint*)duk_to_pointer(context, 2); BezierPoint* bp2 = (BezierPoint*)duk_to_pointer(context, 3); Vector3 *retInst = new Vector3(); *retInst = inst->getPointBetween(a,bp1,bp2); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_BezierCurve_clearControlPoints(duk_context *context) { BezierCurve *inst = (BezierCurve*)duk_to_pointer(context, 0); inst->clearControlPoints(); return 0; } duk_ret_t Polycode_BezierCurve_getYValueAtX(duk_context *context) { BezierCurve *inst = (BezierCurve*)duk_to_pointer(context, 0); Number x = duk_to_number(context, 1); duk_push_number(context, inst->getYValueAtX(x)); return 1; } duk_ret_t Polycode_BezierCurve_getTValueAtX(duk_context *context) { BezierCurve *inst = (BezierCurve*)duk_to_pointer(context, 0); Number x = duk_to_number(context, 1); duk_push_number(context, inst->getTValueAtX(x)); return 1; } duk_ret_t Polycode_BezierCurve_removePoint(duk_context *context) { BezierCurve *inst = (BezierCurve*)duk_to_pointer(context, 0); BezierPoint* point = (BezierPoint*)duk_to_pointer(context, 1); inst->removePoint(point); return 0; } duk_ret_t Polycode_BezierCurve_setHeightCacheResolution(duk_context *context) { BezierCurve *inst = (BezierCurve*)duk_to_pointer(context, 0); Number resolution = duk_to_number(context, 1); inst->setHeightCacheResolution(resolution); return 0; } duk_ret_t Polycode_BezierCurve_rebuildHeightCache(duk_context *context) { BezierCurve *inst = (BezierCurve*)duk_to_pointer(context, 0); inst->rebuildHeightCache(); return 0; } duk_ret_t Polycode_BezierCurve_recalculateDistances(duk_context *context) { BezierCurve *inst = (BezierCurve*)duk_to_pointer(context, 0); inst->recalculateDistances(); return 0; } duk_ret_t Polycode_BezierPoint(duk_context *context) { Number p1x = duk_to_number(context, 0); Number p1y = duk_to_number(context, 1); Number p1z = duk_to_number(context, 2); Number p2x = duk_to_number(context, 3); Number p2y = duk_to_number(context, 4); Number p2z = duk_to_number(context, 5); Number p3x = duk_to_number(context, 6); Number p3y = duk_to_number(context, 7); Number p3z = duk_to_number(context, 8); BezierPoint *inst = new BezierPoint(p1x,p1y,p1z,p2x,p2y,p2z,p3x,p3y,p3z); duk_push_pointer(context, (void*)inst); return 1; } duk_ret_t Polycode_BezierPoint__get_p1(duk_context *context) { BezierPoint *inst = (BezierPoint*)duk_to_pointer(context, 0); Vector3 *retInst = new Vector3(); *retInst = inst->p1; duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_BezierPoint__set_p1(duk_context *context) { BezierPoint *inst = (BezierPoint*)duk_to_pointer(context, 0); inst->p1 = *(Vector3*)duk_to_pointer(context, 1); return 0; } duk_ret_t Polycode_BezierPoint__get_p2(duk_context *context) { BezierPoint *inst = (BezierPoint*)duk_to_pointer(context, 0); Vector3 *retInst = new Vector3(); *retInst = inst->p2; duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_BezierPoint__set_p2(duk_context *context) { BezierPoint *inst = (BezierPoint*)duk_to_pointer(context, 0); inst->p2 = *(Vector3*)duk_to_pointer(context, 1); return 0; } duk_ret_t Polycode_BezierPoint__get_p3(duk_context *context) { BezierPoint *inst = (BezierPoint*)duk_to_pointer(context, 0); Vector3 *retInst = new Vector3(); *retInst = inst->p3; duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_BezierPoint__set_p3(duk_context *context) { BezierPoint *inst = (BezierPoint*)duk_to_pointer(context, 0); inst->p3 = *(Vector3*)duk_to_pointer(context, 1); return 0; } duk_ret_t Polycode_BezierPoint__delete(duk_context *context) { BezierPoint *inst = (BezierPoint*)duk_to_pointer(context, 0); delete inst; return 0; } duk_ret_t Polycode_Bone(duk_context *context) { String boneName = duk_to_string(context, 0); Bone *inst = new Bone(boneName); duk_push_pointer(context, (void*)inst); return 1; } duk_ret_t Polycode_Bone__get_parentBoneId(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); duk_push_int(context, inst->parentBoneId); return 1; } duk_ret_t Polycode_Bone__set_parentBoneId(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); inst->parentBoneId = duk_to_int(context, 1); return 0; } duk_ret_t Polycode_Bone__get_boneMatrix(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); Matrix4 *retInst = new Matrix4(); *retInst = inst->boneMatrix; duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Bone__set_boneMatrix(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); inst->boneMatrix = *(Matrix4*)duk_to_pointer(context, 1); return 0; } duk_ret_t Polycode_Bone__get_restMatrix(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); Matrix4 *retInst = new Matrix4(); *retInst = inst->restMatrix; duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Bone__set_restMatrix(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); inst->restMatrix = *(Matrix4*)duk_to_pointer(context, 1); return 0; } duk_ret_t Polycode_Bone__get_baseMatrix(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); Matrix4 *retInst = new Matrix4(); *retInst = inst->baseMatrix; duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Bone__set_baseMatrix(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); inst->baseMatrix = *(Matrix4*)duk_to_pointer(context, 1); return 0; } duk_ret_t Polycode_Bone__get_finalMatrix(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); Matrix4 *retInst = new Matrix4(); *retInst = inst->finalMatrix; duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Bone__set_finalMatrix(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); inst->finalMatrix = *(Matrix4*)duk_to_pointer(context, 1); return 0; } duk_ret_t Polycode_Bone__get_baseRotation(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); Quaternion *retInst = new Quaternion(); *retInst = inst->baseRotation; duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Bone__set_baseRotation(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); inst->baseRotation = *(Quaternion*)duk_to_pointer(context, 1); return 0; } duk_ret_t Polycode_Bone__get_baseScale(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); Vector3 *retInst = new Vector3(); *retInst = inst->baseScale; duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Bone__set_baseScale(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); inst->baseScale = *(Vector3*)duk_to_pointer(context, 1); return 0; } duk_ret_t Polycode_Bone__get_basePosition(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); Vector3 *retInst = new Vector3(); *retInst = inst->basePosition; duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Bone__set_basePosition(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); inst->basePosition = *(Vector3*)duk_to_pointer(context, 1); return 0; } duk_ret_t Polycode_Bone__get_disableAnimation(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->disableAnimation); return 1; } duk_ret_t Polycode_Bone__set_disableAnimation(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); inst->disableAnimation = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_Bone__delete(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); delete inst; return 0; } duk_ret_t Polycode_Bone_getName(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); duk_push_string(context, inst->getName().c_str()); return 1; } duk_ret_t Polycode_Bone_setParentBone(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); shared_ptr bone = *(shared_ptr*)duk_to_pointer(context, 1); inst->setParentBone(bone); return 0; } duk_ret_t Polycode_Bone_addChildBone(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); shared_ptr bone = *(shared_ptr*)duk_to_pointer(context, 1); inst->addChildBone(bone); return 0; } duk_ret_t Polycode_Bone_getParentBone(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); shared_ptr *retInst = new shared_ptr(); *retInst = inst->getParentBone(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Bone_getNumChildBones(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); duk_push_int(context, inst->getNumChildBones()); return 1; } duk_ret_t Polycode_Bone_getChildBone(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); int index = duk_to_int(context, 1); shared_ptr *retInst = new shared_ptr(); *retInst = inst->getChildBone(index); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Bone_getBoneMatrix(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); Matrix4 *retInst = new Matrix4(); *retInst = inst->getBoneMatrix(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Bone_setBoneMatrix(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); Matrix4 matrix = *(Matrix4*)duk_to_pointer(context, 1); inst->setBoneMatrix(matrix); return 0; } duk_ret_t Polycode_Bone_getRestMatrix(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); Matrix4 *retInst = new Matrix4(); *retInst = inst->getRestMatrix(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Bone_getFullRestMatrix(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); Matrix4 *retInst = new Matrix4(); *retInst = inst->getFullRestMatrix(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Bone_getParentRestMatrix(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); Matrix4 *retInst = new Matrix4(); *retInst = inst->getParentRestMatrix(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Bone_getFinalMatrix(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); Matrix4 *retInst = new Matrix4(); *retInst = inst->getFinalMatrix(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Bone_setRestMatrix(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); Matrix4 matrix = *(Matrix4*)duk_to_pointer(context, 1); inst->setRestMatrix(matrix); return 0; } duk_ret_t Polycode_Bone_setBaseMatrix(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); Matrix4 matrix = *(Matrix4*)duk_to_pointer(context, 1); inst->setBaseMatrix(matrix); return 0; } duk_ret_t Polycode_Bone_getBaseMatrix(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); Matrix4 *retInst = new Matrix4(); *retInst = inst->getBaseMatrix(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Bone_getFullBaseMatrix(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); Matrix4 *retInst = new Matrix4(); *retInst = inst->getFullBaseMatrix(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Bone_rebuildFinalMatrix(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); inst->rebuildFinalMatrix(); return 0; } duk_ret_t Polycode_Bone_buildFinalMatrix(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); Matrix4 *retInst = new Matrix4(); *retInst = inst->buildFinalMatrix(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Bone_intializeBone(duk_context *context) { Bone *inst = (Bone*)duk_to_pointer(context, 0); Vector3 basePosition = *(Vector3*)duk_to_pointer(context, 1); Vector3 baseScale = *(Vector3*)duk_to_pointer(context, 2); Quaternion baseRotation = *(Quaternion*)duk_to_pointer(context, 3); Vector3 restPosition = *(Vector3*)duk_to_pointer(context, 4); Vector3 restScale = *(Vector3*)duk_to_pointer(context, 5); Quaternion restRotation = *(Quaternion*)duk_to_pointer(context, 6); inst->intializeBone(basePosition,baseScale,baseRotation,restPosition,restScale,restRotation); return 0; } duk_ret_t Polycode_Camera(duk_context *context) { Scene* parentScene = (Scene*)duk_to_pointer(context, 0); Camera *inst = new Camera(parentScene); duk_push_pointer(context, (void*)inst); return 1; } duk_ret_t Polycode_Camera__get_frustumCulling(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->frustumCulling); return 1; } duk_ret_t Polycode_Camera__set_frustumCulling(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); inst->frustumCulling = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_Camera__get_topLeftOrtho(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->topLeftOrtho); return 1; } duk_ret_t Polycode_Camera__set_topLeftOrtho(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); inst->topLeftOrtho = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_Camera__get_cameraShift(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); Vector2 *retInst = new Vector2(); *retInst = inst->cameraShift; duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Camera__set_cameraShift(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); inst->cameraShift = *(Vector2*)duk_to_pointer(context, 1); return 0; } duk_ret_t Polycode_Camera__delete(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); delete inst; return 0; } duk_ret_t Polycode_Camera_buildFrustumPlanes(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); inst->buildFrustumPlanes(); return 0; } duk_ret_t Polycode_Camera_isSphereInFrustum(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); Vector3 pos = *(Vector3*)duk_to_pointer(context, 1); Number fRadius = duk_to_number(context, 2); duk_push_boolean(context, inst->isSphereInFrustum(pos,fRadius)); return 1; } duk_ret_t Polycode_Camera_isAABBInFrustum(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); AABB aabb = *(AABB*)duk_to_pointer(context, 1); duk_push_boolean(context, inst->isAABBInFrustum(aabb)); return 1; } duk_ret_t Polycode_Camera_setOrthoMode(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); bool mode = duk_to_boolean(context, 1); inst->setOrthoMode(mode); return 0; } duk_ret_t Polycode_Camera_setOrthoSize(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); Number orthoSizeX = duk_to_number(context, 1); Number orthoSizeY = duk_to_number(context, 2); inst->setOrthoSize(orthoSizeX,orthoSizeY); return 0; } duk_ret_t Polycode_Camera_setFrustumMode(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); Number left = duk_to_number(context, 1); Number right = duk_to_number(context, 2); Number bottom = duk_to_number(context, 3); Number top = duk_to_number(context, 4); Number front = duk_to_number(context, 5); Number back = duk_to_number(context, 6); inst->setFrustumMode(left,right,bottom,top,front,back); return 0; } duk_ret_t Polycode_Camera_getOrthoMode(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->getOrthoMode()); return 1; } duk_ret_t Polycode_Camera_getOrthoSizeX(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); duk_push_number(context, inst->getOrthoSizeX()); return 1; } duk_ret_t Polycode_Camera_getOrthoSizeY(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); duk_push_number(context, inst->getOrthoSizeY()); return 1; } duk_ret_t Polycode_Camera_setFOV(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); Number fov = duk_to_number(context, 1); inst->setFOV(fov); return 0; } duk_ret_t Polycode_Camera_getFOV(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); duk_push_number(context, inst->getFOV()); return 1; } duk_ret_t Polycode_Camera_setClippingPlanes(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); Number nearClipPlane = duk_to_number(context, 1); Number farClipPlane = duk_to_number(context, 2); inst->setClippingPlanes(nearClipPlane,farClipPlane); return 0; } duk_ret_t Polycode_Camera_getNearClippingPlane(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); duk_push_number(context, inst->getNearClippingPlane()); return 1; } duk_ret_t Polycode_Camera_getFarClippingPlane(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); duk_push_number(context, inst->getFarClippingPlane()); return 1; } duk_ret_t Polycode_Camera_setParentScene(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); Scene* parentScene = (Scene*)duk_to_pointer(context, 1); inst->setParentScene(parentScene); return 0; } duk_ret_t Polycode_Camera_getParentScene(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); PolyBase *ptrRetVal = (PolyBase*)inst->getParentScene(); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_Camera_createProjectionMatrix(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); Matrix4 *retInst = new Matrix4(); *retInst = inst->createProjectionMatrix(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Camera_hasFilterShader(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->hasFilterShader()); return 1; } duk_ret_t Polycode_Camera_drawFilter(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); shared_ptr targetBuffer = *(shared_ptr*)duk_to_pointer(context, 1); inst->drawFilter(targetBuffer); return 0; } duk_ret_t Polycode_Camera_setPostFilter(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); shared_ptr material = *(shared_ptr*)duk_to_pointer(context, 1); inst->setPostFilter(material); return 0; } duk_ret_t Polycode_Camera_setPostFilterByName(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); String shaderName = duk_to_string(context, 1); inst->setPostFilterByName(shaderName); return 0; } duk_ret_t Polycode_Camera_removePostFilter(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); inst->removePostFilter(); return 0; } duk_ret_t Polycode_Camera_getScreenShaderMaterial(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); shared_ptr *retInst = new shared_ptr(); *retInst = inst->getScreenShaderMaterial(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Camera_Clone(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); bool deepClone = duk_to_boolean(context, 1); bool ignoreEditorOnly = duk_to_boolean(context, 2); PolyBase *ptrRetVal = (PolyBase*)inst->Clone(deepClone,ignoreEditorOnly); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_Camera_applyClone(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); Entity* clone = (Entity*)duk_to_pointer(context, 1); bool deepClone = duk_to_boolean(context, 2); bool ignoreEditorOnly = duk_to_boolean(context, 3); inst->applyClone(clone,deepClone,ignoreEditorOnly); return 0; } duk_ret_t Polycode_Camera_getProjectionMatrix(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); Matrix4 *retInst = new Matrix4(); *retInst = inst->getProjectionMatrix(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Camera_setCustomProjectionMatrix(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); Matrix4 matrix = *(Matrix4*)duk_to_pointer(context, 1); inst->setCustomProjectionMatrix(matrix); return 0; } duk_ret_t Polycode_Camera_getViewport(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); Polycode::Rectangle *retInst = new Polycode::Rectangle(); *retInst = inst->getViewport(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Camera_setViewport(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); Rectangle viewport = *(Rectangle*)duk_to_pointer(context, 1); inst->setViewport(viewport); return 0; } duk_ret_t Polycode_Camera_setOrthoSizeMode(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); int orthoSizeMode = duk_to_int(context, 1); inst->setOrthoSizeMode(orthoSizeMode); return 0; } duk_ret_t Polycode_Camera_getOrthoSizeMode(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); duk_push_int(context, inst->getOrthoSizeMode()); return 1; } duk_ret_t Polycode_Camera_setProjectionMode(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); int mode = duk_to_int(context, 1); inst->setProjectionMode(mode); return 0; } duk_ret_t Polycode_Camera_getProjectionMode(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); duk_push_int(context, inst->getProjectionMode()); return 1; } duk_ret_t Polycode_Camera_projectRayFrom2DCoordinate(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); Vector2 coordinate = *(Vector2*)duk_to_pointer(context, 1); Rectangle viewport = *(Rectangle*)duk_to_pointer(context, 2); Vector3 *retInst = new Vector3(); *retInst = inst->projectRayFrom2DCoordinate(coordinate,viewport); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Camera_renderFullScreenQuad(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); GPUDrawBuffer* drawBuffer = (GPUDrawBuffer*)duk_to_pointer(context, 1); int shaderPass = duk_to_int(context, 2); inst->renderFullScreenQuad(drawBuffer,shaderPass); return 0; } duk_ret_t Polycode_Camera_getShaderPass(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); int index = duk_to_int(context, 1); ShaderPass *retInst = new ShaderPass(); *retInst = inst->getShaderPass(index); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Camera_getNumShaderPasses(duk_context *context) { Camera *inst = (Camera*)duk_to_pointer(context, 0); duk_push_int(context, inst->getNumShaderPasses()); return 1; } duk_ret_t Polycode_Color(duk_context *context) { Number r = duk_to_number(context, 0); Number g = duk_to_number(context, 1); Number b = duk_to_number(context, 2); Number a = duk_to_number(context, 3); Color *inst = new Color(r,g,b,a); duk_push_pointer(context, (void*)inst); return 1; } duk_ret_t Polycode_Color__get_r(duk_context *context) { Color *inst = (Color*)duk_to_pointer(context, 0); duk_push_number(context, inst->r); return 1; } duk_ret_t Polycode_Color__set_r(duk_context *context) { Color *inst = (Color*)duk_to_pointer(context, 0); inst->r = duk_to_number(context, 1); return 0; } duk_ret_t Polycode_Color__get_g(duk_context *context) { Color *inst = (Color*)duk_to_pointer(context, 0); duk_push_number(context, inst->g); return 1; } duk_ret_t Polycode_Color__set_g(duk_context *context) { Color *inst = (Color*)duk_to_pointer(context, 0); inst->g = duk_to_number(context, 1); return 0; } duk_ret_t Polycode_Color__get_b(duk_context *context) { Color *inst = (Color*)duk_to_pointer(context, 0); duk_push_number(context, inst->b); return 1; } duk_ret_t Polycode_Color__set_b(duk_context *context) { Color *inst = (Color*)duk_to_pointer(context, 0); inst->b = duk_to_number(context, 1); return 0; } duk_ret_t Polycode_Color__get_a(duk_context *context) { Color *inst = (Color*)duk_to_pointer(context, 0); duk_push_number(context, inst->a); return 1; } duk_ret_t Polycode_Color__set_a(duk_context *context) { Color *inst = (Color*)duk_to_pointer(context, 0); inst->a = duk_to_number(context, 1); return 0; } duk_ret_t Polycode_Color__delete(duk_context *context) { Color *inst = (Color*)duk_to_pointer(context, 0); delete inst; return 0; } duk_ret_t Polycode_Color_ColorWithInts(duk_context *context) { int r = duk_to_int(context, 0); int g = duk_to_int(context, 1); int b = duk_to_int(context, 2); int a = duk_to_int(context, 3); Color *retInst = new Color(); *retInst = Color::ColorWithInts(r,g,b,a); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Color_ColorWithHex(duk_context *context) { int hex = duk_to_int(context, 0); Color *retInst = new Color(); *retInst = Color::ColorWithHex(hex); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Color_setColorHex(duk_context *context) { Color *inst = (Color*)duk_to_pointer(context, 0); int hex = duk_to_int(context, 1); inst->setColorHex(hex); return 0; } duk_ret_t Polycode_Color_setColorHexRGB(duk_context *context) { Color *inst = (Color*)duk_to_pointer(context, 0); int hex = duk_to_int(context, 1); inst->setColorHexRGB(hex); return 0; } duk_ret_t Polycode_Color_setColorHexFromString(duk_context *context) { Color *inst = (Color*)duk_to_pointer(context, 0); String hex = duk_to_string(context, 1); inst->setColorHexFromString(hex); return 0; } duk_ret_t Polycode_Color_setColorHexRGBFromString(duk_context *context) { Color *inst = (Color*)duk_to_pointer(context, 0); String hex = duk_to_string(context, 1); inst->setColorHexRGBFromString(hex); return 0; } duk_ret_t Polycode_Color_setColorHSV(duk_context *context) { Color *inst = (Color*)duk_to_pointer(context, 0); Number h = duk_to_number(context, 1); Number s = duk_to_number(context, 2); Number v = duk_to_number(context, 3); inst->setColorHSV(h,s,v); return 0; } duk_ret_t Polycode_Color_setColorRGBA(duk_context *context) { Color *inst = (Color*)duk_to_pointer(context, 0); int r = duk_to_int(context, 1); int g = duk_to_int(context, 2); int b = duk_to_int(context, 3); int a = duk_to_int(context, 4); inst->setColorRGBA(r,g,b,a); return 0; } duk_ret_t Polycode_Color_setColorRGB(duk_context *context) { Color *inst = (Color*)duk_to_pointer(context, 0); int r = duk_to_int(context, 1); int g = duk_to_int(context, 2); int b = duk_to_int(context, 3); inst->setColorRGB(r,g,b); return 0; } duk_ret_t Polycode_Color_setColor(duk_context *context) { Color *inst = (Color*)duk_to_pointer(context, 0); Number r = duk_to_number(context, 1); Number g = duk_to_number(context, 2); Number b = duk_to_number(context, 3); Number a = duk_to_number(context, 4); inst->setColor(r,g,b,a); return 0; } duk_ret_t Polycode_Color_blendColor(duk_context *context) { Color *inst = (Color*)duk_to_pointer(context, 0); Color c2 = *(Color*)duk_to_pointer(context, 1); int mode = duk_to_int(context, 2); Number amount = duk_to_number(context, 3); Color c3 = *(Color*)duk_to_pointer(context, 4); Color *retInst = new Color(); *retInst = inst->blendColor(c2,mode,amount,c3); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Color_Random(duk_context *context) { Color *inst = (Color*)duk_to_pointer(context, 0); inst->Random(); return 0; } duk_ret_t Polycode_Color_getBrightness(duk_context *context) { Color *inst = (Color*)duk_to_pointer(context, 0); duk_push_number(context, inst->getBrightness()); return 1; } duk_ret_t Polycode_Color_RGBtoHSV(duk_context *context) { Number r = duk_to_number(context, 0); Number g = duk_to_number(context, 1); Number b = duk_to_number(context, 2); Number h = duk_to_number(context, 3); Number s = duk_to_number(context, 4); Number v = duk_to_number(context, 5); Color::RGBtoHSV(r,g,b,h,s,v); return 0; } duk_ret_t Polycode_Color_getHue(duk_context *context) { Color *inst = (Color*)duk_to_pointer(context, 0); duk_push_number(context, inst->getHue()); return 1; } duk_ret_t Polycode_Color_getSaturation(duk_context *context) { Color *inst = (Color*)duk_to_pointer(context, 0); duk_push_number(context, inst->getSaturation()); return 1; } duk_ret_t Polycode_Color_getValue(duk_context *context) { Color *inst = (Color*)duk_to_pointer(context, 0); duk_push_number(context, inst->getValue()); return 1; } duk_ret_t Polycode_Color_getUint(duk_context *context) { Color *inst = (Color*)duk_to_pointer(context, 0); duk_push_int(context, inst->getUint()); return 1; } duk_ret_t Polycode_ConfigEntry(duk_context *context) { ConfigEntry *inst = new ConfigEntry(); duk_push_pointer(context, (void*)inst); return 1; } duk_ret_t Polycode_ConfigEntry__get_key(duk_context *context) { ConfigEntry *inst = (ConfigEntry*)duk_to_pointer(context, 0); duk_push_string(context, inst->key.c_str()); return 1; } duk_ret_t Polycode_ConfigEntry__set_key(duk_context *context) { ConfigEntry *inst = (ConfigEntry*)duk_to_pointer(context, 0); inst->key = duk_to_string(context, 1); return 0; } duk_ret_t Polycode_ConfigEntry__get_configNamespace(duk_context *context) { ConfigEntry *inst = (ConfigEntry*)duk_to_pointer(context, 0); duk_push_string(context, inst->configNamespace.c_str()); return 1; } duk_ret_t Polycode_ConfigEntry__set_configNamespace(duk_context *context) { ConfigEntry *inst = (ConfigEntry*)duk_to_pointer(context, 0); inst->configNamespace = duk_to_string(context, 1); return 0; } duk_ret_t Polycode_ConfigEntry__get_numVal(duk_context *context) { ConfigEntry *inst = (ConfigEntry*)duk_to_pointer(context, 0); duk_push_number(context, inst->numVal); return 1; } duk_ret_t Polycode_ConfigEntry__set_numVal(duk_context *context) { ConfigEntry *inst = (ConfigEntry*)duk_to_pointer(context, 0); inst->numVal = duk_to_number(context, 1); return 0; } duk_ret_t Polycode_ConfigEntry__get_stringVal(duk_context *context) { ConfigEntry *inst = (ConfigEntry*)duk_to_pointer(context, 0); duk_push_string(context, inst->stringVal.c_str()); return 1; } duk_ret_t Polycode_ConfigEntry__set_stringVal(duk_context *context) { ConfigEntry *inst = (ConfigEntry*)duk_to_pointer(context, 0); inst->stringVal = duk_to_string(context, 1); return 0; } duk_ret_t Polycode_ConfigEntry__get_isString(duk_context *context) { ConfigEntry *inst = (ConfigEntry*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->isString); return 1; } duk_ret_t Polycode_ConfigEntry__set_isString(duk_context *context) { ConfigEntry *inst = (ConfigEntry*)duk_to_pointer(context, 0); inst->isString = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_ConfigEntry__delete(duk_context *context) { ConfigEntry *inst = (ConfigEntry*)duk_to_pointer(context, 0); delete inst; return 0; } duk_ret_t Polycode_Config(duk_context *context) { Config *inst = new Config(); duk_push_pointer(context, (void*)inst); return 1; } duk_ret_t Polycode_Config__delete(duk_context *context) { Config *inst = (Config*)duk_to_pointer(context, 0); delete inst; return 0; } duk_ret_t Polycode_Config_loadConfig(duk_context *context) { Config *inst = (Config*)duk_to_pointer(context, 0); String configNamespace = duk_to_string(context, 1); String fileName = duk_to_string(context, 2); inst->loadConfig(configNamespace,fileName); return 0; } duk_ret_t Polycode_Config_saveConfig(duk_context *context) { Config *inst = (Config*)duk_to_pointer(context, 0); String configNamespace = duk_to_string(context, 1); String fileName = duk_to_string(context, 2); inst->saveConfig(configNamespace,fileName); return 0; } duk_ret_t Polycode_Config_getEntry(duk_context *context) { Config *inst = (Config*)duk_to_pointer(context, 0); String configNamespace = duk_to_string(context, 1); String key = duk_to_string(context, 2); PolyBase *ptrRetVal = (PolyBase*)inst->getEntry(configNamespace,key); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_Config_setStringValue(duk_context *context) { Config *inst = (Config*)duk_to_pointer(context, 0); String configNamespace = duk_to_string(context, 1); String key = duk_to_string(context, 2); String value = duk_to_string(context, 3); inst->setStringValue(configNamespace,key,value); return 0; } duk_ret_t Polycode_Config_setNumericValue(duk_context *context) { Config *inst = (Config*)duk_to_pointer(context, 0); String configNamespace = duk_to_string(context, 1); String key = duk_to_string(context, 2); Number value = duk_to_number(context, 3); inst->setNumericValue(configNamespace,key,value); return 0; } duk_ret_t Polycode_Config_getNumericValue(duk_context *context) { Config *inst = (Config*)duk_to_pointer(context, 0); String configNamespace = duk_to_string(context, 1); String key = duk_to_string(context, 2); duk_push_number(context, inst->getNumericValue(configNamespace,key)); return 1; } duk_ret_t Polycode_Config_getStringValue(duk_context *context) { Config *inst = (Config*)duk_to_pointer(context, 0); String configNamespace = duk_to_string(context, 1); String key = duk_to_string(context, 2); duk_push_string(context, inst->getStringValue(configNamespace,key).c_str()); return 1; } duk_ret_t Polycode_Config_setBoolValue(duk_context *context) { Config *inst = (Config*)duk_to_pointer(context, 0); String configNamespace = duk_to_string(context, 1); String key = duk_to_string(context, 2); bool value = duk_to_boolean(context, 3); inst->setBoolValue(configNamespace,key,value); return 0; } duk_ret_t Polycode_Config_getBoolValue(duk_context *context) { Config *inst = (Config*)duk_to_pointer(context, 0); String configNamespace = duk_to_string(context, 1); String key = duk_to_string(context, 2); duk_push_boolean(context, inst->getBoolValue(configNamespace,key)); return 1; } duk_ret_t Polycode_Core__get_eventMutex(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); PolyBase *ptrRetVal = (PolyBase*)inst->eventMutex; duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_Core__set_eventMutex(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); inst->eventMutex = (CoreMutex*)duk_to_pointer(context, 1); return 0; } duk_ret_t Polycode_Core__get_paused(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->paused); return 1; } duk_ret_t Polycode_Core__set_paused(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); inst->paused = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_Core__get_pauseOnLoseFocus(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->pauseOnLoseFocus); return 1; } duk_ret_t Polycode_Core__set_pauseOnLoseFocus(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); inst->pauseOnLoseFocus = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_Core__get_defaultScreenWidth(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); duk_push_int(context, inst->defaultScreenWidth); return 1; } duk_ret_t Polycode_Core__set_defaultScreenWidth(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); inst->defaultScreenWidth = duk_to_int(context, 1); return 0; } duk_ret_t Polycode_Core__get_defaultScreenHeight(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); duk_push_int(context, inst->defaultScreenHeight); return 1; } duk_ret_t Polycode_Core__set_defaultScreenHeight(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); inst->defaultScreenHeight = duk_to_int(context, 1); return 0; } duk_ret_t Polycode_Core__get_deviceAttitude(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); Quaternion *retInst = new Quaternion(); *retInst = inst->deviceAttitude; duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Core__set_deviceAttitude(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); inst->deviceAttitude = *(Quaternion*)duk_to_pointer(context, 1); return 0; } duk_ret_t Polycode_Core__delete(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); delete inst; return 0; } duk_ret_t Polycode_Core_Update(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->Update()); return 1; } duk_ret_t Polycode_Core_Render(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); inst->Render(); return 0; } duk_ret_t Polycode_Core_fixedUpdate(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->fixedUpdate()); return 1; } duk_ret_t Polycode_Core_systemUpdate(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->systemUpdate()); return 1; } duk_ret_t Polycode_Core_updateAndRender(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->updateAndRender()); return 1; } duk_ret_t Polycode_Core_enableMouse(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); bool newval = duk_to_boolean(context, 1); inst->enableMouse(newval); return 0; } duk_ret_t Polycode_Core_captureMouse(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); bool newval = duk_to_boolean(context, 1); inst->captureMouse(newval); return 0; } duk_ret_t Polycode_Core_setCursor(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); int cursorType = duk_to_int(context, 1); inst->setCursor(cursorType); return 0; } duk_ret_t Polycode_Core_warpCursor(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); int x = duk_to_int(context, 1); int y = duk_to_int(context, 2); inst->warpCursor(x,y); return 0; } duk_ret_t Polycode_Core_openOnScreenKeyboard(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); bool open = duk_to_boolean(context, 1); inst->openOnScreenKeyboard(open); return 0; } duk_ret_t Polycode_Core_createThread(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); Threaded* target = (Threaded*)duk_to_pointer(context, 1); inst->createThread(target); return 0; } duk_ret_t Polycode_Core_lockMutex(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); CoreMutex* mutex = (CoreMutex*)duk_to_pointer(context, 1); inst->lockMutex(mutex); return 0; } duk_ret_t Polycode_Core_unlockMutex(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); CoreMutex* mutex = (CoreMutex*)duk_to_pointer(context, 1); inst->unlockMutex(mutex); return 0; } duk_ret_t Polycode_Core_createMutex(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); PolyBase *ptrRetVal = (PolyBase*)inst->createMutex(); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_Core_copyStringToClipboard(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); String str = duk_to_string(context, 1); inst->copyStringToClipboard(str); return 0; } duk_ret_t Polycode_Core_getClipboardString(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); duk_push_string(context, inst->getClipboardString().c_str()); return 1; } duk_ret_t Polycode_Core_getServices(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); PolyBase *ptrRetVal = (PolyBase*)inst->getServices(); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_Core_getFPS(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); duk_push_number(context, inst->getFPS()); return 1; } duk_ret_t Polycode_Core_Shutdown(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); inst->Shutdown(); return 0; } duk_ret_t Polycode_Core_isFullscreen(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->isFullscreen()); return 1; } duk_ret_t Polycode_Core_getAALevel(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); duk_push_int(context, inst->getAALevel()); return 1; } duk_ret_t Polycode_Core_getInput(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); PolyBase *ptrRetVal = (PolyBase*)inst->getInput(); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_Core_getXRes(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); duk_push_number(context, inst->getXRes()); return 1; } duk_ret_t Polycode_Core_getYRes(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); duk_push_number(context, inst->getYRes()); return 1; } duk_ret_t Polycode_Core_getBackingXRes(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); duk_push_number(context, inst->getBackingXRes()); return 1; } duk_ret_t Polycode_Core_getBackingYRes(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); duk_push_number(context, inst->getBackingYRes()); return 1; } duk_ret_t Polycode_Core_getScreenInfo(duk_context *context) { int* width = (int*)duk_to_pointer(context, 0); int* height = (int*)duk_to_pointer(context, 1); int* hz = (int*)duk_to_pointer(context, 2); Core::getScreenInfo(width,height,hz); return 0; } duk_ret_t Polycode_Core_getScreenWidth(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); duk_push_int(context, inst->getScreenWidth()); return 1; } duk_ret_t Polycode_Core_getScreenHeight(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); duk_push_int(context, inst->getScreenHeight()); return 1; } duk_ret_t Polycode_Core_createFolder(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); String folderPath = duk_to_string(context, 1); inst->createFolder(folderPath); return 0; } duk_ret_t Polycode_Core_copyDiskItem(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); String itemPath = duk_to_string(context, 1); String destItemPath = duk_to_string(context, 2); inst->copyDiskItem(itemPath,destItemPath); return 0; } duk_ret_t Polycode_Core_moveDiskItem(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); String itemPath = duk_to_string(context, 1); String destItemPath = duk_to_string(context, 2); inst->moveDiskItem(itemPath,destItemPath); return 0; } duk_ret_t Polycode_Core_removeDiskItem(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); String itemPath = duk_to_string(context, 1); inst->removeDiskItem(itemPath); return 0; } duk_ret_t Polycode_Core_openFolderPicker(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); duk_push_string(context, inst->openFolderPicker().c_str()); return 1; } duk_ret_t Polycode_Core_setFramerate(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); int frameRate = duk_to_int(context, 1); int maxFixedCycles = duk_to_int(context, 2); inst->setFramerate(frameRate,maxFixedCycles); return 0; } duk_ret_t Polycode_Core_openFilePicker(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); vector extensions = *(vector*)duk_to_pointer(context, 1); bool allowMultiple = duk_to_boolean(context, 2); return 0; } duk_ret_t Polycode_Core_saveFilePicker(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); vector extensions = *(vector*)duk_to_pointer(context, 1); duk_push_string(context, inst->saveFilePicker(extensions).c_str()); return 1; } duk_ret_t Polycode_Core_handleVideoModeChange(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); VideoModeChangeInfo* modeInfo = (VideoModeChangeInfo*)duk_to_pointer(context, 1); inst->handleVideoModeChange(modeInfo); return 0; } duk_ret_t Polycode_Core_flushRenderContext(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); inst->flushRenderContext(); return 0; } duk_ret_t Polycode_Core_prepareRenderContext(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); inst->prepareRenderContext(); return 0; } duk_ret_t Polycode_Core_isWindowInitialized(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->isWindowInitialized()); return 1; } duk_ret_t Polycode_Core_openFile(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); String fileName = duk_to_string(context, 1); String opts = duk_to_string(context, 2); PolyBase *ptrRetVal = (PolyBase*)inst->openFile(fileName,opts); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_Core_closeFile(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); CoreFile* file = (CoreFile*)duk_to_pointer(context, 1); inst->closeFile(file); return 0; } duk_ret_t Polycode_Core_addFileSource(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); String type = duk_to_string(context, 1); String source = duk_to_string(context, 2); inst->addFileSource(type,source); return 0; } duk_ret_t Polycode_Core_removeFileSource(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); String type = duk_to_string(context, 1); String source = duk_to_string(context, 2); inst->removeFileSource(type,source); return 0; } duk_ret_t Polycode_Core_parseFolder(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); String pathString = duk_to_string(context, 1); bool showHidden = duk_to_boolean(context, 2); return 0; } duk_ret_t Polycode_Core_systemParseFolder(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); String pathString = duk_to_string(context, 1); bool showHidden = duk_to_boolean(context, 2); vector targetVector = *(vector*)duk_to_pointer(context, 3); duk_push_boolean(context, inst->systemParseFolder(pathString,showHidden,targetVector)); return 1; } duk_ret_t Polycode_Core_getResourcePathForFile(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); String fileName = duk_to_string(context, 1); duk_push_string(context, inst->getResourcePathForFile(fileName).c_str()); return 1; } duk_ret_t Polycode_Core_setVideoMode(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); int xRes = duk_to_int(context, 1); int yRes = duk_to_int(context, 2); bool fullScreen = duk_to_boolean(context, 3); bool vSync = duk_to_boolean(context, 4); int aaLevel = duk_to_int(context, 5); int anisotropyLevel = duk_to_int(context, 6); bool retinaSupport = duk_to_boolean(context, 7); inst->setVideoMode(xRes,yRes,fullScreen,vSync,aaLevel,anisotropyLevel,retinaSupport); return 0; } duk_ret_t Polycode_Core_resizeTo(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); int xRes = duk_to_int(context, 1); int yRes = duk_to_int(context, 2); inst->resizeTo(xRes,yRes); return 0; } duk_ret_t Polycode_Core_doSleep(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); inst->doSleep(); return 0; } duk_ret_t Polycode_Core_openURL(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); String url = duk_to_string(context, 1); inst->openURL(url); return 0; } duk_ret_t Polycode_Core_getElapsed(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); duk_push_number(context, inst->getElapsed()); return 1; } duk_ret_t Polycode_Core_getTicks(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); duk_push_int(context, inst->getTicks()); return 1; } duk_ret_t Polycode_Core_getRefreshIntervalMs(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); duk_push_int(context, inst->getRefreshIntervalMs()); return 1; } duk_ret_t Polycode_Core_getTimeSleptMs(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); duk_push_int(context, inst->getTimeSleptMs()); return 1; } duk_ret_t Polycode_Core_getFixedTimestep(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); duk_push_number(context, inst->getFixedTimestep()); return 1; } duk_ret_t Polycode_Core_getTicksFloat(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); duk_push_number(context, inst->getTicksFloat()); return 1; } duk_ret_t Polycode_Core_setUserPointer(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); void* ptr = (void*)duk_to_pointer(context, 1); inst->setUserPointer(ptr); return 0; } duk_ret_t Polycode_Core_getUserPointer(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); inst->getUserPointer(); return 0; } duk_ret_t Polycode_Core_executeExternalCommand(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); String command = duk_to_string(context, 1); String args = duk_to_string(context, 2); String inDirectory = duk_to_string(context, 3); duk_push_string(context, inst->executeExternalCommand(command,args,inDirectory).c_str()); return 1; } duk_ret_t Polycode_Core_getDefaultWorkingDirectory(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); duk_push_string(context, inst->getDefaultWorkingDirectory().c_str()); return 1; } duk_ret_t Polycode_Core_getUserHomeDirectory(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); duk_push_string(context, inst->getUserHomeDirectory().c_str()); return 1; } duk_ret_t Polycode_Core_makeApplicationMain(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); inst->makeApplicationMain(); return 0; } duk_ret_t Polycode_Core_getEventMutex(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); PolyBase *ptrRetVal = (PolyBase*)inst->getEventMutex(); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_Core_removeThread(duk_context *context) { Core *inst = (Core*)duk_to_pointer(context, 0); Threaded* thread = (Threaded*)duk_to_pointer(context, 1); inst->removeThread(thread); return 0; } duk_ret_t Polycode_VideoModeChangeInfo(duk_context *context) { VideoModeChangeInfo *inst = new VideoModeChangeInfo(); duk_push_pointer(context, (void*)inst); return 1; } duk_ret_t Polycode_VideoModeChangeInfo__get_xRes(duk_context *context) { VideoModeChangeInfo *inst = (VideoModeChangeInfo*)duk_to_pointer(context, 0); duk_push_int(context, inst->xRes); return 1; } duk_ret_t Polycode_VideoModeChangeInfo__set_xRes(duk_context *context) { VideoModeChangeInfo *inst = (VideoModeChangeInfo*)duk_to_pointer(context, 0); inst->xRes = duk_to_int(context, 1); return 0; } duk_ret_t Polycode_VideoModeChangeInfo__get_yRes(duk_context *context) { VideoModeChangeInfo *inst = (VideoModeChangeInfo*)duk_to_pointer(context, 0); duk_push_int(context, inst->yRes); return 1; } duk_ret_t Polycode_VideoModeChangeInfo__set_yRes(duk_context *context) { VideoModeChangeInfo *inst = (VideoModeChangeInfo*)duk_to_pointer(context, 0); inst->yRes = duk_to_int(context, 1); return 0; } duk_ret_t Polycode_VideoModeChangeInfo__get_fullScreen(duk_context *context) { VideoModeChangeInfo *inst = (VideoModeChangeInfo*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->fullScreen); return 1; } duk_ret_t Polycode_VideoModeChangeInfo__set_fullScreen(duk_context *context) { VideoModeChangeInfo *inst = (VideoModeChangeInfo*)duk_to_pointer(context, 0); inst->fullScreen = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_VideoModeChangeInfo__get_vSync(duk_context *context) { VideoModeChangeInfo *inst = (VideoModeChangeInfo*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->vSync); return 1; } duk_ret_t Polycode_VideoModeChangeInfo__set_vSync(duk_context *context) { VideoModeChangeInfo *inst = (VideoModeChangeInfo*)duk_to_pointer(context, 0); inst->vSync = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_VideoModeChangeInfo__get_aaLevel(duk_context *context) { VideoModeChangeInfo *inst = (VideoModeChangeInfo*)duk_to_pointer(context, 0); duk_push_int(context, inst->aaLevel); return 1; } duk_ret_t Polycode_VideoModeChangeInfo__set_aaLevel(duk_context *context) { VideoModeChangeInfo *inst = (VideoModeChangeInfo*)duk_to_pointer(context, 0); inst->aaLevel = duk_to_int(context, 1); return 0; } duk_ret_t Polycode_VideoModeChangeInfo__get_anisotropyLevel(duk_context *context) { VideoModeChangeInfo *inst = (VideoModeChangeInfo*)duk_to_pointer(context, 0); duk_push_int(context, inst->anisotropyLevel); return 1; } duk_ret_t Polycode_VideoModeChangeInfo__set_anisotropyLevel(duk_context *context) { VideoModeChangeInfo *inst = (VideoModeChangeInfo*)duk_to_pointer(context, 0); inst->anisotropyLevel = duk_to_int(context, 1); return 0; } duk_ret_t Polycode_VideoModeChangeInfo__get_retinaSupport(duk_context *context) { VideoModeChangeInfo *inst = (VideoModeChangeInfo*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->retinaSupport); return 1; } duk_ret_t Polycode_VideoModeChangeInfo__set_retinaSupport(duk_context *context) { VideoModeChangeInfo *inst = (VideoModeChangeInfo*)duk_to_pointer(context, 0); inst->retinaSupport = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_VideoModeChangeInfo__delete(duk_context *context) { VideoModeChangeInfo *inst = (VideoModeChangeInfo*)duk_to_pointer(context, 0); delete inst; return 0; } duk_ret_t Polycode_PolycodeViewBase(duk_context *context) { PolycodeViewBase *inst = new PolycodeViewBase(); duk_push_pointer(context, (void*)inst); return 1; } duk_ret_t Polycode_PolycodeViewBase__get_resizable(duk_context *context) { PolycodeViewBase *inst = (PolycodeViewBase*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->resizable); return 1; } duk_ret_t Polycode_PolycodeViewBase__set_resizable(duk_context *context) { PolycodeViewBase *inst = (PolycodeViewBase*)duk_to_pointer(context, 0); inst->resizable = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_PolycodeViewBase__delete(duk_context *context) { PolycodeViewBase *inst = (PolycodeViewBase*)duk_to_pointer(context, 0); delete inst; return 0; } duk_ret_t Polycode_DummyCore(duk_context *context) { DummyCore *inst = new DummyCore(); duk_push_pointer(context, (void*)inst); return 1; } duk_ret_t Polycode_DummyCore__delete(duk_context *context) { DummyCore *inst = (DummyCore*)duk_to_pointer(context, 0); delete inst; return 0; } duk_ret_t Polycode_DummyCore_Render(duk_context *context) { DummyCore *inst = (DummyCore*)duk_to_pointer(context, 0); inst->Render(); return 0; } duk_ret_t Polycode_DummyCore_systemUpdate(duk_context *context) { DummyCore *inst = (DummyCore*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->systemUpdate()); return 1; } duk_ret_t Polycode_DummyCore_setCursor(duk_context *context) { DummyCore *inst = (DummyCore*)duk_to_pointer(context, 0); int cursorType = duk_to_int(context, 1); inst->setCursor(cursorType); return 0; } duk_ret_t Polycode_DummyCore_createThread(duk_context *context) { DummyCore *inst = (DummyCore*)duk_to_pointer(context, 0); Threaded* target = (Threaded*)duk_to_pointer(context, 1); inst->createThread(target); return 0; } duk_ret_t Polycode_DummyCore_createMutex(duk_context *context) { DummyCore *inst = (DummyCore*)duk_to_pointer(context, 0); PolyBase *ptrRetVal = (PolyBase*)inst->createMutex(); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_DummyCore_copyStringToClipboard(duk_context *context) { DummyCore *inst = (DummyCore*)duk_to_pointer(context, 0); String str = duk_to_string(context, 1); inst->copyStringToClipboard(str); return 0; } duk_ret_t Polycode_DummyCore_getClipboardString(duk_context *context) { DummyCore *inst = (DummyCore*)duk_to_pointer(context, 0); duk_push_string(context, inst->getClipboardString().c_str()); return 1; } duk_ret_t Polycode_DummyCore_createFolder(duk_context *context) { DummyCore *inst = (DummyCore*)duk_to_pointer(context, 0); String folderPath = duk_to_string(context, 1); inst->createFolder(folderPath); return 0; } duk_ret_t Polycode_DummyCore_copyDiskItem(duk_context *context) { DummyCore *inst = (DummyCore*)duk_to_pointer(context, 0); String itemPath = duk_to_string(context, 1); String destItemPath = duk_to_string(context, 2); inst->copyDiskItem(itemPath,destItemPath); return 0; } duk_ret_t Polycode_DummyCore_moveDiskItem(duk_context *context) { DummyCore *inst = (DummyCore*)duk_to_pointer(context, 0); String itemPath = duk_to_string(context, 1); String destItemPath = duk_to_string(context, 2); inst->moveDiskItem(itemPath,destItemPath); return 0; } duk_ret_t Polycode_DummyCore_removeDiskItem(duk_context *context) { DummyCore *inst = (DummyCore*)duk_to_pointer(context, 0); String itemPath = duk_to_string(context, 1); inst->removeDiskItem(itemPath); return 0; } duk_ret_t Polycode_DummyCore_openFolderPicker(duk_context *context) { DummyCore *inst = (DummyCore*)duk_to_pointer(context, 0); duk_push_string(context, inst->openFolderPicker().c_str()); return 1; } duk_ret_t Polycode_DummyCore_openFilePicker(duk_context *context) { DummyCore *inst = (DummyCore*)duk_to_pointer(context, 0); vector extensions = *(vector*)duk_to_pointer(context, 1); bool allowMultiple = duk_to_boolean(context, 2); return 0; } duk_ret_t Polycode_DummyCore_saveFilePicker(duk_context *context) { DummyCore *inst = (DummyCore*)duk_to_pointer(context, 0); vector extensions = *(vector*)duk_to_pointer(context, 1); duk_push_string(context, inst->saveFilePicker(extensions).c_str()); return 1; } duk_ret_t Polycode_DummyCore_handleVideoModeChange(duk_context *context) { DummyCore *inst = (DummyCore*)duk_to_pointer(context, 0); VideoModeChangeInfo* modeInfo = (VideoModeChangeInfo*)duk_to_pointer(context, 1); inst->handleVideoModeChange(modeInfo); return 0; } duk_ret_t Polycode_DummyCore_flushRenderContext(duk_context *context) { DummyCore *inst = (DummyCore*)duk_to_pointer(context, 0); inst->flushRenderContext(); return 0; } duk_ret_t Polycode_DummyCore_openURL(duk_context *context) { DummyCore *inst = (DummyCore*)duk_to_pointer(context, 0); String url = duk_to_string(context, 1); inst->openURL(url); return 0; } duk_ret_t Polycode_DummyCore_getTicks(duk_context *context) { DummyCore *inst = (DummyCore*)duk_to_pointer(context, 0); duk_push_int(context, inst->getTicks()); return 1; } duk_ret_t Polycode_DummyCore_executeExternalCommand(duk_context *context) { DummyCore *inst = (DummyCore*)duk_to_pointer(context, 0); String command = duk_to_string(context, 1); String args = duk_to_string(context, 2); String inDirectory = duk_to_string(context, 3); duk_push_string(context, inst->executeExternalCommand(command,args,inDirectory).c_str()); return 1; } duk_ret_t Polycode_DummyCore_systemParseFolder(duk_context *context) { DummyCore *inst = (DummyCore*)duk_to_pointer(context, 0); String pathString = duk_to_string(context, 1); bool showHidden = duk_to_boolean(context, 2); vector targetVector = *(vector*)duk_to_pointer(context, 3); duk_push_boolean(context, inst->systemParseFolder(pathString,showHidden,targetVector)); return 1; } duk_ret_t Polycode_TimeInfo(duk_context *context) { TimeInfo *inst = new TimeInfo(); duk_push_pointer(context, (void*)inst); return 1; } duk_ret_t Polycode_TimeInfo__get_seconds(duk_context *context) { TimeInfo *inst = (TimeInfo*)duk_to_pointer(context, 0); duk_push_int(context, inst->seconds); return 1; } duk_ret_t Polycode_TimeInfo__set_seconds(duk_context *context) { TimeInfo *inst = (TimeInfo*)duk_to_pointer(context, 0); inst->seconds = duk_to_int(context, 1); return 0; } duk_ret_t Polycode_TimeInfo__get_minutes(duk_context *context) { TimeInfo *inst = (TimeInfo*)duk_to_pointer(context, 0); duk_push_int(context, inst->minutes); return 1; } duk_ret_t Polycode_TimeInfo__set_minutes(duk_context *context) { TimeInfo *inst = (TimeInfo*)duk_to_pointer(context, 0); inst->minutes = duk_to_int(context, 1); return 0; } duk_ret_t Polycode_TimeInfo__get_hours(duk_context *context) { TimeInfo *inst = (TimeInfo*)duk_to_pointer(context, 0); duk_push_int(context, inst->hours); return 1; } duk_ret_t Polycode_TimeInfo__set_hours(duk_context *context) { TimeInfo *inst = (TimeInfo*)duk_to_pointer(context, 0); inst->hours = duk_to_int(context, 1); return 0; } duk_ret_t Polycode_TimeInfo__get_month(duk_context *context) { TimeInfo *inst = (TimeInfo*)duk_to_pointer(context, 0); duk_push_int(context, inst->month); return 1; } duk_ret_t Polycode_TimeInfo__set_month(duk_context *context) { TimeInfo *inst = (TimeInfo*)duk_to_pointer(context, 0); inst->month = duk_to_int(context, 1); return 0; } duk_ret_t Polycode_TimeInfo__get_monthDay(duk_context *context) { TimeInfo *inst = (TimeInfo*)duk_to_pointer(context, 0); duk_push_int(context, inst->monthDay); return 1; } duk_ret_t Polycode_TimeInfo__set_monthDay(duk_context *context) { TimeInfo *inst = (TimeInfo*)duk_to_pointer(context, 0); inst->monthDay = duk_to_int(context, 1); return 0; } duk_ret_t Polycode_TimeInfo__get_weekDay(duk_context *context) { TimeInfo *inst = (TimeInfo*)duk_to_pointer(context, 0); duk_push_int(context, inst->weekDay); return 1; } duk_ret_t Polycode_TimeInfo__set_weekDay(duk_context *context) { TimeInfo *inst = (TimeInfo*)duk_to_pointer(context, 0); inst->weekDay = duk_to_int(context, 1); return 0; } duk_ret_t Polycode_TimeInfo__get_year(duk_context *context) { TimeInfo *inst = (TimeInfo*)duk_to_pointer(context, 0); duk_push_int(context, inst->year); return 1; } duk_ret_t Polycode_TimeInfo__set_year(duk_context *context) { TimeInfo *inst = (TimeInfo*)duk_to_pointer(context, 0); inst->year = duk_to_int(context, 1); return 0; } duk_ret_t Polycode_TimeInfo__get_yearDay(duk_context *context) { TimeInfo *inst = (TimeInfo*)duk_to_pointer(context, 0); duk_push_int(context, inst->yearDay); return 1; } duk_ret_t Polycode_TimeInfo__set_yearDay(duk_context *context) { TimeInfo *inst = (TimeInfo*)duk_to_pointer(context, 0); inst->yearDay = duk_to_int(context, 1); return 0; } duk_ret_t Polycode_TimeInfo__delete(duk_context *context) { TimeInfo *inst = (TimeInfo*)duk_to_pointer(context, 0); delete inst; return 0; } duk_ret_t Polycode_CoreMotionEvent(duk_context *context) { CoreMotionEvent *inst = new CoreMotionEvent(); duk_push_pointer(context, (void*)inst); return 1; } duk_ret_t Polycode_CoreMotionEvent__get_amount(duk_context *context) { CoreMotionEvent *inst = (CoreMotionEvent*)duk_to_pointer(context, 0); Vector3 *retInst = new Vector3(); *retInst = inst->amount; duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_CoreMotionEvent__set_amount(duk_context *context) { CoreMotionEvent *inst = (CoreMotionEvent*)duk_to_pointer(context, 0); inst->amount = *(Vector3*)duk_to_pointer(context, 1); return 0; } duk_ret_t Polycode_CoreMotionEvent__delete(duk_context *context) { CoreMotionEvent *inst = (CoreMotionEvent*)duk_to_pointer(context, 0); delete inst; return 0; } duk_ret_t Polycode_CoreFileExtension(duk_context *context) { CoreFileExtension *inst = new CoreFileExtension(); duk_push_pointer(context, (void*)inst); return 1; } duk_ret_t Polycode_CoreFileExtension__get_extension(duk_context *context) { CoreFileExtension *inst = (CoreFileExtension*)duk_to_pointer(context, 0); duk_push_string(context, inst->extension.c_str()); return 1; } duk_ret_t Polycode_CoreFileExtension__set_extension(duk_context *context) { CoreFileExtension *inst = (CoreFileExtension*)duk_to_pointer(context, 0); inst->extension = duk_to_string(context, 1); return 0; } duk_ret_t Polycode_CoreFileExtension__get_description(duk_context *context) { CoreFileExtension *inst = (CoreFileExtension*)duk_to_pointer(context, 0); duk_push_string(context, inst->description.c_str()); return 1; } duk_ret_t Polycode_CoreFileExtension__set_description(duk_context *context) { CoreFileExtension *inst = (CoreFileExtension*)duk_to_pointer(context, 0); inst->description = duk_to_string(context, 1); return 0; } duk_ret_t Polycode_CoreFileExtension__delete(duk_context *context) { CoreFileExtension *inst = (CoreFileExtension*)duk_to_pointer(context, 0); delete inst; return 0; } duk_ret_t Polycode_OSFileEntry(duk_context *context) { OSFileEntry *inst = new OSFileEntry(); duk_push_pointer(context, (void*)inst); return 1; } duk_ret_t Polycode_OSFileEntry__get_name(duk_context *context) { OSFileEntry *inst = (OSFileEntry*)duk_to_pointer(context, 0); duk_push_string(context, inst->name.c_str()); return 1; } duk_ret_t Polycode_OSFileEntry__set_name(duk_context *context) { OSFileEntry *inst = (OSFileEntry*)duk_to_pointer(context, 0); inst->name = duk_to_string(context, 1); return 0; } duk_ret_t Polycode_OSFileEntry__get_extension(duk_context *context) { OSFileEntry *inst = (OSFileEntry*)duk_to_pointer(context, 0); duk_push_string(context, inst->extension.c_str()); return 1; } duk_ret_t Polycode_OSFileEntry__set_extension(duk_context *context) { OSFileEntry *inst = (OSFileEntry*)duk_to_pointer(context, 0); inst->extension = duk_to_string(context, 1); return 0; } duk_ret_t Polycode_OSFileEntry__get_nameWithoutExtension(duk_context *context) { OSFileEntry *inst = (OSFileEntry*)duk_to_pointer(context, 0); duk_push_string(context, inst->nameWithoutExtension.c_str()); return 1; } duk_ret_t Polycode_OSFileEntry__set_nameWithoutExtension(duk_context *context) { OSFileEntry *inst = (OSFileEntry*)duk_to_pointer(context, 0); inst->nameWithoutExtension = duk_to_string(context, 1); return 0; } duk_ret_t Polycode_OSFileEntry__get_basePath(duk_context *context) { OSFileEntry *inst = (OSFileEntry*)duk_to_pointer(context, 0); duk_push_string(context, inst->basePath.c_str()); return 1; } duk_ret_t Polycode_OSFileEntry__set_basePath(duk_context *context) { OSFileEntry *inst = (OSFileEntry*)duk_to_pointer(context, 0); inst->basePath = duk_to_string(context, 1); return 0; } duk_ret_t Polycode_OSFileEntry__get_fullPath(duk_context *context) { OSFileEntry *inst = (OSFileEntry*)duk_to_pointer(context, 0); duk_push_string(context, inst->fullPath.c_str()); return 1; } duk_ret_t Polycode_OSFileEntry__set_fullPath(duk_context *context) { OSFileEntry *inst = (OSFileEntry*)duk_to_pointer(context, 0); inst->fullPath = duk_to_string(context, 1); return 0; } duk_ret_t Polycode_OSFileEntry__get_type(duk_context *context) { OSFileEntry *inst = (OSFileEntry*)duk_to_pointer(context, 0); duk_push_int(context, inst->type); return 1; } duk_ret_t Polycode_OSFileEntry__set_type(duk_context *context) { OSFileEntry *inst = (OSFileEntry*)duk_to_pointer(context, 0); inst->type = duk_to_int(context, 1); return 0; } duk_ret_t Polycode_OSFileEntry__delete(duk_context *context) { OSFileEntry *inst = (OSFileEntry*)duk_to_pointer(context, 0); delete inst; return 0; } duk_ret_t Polycode_OSFileEntry_init(duk_context *context) { OSFileEntry *inst = (OSFileEntry*)duk_to_pointer(context, 0); String path = duk_to_string(context, 1); String name = duk_to_string(context, 2); int type = duk_to_int(context, 3); inst->init(path,name,type); return 0; } duk_ret_t Polycode_CoreInput(duk_context *context) { CoreInput *inst = new CoreInput(); duk_push_pointer(context, (void*)inst); return 1; } duk_ret_t Polycode_CoreInput__get_simulateTouchWithMouse(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->simulateTouchWithMouse); return 1; } duk_ret_t Polycode_CoreInput__set_simulateTouchWithMouse(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); inst->simulateTouchWithMouse = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_CoreInput__get_simulateTouchAsPen(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->simulateTouchAsPen); return 1; } duk_ret_t Polycode_CoreInput__set_simulateTouchAsPen(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); inst->simulateTouchAsPen = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_CoreInput__get_simulateMouseWithTouch(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->simulateMouseWithTouch); return 1; } duk_ret_t Polycode_CoreInput__set_simulateMouseWithTouch(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); inst->simulateMouseWithTouch = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_CoreInput__get_ignoreOffScreenTouch(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->ignoreOffScreenTouch); return 1; } duk_ret_t Polycode_CoreInput__set_ignoreOffScreenTouch(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); inst->ignoreOffScreenTouch = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_CoreInput__get_keyRepeat(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->keyRepeat); return 1; } duk_ret_t Polycode_CoreInput__set_keyRepeat(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); inst->keyRepeat = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_CoreInput__get_mousePosition(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); Vector2 *retInst = new Vector2(); *retInst = inst->mousePosition; duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_CoreInput__set_mousePosition(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); inst->mousePosition = *(Vector2*)duk_to_pointer(context, 1); return 0; } duk_ret_t Polycode_CoreInput__get_deltaMousePosition(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); Vector2 *retInst = new Vector2(); *retInst = inst->deltaMousePosition; duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_CoreInput__set_deltaMousePosition(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); inst->deltaMousePosition = *(Vector2*)duk_to_pointer(context, 1); return 0; } duk_ret_t Polycode_CoreInput__delete(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); delete inst; return 0; } duk_ret_t Polycode_CoreInput_getMousePosition(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); Vector2 *retInst = new Vector2(); *retInst = inst->getMousePosition(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_CoreInput_getKeyState(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); PolyKEY keyCode = (PolyKEY)duk_to_int(context, 1); duk_push_boolean(context, inst->getKeyState(keyCode)); return 1; } duk_ret_t Polycode_CoreInput_getJoystickButtonState(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); int joystickIndex = duk_to_int(context, 1); int button = duk_to_int(context, 2); duk_push_boolean(context, inst->getJoystickButtonState(joystickIndex,button)); return 1; } duk_ret_t Polycode_CoreInput_getJoystickAxisValue(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); int joystickIndex = duk_to_int(context, 1); int axis = duk_to_int(context, 2); duk_push_number(context, inst->getJoystickAxisValue(joystickIndex,axis)); return 1; } duk_ret_t Polycode_CoreInput_getMouseDelta(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); Vector2 *retInst = new Vector2(); *retInst = inst->getMouseDelta(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_CoreInput_getMouseButtonState(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); int mouseButton = duk_to_int(context, 1); duk_push_boolean(context, inst->getMouseButtonState(mouseButton)); return 1; } duk_ret_t Polycode_CoreInput_getNumJoysticks(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); duk_push_int(context, inst->getNumJoysticks()); return 1; } duk_ret_t Polycode_CoreInput_getJoystickInfoByIndex(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); int index = duk_to_int(context, 1); PolyBase *ptrRetVal = (PolyBase*)inst->getJoystickInfoByIndex(index); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_CoreInput_getJoystickInfoByID(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); int deviceID = duk_to_int(context, 1); PolyBase *ptrRetVal = (PolyBase*)inst->getJoystickInfoByID(deviceID); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_CoreInput_addJoystick(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); int deviceID = duk_to_int(context, 1); inst->addJoystick(deviceID); return 0; } duk_ret_t Polycode_CoreInput_removeJoystick(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); int deviceID = duk_to_int(context, 1); inst->removeJoystick(deviceID); return 0; } duk_ret_t Polycode_CoreInput_joystickAxisMoved(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); int axisID = duk_to_int(context, 1); Number value = duk_to_number(context, 2); int deviceID = duk_to_int(context, 3); inst->joystickAxisMoved(axisID,value,deviceID); return 0; } duk_ret_t Polycode_CoreInput_joystickButtonDown(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); int buttonID = duk_to_int(context, 1); int deviceID = duk_to_int(context, 2); inst->joystickButtonDown(buttonID,deviceID); return 0; } duk_ret_t Polycode_CoreInput_joystickButtonUp(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); int buttonID = duk_to_int(context, 1); int deviceID = duk_to_int(context, 2); inst->joystickButtonUp(buttonID,deviceID); return 0; } duk_ret_t Polycode_CoreInput_mouseWheelUp(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); int ticks = duk_to_int(context, 1); inst->mouseWheelUp(ticks); return 0; } duk_ret_t Polycode_CoreInput_mouseWheelDown(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); int ticks = duk_to_int(context, 1); inst->mouseWheelDown(ticks); return 0; } duk_ret_t Polycode_CoreInput_setMouseButtonState(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); int mouseButton = duk_to_int(context, 1); bool state = duk_to_boolean(context, 2); int ticks = duk_to_int(context, 3); inst->setMouseButtonState(mouseButton,state,ticks); return 0; } duk_ret_t Polycode_CoreInput_setMousePosition(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); int x = duk_to_int(context, 1); int y = duk_to_int(context, 2); int ticks = duk_to_int(context, 3); inst->setMousePosition(x,y,ticks); return 0; } duk_ret_t Polycode_CoreInput_setKeyState(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); PolyKEY keyCode = (PolyKEY)duk_to_int(context, 1); bool newState = duk_to_boolean(context, 2); int ticks = duk_to_int(context, 3); inst->setKeyState(keyCode,newState,ticks); return 0; } duk_ret_t Polycode_CoreInput_setDeltaPosition(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); int x = duk_to_int(context, 1); int y = duk_to_int(context, 2); inst->setDeltaPosition(x,y); return 0; } duk_ret_t Polycode_CoreInput_touchesBegan(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); TouchInfo touch = *(TouchInfo*)duk_to_pointer(context, 1); vector touches = *(vector*)duk_to_pointer(context, 2); int ticks = duk_to_int(context, 3); inst->touchesBegan(touch,touches,ticks); return 0; } duk_ret_t Polycode_CoreInput_touchesMoved(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); TouchInfo touch = *(TouchInfo*)duk_to_pointer(context, 1); vector touches = *(vector*)duk_to_pointer(context, 2); int ticks = duk_to_int(context, 3); inst->touchesMoved(touch,touches,ticks); return 0; } duk_ret_t Polycode_CoreInput_touchesEnded(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); TouchInfo touch = *(TouchInfo*)duk_to_pointer(context, 1); vector touches = *(vector*)duk_to_pointer(context, 2); int ticks = duk_to_int(context, 3); inst->touchesEnded(touch,touches,ticks); return 0; } duk_ret_t Polycode_CoreInput_textInput(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); String text = duk_to_string(context, 1); inst->textInput(text); return 0; } duk_ret_t Polycode_CoreInput_createEvent(duk_context *context) { Event* event = (Event*)duk_to_pointer(context, 0); PolyBase *ptrRetVal = (PolyBase*)CoreInput::createEvent(event); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_CoreInput_clearInput(duk_context *context) { CoreInput *inst = (CoreInput*)duk_to_pointer(context, 0); inst->clearInput(); return 0; } duk_ret_t Polycode_JoystickInfo(duk_context *context) { JoystickInfo *inst = new JoystickInfo(); duk_push_pointer(context, (void*)inst); return 1; } duk_ret_t Polycode_JoystickInfo__get_deviceID(duk_context *context) { JoystickInfo *inst = (JoystickInfo*)duk_to_pointer(context, 0); duk_push_int(context, inst->deviceID); return 1; } duk_ret_t Polycode_JoystickInfo__set_deviceID(duk_context *context) { JoystickInfo *inst = (JoystickInfo*)duk_to_pointer(context, 0); inst->deviceID = duk_to_int(context, 1); return 0; } duk_ret_t Polycode_JoystickInfo__get_deviceIndex(duk_context *context) { JoystickInfo *inst = (JoystickInfo*)duk_to_pointer(context, 0); duk_push_int(context, inst->deviceIndex); return 1; } duk_ret_t Polycode_JoystickInfo__set_deviceIndex(duk_context *context) { JoystickInfo *inst = (JoystickInfo*)duk_to_pointer(context, 0); inst->deviceIndex = duk_to_int(context, 1); return 0; } duk_ret_t Polycode_JoystickInfo__delete(duk_context *context) { JoystickInfo *inst = (JoystickInfo*)duk_to_pointer(context, 0); delete inst; return 0; } duk_ret_t Polycode_CoreServices__delete(duk_context *context) { CoreServices *inst = (CoreServices*)duk_to_pointer(context, 0); delete inst; return 0; } duk_ret_t Polycode_CoreServices_getInstance(duk_context *context) { PolyBase *ptrRetVal = (PolyBase*)CoreServices::getInstance(); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_CoreServices_setInstance(duk_context *context) { CoreServices* _instance = (CoreServices*)duk_to_pointer(context, 0); CoreServices::setInstance(_instance); return 0; } duk_ret_t Polycode_CoreServices_getRenderMutex(duk_context *context) { PolyBase *ptrRetVal = (PolyBase*)CoreServices::getRenderMutex(); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_CoreServices_createInstance(duk_context *context) { CoreServices::createInstance(); return 0; } duk_ret_t Polycode_CoreServices_setRenderer(duk_context *context) { CoreServices *inst = (CoreServices*)duk_to_pointer(context, 0); Renderer* renderer = (Renderer*)duk_to_pointer(context, 1); inst->setRenderer(renderer); return 0; } duk_ret_t Polycode_CoreServices_getRenderer(duk_context *context) { CoreServices *inst = (CoreServices*)duk_to_pointer(context, 0); PolyBase *ptrRetVal = (PolyBase*)inst->getRenderer(); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_CoreServices_Update(duk_context *context) { CoreServices *inst = (CoreServices*)duk_to_pointer(context, 0); int elapsed = duk_to_int(context, 1); inst->Update(elapsed); return 0; } duk_ret_t Polycode_CoreServices_fixedUpdate(duk_context *context) { CoreServices *inst = (CoreServices*)duk_to_pointer(context, 0); inst->fixedUpdate(); return 0; } duk_ret_t Polycode_CoreServices_Render(duk_context *context) { CoreServices *inst = (CoreServices*)duk_to_pointer(context, 0); Rectangle viewport = *(Rectangle*)duk_to_pointer(context, 1); inst->Render(viewport); return 0; } duk_ret_t Polycode_CoreServices_setCore(duk_context *context) { CoreServices *inst = (CoreServices*)duk_to_pointer(context, 0); Core* core = (Core*)duk_to_pointer(context, 1); inst->setCore(core); return 0; } duk_ret_t Polycode_CoreServices_getCore(duk_context *context) { CoreServices *inst = (CoreServices*)duk_to_pointer(context, 0); PolyBase *ptrRetVal = (PolyBase*)inst->getCore(); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_CoreServices_getInput(duk_context *context) { CoreServices *inst = (CoreServices*)duk_to_pointer(context, 0); PolyBase *ptrRetVal = (PolyBase*)inst->getInput(); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_CoreServices_getSceneManager(duk_context *context) { CoreServices *inst = (CoreServices*)duk_to_pointer(context, 0); PolyBase *ptrRetVal = (PolyBase*)inst->getSceneManager(); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_CoreServices_getTimerManager(duk_context *context) { CoreServices *inst = (CoreServices*)duk_to_pointer(context, 0); PolyBase *ptrRetVal = (PolyBase*)inst->getTimerManager(); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_CoreServices_getTweenManager(duk_context *context) { CoreServices *inst = (CoreServices*)duk_to_pointer(context, 0); PolyBase *ptrRetVal = (PolyBase*)inst->getTweenManager(); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_CoreServices_getResourceManager(duk_context *context) { CoreServices *inst = (CoreServices*)duk_to_pointer(context, 0); PolyBase *ptrRetVal = (PolyBase*)inst->getResourceManager(); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_CoreServices_getSoundManager(duk_context *context) { CoreServices *inst = (CoreServices*)duk_to_pointer(context, 0); PolyBase *ptrRetVal = (PolyBase*)inst->getSoundManager(); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_CoreServices_getLogger(duk_context *context) { CoreServices *inst = (CoreServices*)duk_to_pointer(context, 0); PolyBase *ptrRetVal = (PolyBase*)inst->getLogger(); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_CoreServices_getConfig(duk_context *context) { CoreServices *inst = (CoreServices*)duk_to_pointer(context, 0); PolyBase *ptrRetVal = (PolyBase*)inst->getConfig(); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_Data(duk_context *context) { Data *inst = new Data(); duk_push_pointer(context, (void*)inst); return 1; } duk_ret_t Polycode_Data__delete(duk_context *context) { Data *inst = (Data*)duk_to_pointer(context, 0); delete inst; return 0; } duk_ret_t Polycode_Data_loadFromFile(duk_context *context) { Data *inst = (Data*)duk_to_pointer(context, 0); String fileName = duk_to_string(context, 1); duk_push_boolean(context, inst->loadFromFile(fileName)); return 1; } duk_ret_t Polycode_Data_getAsString(duk_context *context) { Data *inst = (Data*)duk_to_pointer(context, 0); int encoding = duk_to_int(context, 1); duk_push_string(context, inst->getAsString(encoding).c_str()); return 1; } duk_ret_t Polycode_Data_setFromString(duk_context *context) { Data *inst = (Data*)duk_to_pointer(context, 0); String str = duk_to_string(context, 1); int encoding = duk_to_int(context, 2); inst->setFromString(str,encoding); return 0; } duk_ret_t Polycode_Data_saveToFile(duk_context *context) { Data *inst = (Data*)duk_to_pointer(context, 0); String fileName = duk_to_string(context, 1); duk_push_boolean(context, inst->saveToFile(fileName)); return 1; } duk_ret_t Polycode_Data_getData(duk_context *context) { Data *inst = (Data*)duk_to_pointer(context, 0); PolyBase *ptrRetVal = (PolyBase*)inst->getData(); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_MouseEventResult(duk_context *context) { MouseEventResult *inst = new MouseEventResult(); duk_push_pointer(context, (void*)inst); return 1; } duk_ret_t Polycode_MouseEventResult__get_hit(duk_context *context) { MouseEventResult *inst = (MouseEventResult*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->hit); return 1; } duk_ret_t Polycode_MouseEventResult__set_hit(duk_context *context) { MouseEventResult *inst = (MouseEventResult*)duk_to_pointer(context, 0); inst->hit = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_MouseEventResult__get_blocked(duk_context *context) { MouseEventResult *inst = (MouseEventResult*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->blocked); return 1; } duk_ret_t Polycode_MouseEventResult__set_blocked(duk_context *context) { MouseEventResult *inst = (MouseEventResult*)duk_to_pointer(context, 0); inst->blocked = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_MouseEventResult__delete(duk_context *context) { MouseEventResult *inst = (MouseEventResult*)duk_to_pointer(context, 0); delete inst; return 0; } duk_ret_t Polycode_EntityProp(duk_context *context) { EntityProp *inst = new EntityProp(); duk_push_pointer(context, (void*)inst); return 1; } duk_ret_t Polycode_EntityProp__get_propName(duk_context *context) { EntityProp *inst = (EntityProp*)duk_to_pointer(context, 0); duk_push_string(context, inst->propName.c_str()); return 1; } duk_ret_t Polycode_EntityProp__set_propName(duk_context *context) { EntityProp *inst = (EntityProp*)duk_to_pointer(context, 0); inst->propName = duk_to_string(context, 1); return 0; } duk_ret_t Polycode_EntityProp__get_propValue(duk_context *context) { EntityProp *inst = (EntityProp*)duk_to_pointer(context, 0); duk_push_string(context, inst->propValue.c_str()); return 1; } duk_ret_t Polycode_EntityProp__set_propValue(duk_context *context) { EntityProp *inst = (EntityProp*)duk_to_pointer(context, 0); inst->propValue = duk_to_string(context, 1); return 0; } duk_ret_t Polycode_EntityProp__delete(duk_context *context) { EntityProp *inst = (EntityProp*)duk_to_pointer(context, 0); delete inst; return 0; } duk_ret_t Polycode_AABB(duk_context *context) { AABB *inst = new AABB(); duk_push_pointer(context, (void*)inst); return 1; } duk_ret_t Polycode_AABB__get_min(duk_context *context) { AABB *inst = (AABB*)duk_to_pointer(context, 0); Vector3 *retInst = new Vector3(); *retInst = inst->min; duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_AABB__set_min(duk_context *context) { AABB *inst = (AABB*)duk_to_pointer(context, 0); inst->min = *(Vector3*)duk_to_pointer(context, 1); return 0; } duk_ret_t Polycode_AABB__get_max(duk_context *context) { AABB *inst = (AABB*)duk_to_pointer(context, 0); Vector3 *retInst = new Vector3(); *retInst = inst->max; duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_AABB__set_max(duk_context *context) { AABB *inst = (AABB*)duk_to_pointer(context, 0); inst->max = *(Vector3*)duk_to_pointer(context, 1); return 0; } duk_ret_t Polycode_AABB__delete(duk_context *context) { AABB *inst = (AABB*)duk_to_pointer(context, 0); delete inst; return 0; } duk_ret_t Polycode_Rotation(duk_context *context) { Rotation *inst = new Rotation(); duk_push_pointer(context, (void*)inst); return 1; } duk_ret_t Polycode_Rotation__get_pitch(duk_context *context) { Rotation *inst = (Rotation*)duk_to_pointer(context, 0); duk_push_number(context, inst->pitch); return 1; } duk_ret_t Polycode_Rotation__set_pitch(duk_context *context) { Rotation *inst = (Rotation*)duk_to_pointer(context, 0); inst->pitch = duk_to_number(context, 1); return 0; } duk_ret_t Polycode_Rotation__get_yaw(duk_context *context) { Rotation *inst = (Rotation*)duk_to_pointer(context, 0); duk_push_number(context, inst->yaw); return 1; } duk_ret_t Polycode_Rotation__set_yaw(duk_context *context) { Rotation *inst = (Rotation*)duk_to_pointer(context, 0); inst->yaw = duk_to_number(context, 1); return 0; } duk_ret_t Polycode_Rotation__get_roll(duk_context *context) { Rotation *inst = (Rotation*)duk_to_pointer(context, 0); duk_push_number(context, inst->roll); return 1; } duk_ret_t Polycode_Rotation__set_roll(duk_context *context) { Rotation *inst = (Rotation*)duk_to_pointer(context, 0); inst->roll = duk_to_number(context, 1); return 0; } duk_ret_t Polycode_Rotation__delete(duk_context *context) { Rotation *inst = (Rotation*)duk_to_pointer(context, 0); delete inst; return 0; } duk_ret_t Polycode_Entity(duk_context *context) { Entity *inst = new Entity(); duk_push_pointer(context, (void*)inst); return 1; } duk_ret_t Polycode_Entity__get_ownsChildren(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->ownsChildren); return 1; } duk_ret_t Polycode_Entity__set_ownsChildren(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->ownsChildren = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_Entity__get_billboardMode(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->billboardMode); return 1; } duk_ret_t Polycode_Entity__set_billboardMode(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->billboardMode = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_Entity__get_color(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Color *retInst = new Color(); *retInst = inst->color; duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Entity__set_color(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->color = *(Color*)duk_to_pointer(context, 1); return 0; } duk_ret_t Polycode_Entity__get_enabled(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->enabled); return 1; } duk_ret_t Polycode_Entity__set_enabled(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->enabled = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_Entity__get_visible(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->visible); return 1; } duk_ret_t Polycode_Entity__set_visible(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->visible = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_Entity__get_depthWrite(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->depthWrite); return 1; } duk_ret_t Polycode_Entity__set_depthWrite(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->depthWrite = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_Entity__get_depthTest(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->depthTest); return 1; } duk_ret_t Polycode_Entity__set_depthTest(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->depthTest = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_Entity__get_colorAffectsChildren(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->colorAffectsChildren); return 1; } duk_ret_t Polycode_Entity__set_colorAffectsChildren(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->colorAffectsChildren = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_Entity__get_visibilityAffectsChildren(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->visibilityAffectsChildren); return 1; } duk_ret_t Polycode_Entity__set_visibilityAffectsChildren(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->visibilityAffectsChildren = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_Entity__get_ignoreParentMatrix(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->ignoreParentMatrix); return 1; } duk_ret_t Polycode_Entity__set_ignoreParentMatrix(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->ignoreParentMatrix = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_Entity__get_enableScissor(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->enableScissor); return 1; } duk_ret_t Polycode_Entity__set_enableScissor(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->enableScissor = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_Entity__get_scissorBox(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Polycode::Rectangle *retInst = new Polycode::Rectangle(); *retInst = inst->scissorBox; duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Entity__set_scissorBox(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->scissorBox = *(Rectangle*)duk_to_pointer(context, 1); return 0; } duk_ret_t Polycode_Entity__get_editorOnly(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->editorOnly); return 1; } duk_ret_t Polycode_Entity__set_editorOnly(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->editorOnly = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_Entity__get_id(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_string(context, inst->id.c_str()); return 1; } duk_ret_t Polycode_Entity__set_id(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->id = duk_to_string(context, 1); return 0; } duk_ret_t Polycode_Entity__get_collisionShapeType(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); char *retInst = new char(); *retInst = inst->collisionShapeType; duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Entity__set_collisionShapeType(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->collisionShapeType = *(char*)duk_to_pointer(context, 1); return 0; } duk_ret_t Polycode_Entity__get_processInputEvents(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->processInputEvents); return 1; } duk_ret_t Polycode_Entity__set_processInputEvents(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->processInputEvents = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_Entity__get_blockMouseInput(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->blockMouseInput); return 1; } duk_ret_t Polycode_Entity__set_blockMouseInput(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->blockMouseInput = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_Entity__get_snapToPixels(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->snapToPixels); return 1; } duk_ret_t Polycode_Entity__set_snapToPixels(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->snapToPixels = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_Entity__get_mouseOver(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->mouseOver); return 1; } duk_ret_t Polycode_Entity__set_mouseOver(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->mouseOver = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_Entity__get_rendererVis(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->rendererVis); return 1; } duk_ret_t Polycode_Entity__set_rendererVis(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->rendererVis = duk_to_boolean(context, 1); return 0; } duk_ret_t Polycode_Entity__get_layerID(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); char *retInst = new char(); *retInst = inst->layerID; duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Entity__set_layerID(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->layerID = *(char*)duk_to_pointer(context, 1); return 0; } duk_ret_t Polycode_Entity__delete(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); delete inst; return 0; } duk_ret_t Polycode_Entity_initEntity(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->initEntity(); return 0; } duk_ret_t Polycode_Entity_Render(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); GPUDrawBuffer* buffer = (GPUDrawBuffer*)duk_to_pointer(context, 1); inst->Render(buffer); return 0; } duk_ret_t Polycode_Entity_Update(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->Update(); return 0; } duk_ret_t Polycode_Entity_fixedUpdate(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->fixedUpdate(); return 0; } duk_ret_t Polycode_Entity_transformAndRender(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); GPUDrawBuffer* drawBuffer = (GPUDrawBuffer*)duk_to_pointer(context, 1); Rectangle* parentScissorBox = (Rectangle*)duk_to_pointer(context, 2); inst->transformAndRender(drawBuffer,parentScissorBox); return 0; } duk_ret_t Polycode_Entity_renderChildren(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); GPUDrawBuffer* buffer = (GPUDrawBuffer*)duk_to_pointer(context, 1); Rectangle* parentScissorBox = (Rectangle*)duk_to_pointer(context, 2); inst->renderChildren(buffer,parentScissorBox); return 0; } duk_ret_t Polycode_Entity_Clone(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); bool deepClone = duk_to_boolean(context, 1); bool ignoreEditorOnly = duk_to_boolean(context, 2); PolyBase *ptrRetVal = (PolyBase*)inst->Clone(deepClone,ignoreEditorOnly); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_Entity_applyClone(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Entity* clone = (Entity*)duk_to_pointer(context, 1); bool deepClone = duk_to_boolean(context, 2); bool ignoreEditorOnly = duk_to_boolean(context, 3); inst->applyClone(clone,deepClone,ignoreEditorOnly); return 0; } duk_ret_t Polycode_Entity_dirtyMatrix(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); bool val = duk_to_boolean(context, 1); inst->dirtyMatrix(val); return 0; } duk_ret_t Polycode_Entity_rebuildTransformMatrix(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->rebuildTransformMatrix(); return 0; } duk_ret_t Polycode_Entity_updateEntityMatrix(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->updateEntityMatrix(); return 0; } duk_ret_t Polycode_Entity_getTransformMatrix(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Matrix4 *retInst = new Matrix4(); *retInst = inst->getTransformMatrix(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Entity_getConcatenatedMatrix(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Matrix4 *retInst = new Matrix4(); *retInst = inst->getConcatenatedMatrix(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Entity_getConcatenatedMatrixRelativeTo(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Entity* relativeEntity = (Entity*)duk_to_pointer(context, 1); Matrix4 *retInst = new Matrix4(); *retInst = inst->getConcatenatedMatrixRelativeTo(relativeEntity); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Entity_getAnchorAdjustedMatrix(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Matrix4 *retInst = new Matrix4(); *retInst = inst->getAnchorAdjustedMatrix(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Entity_getConcatenatedRollMatrix(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Matrix4 *retInst = new Matrix4(); *retInst = inst->getConcatenatedRollMatrix(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Entity_setTransformByMatrixPure(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Matrix4 matrix = *(Matrix4*)duk_to_pointer(context, 1); inst->setTransformByMatrixPure(matrix); return 0; } duk_ret_t Polycode_Entity_getLookAtMatrix(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Vector3 loc = *(Vector3*)duk_to_pointer(context, 1); Vector3 upVector = *(Vector3*)duk_to_pointer(context, 2); Matrix4 *retInst = new Matrix4(); *retInst = inst->getLookAtMatrix(loc,upVector); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Entity_addChild(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Entity* newChild = (Entity*)duk_to_pointer(context, 1); inst->addChild(newChild); return 0; } duk_ret_t Polycode_Entity_removeChild(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Entity* entityToRemove = (Entity*)duk_to_pointer(context, 1); inst->removeChild(entityToRemove); return 0; } duk_ret_t Polycode_Entity_moveChildUp(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Entity* child = (Entity*)duk_to_pointer(context, 1); inst->moveChildUp(child); return 0; } duk_ret_t Polycode_Entity_moveChildDown(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Entity* child = (Entity*)duk_to_pointer(context, 1); inst->moveChildDown(child); return 0; } duk_ret_t Polycode_Entity_moveChildTop(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Entity* child = (Entity*)duk_to_pointer(context, 1); inst->moveChildTop(child); return 0; } duk_ret_t Polycode_Entity_moveChildBottom(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Entity* child = (Entity*)duk_to_pointer(context, 1); inst->moveChildBottom(child); return 0; } duk_ret_t Polycode_Entity_setParentEntity(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Entity* entity = (Entity*)duk_to_pointer(context, 1); inst->setParentEntity(entity); return 0; } duk_ret_t Polycode_Entity_getParentEntity(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); PolyBase *ptrRetVal = (PolyBase*)inst->getParentEntity(); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_Entity_getNumChildren(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_int(context, inst->getNumChildren()); return 1; } duk_ret_t Polycode_Entity_getChildAtIndex(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); int index = duk_to_int(context, 1); PolyBase *ptrRetVal = (PolyBase*)inst->getChildAtIndex(index); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_Entity_setOwnsChildrenRecursive(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); bool val = duk_to_boolean(context, 1); inst->setOwnsChildrenRecursive(val); return 0; } duk_ret_t Polycode_Entity_getPosition(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Vector3 *retInst = new Vector3(); *retInst = inst->getPosition(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Entity_getPosition2D(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Vector2 *retInst = new Vector2(); *retInst = inst->getPosition2D(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Entity_getCombinedPosition(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Vector3 *retInst = new Vector3(); *retInst = inst->getCombinedPosition(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Entity_setPosition(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Number x = duk_to_number(context, 1); Number y = duk_to_number(context, 2); Number z = duk_to_number(context, 3); inst->setPosition(x,y,z); return 0; } duk_ret_t Polycode_Entity_setPositionX(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Number x = duk_to_number(context, 1); inst->setPositionX(x); return 0; } duk_ret_t Polycode_Entity_setPositionY(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Number y = duk_to_number(context, 1); inst->setPositionY(y); return 0; } duk_ret_t Polycode_Entity_Translate(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Number x = duk_to_number(context, 1); Number y = duk_to_number(context, 2); Number z = duk_to_number(context, 3); inst->Translate(x,y,z); return 0; } duk_ret_t Polycode_Entity_setPositionZ(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Number z = duk_to_number(context, 1); inst->setPositionZ(z); return 0; } duk_ret_t Polycode_Entity_setScaleX(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Number x = duk_to_number(context, 1); inst->setScaleX(x); return 0; } duk_ret_t Polycode_Entity_setScaleY(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Number y = duk_to_number(context, 1); inst->setScaleY(y); return 0; } duk_ret_t Polycode_Entity_setScaleZ(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Number z = duk_to_number(context, 1); inst->setScaleZ(z); return 0; } duk_ret_t Polycode_Entity_Scale(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Number x = duk_to_number(context, 1); Number y = duk_to_number(context, 2); Number z = duk_to_number(context, 3); inst->Scale(x,y,z); return 0; } duk_ret_t Polycode_Entity_setScale(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Number x = duk_to_number(context, 1); Number y = duk_to_number(context, 2); Number z = duk_to_number(context, 3); inst->setScale(x,y,z); return 0; } duk_ret_t Polycode_Entity_getCompoundScale(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Vector3 *retInst = new Vector3(); *retInst = inst->getCompoundScale(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Entity_getScale(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Vector3 *retInst = new Vector3(); *retInst = inst->getScale(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Entity_getRotationEuler(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Vector3 *retInst = new Vector3(); *retInst = inst->getRotationEuler(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Entity_getCombinedPitch(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_number(context, inst->getCombinedPitch()); return 1; } duk_ret_t Polycode_Entity_getCombinedYaw(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_number(context, inst->getCombinedYaw()); return 1; } duk_ret_t Polycode_Entity_getCombinedRoll(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_number(context, inst->getCombinedRoll()); return 1; } duk_ret_t Polycode_Entity_rebuildRotation(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->rebuildRotation(); return 0; } duk_ret_t Polycode_Entity_setRotationEuler(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Vector3 rotation = *(Vector3*)duk_to_pointer(context, 1); inst->setRotationEuler(rotation); return 0; } duk_ret_t Polycode_Entity_setPitch(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Number pitch = duk_to_number(context, 1); inst->setPitch(pitch); return 0; } duk_ret_t Polycode_Entity_setYaw(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Number yaw = duk_to_number(context, 1); inst->setYaw(yaw); return 0; } duk_ret_t Polycode_Entity_setRoll(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Number roll = duk_to_number(context, 1); inst->setRoll(roll); return 0; } duk_ret_t Polycode_Entity_Roll(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Number roll = duk_to_number(context, 1); inst->Roll(roll); return 0; } duk_ret_t Polycode_Entity_Yaw(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Number yaw = duk_to_number(context, 1); inst->Yaw(yaw); return 0; } duk_ret_t Polycode_Entity_Pitch(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Number pitch = duk_to_number(context, 1); inst->Pitch(pitch); return 0; } duk_ret_t Polycode_Entity_getPitch(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_number(context, inst->getPitch()); return 1; } duk_ret_t Polycode_Entity_getYaw(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_number(context, inst->getYaw()); return 1; } duk_ret_t Polycode_Entity_getRoll(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_number(context, inst->getRoll()); return 1; } duk_ret_t Polycode_Entity_getWidth(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_number(context, inst->getWidth()); return 1; } duk_ret_t Polycode_Entity_getHeight(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_number(context, inst->getHeight()); return 1; } duk_ret_t Polycode_Entity_getDepth(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_number(context, inst->getDepth()); return 1; } duk_ret_t Polycode_Entity_setWidth(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Number width = duk_to_number(context, 1); inst->setWidth(width); return 0; } duk_ret_t Polycode_Entity_setHeight(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Number height = duk_to_number(context, 1); inst->setHeight(height); return 0; } duk_ret_t Polycode_Entity_setDepth(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Number depth = duk_to_number(context, 1); inst->setDepth(depth); return 0; } duk_ret_t Polycode_Entity_setRotationQuat(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Number w = duk_to_number(context, 1); Number x = duk_to_number(context, 2); Number y = duk_to_number(context, 3); Number z = duk_to_number(context, 4); inst->setRotationQuat(w,x,y,z); return 0; } duk_ret_t Polycode_Entity_setRotationByQuaternion(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Quaternion quaternion = *(Quaternion*)duk_to_pointer(context, 1); inst->setRotationByQuaternion(quaternion); return 0; } duk_ret_t Polycode_Entity_getRotationQuat(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Quaternion *retInst = new Quaternion(); *retInst = inst->getRotationQuat(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Entity_getConcatenatedQuat(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Quaternion *retInst = new Quaternion(); *retInst = inst->getConcatenatedQuat(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Entity_lookAt(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Vector3 loc = *(Vector3*)duk_to_pointer(context, 1); Vector3 upVector = *(Vector3*)duk_to_pointer(context, 2); inst->lookAt(loc,upVector); return 0; } duk_ret_t Polycode_Entity_lookAtEntity(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Entity* entity = (Entity*)duk_to_pointer(context, 1); Vector3 upVector = *(Vector3*)duk_to_pointer(context, 2); inst->lookAtEntity(entity,upVector); return 0; } duk_ret_t Polycode_Entity_getCombinedColor(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Color *retInst = new Color(); *retInst = inst->getCombinedColor(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Entity_setColor(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Number r = duk_to_number(context, 1); Number g = duk_to_number(context, 2); Number b = duk_to_number(context, 3); Number a = duk_to_number(context, 4); inst->setColor(r,g,b,a); return 0; } duk_ret_t Polycode_Entity_setColorInt(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); int r = duk_to_int(context, 1); int g = duk_to_int(context, 2); int b = duk_to_int(context, 3); int a = duk_to_int(context, 4); inst->setColorInt(r,g,b,a); return 0; } duk_ret_t Polycode_Entity_setAnchorPoint(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Vector3 anchorPoint = *(Vector3*)duk_to_pointer(context, 1); inst->setAnchorPoint(anchorPoint); return 0; } duk_ret_t Polycode_Entity_getAnchorPoint(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Vector3 *retInst = new Vector3(); *retInst = inst->getAnchorPoint(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Entity_onMouseDown(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Ray ray = *(Ray*)duk_to_pointer(context, 1); int mouseButton = duk_to_int(context, 2); int timestamp = duk_to_int(context, 3); MouseEventResult *retInst = new MouseEventResult(); *retInst = inst->onMouseDown(ray,mouseButton,timestamp); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Entity_onMouseUp(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Ray ray = *(Ray*)duk_to_pointer(context, 1); int mouseButton = duk_to_int(context, 2); int timestamp = duk_to_int(context, 3); MouseEventResult *retInst = new MouseEventResult(); *retInst = inst->onMouseUp(ray,mouseButton,timestamp); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Entity_onMouseMove(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Ray ray = *(Ray*)duk_to_pointer(context, 1); int timestamp = duk_to_int(context, 2); MouseEventResult *retInst = new MouseEventResult(); *retInst = inst->onMouseMove(ray,timestamp); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Entity_onMouseWheelUp(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Ray ray = *(Ray*)duk_to_pointer(context, 1); int timestamp = duk_to_int(context, 2); MouseEventResult *retInst = new MouseEventResult(); *retInst = inst->onMouseWheelUp(ray,timestamp); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Entity_onMouseWheelDown(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Ray ray = *(Ray*)duk_to_pointer(context, 1); int timestamp = duk_to_int(context, 2); MouseEventResult *retInst = new MouseEventResult(); *retInst = inst->onMouseWheelDown(ray,timestamp); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Entity_setDepthOnly(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); bool val = duk_to_boolean(context, 1); inst->setDepthOnly(val); return 0; } duk_ret_t Polycode_Entity_getDepthOnly(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->getDepthOnly()); return 1; } duk_ret_t Polycode_Entity_setUserData(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); void* userData = (void*)duk_to_pointer(context, 1); inst->setUserData(userData); return 0; } duk_ret_t Polycode_Entity_getUserData(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->getUserData(); return 0; } duk_ret_t Polycode_Entity_setBlendingMode(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); int newBlendingMode = duk_to_int(context, 1); inst->setBlendingMode(newBlendingMode); return 0; } duk_ret_t Polycode_Entity_getBlendingMode(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_int(context, inst->getBlendingMode()); return 1; } duk_ret_t Polycode_Entity_getEntityById(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); String id = duk_to_string(context, 1); bool recursive = duk_to_boolean(context, 2); PolyBase *ptrRetVal = (PolyBase*)inst->getEntityById(id,recursive); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_Entity_getEntitiesByTag(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); String tag = duk_to_string(context, 1); bool recursive = duk_to_boolean(context, 2); return 0; } duk_ret_t Polycode_Entity_getEntitiesByLayerID(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); char layerID = *(char*)duk_to_pointer(context, 1); bool recursive = duk_to_boolean(context, 2); return 0; } duk_ret_t Polycode_Entity_getEntityProp(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); String propName = duk_to_string(context, 1); duk_push_string(context, inst->getEntityProp(propName).c_str()); return 1; } duk_ret_t Polycode_Entity_setEntityProp(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); String propName = duk_to_string(context, 1); String propValue = duk_to_string(context, 2); inst->setEntityProp(propName,propValue); return 0; } duk_ret_t Polycode_Entity_setInverseY(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); bool val = duk_to_boolean(context, 1); inst->setInverseY(val); return 0; } duk_ret_t Polycode_Entity_getInverseY(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_boolean(context, inst->getInverseY()); return 1; } duk_ret_t Polycode_Entity_doUpdates(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->doUpdates(); return 0; } duk_ret_t Polycode_Entity_doFixedUpdates(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->doFixedUpdates(); return 0; } duk_ret_t Polycode_Entity_buildPositionMatrix(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Matrix4 *retInst = new Matrix4(); *retInst = inst->buildPositionMatrix(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Entity_setRenderer(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Renderer* renderer = (Renderer*)duk_to_pointer(context, 1); inst->setRenderer(renderer); return 0; } duk_ret_t Polycode_Entity_customHitDetection(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Ray ray = *(Ray*)duk_to_pointer(context, 1); duk_push_boolean(context, inst->customHitDetection(ray)); return 1; } duk_ret_t Polycode_Entity_getNumTags(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); duk_push_int(context, inst->getNumTags()); return 1; } duk_ret_t Polycode_Entity_getTagAtIndex(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); int index = duk_to_int(context, 1); duk_push_string(context, inst->getTagAtIndex(index).c_str()); return 1; } duk_ret_t Polycode_Entity_hasTag(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); String tag = duk_to_string(context, 1); duk_push_boolean(context, inst->hasTag(tag)); return 1; } duk_ret_t Polycode_Entity_clearTags(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->clearTags(); return 0; } duk_ret_t Polycode_Entity_addTag(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); String tag = duk_to_string(context, 1); inst->addTag(tag); return 0; } duk_ret_t Polycode_Entity_getScreenPosition(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Matrix4 projectionMatrix = *(Matrix4*)duk_to_pointer(context, 1); Matrix4 cameraMatrix = *(Matrix4*)duk_to_pointer(context, 2); Rectangle viewport = *(Rectangle*)duk_to_pointer(context, 3); Vector2 *retInst = new Vector2(); *retInst = inst->getScreenPosition(projectionMatrix,cameraMatrix,viewport); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Entity_recalculateAABBAllChildren(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->recalculateAABBAllChildren(); return 0; } duk_ret_t Polycode_Entity_recalculateAABB(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); inst->recalculateAABB(); return 0; } duk_ret_t Polycode_Entity_getWorldAABB(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); AABB *retInst = new AABB(); *retInst = inst->getWorldAABB(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Entity_getLocalBoundingBox(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Vector3 *retInst = new Vector3(); *retInst = inst->getLocalBoundingBox(); duk_push_pointer(context, (void*)retInst); return 1; } duk_ret_t Polycode_Entity_setLocalBoundingBox(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Vector3 box = *(Vector3*)duk_to_pointer(context, 1); inst->setLocalBoundingBox(box); return 0; } duk_ret_t Polycode_Entity_setLocalBoundingBoxX(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Number x = duk_to_number(context, 1); inst->setLocalBoundingBoxX(x); return 0; } duk_ret_t Polycode_Entity_setLocalBoundingBoxY(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Number y = duk_to_number(context, 1); inst->setLocalBoundingBoxY(y); return 0; } duk_ret_t Polycode_Entity_setLocalBoundingBoxZ(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Number z = duk_to_number(context, 1); inst->setLocalBoundingBoxZ(z); return 0; } duk_ret_t Polycode_Entity_setContainerScene(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); Scene* scene = (Scene*)duk_to_pointer(context, 1); inst->setContainerScene(scene); return 0; } duk_ret_t Polycode_Entity_getContainerScene(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); PolyBase *ptrRetVal = (PolyBase*)inst->getContainerScene(); duk_push_pointer(context, (void*)ptrRetVal); return 1; } duk_ret_t Polycode_Entity_attachScript(duk_context *context) { Entity *inst = (Entity*)duk_to_pointer(context, 0); shared_ptr