diff --git a/AUTHORS b/AUTHORS index 2bd952f38e..d8e16d5e7e 100644 --- a/AUTHORS +++ b/AUTHORS @@ -710,6 +710,7 @@ Developers: Updates spine runtime. Fixed a potential bug in Data's copy constructor. Fixed the bug that MotionStreak can not work with MoveTo and MoveBy + Fixed a bug that HttpAsynConnection can not get error content if response code less than 200 or response code greater or equal than 300 luocker Fix a bug that string itself is also modified in `String::componentsSeparatedByString`. diff --git a/CHANGELOG b/CHANGELOG index c491671ba3..55723f9d56 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,8 +1,9 @@ -cocos2d-x-3.5 Mar.20 2015 +cocos2d-x-3.5 Mar.23 2015 [NEW] EditBox: support Color4B [FIX] AutoRelasePool: memory leak if adding an element into pool when releasing auto release pool - [FIX] FileUtils: getWritablePath() will not return corrent setted writable path on Mac & Windows + [FIX] FileUtils: getWritablePath() does not return corret setted writable path on Mac & Windows + [FIX] HttpAsynConnection: can not get error content if response code less than 200 or response code greater or equal than 300 cocos2d-x-3.5rc0 Mar.13 2015 [NEW] CocosStudio: add callback when loading a CSB file @@ -21,7 +22,7 @@ cocos2d-x-3.5rc0 Mar.13 2015 cocos2d-x-3.5beta0 Feb.27 2015 [NEW] Added Particle3D - [NEW] C++: add Romanian languange support + [NEW] C++: add Romanian language support [FIX] Audio: audio can not resume if it is interrupt, and back from background [FIX] Cocos Studio UI: setCameraMask does not work for the Cocos Studio UI diff --git a/CMakeLists.txt b/CMakeLists.txt index 24c6a3caaf..986ac107d3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -38,7 +38,7 @@ endif() project (Cocos2d-X) # The version number -set(COCOS2D_X_VERSION 3.5beta0) +set(COCOS2D_X_VERSION 3.5) set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${PROJECT_SOURCE_DIR}/cmake/Modules/") include(CocosBuildHelpers) diff --git a/build/cocos2d_tests.xcodeproj/project.pbxproj b/build/cocos2d_tests.xcodeproj/project.pbxproj index 2ee8484e39..19cd2ecf4e 100644 --- a/build/cocos2d_tests.xcodeproj/project.pbxproj +++ b/build/cocos2d_tests.xcodeproj/project.pbxproj @@ -816,6 +816,8 @@ B2507B6C192589AF00FA4972 /* Shaders3D in Resources */ = {isa = PBXBuildFile; fileRef = B2507B6A192589AF00FA4972 /* Shaders3D */; }; B609E67319C18DAD003D0074 /* BillBoardTest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B609E67119C18DAD003D0074 /* BillBoardTest.cpp */; }; B609E67419C18DAD003D0074 /* BillBoardTest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B609E67119C18DAD003D0074 /* BillBoardTest.cpp */; }; + B6337DF71ABA9B44005AEF24 /* PerformanceParticle3DTest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B6337DF51ABA9B44005AEF24 /* PerformanceParticle3DTest.cpp */; }; + B6337DF81ABA9B44005AEF24 /* PerformanceParticle3DTest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B6337DF51ABA9B44005AEF24 /* PerformanceParticle3DTest.cpp */; }; B639932E1A490EC700B07923 /* Particle3DTest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B639932C1A490EC700B07923 /* Particle3DTest.cpp */; }; B639932F1A490EC700B07923 /* Particle3DTest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B639932C1A490EC700B07923 /* Particle3DTest.cpp */; }; B63993311A49359F00B07923 /* Particle3D in Resources */ = {isa = PBXBuildFile; fileRef = B63993301A49359F00B07923 /* Particle3D */; }; @@ -1752,6 +1754,8 @@ B2507B6A192589AF00FA4972 /* Shaders3D */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Shaders3D; path = "../tests/cpp-tests/Resources/Shaders3D"; sourceTree = ""; }; B609E67119C18DAD003D0074 /* BillBoardTest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = BillBoardTest.cpp; path = BillBoardTest/BillBoardTest.cpp; sourceTree = ""; }; B609E67219C18DAD003D0074 /* BillBoardTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = BillBoardTest.h; path = BillBoardTest/BillBoardTest.h; sourceTree = ""; }; + B6337DF51ABA9B44005AEF24 /* PerformanceParticle3DTest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PerformanceParticle3DTest.cpp; sourceTree = ""; }; + B6337DF61ABA9B44005AEF24 /* PerformanceParticle3DTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PerformanceParticle3DTest.h; sourceTree = ""; }; B639932C1A490EC700B07923 /* Particle3DTest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Particle3DTest.cpp; path = Particle3DTest/Particle3DTest.cpp; sourceTree = ""; }; B639932D1A490EC700B07923 /* Particle3DTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Particle3DTest.h; path = Particle3DTest/Particle3DTest.h; sourceTree = ""; }; B63993301A49359F00B07923 /* Particle3D */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Particle3D; path = "../tests/cpp-tests/Resources/Particle3D"; sourceTree = ""; }; @@ -2939,6 +2943,8 @@ 1AC35AC118CECF0C00F37B72 /* PerformanceTest */ = { isa = PBXGroup; children = ( + B6337DF51ABA9B44005AEF24 /* PerformanceParticle3DTest.cpp */, + B6337DF61ABA9B44005AEF24 /* PerformanceParticle3DTest.h */, 1AC35AC218CECF0C00F37B72 /* PerformanceAllocTest.cpp */, 1AC35AC318CECF0C00F37B72 /* PerformanceAllocTest.h */, 1AF152D718FD252A00A52F3D /* PerformanceCallbackTest.cpp */, @@ -4866,6 +4872,7 @@ 182C5CBA1A95B2FD00C30D34 /* CocosStudio3DTest.cpp in Sources */, 1AC35C5D18CECF0C00F37B72 /* Ball.cpp in Sources */, 1AC35B7B18CECF0C00F37B72 /* GameOverScene.cpp in Sources */, + B6337DF71ABA9B44005AEF24 /* PerformanceParticle3DTest.cpp in Sources */, 1AC35BF318CECF0C00F37B72 /* ExtensionsTest.cpp in Sources */, 1AC35B3518CECF0C00F37B72 /* TestEntries.cpp in Sources */, 1AC35B2D18CECF0C00F37B72 /* Box2dTest.cpp in Sources */, @@ -5118,6 +5125,7 @@ 1AC35C3E18CECF0C00F37B72 /* PhysicsTest.cpp in Sources */, 3825CC4A1A2C982A00C92EA8 /* CustomRootNode.cpp in Sources */, 29080DC6191B595E0066F8DF /* UIScene_Editor.cpp in Sources */, + B6337DF81ABA9B44005AEF24 /* PerformanceParticle3DTest.cpp in Sources */, 29080DB2191B595E0066F8DF /* UILayoutTest.cpp in Sources */, 1AC35B6A18CECF0C00F37B72 /* ButtonTestLayer.cpp in Sources */, 29080DB6191B595E0066F8DF /* UIListViewTest.cpp in Sources */, diff --git a/cocos/2d/CCAction.h b/cocos/2d/CCAction.h index b73de3e2bc..fd8bf1c802 100644 --- a/cocos/2d/CCAction.h +++ b/cocos/2d/CCAction.h @@ -66,6 +66,7 @@ public: /** Returns a new action that performs the exactly the reverse action. * * @return A new action that performs the exactly the reverse action. + * @js NA */ virtual Action* reverse() const { @@ -319,6 +320,7 @@ public: virtual Follow* reverse() const override; /** * @param dt in seconds. + * @js NA */ virtual void step(float dt) override; virtual bool isDone() const override; diff --git a/cocos/2d/CCActionCamera.h b/cocos/2d/CCActionCamera.h index e322531d7f..51c0d107b3 100644 --- a/cocos/2d/CCActionCamera.h +++ b/cocos/2d/CCActionCamera.h @@ -65,32 +65,38 @@ public: /* Sets the Eye value of the Camera. * * @param eye The Eye value of the Camera. + * @js NA */ void setEye(const Vec3 &eye); void setEye(float x, float y, float z); /* Returns the Eye value of the Camera. * * @return The Eye value of the Camera. + * @js NA */ const Vec3& getEye() const { return _eye; } /* Sets the Center value of the Camera. * * @param center The Center value of the Camera. + * @js NA */ void setCenter(const Vec3 ¢er); /* Returns the Center value of the Camera. * * @return The Center value of the Camera. + * @js NA */ const Vec3& getCenter() const { return _center; } /* Sets the Up value of the Camera. * * @param up The Up value of the Camera. + * @js NA */ void setUp(const Vec3 &up); /* Returns the Up value of the Camera. * * @return The Up value of the Camera. + * @js NA */ const Vec3& getUp() const { return _up; } diff --git a/cocos/2d/CCActionCatmullRom.h b/cocos/2d/CCActionCatmullRom.h index a6e71cf56a..1c6c3d9ae8 100644 --- a/cocos/2d/CCActionCatmullRom.h +++ b/cocos/2d/CCActionCatmullRom.h @@ -52,6 +52,7 @@ class Node; /** An Array that contain control points. * Used by CardinalSplineTo and (By) and CatmullRomTo (and By) actions. * @ingroup Actions + * @js NA */ class CC_DLL PointArray : public Ref, public Clonable { @@ -182,7 +183,7 @@ public: */ virtual ~CardinalSplineTo(); /** - * @js NA + * @js ctor * @lua NA */ CardinalSplineTo(); diff --git a/cocos/2d/CCActionInstant.h b/cocos/2d/CCActionInstant.h index d0405aa426..514e95ab6e 100644 --- a/cocos/2d/CCActionInstant.h +++ b/cocos/2d/CCActionInstant.h @@ -391,7 +391,6 @@ CC_CONSTRUCTOR_ACCESS: CC_DEPRECATED_ATTRIBUTE bool initWithTarget(Ref* target); /** initializes the action with the std::function - * @js NA * @lua NA */ bool initWithFunction(const std::function& func); @@ -415,6 +414,7 @@ private: /** @class CallFuncN * @brief Calls a 'callback' with the node as the first argument. N means Node. +* @js NA */ class CC_DLL CallFuncN : public CallFunc { @@ -466,6 +466,7 @@ private: * @deprecated Please use CallFuncN instead. * @brief Calls a 'callback' with the node as the first argument and the 2nd argument is data. * ND means: Node and Data. Data is void *, so it could be anything. + * @js NA */ class CC_DLL __CCCallFuncND : public CallFunc { @@ -505,6 +506,7 @@ private: @deprecated Please use CallFuncN instead. @brief Calls a 'callback' with an object as the first argument. O means Object. @since v0.99.5 + @js NA */ class CC_DLL __CCCallFuncO : public CallFunc diff --git a/cocos/2d/CCActionInterval.h b/cocos/2d/CCActionInterval.h index 730788e716..3ca3979027 100644 --- a/cocos/2d/CCActionInterval.h +++ b/cocos/2d/CCActionInterval.h @@ -160,12 +160,14 @@ public: * @param action1 The first sequenceable action. * @param args The va_list variable. * @return An autoreleased Sequence object. + * @js NA */ static Sequence* createWithVariableList(FiniteTimeAction *action1, va_list args); /** Creates the action. * @param actionOne The first sequenceable action. * @param actionTwo The second sequenceable action. * @return An autoreleased Sequence object. + * @js NA */ static Sequence* createWithTwoActions(FiniteTimeAction *actionOne, FiniteTimeAction *actionTwo); @@ -374,6 +376,7 @@ public: * @param action1 The first sequenceable action. * @param args The va_list variable. * @return An autoreleased Spawn object. + * @js NA */ static Spawn* createWithVariableList(FiniteTimeAction *action1, va_list args); @@ -389,6 +392,7 @@ public: * @param action1 The first spawned action. * @param action2 THe second spawned action. * @return An autoreleased Spawn object. + * @js NA */ static Spawn* createWithTwoActions(FiniteTimeAction *action1, FiniteTimeAction *action2); @@ -1187,7 +1191,10 @@ public: virtual void startWithTarget(Node *target) override; virtual FadeIn* clone() const override; virtual FadeTo* reverse(void) const override; - + + /** + * @js NA + */ void setReverseAction(FadeTo* ac); CC_CONSTRUCTOR_ACCESS: @@ -1218,7 +1225,10 @@ public: virtual void startWithTarget(Node *target) override; virtual FadeOut* clone() const override; virtual FadeTo* reverse(void) const override; - + + /** + * @js NA + */ void setReverseAction(FadeTo* ac); CC_CONSTRUCTOR_ACCESS: diff --git a/cocos/2d/CCActionManager.h b/cocos/2d/CCActionManager.h index cb7a4f9d55..68d8656f4c 100644 --- a/cocos/2d/CCActionManager.h +++ b/cocos/2d/CCActionManager.h @@ -110,6 +110,7 @@ public: * * @param tag The actions' tag. * @param target A certain target. + * @js NA */ void removeAllActionsByTag(int tag, Node *target); @@ -128,6 +129,7 @@ public: * * @param target A certain target. * @return The numbers of actions that are running in a certain target. + * @js NA */ ssize_t getNumberOfRunningActionsInTarget(const Node *target) const; diff --git a/cocos/2d/CCAnimation.h b/cocos/2d/CCAnimation.h index e2c64eb1d4..c44cbc5628 100644 --- a/cocos/2d/CCAnimation.h +++ b/cocos/2d/CCAnimation.h @@ -41,7 +41,7 @@ class Texture2D; class SpriteFrame; /** - * @addtogroup sprite_nodes + * @addtogroup _2d * @{ */ diff --git a/cocos/2d/CCAnimationCache.h b/cocos/2d/CCAnimationCache.h index 6646e17f7e..c6d7fb35cd 100644 --- a/cocos/2d/CCAnimationCache.h +++ b/cocos/2d/CCAnimationCache.h @@ -40,7 +40,7 @@ NS_CC_BEGIN class Animation; /** - * @addtogroup sprite_nodes + * @addtogroup _2d * @{ */ diff --git a/cocos/2d/CCAtlasNode.h b/cocos/2d/CCAtlasNode.h index 57d0978835..fe280959ba 100644 --- a/cocos/2d/CCAtlasNode.h +++ b/cocos/2d/CCAtlasNode.h @@ -36,7 +36,7 @@ THE SOFTWARE. NS_CC_BEGIN /** - * @addtogroup base_nodes + * @addtogroup _2d * @{ */ diff --git a/cocos/2d/CCCamera.h b/cocos/2d/CCCamera.h index 5d6f217724..33cf508c0d 100644 --- a/cocos/2d/CCCamera.h +++ b/cocos/2d/CCCamera.h @@ -174,14 +174,24 @@ public: //override virtual void onEnter() override; virtual void onExit() override; - + + /** + * Get the visiting camera , the visiting camera shall be set on Scene::render + */ static const Camera* getVisitingCamera() { return _visitingCamera; } + + /** + * Get the default camera of the current running scene. + */ static Camera* getDefaultCamera(); CC_CONSTRUCTOR_ACCESS: Camera(); ~Camera(); + /** + * Set the scene,this method shall not be invoke manually + */ void setScene(Scene* scene); /**set additional matrix for the projection matrix, it multiplys mat to projection matrix when called, used by WP8*/ diff --git a/cocos/2d/CCClippingNode.h b/cocos/2d/CCClippingNode.h index 87f14fd157..c03885b682 100644 --- a/cocos/2d/CCClippingNode.h +++ b/cocos/2d/CCClippingNode.h @@ -34,51 +34,82 @@ #include "renderer/CCCustomCommand.h" NS_CC_BEGIN - +/** + * @addtogroup _2d + * @{ + */ /** ClippingNode is a subclass of Node. - It draws its content (childs) clipped using a stencil. - The stencil is an other Node that will not be drawn. - The clipping is done using the alpha part of the stencil (adjusted with an alphaThreshold). + * It draws its content (childs) clipped using a stencil. + * The stencil is an other Node that will not be drawn. + * The clipping is done using the alpha part of the stencil (adjusted with an alphaThreshold). */ class CC_DLL ClippingNode : public Node { public: /** Creates and initializes a clipping node without a stencil. + * + * @return An autorelease ClippingNode. */ static ClippingNode* create(); /** Creates and initializes a clipping node with an other node as its stencil. - The stencil node will be retained. + * The stencil node will be retained. + * @param stencil The stencil node. */ static ClippingNode* create(Node *stencil); /** The Node to use as a stencil to do the clipping. - The stencil node will be retained. - This default to nil. + * The stencil node will be retained. + * This default to nil. + * + * @return The stencil node. */ Node* getStencil() const; + + /** Set the Node to use as a stencil to do the clipping. + * + * @param stencil The Node to use as a stencil to do the clipping. + */ void setStencil(Node *stencil); /** If stencil has no childre it will not be drawn. - If you have custom stencil-based node with stencil drawing mechanics other then children-based, - then this method should return true every time you wish stencil to be visited. - By default returns true if has any children attached. - */ + * If you have custom stencil-based node with stencil drawing mechanics other then children-based, + * then this method should return true every time you wish stencil to be visited. + * By default returns true if has any children attached. + * + * @return If you have custom stencil-based node with stencil drawing mechanics other then children-based, + * then this method should return true every time you wish stencil to be visited. + * By default returns true if has any children attached. + */ virtual bool hasContent() const; /** The alpha threshold. - The content is drawn only where the stencil have pixel with alpha greater than the alphaThreshold. - Should be a float between 0 and 1. - This default to 1 (so alpha test is disabled). + * The content is drawn only where the stencil have pixel with alpha greater than the alphaThreshold. + * Should be a float between 0 and 1. + * This default to 1 (so alpha test is disabled). + * + * @return The alpha threshold value,Should be a float between 0 and 1. */ GLfloat getAlphaThreshold() const; + + /** Set the alpha threshold. + * + * @param alphaThreshold The alpha threshold. + */ void setAlphaThreshold(GLfloat alphaThreshold); /** Inverted. If this is set to true, - the stencil is inverted, so the content is drawn where the stencil is NOT drawn. - This default to false. + * the stencil is inverted, so the content is drawn where the stencil is NOT drawn. + * This default to false. + * + * @return If the clippingNode is Inverted, it will be return true. */ bool isInverted() const; + + /** Set the ClippingNode whether or not invert. + * + * @param inverted A bool Type,to set the ClippingNode whether or not invert. + */ void setInverted(bool inverted); // Overrides @@ -162,7 +193,7 @@ protected: private: CC_DISALLOW_COPY_AND_ASSIGN(ClippingNode); }; - +/** @} */ NS_CC_END #endif // __MISCNODE_CCCLIPPING_NODE_H__ diff --git a/cocos/2d/CCDrawNode.h b/cocos/2d/CCDrawNode.h index 537dd55e84..f7f48ecca6 100644 --- a/cocos/2d/CCDrawNode.h +++ b/cocos/2d/CCDrawNode.h @@ -38,59 +38,202 @@ NS_CC_BEGIN -/** DrawNode - Node that draws dots, segments and polygons. - Faster than the "drawing primitives" since they draws everything in one single batch. - - @since v2.1 +class PointArray; +/** + * @addtogroup _2d + * @{ */ -class PointArray; - +/** @class DrawNode + * @brief Node that draws dots, segments and polygons. + * Faster than the "drawing primitives" since they draws everything in one single batch. + * @since v2.1 + */ class CC_DLL DrawNode : public Node { public: - /** creates and initialize a DrawNode node */ + /** creates and initialize a DrawNode node. + * + * @return Return an autorelease object. + */ static DrawNode* create(); - + + /** Draw a point. + * + * @param point A Vec2 used to point. + * @param pointSize The point size. + * @param color The point color. + */ void drawPoint(const Vec2& point, const float pointSize, const Color4F &color); + /** Draw a group point. + * + * @param position A Vec2 pointer. + * @param numberOfPoints The number of points. + * @param color The point color. + */ void drawPoints(const Vec2 *position, unsigned int numberOfPoints, const Color4F &color); + + /** Draw a group point. + * + * @param position A Vec2 pointer. + * @param numberOfPoints The number of points. + * @param pointSize The point size. + * @param color The point color. + */ void drawPoints(const Vec2 *position, unsigned int numberOfPoints, const float pointSize, const Color4F &color); + /** Draw an line from origin to destination with color. + * + * @param origin The line origin. + * @param destination The line destination. + * @param color The line color. + */ void drawLine(const Vec2 &origin, const Vec2 &destination, const Color4F &color); + /** Draws a rectangle given the origin and destination point measured in points. + * The origin and the destination can not have the same x and y coordinate. + * + * @param origin The rectangle origin. + * @param destination The rectangle destination. + * @param color The rectangle color. + */ void drawRect(const Vec2 &origin, const Vec2 &destination, const Color4F &color); + /** Draws a polygon given a pointer to point coordinates and the number of vertices measured in points. + * The polygon can be closed or open. + * + * @param poli A pointer to point coordinates. + * @param numberOfPoints The number of vertices measured in points. + * @param closePolygon The polygon can be closed or open. + * @param color The polygon color. + */ void drawPoly(const Vec2 *poli, unsigned int numberOfPoints, bool closePolygon, const Color4F &color); + /** Draws a circle given the center, radius and number of segments. + * + * @param center The circle center point. + * @param radius The circle rotate of radius. + * @param angle The circle angel. + * @param segments The number of segments. + * @param drawLineToCenter Whether or not draw the line from the origin to center. + * @param scaleX The scale value in x. + * @param scaleY The scale value in y. + * @param color Set the circle color. + */ void drawCircle( const Vec2& center, float radius, float angle, unsigned int segments, bool drawLineToCenter, float scaleX, float scaleY, const Color4F &color); + /** Draws a circle given the center, radius and number of segments. + * + * @param center The circle center point. + * @param radius The circle rotate of radius. + * @param angle The circle angel. + * @param segments The number of segments. + * @param drawLineToCenter Whether or not draw the line from the origin to center. + * @param color Set the circle color. + */ void drawCircle(const Vec2 ¢er, float radius, float angle, unsigned int segments, bool drawLineToCenter, const Color4F &color); + /** Draws a quad bezier path. + * + * @param origin The origin of the bezier path. + * @param control The control of the bezier path. + * @param destination The destination of the bezier path. + * @param segments The The number of segments. + * @param color Set the quad bezier color. + */ void drawQuadBezier(const Vec2 &origin, const Vec2 &control, const Vec2 &destination, unsigned int segments, const Color4F &color); - /** draw a cubic bezier curve with color and number of segments */ + /** Draw a cubic bezier curve with color and number of segments + * + * @param origin The origin of the bezier path. + * @param control1 The first control of the bezier path. + * @param control2 The second control of the bezier path. + * @param destination The destination of the bezier path. + * @param segments The The number of segments. + * @param color Set the cubic bezier color. + */ void drawCubicBezier(const Vec2 &origin, const Vec2 &control1, const Vec2 &control2, const Vec2 &destination, unsigned int segments, const Color4F &color); + /** Draws a Cardinal Spline path. + * + * @param config A array point. + * @param tension The tension of the spline. + * @param segments The The number of segments. + * @param color Set the Spline color. + */ void drawCardinalSpline(PointArray *config, float tension, unsigned int segments, const Color4F &color); + /** Draws a Catmull Rom path. + * + * @param points A point array of control point. + * @param segments The The number of segments. + * @param color The Catmull Rom color. + */ void drawCatmullRom(PointArray *points, unsigned int segments, const Color4F &color); - /** draw a dot at a position, with a given radius and color */ + /** draw a dot at a position, with a given radius and color. + * + * @param pos The dot center. + * @param radius The dot radius. + * @param color The dot color. + */ void drawDot(const Vec2 &pos, float radius, const Color4F &color); + /** Draws a rectangle with 4 points. + * + * @param p1 The rectangle vertex point. + * @param p2 The rectangle vertex point. + * @param p3 The rectangle vertex point. + * @param p4 The rectangle vertex point. + * @param color The rectangle color. + */ void drawRect(const Vec2 &p1, const Vec2 &p2, const Vec2 &p3, const Vec2& p4, const Color4F &color); + /** Draws a solid rectangle given the origin and destination point measured in points. + * The origin and the destination can not have the same x and y coordinate. + * + * @param origin The rectangle origin. + * @param destination The rectangle destination. + * @param color The rectangle color. + */ void drawSolidRect(const Vec2 &origin, const Vec2 &destination, const Color4F &color); + /** Draws a solid polygon given a pointer to CGPoint coordinates, the number of vertices measured in points, and a color. + * + * @param poli A solid polygon given a pointer to CGPoint coordinates. + * @param numberOfPoints The number of vertices measured in points. + * @param color The solid polygon color. + */ void drawSolidPoly(const Vec2 *poli, unsigned int numberOfPoints, const Color4F &color); + /** Draws a solid circle given the center, radius and number of segments. + * @param center The circle center point. + * @param radius The circle rotate of radius. + * @param angle The circle angel. + * @param segments The number of segments. + * @param scaleX The scale value in x. + * @param scaleY The scale value in y. + * @param color The solid circle color. + */ void drawSolidCircle(const Vec2& center, float radius, float angle, unsigned int segments, float scaleX, float scaleY, const Color4F &color); + /** Draws a solid circle given the center, radius and number of segments. + * @param center The circle center point. + * @param radius The circle rotate of radius. + * @param angle The circle angel. + * @param segments The number of segments. + * @param color The solid circle color. + */ void drawSolidCircle(const Vec2& center, float radius, float angle, unsigned int segments, const Color4F& color); - /** draw a segment with a radius and color */ + /** draw a segment with a radius and color. + * + * @param from The segment origin. + * @param to The segment destination. + * @param radius The segment radius. + * @param color The segment color. + */ void drawSegment(const Vec2 &from, const Vec2 &to, float radius, const Color4F &color); /** draw a polygon with a fill color and line color @@ -99,23 +242,41 @@ public: * In js: var drawPolygon(var Arrayofpoints, var fillColor, var width, var borderColor) * In lua:local drawPolygon(local pointTable,local tableCount,local fillColor,local width,local borderColor) * @endcode + * @param verts A pointer to point coordinates. + * @param count The number of verts measured in points. + * @param fillColor The color will fill in polygon. + * @param borderWidth The border of line width. + * @param borderColor The border of line color. */ void drawPolygon(const Vec2 *verts, int count, const Color4F &fillColor, float borderWidth, const Color4F &borderColor); - /** draw a triangle with color */ + /** draw a triangle with color. + * + * @param p1 The triangle vertex point. + * @param p2 The triangle vertex point. + * @param p3 The triangle vertex point. + * @param color The triangle color. + */ void drawTriangle(const Vec2 &p1, const Vec2 &p2, const Vec2 &p3, const Color4F &color); - /** draw a quadratic bezier curve with color and number of segments, use drawQuadBezier instead*/ + /** draw a quadratic bezier curve with color and number of segments, use drawQuadBezier instead. + * + * @param from The origin of the bezier path. + * @param control The control of the bezier path. + * @param to The destination of the bezier path. + * @param segments The The number of segments. + * @param color The quadratic bezier color. + */ CC_DEPRECATED_ATTRIBUTE void drawQuadraticBezier(const Vec2& from, const Vec2& control, const Vec2& to, unsigned int segments, const Color4F &color); /** Clear the geometry in the node's buffer. */ void clear(); - /** + /** Get the color mixed mode. * @js NA * @lua NA */ const BlendFunc& getBlendFunc() const; - /** + /** Set the color mixed mode. * @code * When this function bound into js or lua,the parameter will be changed * In js: var setBlendFunc(var src, var dst) @@ -174,7 +335,7 @@ protected: private: CC_DISALLOW_COPY_AND_ASSIGN(DrawNode); }; - +/** @} */ NS_CC_END #endif // __CCDRAWNODES_CCDRAW_NODE_H__ diff --git a/cocos/2d/CCDrawingPrimitives.h b/cocos/2d/CCDrawingPrimitives.h index 24c91129b8..13f23173ad 100644 --- a/cocos/2d/CCDrawingPrimitives.h +++ b/cocos/2d/CCDrawingPrimitives.h @@ -70,7 +70,7 @@ THE SOFTWARE. NS_CC_BEGIN /** - * @addtogroup global + * @addtogroup _2d * @{ */ @@ -78,91 +78,181 @@ class PointArray; namespace DrawPrimitives { - /** Initializes the drawing primitives */ + /** Initializes the drawing primitives. */ CC_DEPRECATED_ATTRIBUTE void CC_DLL init(); - /** Frees allocated resources by the drawing primitives */ + /** Frees allocated resources by the drawing primitives. */ CC_DEPRECATED_ATTRIBUTE void CC_DLL free(); - /** draws a point given x and y coordinate measured in points */ + /** Draws a point given x and y coordinate measured in points + * + * @param point A Vec2 with a point given x and y coordinate. + */ CC_DEPRECATED_ATTRIBUTE void CC_DLL drawPoint(const Vec2& point); - /** draws an array of points. - @since v0.7.2 + /** Draws an array of points. + * + * @param point A point coordinates. + * @param numberOfPoints The number of points. + * @since v0.7.2 */ CC_DEPRECATED_ATTRIBUTE void CC_DLL drawPoints(const Vec2 *points, unsigned int numberOfPoints); - /** draws a line given the origin and destination point measured in points */ + /** Draws a line given the origin and destination point measured in points + * + * @param origin A Vec2 Type point used to the line origin. + * @param destination A Vec2 Type point used to the line destination. + */ CC_DEPRECATED_ATTRIBUTE void CC_DLL drawLine(const Vec2& origin, const Vec2& destination); - /** draws a rectangle given the origin and destination point measured in points. */ + /** Draws a rectangle given the origin and destination point measured in points. + * The origin and the destination can not have the same x and y coordinate. + * + * @param origin The rectangle origin. + * @param destination The rectangle destination. + */ CC_DEPRECATED_ATTRIBUTE void CC_DLL drawRect(Vec2 origin, Vec2 destination); - /** draws a solid rectangle given the origin and destination point measured in points. - @since 1.1 + /** Draws a solid rectangle given the origin and destination point measured in points. + * The origin and the destination can not have the same x and y coordinate. + * + * @param origin The rectangle origin. + * @param destination The rectangle destination. + * @param color The rectangle color. + * @since 1.1 */ CC_DEPRECATED_ATTRIBUTE void CC_DLL drawSolidRect(Vec2 origin, Vec2 destination, Color4F color); - /** draws a polygon given a pointer to point coordinates and the number of vertices measured in points. - The polygon can be closed or open - */ + /** Draws a polygon given a pointer to point coordinates and the number of vertices measured in points. + * The polygon can be closed or open. + * + * @param vertices A pointer to point coordinates. + * @param numOfVertices The number of vertices measured in points. + * @param closePolygon The polygon can be closed or open. + */ CC_DEPRECATED_ATTRIBUTE void CC_DLL drawPoly(const Vec2 *vertices, unsigned int numOfVertices, bool closePolygon); - /** draws a solid polygon given a pointer to CGPoint coordinates, the number of vertices measured in points, and a color. + /** Draws a solid polygon given a pointer to CGPoint coordinates, the number of vertices measured in points, and a color. + * + * @param poli A solid polygon given a pointer to CGPoint coordinates. + * @param numberOfPoints The number of vertices measured in points. + * @param color The solid polygon color. */ CC_DEPRECATED_ATTRIBUTE void CC_DLL drawSolidPoly(const Vec2 *poli, unsigned int numberOfPoints, Color4F color); - /** draws a circle given the center, radius and number of segments. */ + /** Draws a circle given the center, radius and number of segments. + * + * @param center The circle center point. + * @param radius The circle rotate of radius. + * @param angle The circle angel. + * @param segments The number of segments. + * @param drawLineToCenter Whether or not draw the line from the origin to center. + * @param scaleX The scale value in x. + * @param scaleY The scale value in y. + */ CC_DEPRECATED_ATTRIBUTE void CC_DLL drawCircle(const Vec2& center, float radius, float angle, unsigned int segments, bool drawLineToCenter, float scaleX, float scaleY); + + /** Draws a circle given the center, radius and number of segments. + * + * @param center The circle center point. + * @param radius The circle rotate of radius. + * @param angle The circle angel. + * @param segments The number of segments. + * @param drawLineToCenter Whether or not draw the line from the origin to center. + */ CC_DEPRECATED_ATTRIBUTE void CC_DLL drawCircle(const Vec2& center, float radius, float angle, unsigned int segments, bool drawLineToCenter); - /** draws a solid circle given the center, radius and number of segments. */ + /** Draws a solid circle given the center, radius and number of segments. + * @param center The circle center point. + * @param radius The circle rotate of radius. + * @param angle The circle angel. + * @param segments The number of segments. + * @param scaleX The scale value in x. + * @param scaleY The scale value in y. + */ CC_DEPRECATED_ATTRIBUTE void CC_DLL drawSolidCircle(const Vec2& center, float radius, float angle, unsigned int segments, float scaleX, float scaleY); + + /** Draws a solid circle given the center, radius and number of segments. + * @param center The circle center point. + * @param radius The circle rotate of radius. + * @param angle The circle angel. + * @param segments The number of segments. + */ CC_DEPRECATED_ATTRIBUTE void CC_DLL drawSolidCircle(const Vec2& center, float radius, float angle, unsigned int segments); - /** draws a quad bezier path - @warning This function could be pretty slow. Use it only for debugging purposes. - @since v0.8 + /** Draws a quad bezier path. + * + * @param origin The origin of the bezier path. + * @param control The control of the bezier path. + * @param destination The destination of the bezier path. + * @param segments The The number of segments. + * @warning This function could be pretty slow. Use it only for debugging purposes. + * @since v0.8 */ CC_DEPRECATED_ATTRIBUTE void CC_DLL drawQuadBezier(const Vec2& origin, const Vec2& control, const Vec2& destination, unsigned int segments); - /** draws a cubic bezier path - @warning This function could be pretty slow. Use it only for debugging purposes. - @since v0.8 + /** Draws a cubic bezier path. + * + * @param origin The origin of the bezier path. + * @param control1 The first control of the bezier path. + * @param control2 The second control of the bezier path. + * @param destination The destination of the bezier path. + * @param segments The The number of segments. + * @warning This function could be pretty slow. Use it only for debugging purposes. + * @since v0.8 */ CC_DEPRECATED_ATTRIBUTE void CC_DLL drawCubicBezier(const Vec2& origin, const Vec2& control1, const Vec2& control2, const Vec2& destination, unsigned int segments); - /** draws a Catmull Rom path. - @warning This function could be pretty slow. Use it only for debugging purposes. - @since v2.0 + /** Draws a Catmull Rom path. + * + * @param arrayOfControlPoints A point array of control point. + * @param segments The The number of segments. + * @warning This function could be pretty slow. Use it only for debugging purposes. + * @since v2.0 */ CC_DEPRECATED_ATTRIBUTE void CC_DLL drawCatmullRom(PointArray *arrayOfControlPoints, unsigned int segments); - /** draws a Cardinal Spline path. - @warning This function could be pretty slow. Use it only for debugging purposes. - @since v2.0 + /** Draws a Cardinal Spline path. + * + * @param config A array point. + * @param tension The tension of the spline. + * @param segments The The number of segments. + * @warning This function could be pretty slow. Use it only for debugging purposes. + * @since v2.0 */ CC_DEPRECATED_ATTRIBUTE void CC_DLL drawCardinalSpline(PointArray *config, float tension, unsigned int segments); - /** set the drawing color with 4 unsigned bytes - @since v2.0 + /** Set the drawing color with 4 unsigned bytes. + * + * @param r The red color with a unsigned bytes. + * @param g The green color with a unsigned bytes. + * @param b The blue color with a unsigned bytes. + * @param a Alpha with a unsigned bytes. + * @since v2.0 */ CC_DEPRECATED_ATTRIBUTE void CC_DLL setDrawColor4B(GLubyte r, GLubyte g, GLubyte b, GLubyte a); - /** set the drawing color with 4 floats - @since v2.0 + /** Set the drawing color with 4 floats. + * + * @param r The red color with an floats. + * @param g The green color with an floats. + * @param b The blue color with an floats. + * @param a Alpha with an floats. + * @since v2.0 */ CC_DEPRECATED_ATTRIBUTE void CC_DLL setDrawColor4F(GLfloat r, GLfloat g, GLfloat b, GLfloat a); - /** set the point size in points. Default 1. - @since v2.0 + /** Set the point size in points. Default 1. + * + * @param pointSize The point size with an float. + * @since v2.0 */ CC_DEPRECATED_ATTRIBUTE void CC_DLL setPointSize(GLfloat pointSize); }; // end of global group -/// @} +/** @} */ NS_CC_END diff --git a/cocos/2d/CCFastTMXLayer.h b/cocos/2d/CCFastTMXLayer.h index d50a0132f0..916daa5382 100644 --- a/cocos/2d/CCFastTMXLayer.h +++ b/cocos/2d/CCFastTMXLayer.h @@ -46,40 +46,45 @@ struct _ccCArray; namespace experimental{ /** - * @addtogroup tilemap_parallax_nodes + * @addtogroup _2d * @{ */ /** @brief FastTMXLayer represents the TMX layer. -It is a subclass of SpriteBatchNode. By default the tiles are rendered using a TextureAtlas. -If you modify a tile on runtime, then, that tile will become a Sprite, otherwise no Sprite objects are created. -The benefits of using Sprite objects as tiles are: -- tiles (Sprite) can be rotated/scaled/moved with a nice API + * It is a subclass of SpriteBatchNode. By default the tiles are rendered using a TextureAtlas. + * If you modify a tile on runtime, then, that tile will become a Sprite, otherwise no Sprite objects are created. + * The benefits of using Sprite objects as tiles are: + * - tiles (Sprite) can be rotated/scaled/moved with a nice API. -If the layer contains a property named "cc_vertexz" with an integer (in can be positive or negative), -then all the tiles belonging to the layer will use that value as their OpenGL vertex Z for depth. + * If the layer contains a property named "cc_vertexz" with an integer (in can be positive or negative), + * then all the tiles belonging to the layer will use that value as their OpenGL vertex Z for depth. -On the other hand, if the "cc_vertexz" property has the "automatic" value, then the tiles will use an automatic vertex Z value. -Also before drawing the tiles, GL_ALPHA_TEST will be enabled, and disabled after drawing them. The used alpha func will be: + * On the other hand, if the "cc_vertexz" property has the "automatic" value, then the tiles will use an automatic vertex Z value. + * Also before drawing the tiles, GL_ALPHA_TEST will be enabled, and disabled after drawing them. The used alpha func will be: -glAlphaFunc( GL_GREATER, value ) + * glAlphaFunc( GL_GREATER, value ). -"value" by default is 0, but you can change it from Tiled by adding the "cc_alpha_func" property to the layer. -The value 0 should work for most cases, but if you have tiles that are semi-transparent, then you might want to use a different -value, like 0.5. - -For further information, please see the programming guide: - -http://www.cocos2d-iphone.org/wiki/doku.php/prog_guide:tiled_maps - -@since v3.2 -*/ + * "value" by default is 0, but you can change it from Tiled by adding the "cc_alpha_func" property to the layer. + * The value 0 should work for most cases, but if you have tiles that are semi-transparent, then you might want to use a different + * value, like 0.5. + + * For further information, please see the programming guide: + * http://www.cocos2d-iphone.org/wiki/doku.php/prog_guide:tiled_maps + + * @since v3.2 + */ class CC_DLL TMXLayer : public Node { public: - /** creates a FastTMXLayer with an tileset info, a layer info and a map info */ + /** Creates a FastTMXLayer with an tileset info, a layer info and a map info. + * + * @param tilesetInfo An tileset info. + * @param layerInfo A layer info. + * @param mapInfo A map info. + * @return Reruen an autorelease object. + */ static TMXLayer * create(TMXTilesetInfo *tilesetInfo, TMXLayerInfo *layerInfo, TMXMapInfo *mapInfo); /** * @js ctor @@ -91,83 +96,170 @@ public: */ virtual ~TMXLayer(); - /** returns the tile gid at a given tile coordinate. It also returns the tile flags. + /** Returns the tile gid at a given tile coordinate. It also returns the tile flags. + * + * @param tileCoordinate The tile coordinate. + * @param flags A TMXTileFlags. + * @return The tile gid at a given tile coordinate. It also returns the tile flags. */ int getTileGIDAt(const Vec2& tileCoordinate, TMXTileFlags* flags = nullptr); - /** sets the tile gid (gid = tile global id) at a given tile coordinate. - The Tile GID can be obtained by using the method "tileGIDAt" or by using the TMX editor -> Tileset Mgr +1. - If a tile is already placed at that position, then it will be removed. - */ + /** Sets the tile gid (gid = tile global id) at a given tile coordinate. + * The Tile GID can be obtained by using the method "tileGIDAt" or by using the TMX editor -> Tileset Mgr +1. + * If a tile is already placed at that position, then it will be removed. + * @param gid The gid value. + * @param tileCoordinate The tile coordinate. + */ void setTileGID(int gid, const Vec2& tileCoordinate); - /** sets the tile gid (gid = tile global id) at a given tile coordinate. - The Tile GID can be obtained by using the method "tileGIDAt" or by using the TMX editor -> Tileset Mgr +1. - If a tile is already placed at that position, then it will be removed. - - Use withFlags if the tile flags need to be changed as well + /** Sets the tile gid (gid = tile global id) at a given tile coordinate. + * The Tile GID can be obtained by using the method "tileGIDAt" or by using the TMX editor -> Tileset Mgr +1. + * If a tile is already placed at that position, then it will be removed. + * Use withFlags if the tile flags need to be changed as well. + * + * @param gid A integer value,it will be sets the tile gid. + * @param tileCoordinate The tile coordinate. + * @param flags A TMXTileFlags. */ - void setTileGID(int gid, const Vec2& tileCoordinate, TMXTileFlags flags); - /** removes a tile at given tile coordinate */ + /** Removes a tile at given tile coordinate. + * + * @param tileCoordinate The tile Coordinate. + */ void removeTileAt(const Vec2& tileCoordinate); - /** returns the position in points of a given tile coordinate */ + /** Returns the position in points of a given tile coordinate. + * + * @param tileCoordinate The tile Coordinate. + * @return The position in points of a given tile coordinate. + */ Vec2 getPositionAt(const Vec2& tileCoordinate); - /** return the value for the specific property name */ + /** Return the value for the specific property name. + * + * @param propertyName The value for the specific property name. + * @return The value for the specific property name. + */ Value getProperty(const std::string& propertyName) const; - /** Creates the tiles */ + /** Creates the tiles. */ void setupTiles(); - + + /** Get the tile layer name. + * + * @return The tile layer name. + */ inline const std::string& getLayerName(){ return _layerName; } + + /** Set the tile layer name. + * + * @param layerName The new layer name. + */ inline void setLayerName(const std::string& layerName){ _layerName = layerName; } - /** size of the layer in tiles */ + /** Size of the layer in tiles. + * + * @return Size of the layer in tiles. + */ inline const Size& getLayerSize() const { return _layerSize; }; + + /** Set the size of the layer in tiles. + * + * @param size The new size of the layer in tiles. + */ inline void setLayerSize(const Size& size) { _layerSize = size; }; - /** size of the map's tile (could be different from the tile's size) */ + /** Size of the map's tile (could be different from the tile's size). + * + * @return Size of the map's tile (could be different from the tile's size). + */ inline const Size& getMapTileSize() const { return _mapTileSize; }; + + /** Set the size of the map's tile. + * + * @param size The new size of the map's tile. + */ inline void setMapTileSize(const Size& size) { _mapTileSize = size; }; - /** pointer to the map of tiles + /** Pointer to the map of tiles. * @js NA * @lua NA + * @return The pointer to the map of tiles. */ const uint32_t* getTiles() const { return _tiles; }; + + /** Set the pointer to the map of tiles. + * + * @param tiles The pointer to the map of tiles. + */ void setTiles(uint32_t* tiles) { _tiles = tiles; _quadsDirty = true;}; - /** Tileset information for the layer */ + /** Tileset information for the layer. + * + * @return Tileset information for the layer. + */ inline TMXTilesetInfo* getTileSet() const { return _tileSet; }; + + /** Set the tileset information for the layer. + * + * @param info The new tileset information for the layer. + */ inline void setTileSet(TMXTilesetInfo* info) { CC_SAFE_RETAIN(info); CC_SAFE_RELEASE(_tileSet); _tileSet = info; }; - /** Layer orientation, which is the same as the map orientation */ + /** Layer orientation, which is the same as the map orientation. + * + * @return Layer orientation, which is the same as the map orientation. + */ inline int getLayerOrientation() const { return _layerOrientation; }; + + /** Set Layer orientation, which is the same as the map orientation. + * + * @param orientation Layer orientation, which is the same as the map orientation. + */ inline void setLayerOrientation(int orientation) { _layerOrientation = orientation; }; - /** properties from the layer. They can be added using Tiled */ + /** Properties from the layer. They can be added using Tiled. + * + * @return Properties from the layer. They can be added using Tiled. + */ inline const ValueMap& getProperties() const { return _properties; }; + + /** Properties from the layer. They can be added using Tiled. + * + * @return Properties from the layer. They can be added using Tiled. + */ inline ValueMap& getProperties() { return _properties; }; + + /** Set the properties to the layer. + * + * @param properties The properties to the layer. + */ inline void setProperties(const ValueMap& properties) { _properties = properties; }; - /** returns the tile (Sprite) at a given a tile coordinate. - The returned Sprite will be already added to the TMXLayer. Don't add it again. - The Sprite can be treated like any other Sprite: rotated, scaled, translated, opacity, color, etc. - You can remove either by calling: - - layer->removeChild(sprite, cleanup); + /** Returns the tile (Sprite) at a given a tile coordinate. + * The returned Sprite will be already added to the TMXLayer. Don't add it again. + * The Sprite can be treated like any other Sprite: rotated, scaled, translated, opacity, color, etc. + * You can remove either by calling: + * - layer->removeChild(sprite, cleanup); + * + * @return Returns the tile (Sprite) at a given a tile coordinate. */ Sprite* getTileAt(const Vec2& tileCoordinate); - + + /** Set an sprite to the tile,with the tile coordinate and gid. + * + * @param sprite A Sprite. + * @param pos The tile coordinate. + * @param gid The tile gid. + */ void setupTileSprite(Sprite* sprite, Vec2 pos, int gid); // diff --git a/cocos/2d/CCFastTMXTiledMap.h b/cocos/2d/CCFastTMXTiledMap.h index 4b3fe2a81b..6bafad085f 100644 --- a/cocos/2d/CCFastTMXTiledMap.h +++ b/cocos/2d/CCFastTMXTiledMap.h @@ -39,100 +39,164 @@ class TMXMapInfo; namespace experimental { class TMXLayer; - +/** + * @addtogroup _2d + * @{ + */ + /** @brief FastTMXTiledMap knows how to parse and render a TMX map. -It adds support for the TMX tiled map format used by http://www.mapeditor.org -It supports isometric, hexagonal and orthogonal tiles. -It also supports object groups, objects, and properties. + * It adds support for the TMX tiled map format used by http://www.mapeditor.org. + * It supports isometric, hexagonal and orthogonal tiles. + * It also supports object groups, objects, and properties. -Features: -- Each tile will be treated as an Sprite -- The sprites are created on demand. They will be created only when you call "layer->tileAt(position)" -- Each tile can be rotated / moved / scaled / tinted / "opaqued", since each tile is a Sprite -- Tiles can be added/removed in runtime -- The z-order of the tiles can be modified in runtime -- Each tile has an anchorPoint of (0,0) -- The anchorPoint of the TMXTileMap is (0,0) -- The TMX layers will be added as a child -- The TMX layers will be aliased by default -- The tileset image will be loaded using the TextureCache -- Each tile will have a unique tag -- Each tile will have a unique z value. top-left: z=1, bottom-right: z=max z -- Each object group will be treated as an MutableArray -- Object class which will contain all the properties in a dictionary -- Properties can be assigned to the Map, Layer, Object Group, and Object + * Features: + * - Each tile will be treated as an Sprite. + * - The sprites are created on demand. They will be created only when you call "layer->tileAt(position)". + * - Each tile can be rotated / moved / scaled / tinted / "opaqued", since each tile is a Sprite. + * - Tiles can be added/removed in runtime. + * - The z-order of the tiles can be modified in runtime. + * - Each tile has an anchorPoint of (0,0). + * - The anchorPoint of the TMXTileMap is (0,0). + * - The TMX layers will be added as a child. + * - The TMX layers will be aliased by default. + * - The tileset image will be loaded using the TextureCache. + * - Each tile will have a unique tag. + * - Each tile will have a unique z value. top-left: z=1, bottom-right: z=max z. + * - Each object group will be treated as an MutableArray. + * - Object class which will contain all the properties in a dictionary. + * - Properties can be assigned to the Map, Layer, Object Group, and Object. -Limitations: -- It only supports one tileset per layer. -- Embedded images are not supported -- It only supports the XML format (the JSON format is not supported) + * Limitations: + * - It only supports one tileset per layer. + * - Embedded images are not supported. + * - It only supports the XML format (the JSON format is not supported). -Technical description: -Each layer is created using an FastTMXLayer (subclass of SpriteBatchNode). If you have 5 layers, then 5 FastTMXLayer will be created, -unless the layer visibility is off. In that case, the layer won't be created at all. -You can obtain the layers (FastTMXLayer objects) at runtime by: -- map->getChildByTag(tag_number); // 0=1st layer, 1=2nd layer, 2=3rd layer, etc... -- map->getLayer(name_of_the_layer); + * Technical description: + * Each layer is created using an FastTMXLayer (subclass of SpriteBatchNode). If you have 5 layers, then 5 FastTMXLayer will be created, + * unless the layer visibility is off. In that case, the layer won't be created at all. + * You can obtain the layers (FastTMXLayer objects) at runtime by: + * - map->getChildByTag(tag_number); // 0=1st layer, 1=2nd layer, 2=3rd layer, etc... + * - map->getLayer(name_of_the_layer); -Each object group is created using a TMXObjectGroup which is a subclass of MutableArray. -You can obtain the object groups at runtime by: -- map->getObjectGroup(name_of_the_object_group); + * Each object group is created using a TMXObjectGroup which is a subclass of MutableArray. + * You can obtain the object groups at runtime by: + * - map->getObjectGroup(name_of_the_object_group); -Each object is a TMXObject. + * Each object is a TMXObject. -Each property is stored as a key-value pair in an MutableDictionary. -You can obtain the properties at runtime by: + * Each property is stored as a key-value pair in an MutableDictionary. + * You can obtain the properties at runtime by: -map->getProperty(name_of_the_property); -layer->getProperty(name_of_the_property); -objectGroup->getProperty(name_of_the_property); -object->getProperty(name_of_the_property); + * map->getProperty(name_of_the_property); + * layer->getProperty(name_of_the_property); + * objectGroup->getProperty(name_of_the_property); + * object->getProperty(name_of_the_property); -@since v3.2 -*/ + * @since v3.2 + */ class CC_DLL TMXTiledMap : public Node { public: - /** creates a TMX Tiled Map with a TMX file.*/ + /** Creates a TMX Tiled Map with a TMX file. + * + * @return An autorelease object. + */ static TMXTiledMap* create(const std::string& tmxFile); - /** initializes a TMX Tiled Map with a TMX formatted XML string and a path to TMX resources */ + /** Initializes a TMX Tiled Map with a TMX formatted XML string and a path to TMX resources. + * + * @param tmxString A TMX formatted XML string. + * @param resourcePath A path to TMX resources. + * @return An autorelease object. + */ static TMXTiledMap* createWithXML(const std::string& tmxString, const std::string& resourcePath); - /** return the FastTMXLayer for the specific layer */ + /** Return the FastTMXLayer for the specific layer. + * + * @return Return the FastTMXLayer for the specific layer. + */ TMXLayer* getLayer(const std::string& layerName) const; - /** return the TMXObjectGroup for the specific group */ + /** Return the TMXObjectGroup for the specific group. + * + * @return Return the TMXObjectGroup for the specific group. + */ TMXObjectGroup* getObjectGroup(const std::string& groupName) const; - /** return the value for the specific property name */ + /** Return the value for the specific property name. + * + * @return Return the value for the specific property name. + */ Value getProperty(const std::string& propertyName) const; - /** return properties dictionary for tile GID */ + /** Return properties dictionary for tile GID. + * + * @return Return properties dictionary for tile GID. + */ Value getPropertiesForGID(int GID) const; - /** the map's size property measured in tiles */ + /** The map's size property measured in tiles. + * + * @return The map's size property measured in tiles. + */ inline const Size& getMapSize() const { return _mapSize; }; + + /** Set the map's size property measured in tiles. + * + * @param mapSize The map's size property measured in tiles. + */ inline void setMapSize(const Size& mapSize) { _mapSize = mapSize; }; - /** the tiles's size property measured in pixels */ + /** The tiles's size property measured in pixels. + * + * @return The tiles's size property measured in pixels. + */ inline const Size& getTileSize() const { return _tileSize; }; + + /** Set the tiles's size property measured in pixels. + * + * @param tileSize The tiles's size property measured in pixels. + */ inline void setTileSize(const Size& tileSize) { _tileSize = tileSize; }; - /** map orientation */ + /** Get map orientation. + * + * @return The map orientation. + */ inline int getMapOrientation() const { return _mapOrientation; }; + + /** Set map orientation. + * + * @param mapOrientation The map orientation. + */ inline void setMapOrientation(int mapOrientation) { _mapOrientation = mapOrientation; }; - /** object groups */ + /** Get object groups. + * + * @return Object groups. + */ inline const Vector& getObjectGroups() const { return _objectGroups; }; inline Vector& getObjectGroups() { return _objectGroups; }; + + /** Set object groups. + * + * @param groups An object groups. + */ inline void setObjectGroups(const Vector& groups) { _objectGroups = groups; }; - /** properties */ + /** Get properties. + * + * @return Properties. + */ inline const ValueMap& getProperties() const { return _properties; }; + + /** Set properties. + * + * @param properties An ValueMap Properties. + */ inline void setProperties(const ValueMap& properties) { _properties = properties; }; @@ -180,7 +244,7 @@ private: }; // end of tilemap_parallax_nodes group -/// @} +/** @} */ } //end of namespace experimental diff --git a/cocos/2d/CCLayer.h b/cocos/2d/CCLayer.h index 3435a248af..7a9a0e4440 100644 --- a/cocos/2d/CCLayer.h +++ b/cocos/2d/CCLayer.h @@ -52,7 +52,8 @@ class Touch; // // Layer // -/** @brief Layer is a subclass of Node that implements the TouchEventsDelegate protocol. +/** @class Layer + * @brief Layer is a subclass of Node that implements the TouchEventsDelegate protocol. All features from Node are valid, plus the following new features: - It can receive iPhone Touches @@ -61,7 +62,10 @@ All features from Node are valid, plus the following new features: class CC_DLL Layer : public Node { public: - /** creates a fullscreen black layer */ + /** Creates a fullscreen black layer. + * + * @return An autoreleased Layer object. + */ static Layer *create(); // Deprecated touch callbacks. @@ -78,21 +82,78 @@ public: /* Callback function should not be deprecated, it will generate lots of warnings. Since 'setTouchEnabled' was deprecated, it will make warnings if developer overrides onTouchXXX and invokes setTouchEnabled(true) instead of using EventDispatcher::addEventListenerWithXXX. */ - virtual bool onTouchBegan(Touch *touch, Event *unused_event); - virtual void onTouchMoved(Touch *touch, Event *unused_event); - virtual void onTouchEnded(Touch *touch, Event *unused_event); + /** Callback function for touch began. + * + * @param touch Touch infomation. + * @param unused_event Event information. + * @return if return false, onTouchMoved, onTouchEnded, onTouchCancelled will never called. + * @js NA + */ + virtual bool onTouchBegan(Touch *touch, Event *unused_event); + /** Callback function for touch moved. + * + * @param touch Touch infomation. + * @param unused_event Event information. + * @js NA + */ + virtual void onTouchMoved(Touch *touch, Event *unused_event); + /** Callback function for touch ended. + * + * @param touch Touch infomation. + * @param unused_event Event information. + * @js NA + */ + virtual void onTouchEnded(Touch *touch, Event *unused_event); + /** Callback function for touch cancelled. + * + * @param touch Touch infomation. + * @param unused_event Event information. + * @js NA + */ virtual void onTouchCancelled(Touch *touch, Event *unused_event); + /** Callback function for multiple touches began. + * + * @param touches Touches information. + * @param unused_event Event information. + * @js NA + */ virtual void onTouchesBegan(const std::vector& touches, Event *unused_event); + /** Callback function for multiple touches moved. + * + * @param touches Touches information. + * @param unused_event Event information. + * @js NA + */ virtual void onTouchesMoved(const std::vector& touches, Event *unused_event); + /** Callback function for multiple touches ended. + * + * @param touches Touches information. + * @param unused_event Event information. + * @js NA + */ virtual void onTouchesEnded(const std::vector& touches, Event *unused_event); + /** Callback function for multiple touches cancelled. + * + * @param touches Touches information. + * @param unused_event Event information. + * @js NA + */ virtual void onTouchesCancelled(const std::vector&touches, Event *unused_event); - /** @deprecated Please override onAcceleration */ + /** + @deprecated Please override onAcceleration + @js NA + */ CC_DEPRECATED_ATTRIBUTE virtual void didAccelerate(Acceleration* accelerationValue) final {}; /* Callback function should not be deprecated, it will generate lots of warnings. Since 'setAccelerometerEnabled' was deprecated, it will make warnings if developer overrides onAcceleration and invokes setAccelerometerEnabled(true) instead of using EventDispatcher::addEventListenerWithXXX. */ + /** Callback funtion for acceleration. + * @param acc Acceleration information. + * @param unused_event Event information. + * @js NA + */ virtual void onAcceleration(Acceleration* acc, Event* unused_event); /** If isTouchEnabled, this method is called onEnter. Override it to change the @@ -104,6 +165,7 @@ public: TouchDispatcher::sharedDispatcher()->addTargetedDelegate(this,INT_MIN+1,true); } @since v0.8.0 + @js NA */ CC_DEPRECATED_ATTRIBUTE virtual void registerWithTouchDispatcher() final {}; @@ -111,6 +173,7 @@ public: You can enable / disable touch events with this property. Only the touches of this node will be affected. This "method" is not propagated to it's children. @since v0.8.1 + @js NA */ CC_DEPRECATED_ATTRIBUTE bool isTouchEnabled() const; CC_DEPRECATED_ATTRIBUTE void setTouchEnabled(bool value); @@ -118,13 +181,17 @@ public: CC_DEPRECATED_ATTRIBUTE virtual void setTouchMode(Touch::DispatchMode mode); CC_DEPRECATED_ATTRIBUTE virtual Touch::DispatchMode getTouchMode() const; - /** swallowsTouches of the touch events. Default is true */ + /** + swallowsTouches of the touch events. Default is true + @js NA + */ CC_DEPRECATED_ATTRIBUTE virtual void setSwallowsTouches(bool swallowsTouches); CC_DEPRECATED_ATTRIBUTE virtual bool isSwallowsTouches() const; /** whether or not it will receive Accelerometer events You can enable / disable accelerometer events with this property. @since v0.8.1 + @js NA */ CC_DEPRECATED_ATTRIBUTE virtual bool isAccelerometerEnabled() const; CC_DEPRECATED_ATTRIBUTE virtual void setAccelerometerEnabled(bool value); @@ -133,27 +200,47 @@ public: /** whether or not it will receive keyboard or keypad events You can enable / disable accelerometer events with this property. it's new in cocos2d-x + @js NA */ CC_DEPRECATED_ATTRIBUTE virtual bool isKeyboardEnabled() const; CC_DEPRECATED_ATTRIBUTE virtual void setKeyboardEnabled(bool value); - /** Please use onKeyPressed instead. */ + /** + Please use onKeyPressed instead. + @js NA + */ CC_DEPRECATED_ATTRIBUTE virtual void keyPressed(int keyCode) final {}; - /** Please use onKeyReleased instead. */ + /** + Please use onKeyReleased instead. + @js NA + */ CC_DEPRECATED_ATTRIBUTE virtual void keyReleased(int keyCode) final {}; /* Callback function should not be deprecated, it will generate lots of warnings. Since 'setKeyboardEnabled' was deprecated, it will make warnings if developer overrides onKeyXXX and invokes setKeyboardEnabled(true) instead of using EventDispatcher::addEventListenerWithXXX. */ + /** Callback function for key pressed. + * @param keyCode KeyCode information. + * @param event Event information. + * @js NA + */ virtual void onKeyPressed(EventKeyboard::KeyCode keyCode, Event* event); + /** Callback function for key released. + * @param keyCode KeyCode information. + * @param event Event information. + * @js NA + */ virtual void onKeyReleased(EventKeyboard::KeyCode keyCode, Event* event); CC_DEPRECATED_ATTRIBUTE virtual bool isKeypadEnabled() const final { return _keyboardEnabled; } CC_DEPRECATED_ATTRIBUTE virtual void setKeypadEnabled(bool value); - /** @deprecated Please override onKeyReleased and check the keycode of KeyboardEvent::KeyCode::Menu(KEY_BACKSPACE) instead. */ + /** + @deprecated Please override onKeyReleased and check the keycode of KeyboardEvent::KeyCode::Menu(KEY_BACKSPACE) instead. + @js NA + */ CC_DEPRECATED_ATTRIBUTE virtual void keyBackClicked() final {}; CC_DEPRECATED_ATTRIBUTE virtual void keyMenuClicked() final {}; @@ -190,12 +277,14 @@ private: }; -/** LayerRGBA is a subclass of Layer that implements the RGBAProtocol protocol using a solid color as the background. +/** @class __LayerRGBA + * @brief LayerRGBA is a subclass of Layer that implements the RGBAProtocol protocol using a solid color as the background. All features from Layer are valid, plus the following new features that propagate into children that conform to the RGBAProtocol: - opacity - RGB colors @since 2.1 + @js NA */ class CC_DLL __LayerRGBA : public Layer, public __RGBAProtocol { @@ -234,7 +323,8 @@ private: // // LayerColor // -/** @brief LayerColor is a subclass of Layer that implements the RGBAProtocol protocol. +/** @class LayerColor + * @brief LayerColor is a subclass of Layer that implements the RGBAProtocol protocol. All features from Layer are valid, plus the following new features: - opacity @@ -243,18 +333,40 @@ All features from Layer are valid, plus the following new features: class CC_DLL LayerColor : public Layer, public BlendProtocol { public: - /** creates a fullscreen black layer */ + /** Creates a fullscreen black layer. + * + * @return An autoreleased LayerColor object. + */ static LayerColor* create(); - /** creates a Layer with color, width and height in Points */ + /** Creates a Layer with color, width and height in Points. + * + * @param color The color of layer. + * @param width The width of layer. + * @param height The height of layer. + * @return An autoreleased LayerColor object. + */ static LayerColor * create(const Color4B& color, GLfloat width, GLfloat height); - /** creates a Layer with color. Width and height are the window size. */ + /** Creates a Layer with color. Width and height are the window size. + * + * @param color The color of layer. + * @return An autoreleased LayerColor object. + */ static LayerColor * create(const Color4B& color); - /** change width in Points*/ + /** Change width in Points. + * + * @param w The width of layer. + */ void changeWidth(GLfloat w); - /** change height in Points*/ + /** Change height in Points. + * + * @param h The height of layer. + */ void changeHeight(GLfloat h); - /** change width and height in Points + /** Change width and height in Points. + * + * @param w The width of layer. + * @param h The Height of layer. @since v0.8 */ void changeWidthAndHeight(GLfloat w ,GLfloat h); @@ -267,7 +379,6 @@ public: virtual void setContentSize(const Size & var) override; /** BlendFunction. Conforms to BlendProtocol protocol */ /** - * @js NA * @lua NA */ virtual const BlendFunc& getBlendFunc() const override; @@ -308,7 +419,8 @@ private: // // LayerGradient // -/** @brief LayerGradient is a subclass of LayerColor that draws gradients across the background. +/** @class LayerGradient + * @brief LayerGradient is a subclass of LayerColor that draws gradients across the background. All features from LayerColor are valid, plus the following new features: - direction @@ -330,46 +442,95 @@ If ' compressedInterpolation' is enabled (default mode) you will see both the st class CC_DLL LayerGradient : public LayerColor { public: - /** Creates a fullscreen black layer */ + /** Creates a fullscreen black layer. + * + * @return An autoreleased LayerGradient object. + */ static LayerGradient* create(); - /** Creates a full-screen Layer with a gradient between start and end. */ + /** Creates a full-screen Layer with a gradient between start and end. + * + * @param start The start color. + * @param end The end color. + * @return An autoreleased LayerGradient object. + */ static LayerGradient* create(const Color4B& start, const Color4B& end); - /** Creates a full-screen Layer with a gradient between start and end in the direction of v. */ + /** Creates a full-screen Layer with a gradient between start and end in the direction of v. + * + * @param start The start color. + * @param end The end color. + * @param v The direction of gradient color. + * @return An autoreleased LayerGradient object. + */ static LayerGradient* create(const Color4B& start, const Color4B& end, const Vec2& v); - /** Whether or not the interpolation will be compressed in order to display all the colors of the gradient both in canonical and non canonical vectors - Default: true + /** Whether or not the interpolation will be compressed in order to display all the colors of the gradient both in canonical and non canonical vectors. + Default: true. + * + * @param compressedInterpolation The interpolation will be compressed if true. */ void setCompressedInterpolation(bool compressedInterpolation); + /** Get the compressedInterpolation + * + * @return The interpolation will be compressed if true. + */ bool isCompressedInterpolation() const; - /** Sets the start color of the gradient */ + /** Sets the start color of the gradient. + * + * @param startColor The start color. + */ void setStartColor( const Color3B& startColor ); - /** Returns the start color of the gradient */ + /** Returns the start color of the gradient. + * + * @return The start color. + */ const Color3B& getStartColor() const; - /** Sets the end color of the gradient */ + /** Sets the end color of the gradient. + * + * @param endColor The end color. + */ void setEndColor( const Color3B& endColor ); - /** Returns the end color of the gradient */ + /** Returns the end color of the gradient. + * + * @return The end color. + */ const Color3B& getEndColor() const; - /** Returns the start opacity of the gradient */ + /** Returns the start opacity of the gradient. + * + * @param startOpacity The start opacity, from 0 to 255. + */ void setStartOpacity( GLubyte startOpacity ); - /** Returns the start opacity of the gradient */ + /** Returns the start opacity of the gradient. + * + * @return The start opacity. + */ GLubyte getStartOpacity() const; - /** Returns the end opacity of the gradient */ + /** Returns the end opacity of the gradient. + * + * @param endOpacity The end opacity, from 0 to 255. + */ void setEndOpacity( GLubyte endOpacity ); - /** Returns the end opacity of the gradient */ + /** Returns the end opacity of the gradient. + * + * @return The end opacity. + */ GLubyte getEndOpacity() const; /** Sets the directional vector that will be used for the gradient. The default value is vertical direction (0,-1). + * + * @param alongVector The direction of gradient. */ void setVector(const Vec2& alongVector); - /** Returns the directional vector used for the gradient */ + /** Returns the directional vector used for the gradient. + * + * @return The direction of gradient. + */ const Vec2& getVector() const; virtual std::string getDescription() const override; @@ -403,7 +564,8 @@ protected: }; -/** @brief MultipleLayer is a Layer with the ability to multiplex it's children. +/** @class LayerMultiplex + * @brief MultipleLayer is a Layer with the ability to multiplex it's children. Features: - It supports one or more children - Only one children will be active a time @@ -411,19 +573,23 @@ Features: class CC_DLL LayerMultiplex : public Layer { public: - /** creates and initializes a LayerMultiplex object - * @js NA + /** Creates and initializes a LayerMultiplex object. * @lua NA + * + * @return An autoreleased LayerMultiplex object. */ static LayerMultiplex* create(); - /** creates a LayerMultiplex with an array of layers. + /** Creates a LayerMultiplex with an array of layers. @since v2.1 * @js NA + * + * @param arrayOfLayers An array of layers. + * @return An autoreleased LayerMultiplex object. */ static LayerMultiplex* createWithArray(const Vector& arrayOfLayers); - /** creates a LayerMultiplex with one or more layers using a variable argument list. + /** Creates a LayerMultiplex with one or more layers using a variable argument list. * @code * When this function bound to lua or js,the input params are changed. * In js:var create(...) @@ -450,24 +616,35 @@ public: static LayerMultiplex * create(Layer* layer, ... ); #endif - /** - * lua script can not init with undetermined number of variables + /** Creates a LayerMultiplex with one layer. + * Lua script can not init with undetermined number of variables * so add these functions to be used with lua. * @js NA * @lua NA + * + * @param layer A certain layer. + * @return An autoreleased LayerMultiplex object. */ static LayerMultiplex * createWithLayer(Layer* layer); + /** Add a certain layer to LayerMultiplex. + * + * @param layer A layer need to be added to the LayerMultiplex. + */ void addLayer(Layer* layer); - /** switches to a certain layer indexed by n. + /** Switches to a certain layer indexed by n. The current (old) layer will be removed from it's parent with 'cleanup=true'. + * + * @param n The layer indexed by n will display. */ void switchTo(int n); /** release the current layer and switches to another layer indexed by n. The current (old) layer will be removed from it's parent with 'cleanup=true'. - */ + * + * @param n The layer indexed by n will display. + */ void switchToAndReleaseMe(int n); virtual std::string getDescription() const override; diff --git a/cocos/2d/CCLight.h b/cocos/2d/CCLight.h index d884cf477d..1c5eeece6e 100644 --- a/cocos/2d/CCLight.h +++ b/cocos/2d/CCLight.h @@ -57,11 +57,17 @@ enum class LightFlag LIGHT15 = 1 << 15, }; +/** +@js NA +*/ class CC_DLL BaseLight : public Node { public: - //get light type + /** + * Get the light type,light type MUST be one of LightType::DIRECTIONAL , + * LightType::POINT, LightType::SPOT, LightType::AMBIENT. + */ virtual LightType getLightType() const = 0; /** intensity getter and setter */ @@ -95,6 +101,9 @@ protected: bool _enabled; }; +/** +@js NA +*/ class CC_DLL DirectionLight : public BaseLight { public: @@ -133,6 +142,9 @@ CC_CONSTRUCTOR_ACCESS: }; +/** +@js NA +*/ class CC_DLL PointLight : public BaseLight { public: @@ -161,6 +173,9 @@ protected: float _range; }; +/** +@js NA +*/ class CC_DLL SpotLight : public BaseLight { public: @@ -252,6 +267,9 @@ protected: float _cosOuterAngle; }; +/** +@js NA +*/ class CC_DLL AmbientLight : public BaseLight { public: diff --git a/cocos/2d/CCMotionStreak.h b/cocos/2d/CCMotionStreak.h index a4acb735f7..7a33d97218 100644 --- a/cocos/2d/CCMotionStreak.h +++ b/cocos/2d/CCMotionStreak.h @@ -39,29 +39,64 @@ class Texture2D; * @{ */ -/** MotionStreak. - Creates a trailing path. +/** @class MotionStreak. + * @brief Creates a trailing path. */ class CC_DLL MotionStreak : public Node, public TextureProtocol { public: - /** creates and initializes a motion streak with fade in seconds, minimum segments, stroke's width, color, texture filename */ + /** Creates and initializes a motion streak with fade in seconds, minimum segments, stroke's width, color, texture filename. + * + * @param fade The fade time, in seconds. + * @param minSeg The minimum segments. + * @param stroke The width of stroke. + * @param color The color of stroke. + * @param path The texture file name of stoke. + * @return An autoreleased MotionStreak object. + */ static MotionStreak* create(float fade, float minSeg, float stroke, const Color3B& color, const std::string& path); - /** creates and initializes a motion streak with fade in seconds, minimum segments, stroke's width, color, texture */ + /** Creates and initializes a motion streak with fade in seconds, minimum segments, stroke's width, color, texture. + * + * @param fade The fade time, in seconds. + * @param minSeg The minimum segments. + * @param stroke The width of stroke. + * @param color The color of stroke. + * @param texture The texture name of stoke. + * @return An autoreleased MotionStreak object. + */ static MotionStreak* create(float fade, float minSeg, float stroke, const Color3B& color, Texture2D* texture); - /** color used for the tint */ + /** Color used for the tint. + * + * @param colors The color used for the tint. + */ void tintWithColor(const Color3B& colors); - /** Remove all living segments of the ribbon */ + /** Remove all living segments of the ribbon. + */ void reset(); - /** When fast mode is enabled, new points are added faster but with lower precision */ + /** When fast mode is enabled, new points are added faster but with lower precision. + * + * @return True if fast mode is enabled. + */ inline bool isFastMode() const { return _fastMode; } + /** Sets fast mode or not. + * + * @param bFastMode True if enabled fast mode. + */ inline void setFastMode(bool bFastMode) { _fastMode = bFastMode; } + /** Is the starting position initialized or not. + * + * @return True if the starting position is initialized. + */ inline bool isStartingPositionInitialized() const { return _startingPositionInitialized; } - inline void setStartingPositionInitialized(bool bStartingPositionInitialized) + /** Sets the starting position initialized or not. + * + * @param bStartingPositionInitialized True if initialized the starting position. + */ + inline void setStartingPositionInitialized(bool bStartingPositionInitialized) { _startingPositionInitialized = bStartingPositionInitialized; } diff --git a/cocos/2d/CCNode.h b/cocos/2d/CCNode.h index fd100bb9d4..43fe26ef75 100644 --- a/cocos/2d/CCNode.h +++ b/cocos/2d/CCNode.h @@ -73,7 +73,8 @@ bool CC_DLL nodeComparisonLess(Node* n1, Node* n2); class EventListener; -/** @brief Node is the base element of the Scene Graph. Elements of the Scene Graph must be Node objects or subclasses of it. +/** @class Node +* @brief Node is the base element of the Scene Graph. Elements of the Scene Graph must be Node objects or subclasses of it. The most common Node objects are: Scene, Layer, Sprite, Menu, Label. The main features of a Node are: @@ -102,7 +103,7 @@ class EventListener; class CC_DLL Node : public Ref { public: - /// Default tag used for all the nodes + /** Default tag used for all the nodes */ static const int INVALID_TAG = -1; enum { @@ -148,12 +149,16 @@ public: @see `setGlobalZOrder` @see `setVertexZ` + * + * @param localZOrder The local Z order value. */ virtual void setLocalZOrder(int localZOrder); CC_DEPRECATED_ATTRIBUTE virtual void setZOrder(int localZOrder) { setLocalZOrder(localZOrder); } - /* Helper function used by `setLocalZOrder`. Don't use it unless you know what you are doing. + /* + Helper function used by `setLocalZOrder`. Don't use it unless you know what you are doing. + @js NA */ CC_DEPRECATED_ATTRIBUTE virtual void _setLocalZOrder(int z); @@ -185,6 +190,8 @@ public: @see `setVertexZ()` @since v3.0 + * + * @param globalZOrder The global Z order value. */ virtual void setGlobalZOrder(float globalZOrder); /** @@ -240,7 +247,7 @@ public: * * The Default value is 1.0 if you haven't changed it before. * - * @param scaleY The scale factor on Y axis. + * @param scaleZ The scale factor on Z axis. * * @warning The physics body doesn't support this. */ @@ -294,10 +301,10 @@ public: * This code snippet sets the node in the center of screen. @code Size size = Director::getInstance()->getWinSize(); - node->setPosition(size.width/2, size.height/2) + node->setPosition(size.width/2, size.height/2); @endcode * - * @param position The position (x,y) of the node in OpenGL coordinates + * @param position The position (x,y) of the node in OpenGL coordinates. */ virtual void setPosition(const Vec2 &position); @@ -310,6 +317,8 @@ public: _position = pos * s; } @endcode + * + * @param position The normalized position (x,y) of the node, using value between 0 and 1. */ virtual void setNormalizedPosition(const Vec2 &position); @@ -318,14 +327,17 @@ public: * * @see setPosition(const Vec2&) * - * @return The position (x,y) of the node in OpenGL coordinates + * @return The position (x,y) of the node in OpenGL coordinates. * @code - * In js and lua return value is table which contains x,y + * In js and lua return value is table which contains x,y. * @endcode */ virtual const Vec2& getPosition() const; - /** returns the normalized position */ + /** Returns the normalized position. + * + * @return The normalized position. + */ virtual const Vec2& getNormalizedPosition() const; /** @@ -333,54 +345,80 @@ public: * * Passing two numbers (x,y) is much efficient than passing Vec2 object. * This method is bound to Lua and JavaScript. - * Passing a number is 10 times faster than passing a object from Lua to c++ + * Passing a number is 10 times faster than passing a object from Lua to c++. * @code // sample code in Lua - local pos = node::getPosition() -- returns Vec2 object from C++ - node:setPosition(x, y) -- pass x, y coordinate to C++ + local pos = node::getPosition() -- returns Vec2 object from C++. + node:setPosition(x, y) -- pass x, y coordinate to C++. @endcode * - * @param x X coordinate for position - * @param y Y coordinate for position + * @param x X coordinate for position. + * @param y Y coordinate for position. */ virtual void setPosition(float x, float y); /** - * Gets position in a more efficient way, returns two number instead of a Vec2 object + * Gets position in a more efficient way, returns two number instead of a Vec2 object. * * @see `setPosition(float, float)` - * In js,out value not return + * In js,out value not return. + * + * @param x To receive x coordinate for position. + * @param y To receive y coordinate for position. */ virtual void getPosition(float* x, float* y) const; /** * Gets/Sets x or y coordinate individually for position. * These methods are used in Lua and Javascript Bindings */ + /** Sets the x coordinate of the node in its parent's coordinate system. + * + * @param x The x coordinate of the node. + */ virtual void setPositionX(float x); + /** Gets the x coordinate of the node in its parent's coordinate system. + * + * @return The x coordinate of the node. + */ virtual float getPositionX(void) const; + /** Sets the y coordinate of the node in its parent's coordinate system. + * + * @param y The y coordinate of the node. + */ virtual void setPositionY(float y); + /** Gets the y coordinate of the node in its parent's coordinate system. + * + * @return The y coordinate of the node. + */ virtual float getPositionY(void) const; /** - * Sets the position (X, Y, and Z) in its parent's coordinate system + * Sets the position (X, Y, and Z) in its parent's coordinate system. + * + * @param position The position (X, Y, and Z) in its parent's coordinate system. + * @js NA */ virtual void setPosition3D(const Vec3& position); /** - * returns the position (X,Y,Z) in its parent's coordinate system + * Returns the position (X,Y,Z) in its parent's coordinate system. + * + * @return The position (X, Y, and Z) in its parent's coordinate system. + * @js NA */ virtual Vec3 getPosition3D() const; /** * Sets the 'z' coordinate in the position. It is the OpenGL Z vertex value. * - * The OpenGL depth buffer and depth testing are disabled by default. You need to turn them on - * in order to use this property correctly. + * The OpenGL depth buffer and depth testing are disabled by default. You need to turn them on. + * In order to use this property correctly. * * `setPositionZ()` also sets the `setGlobalZValue()` with the positionZ as value. * * @see `setGlobalZValue()` * - * @param vertexZ OpenGL Z vertex of this node. + * @param positionZ OpenGL Z vertex of this node. + * @js setVertexZ */ virtual void setPositionZ(float positionZ); CC_DEPRECATED_ATTRIBUTE virtual void setVertexZ(float vertexZ) { setPositionZ(vertexZ); } @@ -390,7 +428,8 @@ public: * * @see setPositionZ(float) * - * @return the position Z coordinate of this node. + * @return The position Z coordinate of this node. + * @js getVertexZ */ virtual float getPositionZ() const; CC_DEPRECATED_ATTRIBUTE virtual float getVertexZ() const { return getPositionZ(); } @@ -427,7 +466,7 @@ public: * while the second one uses the real skew function. * * This angle describes the shear distortion in the Y direction. - * Thus, it is the angle between the X coordinate and the bottom edge of the shape + * Thus, it is the angle between the X coordinate and the bottom edge of the shape. * The default skewY angle is 0. Positive values distort the node in a CCW direction. * * @param skewY The Y skew angle of the node in degrees. @@ -497,15 +536,15 @@ public: /** - * Sets whether the node is visible + * Sets whether the node is visible. * - * The default value is true, a node is default to visible + * The default value is true, a node is default to visible. * * @param visible true if the node is visible, false if the node is hidden. */ virtual void setVisible(bool visible); /** - * Determines if the node is visible + * Determines if the node is visible. * * @see `setVisible(bool)` * @@ -534,31 +573,43 @@ public: /** * Sets the rotation (X,Y,Z) in degrees. - * Useful for 3d rotations + * Useful for 3d rotations. * * @warning The physics body doesn't support this. + * + * @param rotation The rotation of the node in 3d. + * @js NA */ virtual void setRotation3D(const Vec3& rotation); /** - * returns the rotation (X,Y,Z) in degrees. + * Returns the rotation (X,Y,Z) in degrees. + * + * @return The rotation of the node in 3d. + * @js NA */ virtual Vec3 getRotation3D() const; /** - * set rotation by quaternion + * Set rotation by quaternion. + * + * @param quat The rotation in quaternion. + * @js NA */ virtual void setRotationQuat(const Quaternion& quat); /** - * return the rotation by quaternion, Note that when _rotationZ_X == _rotationZ_Y, the returned quaternion equals to RotationZ_X * RotationY * RotationX, - * it equals to RotationY * RotationX otherwise + * Return the rotation by quaternion, Note that when _rotationZ_X == _rotationZ_Y, the returned quaternion equals to RotationZ_X * RotationY * RotationX, + * it equals to RotationY * RotationX otherwise. + * + * @return The rotation in quaternion. + * @js NA */ virtual Quaternion getRotationQuat() const; /** * Sets the X rotation (angle) of the node in degrees which performs a horizontal rotational skew. * - * The difference between `setRotationalSkew()` and `setSkew()` is that the first one simulate Flash's skew functionality + * The difference between `setRotationalSkew()` and `setSkew()` is that the first one simulate Flash's skew functionality, * while the second one uses the real skew function. * * 0 is the default rotation angle. @@ -567,6 +618,7 @@ public: * @param rotationX The X rotation in degrees which performs a horizontal rotational skew. * * @warning The physics body doesn't support this. + * @js setRotationX */ virtual void setRotationSkewX(float rotationX); CC_DEPRECATED_ATTRIBUTE virtual void setRotationX(float rotationX) { return setRotationSkewX(rotationX); } @@ -577,6 +629,7 @@ public: * @see `setRotationSkewX(float)` * * @return The X rotation in degrees. + * @js getRotationX */ virtual float getRotationSkewX() const; CC_DEPRECATED_ATTRIBUTE virtual float getRotationX() const { return getRotationSkewX(); } @@ -584,7 +637,7 @@ public: /** * Sets the Y rotation (angle) of the node in degrees which performs a vertical rotational skew. * - * The difference between `setRotationalSkew()` and `setSkew()` is that the first one simulate Flash's skew functionality + * The difference between `setRotationalSkew()` and `setSkew()` is that the first one simulate Flash's skew functionality, * while the second one uses the real skew function. * * 0 is the default rotation angle. @@ -593,6 +646,7 @@ public: * @param rotationY The Y rotation in degrees. * * @warning The physics body doesn't support this. + * @js setRotationY */ virtual void setRotationSkewY(float rotationY); CC_DEPRECATED_ATTRIBUTE virtual void setRotationY(float rotationY) { return setRotationSkewY(rotationY); } @@ -603,6 +657,7 @@ public: * @see `setRotationSkewY(float)` * * @return The Y rotation in degrees. + * @js getRotationY */ virtual float getRotationSkewY() const; CC_DEPRECATED_ATTRIBUTE virtual float getRotationY() const { return getRotationSkewY(); } @@ -629,12 +684,10 @@ public: /** @deprecated No longer needed - * @js NA * @lua NA */ CC_DEPRECATED_ATTRIBUTE void setGLServerState(int serverState) { /* ignore */ }; /** @deprecated No longer needed - * @js NA * @lua NA */ CC_DEPRECATED_ATTRIBUTE int getGLServerState() const { return 0; } @@ -643,10 +696,10 @@ public: * Sets whether the anchor point will be (0,0) when you position this node. * * This is an internal method, only used by Layer and Scene. Don't call it outside framework. - * The default value is false, while in Layer and Scene are true + * The default value is false, while in Layer and Scene are true. * - * @param ignore true if anchor point will be (0,0) when you position this node - * @todo This method should be renamed as setIgnoreAnchorPointForPosition(bool) or something with "set" + * @param ignore true if anchor point will be (0,0) when you position this node. + * @todo This method should be renamed as setIgnoreAnchorPointForPosition(bool) or something with "set". */ virtual void ignoreAnchorPointForPosition(bool ignore); /** @@ -669,26 +722,26 @@ public: * * If the child is added to a 'running' node, then 'onEnter' and 'onEnterTransitionDidFinish' will be called immediately. * - * @param child A child node + * @param child A child node. */ virtual void addChild(Node * child); /** - * Adds a child to the container with a local z-order + * Adds a child to the container with a local z-order. * * If the child is added to a 'running' node, then 'onEnter' and 'onEnterTransitionDidFinish' will be called immediately. * - * @param child A child node - * @param zOrder Z order for drawing priority. Please refer to `setLocalZOrder(int)` + * @param child A child node. + * @param zOrder Z order for drawing priority. Please refer to `setLocalZOrder(int)`. */ virtual void addChild(Node * child, int localZOrder); /** - * Adds a child to the container with z order and tag + * Adds a child to the container with z order and tag. * * If the child is added to a 'running' node, then 'onEnter' and 'onEnterTransitionDidFinish' will be called immediately. * - * @param child A child node - * @param zOrder Z order for drawing priority. Please refer to `setLocalZOrder(int)` - * @param tag An integer to identify the node easily. Please refer to `setTag(int)` + * @param child A child node. + * @param zOrder Z order for drawing priority. Please refer to `setLocalZOrder(int)`. + * @param tag An integer to identify the node easily. Please refer to `setTag(int)`. * * Please use `addChild(Node* child, int localZOrder, const std::string &name)` instead. */ @@ -698,38 +751,38 @@ public: * * If the child is added to a 'running' node, then 'onEnter' and 'onEnterTransitionDidFinish' will be called immediately. * - * @param child A child node - * @param zOrder Z order for drawing priority. Please refer to `setLocalZOrder(int)` - * @param name A string to identify the node easily. Please refer to `setName(int)` + * @param child A child node. + * @param zOrder Z order for drawing priority. Please refer to `setLocalZOrder(int)`. + * @param name A string to identify the node easily. Please refer to `setName(int)`. * */ virtual void addChild(Node* child, int localZOrder, const std::string &name); /** - * Gets a child from the container with its tag + * Gets a child from the container with its tag. * * @param tag An identifier to find the child node. * - * @return a Node object whose tag equals to the input parameter + * @return a Node object whose tag equals to the input parameter. * - * Please use `getChildByName()` instead + * Please use `getChildByName()` instead. */ virtual Node * getChildByTag(int tag) const; /** - * Gets a child from the container with its name + * Gets a child from the container with its name. * * @param name An identifier to find the child node. * - * @return a Node object whose name equals to the input parameter + * @return a Node object whose name equals to the input parameter. * * @since v3.2 */ virtual Node* getChildByName(const std::string& name) const; /** - * Gets a child from the container with its name that can be cast to Type T + * Gets a child from the container with its name that can be cast to Type T. * * @param name An identifier to find the child node. * - * @return a Node with the given name that can be cast to Type T + * @return a Node with the given name that can be cast to Type T. */ template inline T getChildByName(const std::string& name) const { return static_cast(getChildByName(name)); } @@ -738,20 +791,20 @@ public: * @param name The name to search for, supports c++11 regular expression. * Search syntax options: * `//`: Can only be placed at the begin of the search string. This indicates that it will search recursively. - * `..`: The search should move up to the node's parent. Can only be placed at the end of string + * `..`: The search should move up to the node's parent. Can only be placed at the end of string. * `/` : When placed anywhere but the start of the search string, this indicates that the search should move to the node's children. * * @code * enumerateChildren("//MyName", ...): This searches the children recursively and matches any node with the name `MyName`. * enumerateChildren("[[:alnum:]]+", ...): This search string matches every node of its children. - * enumerateChildren("A[[:digit:]]", ...): This searches the node's children and returns any child named `A0`, `A1`, ..., `A9` + * enumerateChildren("A[[:digit:]]", ...): This searches the node's children and returns any child named `A0`, `A1`, ..., `A9`. * enumerateChildren("Abby/Normal", ...): This searches the node's grandchildren and returns any node whose name is `Normal` * and whose parent is named `Abby`. * enumerateChildren("//Abby/Normal", ...): This searches recursively and returns any node whose name is `Normal` and whose * parent is named `Abby`. * @endcode * - * @warning Only support alpha or number for name, and not support unicode + * @warning Only support alpha or number for name, and not support unicode. * * @param callback A callback function to execute on nodes that match the `name` parameter. The function takes the following arguments: * `node` @@ -762,32 +815,32 @@ public: */ virtual void enumerateChildren(const std::string &name, std::function callback) const; /** - * Returns the array of the node's children + * Returns the array of the node's children. * - * @return the array the node's children + * @return the array the node's children. */ virtual Vector& getChildren() { return _children; } virtual const Vector& getChildren() const { return _children; } /** - * Returns the amount of children + * Returns the amount of children. * * @return The amount of children. */ virtual ssize_t getChildrenCount() const; /** - * Sets the parent node + * Sets the parent node. * - * @param parent A pointer to the parent node + * @param parent A pointer to the parent node. */ virtual void setParent(Node* parent); /** - * Returns a pointer to the parent node + * Returns a pointer to the parent node. * * @see `setParent(Node*)` * - * @returns A pointer to the parent node + * @returns A pointer to the parent node. */ virtual Node* getParent() { return _parent; } virtual const Node* getParent() const { return _parent; } @@ -814,24 +867,24 @@ public: * Removes a child from the container. It will also cleanup all running actions depending on the cleanup parameter. * * @param child The child node which will be removed. - * @param cleanup true if all running actions and callbacks on the child node will be cleanup, false otherwise. + * @param cleanup True if all running actions and callbacks on the child node will be cleanup, false otherwise. */ virtual void removeChild(Node* child, bool cleanup = true); /** - * Removes a child from the container by tag value. It will also cleanup all running actions depending on the cleanup parameter + * Removes a child from the container by tag value. It will also cleanup all running actions depending on the cleanup parameter. * - * @param tag An interger number that identifies a child node - * @param cleanup true if all running actions and callbacks on the child node will be cleanup, false otherwise. + * @param tag An interger number that identifies a child node. + * @param cleanup True if all running actions and callbacks on the child node will be cleanup, false otherwise. * * Please use `removeChildByName` instead. */ virtual void removeChildByTag(int tag, bool cleanup = true); /** - * Removes a child from the container by tag value. It will also cleanup all running actions depending on the cleanup parameter + * Removes a child from the container by tag value. It will also cleanup all running actions depending on the cleanup parameter. * - * @param name A string that identifies a child node - * @param cleanup true if all running actions and callbacks on the child node will be cleanup, false otherwise. + * @param name A string that identifies a child node. + * @param cleanup True if all running actions and callbacks on the child node will be cleanup, false otherwise. */ virtual void removeChildByName(const std::string &name, bool cleanup = true); /** @@ -843,7 +896,7 @@ public: /** * Removes all children from the container, and do a cleanup to all running actions depending on the cleanup parameter. * - * @param cleanup true if all running actions on all children nodes should be cleanup, false oterwise. + * @param cleanup True if all running actions on all children nodes should be cleanup, false oterwise. * @js removeAllChildren * @lua removeAllChildren */ @@ -853,14 +906,14 @@ public: * Reorders a child according to a new z value. * * @param child An already added child node. It MUST be already added. - * @param localZOrder Z order for drawing priority. Please refer to setLocalZOrder(int) + * @param localZOrder Z order for drawing priority. Please refer to setLocalZOrder(int). */ virtual void reorderChild(Node * child, int localZOrder); /** * Sorts the children array once before drawing, instead of every time when a child is added or reordered. * This appraoch can improves the performance massively. - * @note Don't call this manually unless a child added needs to be removed in the same frame + * @note Don't call this manually unless a child added needs to be removed in the same frame. */ virtual void sortAllChildren(); @@ -903,59 +956,54 @@ public: /** - * Returns a custom user data pointer + * Returns a custom user data pointer. * * You can set everything in UserData pointer, a data block, a structure or an object. * - * @return A custom user data pointer - * @js NA + * @return A custom user data pointer. * @lua NA */ virtual void* getUserData() { return _userData; } /** - * @js NA * @lua NA */ virtual const void* getUserData() const { return _userData; } /** - * Sets a custom user data pointer + * Sets a custom user data pointer. * * You can set everything in UserData pointer, a data block, a structure or an object, etc. * @warning Don't forget to release the memory manually, * especially before you change this data pointer, and before this node is autoreleased. * - * @param userData A custom user data pointer - * @js NA + * @param userData A custom user data pointer. * @lua NA */ virtual void setUserData(void *userData); /** - * Returns a user assigned Object + * Returns a user assigned Object. * - * Similar to userData, but instead of holding a void* it holds an object + * Similar to userData, but instead of holding a void* it holds an object. * - * @return A user assigned Object - * @js NA + * @return A user assigned Object. * @lua NA */ virtual Ref* getUserObject() { return _userObject; } /** - * @js NA * @lua NA */ virtual const Ref* getUserObject() const { return _userObject; } /** - * Returns a user assigned Object + * Returns a user assigned Object. * * Similar to UserData, but instead of holding a void* it holds an object. * The UserObject will be retained once in this method, * and the previous UserObject (if existed) will be released. * The UserObject will be released in Node's destructor. * - * @param userObject A user assigned Object + * @param userObject A user assigned Object. */ virtual void setUserObject(Ref *userObject); @@ -965,16 +1013,12 @@ public: /// @{ /// @name GLProgram /** - * Return the GLProgram (shader) currently used for this node + * Return the GLProgram (shader) currently used for this node. * - * @return The GLProgram (shader) currently used for this node + * @return The GLProgram (shader) currently used for this node. */ GLProgram* getGLProgram() const; CC_DEPRECATED_ATTRIBUTE GLProgram* getShaderProgram() const { return getGLProgram(); } - - GLProgramState *getGLProgramState() const; - virtual void setGLProgramState(GLProgramState *glProgramState); - /** * Sets the shader program for this node * @@ -984,17 +1028,31 @@ public: node->setGLrProgram(GLProgramCache::getInstance()->getProgram(GLProgram::SHADER_NAME_POSITION_TEXTURE_COLOR)); @endcode * - * @param shaderProgram The shader program + * @param glprogram The shader program. */ virtual void setGLProgram(GLProgram *glprogram); CC_DEPRECATED_ATTRIBUTE void setShaderProgram(GLProgram *glprogram) { setGLProgram(glprogram); } + + /** + * Return the GLProgramState currently used for this node. + * + * @return The GLProgramState currently used for this node. + */ + GLProgramState *getGLProgramState() const; + /** + * Set the GLProgramState for this node. + * + * @param glProgramState The GLProgramState for this node. + */ + virtual void setGLProgramState(GLProgramState *glProgramState); + /// @} end of Shader Program /** * Returns whether or not the node is "running". * - * If the node is running it will accept event callbacks like onEnter(), onExit(), update() + * If the node is running it will accept event callbacks like onEnter(), onExit(), update(). * * @return Whether or not the node is running. */ @@ -1003,6 +1061,9 @@ public: /** * Schedules for lua script. * @js NA + * + * @param handler The key to search lua function. + * @param priority A given priority value. */ void scheduleUpdateWithPriorityLua(int handler, int priority); @@ -1017,7 +1078,6 @@ public: * If the Node enters the 'stage' with a transition, this event is called when the transition starts. * During onEnter you can't access a "sister/brother" node. * If you override onEnter, you shall call its parent's one, e.g., Node::onEnter(). - * @js NA * @lua NA */ virtual void onEnter(); @@ -1025,7 +1085,6 @@ public: /** Event callback that is invoked when the Node enters in the 'stage'. * If the Node enters the 'stage' with a transition, this event is called when the transition finishes. * If you override onEnterTransitionDidFinish, you shall call its parent's one, e.g. Node::onEnterTransitionDidFinish() - * @js NA * @lua NA */ virtual void onEnterTransitionDidFinish(); @@ -1035,7 +1094,6 @@ public: * If the Node leaves the 'stage' with a transition, this event is called when the transition finishes. * During onExit you can't access a sibling node. * If you override onExit, you shall call its parent's one, e.g., Node::onExit(). - * @js NA * @lua NA */ virtual void onExit(); @@ -1043,7 +1101,6 @@ public: /** * Event callback that is called every time the Node leaves the 'stage'. * If the Node leaves the 'stage' with a transition, this callback is called when the transition starts. - * @js NA * @lua NA */ virtual void onExitTransitionDidStart(); @@ -1065,12 +1122,20 @@ public: * - `glEnable(GL_TEXTURE_2D);` * AND YOU SHOULD NOT DISABLE THEM AFTER DRAWING YOUR NODE * But if you enable any other GL state, you should disable it after drawing your node. + * + * @param renderer A given renderer. + * @param transform A transform matrix. + * @param flags Renderer flag. */ virtual void draw(Renderer *renderer, const Mat4& transform, uint32_t flags); virtual void draw() final; /** * Visits this node's children and draw them recursively. + * + * @param renderer A given renderer. + * @param parentTransform A transform matrix. + * @param parentFlags Renderer flag. */ virtual void visit(Renderer *renderer, const Mat4& parentTransform, uint32_t parentFlags); virtual void visit() final; @@ -1079,6 +1144,8 @@ public: /** Returns the Scene that contains the Node. It returns `nullptr` if the node doesn't belong to any Scene. This function recursively calls parent->getScene() until parent is a Scene object. The results are not cached. It is that the user caches the results in case this functions is being used inside a loop. + * + * @return The Scene that contains the node. */ virtual Scene* getScene() const; @@ -1092,7 +1159,15 @@ public: /** @deprecated Use getBoundingBox instead */ CC_DEPRECATED_ATTRIBUTE inline virtual Rect boundingBox() const { return getBoundingBox(); } + /** Set event dispatcher for scene. + * + * @param dispatcher The event dispatcher of scene. + */ virtual void setEventDispatcher(EventDispatcher* dispatcher); + /** Get the event dispatcher of scene. + * + * @return The event dispatcher of scene. + */ virtual EventDispatcher* getEventDispatcher() const { return _eventDispatcher; }; /// @{ @@ -1117,10 +1192,10 @@ public: /** * Executes an action, and returns the action that is executed. * - * This node becomes the action's target. Refer to Action::getTarget() + * This node becomes the action's target. Refer to Action::getTarget(). * @warning Actions don't retain their target. * - * @return An Action pointer + * @param An Action pointer */ virtual Action* runAction(Action* action); @@ -1167,7 +1242,7 @@ public: * If you are running 7 Sequences of 2 actions, it will return 7. * @todo Rename to getNumberOfRunningActions() * - * @return The number of actions that are running plus the ones that are schedule to run + * @return The number of actions that are running plus the ones that are schedule to run. */ ssize_t getNumberOfRunningActions() const; @@ -1223,7 +1298,6 @@ public: * It will use the order number 0. This method will be called every frame. * Scheduled methods with a lower order value will be called before the ones that have a higher order value. * Only one "update" method could be scheduled per node. - * @js NA * @lua NA */ void scheduleUpdate(void); @@ -1234,8 +1308,9 @@ public: * This selector will be called every frame. * Scheduled methods with a lower priority will be called before the ones that have a higher value. * Only one "update" selector could be scheduled per node (You can't have 2 'update' selectors). - * @js NA * @lua NA + * + * @param priority A given priority value. */ void scheduleUpdateWithPriority(int priority); @@ -1287,15 +1362,15 @@ public: /** * Schedules a lambda function that runs only once, with a delay of 0 or larger * - * @param callback The lambda function to be scheduled + * @param callback The lambda function to be scheduled. * @param delay The amount of time that the first tick will wait before execution. - * @param key The key of the lambda function. To be used if you want to unschedule it + * @param key The key of the lambda function. To be used if you want to unschedule it. * @lua NA */ void scheduleOnce(const std::function& callback, float delay, const std::string &key); /** - * Schedules a custom selector, the scheduled selector will be ticked every frame + * Schedules a custom selector, the scheduled selector will be ticked every frame. * @see schedule(SEL_SCHEDULE, float, unsigned int, float) * * @param selector A function wrapped as a selector @@ -1304,10 +1379,10 @@ public: void schedule(SEL_SCHEDULE selector); /** - * Schedules a lambda function. The scheduled lambda function will be called every frame + * Schedules a lambda function. The scheduled lambda function will be called every frame. * - * @param callback The lambda function to be scheduled - * @param key The key of the lambda function. To be used if you want to unschedule it + * @param callback The lambda function to be scheduled. + * @param key The key of the lambda function. To be used if you want to unschedule it. * @lua NA */ void schedule(const std::function& callback, const std::string &key); @@ -1325,11 +1400,11 @@ public: /** * Schedules a lambda function. * - * @param callback The lambda function to be schedule + * @param callback The lambda function to be schedule. * @param interval Tick interval in seconds. 0 means tick every frame. * @param repeat The selector will be executed (repeat + 1) times, you can use CC_REPEAT_FOREVER for tick infinitely. * @param delay The amount of time that the first tick will wait before execution. - * @param key The key of the lambda function. To be used if you want to unschedule it + * @param key The key of the lambda function. To be used if you want to unschedule it. * @lua NA */ void schedule(const std::function& callback, float interval, unsigned int repeat, float delay, const std::string &key); @@ -1338,21 +1413,21 @@ public: * Unschedules a custom selector. * @see `schedule(SEL_SCHEDULE, float, unsigned int, float)` * - * @param selector A function wrapped as a selector + * @param selector A function wrapped as a selector. * @lua NA */ void unschedule(SEL_SCHEDULE selector); /** - * Unschedules a lambda function + * Unschedules a lambda function. * - * @param key The key of the lambda function to be unscheduled + * @param key The key of the lambda function to be unscheduled. * @lua NA */ void unschedule(const std::string &key); /** - * Unschedule all scheduled selectors and lambda functions: custom selectors, and the 'update' selector and lambda functions + * Unschedule all scheduled selectors and lambda functions: custom selectors, and the 'update' selector and lambda functions. * Actions are not affected by this method. * @lua NA */ @@ -1362,28 +1437,29 @@ public: /** * Resumes all scheduled selectors, actions and event listeners. - * This method is called internally by onEnter + * This method is called internally by onEnter. */ virtual void resume(void); /** - * Pauses all scheduled selectors, actions and event listeners.. - * This method is called internally by onExit + * Pauses all scheduled selectors, actions and event listeners. + * This method is called internally by onExit. */ virtual void pause(void); /** * Resumes all scheduled selectors, actions and event listeners. - * This method is called internally by onEnter + * This method is called internally by onEnter. */ CC_DEPRECATED_ATTRIBUTE void resumeSchedulerAndActions(); /** - * Pauses all scheduled selectors, actions and event listeners.. - * This method is called internally by onExit + * Pauses all scheduled selectors, actions and event listeners. + * This method is called internally by onExit. */ CC_DEPRECATED_ATTRIBUTE void pauseSchedulerAndActions(); - /* - * Update method will be called automatically every frame if "scheduleUpdate" is called, and the node is "live" + /** + * Update method will be called automatically every frame if "scheduleUpdate" is called, and the node is "live". + * @param delta In seconds. */ virtual void update(float delta); @@ -1404,12 +1480,16 @@ public: /** * Returns the matrix that transform the node's (local) space coordinates into the parent's space coordinates. * The matrix is in Pixels. + * + * @return The transformation matrix. */ virtual const Mat4& getNodeToParentTransform() const; virtual AffineTransform getNodeToParentAffineTransform() const; /** - * Sets the Transformation matrix manually. + * Sets the transformation matrix manually. + * + * @param transform A given transformation matrix. */ virtual void setNodeToParentTransform(const Mat4& transform); @@ -1419,6 +1499,8 @@ public: /** * Returns the matrix that transform parent's space coordinates to the node's (local) space coordinates. * The matrix is in Pixels. + * + * @return The transformation matrix. */ virtual const Mat4& getParentToNodeTransform() const; virtual AffineTransform getParentToNodeAffineTransform() const; @@ -1428,6 +1510,8 @@ public: /** * Returns the world affine transform matrix. The matrix is in Pixels. + * + * @return transformation matrix, in pixels. */ virtual Mat4 getNodeToWorldTransform() const; virtual AffineTransform getNodeToWorldAffineTransform() const; @@ -1437,6 +1521,8 @@ public: /** * Returns the inverse world affine transform matrix. The matrix is in Pixels. + * + * @return The transformation matrix. */ virtual Mat4 getWorldToNodeTransform() const; virtual AffineTransform getWorldToNodeAffineTransform() const; @@ -1453,43 +1539,63 @@ public: /** * Converts a Vec2 to node (local) space coordinates. The result is in Points. + * + * @param worldPoint A given coordinate. + * @return A point in node (local) space coordinates. */ Vec2 convertToNodeSpace(const Vec2& worldPoint) const; /** * Converts a Vec2 to world space coordinates. The result is in Points. + * + * @param nodePoint A given coordinate. + * @return A point in world space coordinates. */ Vec2 convertToWorldSpace(const Vec2& nodePoint) const; /** * Converts a Vec2 to node (local) space coordinates. The result is in Points. * treating the returned/received node point as anchor relative. + * + * @param worldPoint A given coordinate. + * @return A point in node (local) space coordinates, anchor relative. */ Vec2 convertToNodeSpaceAR(const Vec2& worldPoint) const; /** * Converts a local Vec2 to world space coordinates.The result is in Points. * treating the returned/received node point as anchor relative. + * + * @param nodePoint A given coordinate. + * @return A point in world space coordinates, anchor relative. */ Vec2 convertToWorldSpaceAR(const Vec2& nodePoint) const; /** - * convenience methods which take a Touch instead of Vec2 + * convenience methods which take a Touch instead of Vec2. + * + * @param touch A given touch. + * @return A point in world space coordinates. */ Vec2 convertTouchToNodeSpace(Touch * touch) const; /** * converts a Touch (world coordinates) into a local coordinate. This method is AR (Anchor Relative). + * + * @param touch A given touch. + * @return A point in world space coordinates, anchor relative. */ Vec2 convertTouchToNodeSpaceAR(Touch * touch) const; /** * Sets an additional transform matrix to the node. * - * In order to remove it, call it again with the argument `nullptr` + * In order to remove it, call it again with the argument `nullptr`. * - * @note The additional transform will be concatenated at the end of getNodeToParentTransform. + * @note The additional transform will be concatenated at the end of getNodeToParentTransform. * It could be used to simulate `parent-child` relationship between two nodes (e.g. one is in BatchNode, another isn't). + * + * @param additionalTransform An additional transform matrix. */ void setAdditionalTransform(Mat4* additionalTransform); void setAdditionalTransform(const AffineTransform& additionalTransform); @@ -1499,26 +1605,38 @@ public: /// @{ /// @name component functions /** - * gets a component by its name + * Gets a component by its name. + * + * @param name A given name of component. + * @return The Component by name. */ Component* getComponent(const std::string& name); /** - * adds a component + * Adds a component. + * + * @param component A given component. + * @return True if added success. */ virtual bool addComponent(Component *component); /** - * removes a component by its name + * Removes a component by its name. + * + * @param name A given name of component. + * @return True if removed success. */ virtual bool removeComponent(const std::string& name); /** - * removes a component by its pointer + * Removes a component by its pointer. + * + * @param name A given component. + * @return True if removed success. */ virtual bool removeComponent(Component *component); /** - * removes all components + * Removes all components */ virtual void removeAllComponents(); /// @} end of component functions @@ -1526,23 +1644,33 @@ public: #if CC_USE_PHYSICS /** - * set the PhysicsBody that let the sprite effect with physics + * Set the PhysicsBody that let the sprite effect with physics. * @note This method will set anchor point to Vec2::ANCHOR_MIDDLE if body not null, and you cann't change anchor point if node has a physics body. + * + * @param body A given physics body. */ void setPhysicsBody(PhysicsBody* body); /** - * get the PhysicsBody the sprite have + * Get the PhysicsBody the sprite have. + * + * @return The PhysicsBody the sprite have. */ PhysicsBody* getPhysicsBody() const { return _physicsBody; } /** - * remove this node from physics world. it will remove all the physics bodies in it's children too. + * Remove this node from physics world. it will remove all the physics bodies in it's children too. */ void removeFromPhysicsWorld(); + /** + * Update the transform matrix from physics. + */ void updateTransformFromPhysics(const Mat4& parentTransform, uint32_t parentFlags); + /** + * Update physics body transform matrix. + */ virtual void updatePhysicsBodyTransform(const Mat4& parentTransform, uint32_t parentFlags, float parentScaleX, float parentScaleY); #endif @@ -1740,7 +1868,8 @@ private: // NodeRGBA -/** NodeRGBA is a subclass of Node that implements the RGBAProtocol protocol. +/** @class __NodeRGBA + * @brief __NodeRGBA is a subclass of Node that implements the RGBAProtocol protocol. All features from Node are valid, plus the following new features: - opacity @@ -1748,6 +1877,7 @@ private: Opacity/Color propagates into children that conform to the RGBAProtocol if cascadeOpacity/cascadeColor is enabled. @since v2.1 + @js NA */ class CC_DLL __NodeRGBA : public Node, public __RGBAProtocol { diff --git a/cocos/2d/CCNodeGrid.h b/cocos/2d/CCNodeGrid.h index 6465d5a8e3..bfac75474d 100644 --- a/cocos/2d/CCNodeGrid.h +++ b/cocos/2d/CCNodeGrid.h @@ -32,25 +32,45 @@ NS_CC_BEGIN class GridBase; +/** + * @addtogroup _2d + * @{ + */ + +/** + * @brief Base class for Grid Node. + */ class CC_DLL NodeGrid : public Node { public: + /** Create a Grid Node. + * + * @return An autorelease Grid Node. + */ static NodeGrid* create(); - + + /** Get a Grid Node. + * + * @return Return a GridBase. + */ GridBase* getGrid() { return _nodeGrid; } /** - * @js NA - */ + * @js NA + */ const GridBase* getGrid() const { return _nodeGrid; } /** - * Changes a grid object that is used when applying effects + * Changes a grid object that is used when applying effects. * - * @param grid A Grid object that is used when applying effects + * @param grid A Grid object that is used when applying effects. */ void setGrid(GridBase *grid); - + + /** Set the Grid Target. + * + * @param target A Node is used to set the Grid Target. + */ void setTarget(Node *target); // overrides @@ -73,6 +93,7 @@ protected: private: CC_DISALLOW_COPY_AND_ASSIGN(NodeGrid); }; +/** @} */ NS_CC_END #endif diff --git a/cocos/2d/CCParallaxNode.h b/cocos/2d/CCParallaxNode.h index cc1f12e146..080ef8358e 100644 --- a/cocos/2d/CCParallaxNode.h +++ b/cocos/2d/CCParallaxNode.h @@ -39,7 +39,8 @@ struct _ccArray; * @{ */ -/** @brief ParallaxNode: A node that simulates a parallax scroller +/** @class ParallaxNode + * @brief ParallaxNode: A node that simulates a parallax scroller The children will be moved faster / slower than the parent according the the parallax ratio. @@ -47,17 +48,33 @@ The children will be moved faster / slower than the parent according the the par class CC_DLL ParallaxNode : public Node { public: - // Create a Parallax node + /** Create a Parallax node. + * + * @return An autoreleased ParallaxNode object. + */ static ParallaxNode * create(); // prevents compiler warning: "Included function hides overloaded virtual functions" using Node::addChild; + /** Adds a child to the container with a local z-order, parallax ratio and position offset. + * + * @param child A child node. + * @param z Z order for drawing priority. + * @param parallaxRatio A given parallax ratio. + * @param positionOffset A given position offset. + */ void addChild(Node * child, int z, const Vec2& parallaxRatio, const Vec2& positionOffset); - /** Sets an array of layers for the Parallax node */ + /** Sets an array of layers for the Parallax node. + * + * @param parallaxArray An array of layers for the Parallax node. + */ void setParallaxArray( struct _ccArray *parallaxArray) { _parallaxArray = parallaxArray; } - /** Returns the array of layers of the Parallax node */ + /** Returns the array of layers of the Parallax node. + * + * @return An array of layers for the Parallax node. + */ struct _ccArray* getParallaxArray() { return _parallaxArray; } const struct _ccArray* getParallaxArray() const { return _parallaxArray; } diff --git a/cocos/2d/CCParticleBatchNode.h b/cocos/2d/CCParticleBatchNode.h index b457f31d6a..2ad880f3d0 100644 --- a/cocos/2d/CCParticleBatchNode.h +++ b/cocos/2d/CCParticleBatchNode.h @@ -47,7 +47,8 @@ class ParticleSystem; #define kParticleDefaultCapacity 500 -/** ParticleBatchNode is like a batch node: if it contains children, it will draw them in 1 single OpenGL call +/** @class ParticleBatchNode + * @brief ParticleBatchNode is like a batch node: if it contains children, it will draw them in 1 single OpenGL call * (often known as "batch draw"). * * A ParticleBatchNode can reference one and only one texture (one image file, one texture atlas). @@ -69,25 +70,53 @@ class ParticleSystem; class CC_DLL ParticleBatchNode : public Node, public TextureProtocol { public: - /** initializes the particle system with Texture2D, a capacity of particles, which particle system to use */ + /** Create the particle system with Texture2D, a capacity of particles, which particle system to use. + * + * @param tex A given texture. + * @param capacity A capacity of particles. + * @return An autoreleased ParticleBatchNode object. + */ static ParticleBatchNode* createWithTexture(Texture2D *tex, int capacity = kParticleDefaultCapacity); - /** initializes the particle system with the name of a file on disk (for a list of supported formats look at the Texture2D class), a capacity of particles */ + /** Create the particle system with the name of a file on disk (for a list of supported formats look at the Texture2D class), a capacity of particles. + * + * @param fileImage A given file name. + * @param capacity A capacity of particles. + * @return An autoreleased ParticleBatchNode object. + */ static ParticleBatchNode* create(const std::string& fileImage, int capacity = kParticleDefaultCapacity); - /** Inserts a child into the ParticleBatchNode */ + /** Inserts a child into the ParticleBatchNode. + * + * @param system A given particle system. + * @param index The insert index. + */ void insertChild(ParticleSystem* system, int index); + /** Remove a child of the ParticleBatchNode. + * + * @param index The index of the child. + * @param doCleanup True if all actions and callbacks on this node should be removed, false otherwise. + */ void removeChildAtIndex(int index, bool doCleanup); void removeAllChildrenWithCleanup(bool doCleanup) override; - /** disables a particle by inserting a 0'd quad into the texture atlas */ + /** Disables a particle by inserting a 0'd quad into the texture atlas. + * + * @param particleIndex The index of the particle. + */ void disableParticle(int particleIndex); - /** Gets the texture atlas used for drawing the quads */ + /** Gets the texture atlas used for drawing the quads. + * + * @return The texture atlas used for drawing the quads. + */ inline TextureAtlas* getTextureAtlas() const { return _textureAtlas; }; - /** Sets the texture atlas used for drawing the quads */ + /** Sets the texture atlas used for drawing the quads. + * + * @param atlas The texture atlas used for drawing the quads. + */ inline void setTextureAtlas(TextureAtlas* atlas) { _textureAtlas = atlas; }; // Overrides diff --git a/cocos/2d/CCParticleExamples.h b/cocos/2d/CCParticleExamples.h index 7427951519..c8c19ed7ca 100644 --- a/cocos/2d/CCParticleExamples.h +++ b/cocos/2d/CCParticleExamples.h @@ -36,11 +36,22 @@ NS_CC_BEGIN * @{ */ -//! @brief A fire particle system +/** @class ParticleFire + * @brief A fire particle system. + */ class CC_DLL ParticleFire : public ParticleSystemQuad { public: + /** Create a fire particle system. + * + * @return An autoreleased ParticleFire object. + */ static ParticleFire* create(); + /** Create a fire particle system withe a fixed number of particles. + * + * @param numberOfParticles A given number of particles. + * @return An autoreleased ParticleFire object. + */ static ParticleFire* createWithTotalParticles(int numberOfParticles); CC_CONSTRUCTOR_ACCESS: @@ -61,11 +72,22 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(ParticleFire); }; -//! @brief A fireworks particle system +/** @class ParticleFireworks + * @brief A fireworks particle system. + */ class CC_DLL ParticleFireworks : public ParticleSystemQuad { public: + /** Create a fireworks particle system. + * + * @return An autoreleased ParticleFireworks object. + */ static ParticleFireworks* create(); + /** Create a fireworks particle system withe a fixed number of particles. + * + * @param numberOfParticles A given number of particles. + * @return An autoreleased ParticleFireworks object. + */ static ParticleFireworks* createWithTotalParticles(int numberOfParticles); CC_CONSTRUCTOR_ACCESS: @@ -87,11 +109,22 @@ private: }; -//! @brief A sun particle system +/** @class ParticleSun + * @brief A sun particle system. + */ class CC_DLL ParticleSun : public ParticleSystemQuad { public: + /** Create a sun particle system. + * + * @return An autoreleased ParticleSun object. + */ static ParticleSun* create(); + /** Create a sun particle system withe a fixed number of particles. + * + * @param numberOfParticles A given number of particles. + * @return An autoreleased ParticleSun object. + */ static ParticleSun* createWithTotalParticles(int numberOfParticles); CC_CONSTRUCTOR_ACCESS: @@ -113,11 +146,22 @@ private: }; -//! @brief A galaxy particle system +/** @class ParticleGalaxy + * @brief A galaxy particle system. + */ class CC_DLL ParticleGalaxy : public ParticleSystemQuad { public: + /** Create a galaxy particle system. + * + * @return An autoreleased ParticleGalaxy object. + */ static ParticleGalaxy* create(); + /** Create a galaxy particle system withe a fixed number of particles. + * + * @param numberOfParticles A given number of particles. + * @return An autoreleased ParticleGalaxy object. + */ static ParticleGalaxy* createWithTotalParticles(int numberOfParticles); CC_CONSTRUCTOR_ACCESS: @@ -139,11 +183,22 @@ private: }; -//! @brief A flower particle system +/** @class ParticleFlower + * @brief A flower particle system. + */ class CC_DLL ParticleFlower : public ParticleSystemQuad { public: + /** Create a flower particle system. + * + * @return An autoreleased ParticleFlower object. + */ static ParticleFlower* create(); + /** Create a flower particle system withe a fixed number of particles. + * + * @param numberOfParticles A given number of particles. + * @return An autoreleased ParticleFlower object. + */ static ParticleFlower* createWithTotalParticles(int numberOfParticles); CC_CONSTRUCTOR_ACCESS: @@ -164,11 +219,22 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(ParticleFlower); }; -//! @brief A meteor particle system +/** @class ParticleMeteor + * @brief A meteor particle system. + */ class CC_DLL ParticleMeteor : public ParticleSystemQuad { public: + /** Create a meteor particle system. + * + * @return An autoreleased ParticleMeteor object. + */ static ParticleMeteor * create(); + /** Create a meteor particle system withe a fixed number of particles. + * + * @param numberOfParticles A given number of particles. + * @return An autoreleased ParticleMeteor object. + */ static ParticleMeteor* createWithTotalParticles(int numberOfParticles); CC_CONSTRUCTOR_ACCESS: @@ -189,11 +255,22 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(ParticleMeteor); }; -//! @brief An spiral particle system +/** @class ParticleSpiral + * @brief An spiral particle system. + */ class CC_DLL ParticleSpiral : public ParticleSystemQuad { public: + /** Create a spiral particle system. + * + * @return An autoreleased ParticleSpiral object. + */ static ParticleSpiral* create(); + /** Create a spiral particle system withe a fixed number of particles. + * + * @param numberOfParticles A given number of particles. + * @return An autoreleased ParticleSpiral object. + */ static ParticleSpiral* createWithTotalParticles(int numberOfParticles); CC_CONSTRUCTOR_ACCESS: @@ -215,11 +292,22 @@ private: }; -//! @brief An explosion particle system +/** @class ParticleExplosion + * @brief An explosion particle system. + */ class CC_DLL ParticleExplosion : public ParticleSystemQuad { public: + /** Create a explosion particle system. + * + * @return An autoreleased ParticleExplosion object. + */ static ParticleExplosion* create(); + /** Create a explosion particle system withe a fixed number of particles. + * + * @param numberOfParticles A given number of particles. + * @return An autoreleased ParticleExplosion object. + */ static ParticleExplosion* createWithTotalParticles(int numberOfParticles); CC_CONSTRUCTOR_ACCESS: @@ -240,11 +328,22 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(ParticleExplosion); }; -//! @brief An smoke particle system +/** @class ParticleSmoke + * @brief An smoke particle system. + */ class CC_DLL ParticleSmoke : public ParticleSystemQuad { public: + /** Create a smoke particle system. + * + * @return An autoreleased ParticleSmoke object. + */ static ParticleSmoke* create(); + /** Create a smoke particle system withe a fixed number of particles. + * + * @param numberOfParticles A given number of particles. + * @return An autoreleased ParticleSmoke object. + */ static ParticleSmoke* createWithTotalParticles(int numberOfParticles); CC_CONSTRUCTOR_ACCESS: @@ -265,11 +364,22 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(ParticleSmoke); }; -//! @brief An snow particle system +/** @class ParticleSnow + * @brief An snow particle system. + */ class CC_DLL ParticleSnow : public ParticleSystemQuad { public: + /** Create a snow particle system. + * + * @return An autoreleased ParticleSnow object. + */ static ParticleSnow* create(); + /** Create a snow particle system withe a fixed number of particles. + * + * @param numberOfParticles A given number of particles. + * @return An autoreleased ParticleSnow object. + */ static ParticleSnow* createWithTotalParticles(int numberOfParticles); CC_CONSTRUCTOR_ACCESS: @@ -290,11 +400,22 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(ParticleSnow); }; -//! @brief A rain particle system +/** @class ParticleRain + * @brief A rain particle system. + */ class CC_DLL ParticleRain : public ParticleSystemQuad { public: + /** Create a rain particle system. + * + * @return An autoreleased ParticleRain object. + */ static ParticleRain* create(); + /** Create a rain particle system withe a fixed number of particles. + * + * @param numberOfParticles A given number of particles. + * @return An autoreleased ParticleRain object. + */ static ParticleRain* createWithTotalParticles(int numberOfParticles); CC_CONSTRUCTOR_ACCESS: diff --git a/cocos/2d/CCParticleSystem.h b/cocos/2d/CCParticleSystem.h index 8ceebe94e5..8751bbfaa7 100644 --- a/cocos/2d/CCParticleSystem.h +++ b/cocos/2d/CCParticleSystem.h @@ -40,8 +40,8 @@ NS_CC_BEGIN class ParticleBatchNode; -/** -Structure that contains the values of each particle +/** @struct sParticle +Structure that contains the values of each particle. */ typedef struct sParticle { Vec2 pos; @@ -60,14 +60,18 @@ typedef struct sParticle { unsigned int atlasIndex; - //! Mode A: gravity, direction, radial accel, tangential accel + /** @struct modeA + Mode A: gravity, direction, radial accel, tangential accel. + */ struct { Vec2 dir; float radialAccel; float tangentialAccel; } modeA; - //! Mode B: radius mode + /** @struct modeB + Mode B: radius mode. + */ struct { float angle; float degreesPerSecond; @@ -81,7 +85,8 @@ typedef struct sParticle { class Texture2D; -/** @brief Particle System base class. +/** @class ParticleSystem + * @brief Particle System base class. Attributes of a Particle System: - emission rate of the particles - Gravity Mode (Mode A): @@ -106,11 +111,11 @@ Attributes of a Particle System: - blending function - texture -cocos2d also supports particles generated by Particle Designer (http://particledesigner.71squared.com/). +Cocos2d also supports particles generated by Particle Designer (http://particledesigner.71squared.com/). 'Radius Mode' in Particle Designer uses a fixed emit rate of 30 hz. Since that can't be guaranteed in cocos2d, cocos2d uses a another approach, but the results are almost identical. -cocos2d supports all the variables used by Particle Designer plus a bit more: +Cocos2d supports all the variables used by Particle Designer plus a bit more: - spinning particles (supported when using ParticleSystemQuad) - tangential acceleration (Gravity mode) - radial acceleration (Gravity mode) @@ -134,101 +139,247 @@ emitter.startSpin = 0; class CC_DLL ParticleSystem : public Node, public TextureProtocol { public: + /** Mode + */ enum class Mode { GRAVITY, RADIUS, }; - /** @typedef PositionType - possible types of particle positions + /** PositionType + Possible types of particle positions. */ enum class PositionType { - /** Living particles are attached to the world and are unaffected by emitter repositioning. */ - FREE, + FREE, /** Living particles are attached to the world and are unaffected by emitter repositioning. */ - /** Living particles are attached to the world but will follow the emitter repositioning. - Use case: Attach an emitter to an sprite, and you want that the emitter follows the sprite. - */ - RELATIVE, + RELATIVE, /** Living particles are attached to the world but will follow the emitter repositioning. + Use case: Attach an emitter to an sprite, and you want that the emitter follows the sprite.*/ - /** Living particles are attached to the emitter and are translated along with it. */ - GROUPED, + GROUPED, /** Living particles are attached to the emitter and are translated along with it. */ + }; //* @enum enum { - /** The Particle emitter lives forever */ + /** The Particle emitter lives forever. */ DURATION_INFINITY = -1, - /** The starting size of the particle is equal to the ending size */ + /** The starting size of the particle is equal to the ending size. */ START_SIZE_EQUAL_TO_END_SIZE = -1, - /** The starting radius of the particle is equal to the ending radius */ + /** The starting radius of the particle is equal to the ending radius. */ START_RADIUS_EQUAL_TO_END_RADIUS = -1, }; - /** creates an initializes a ParticleSystem from a plist file. + /** Creates an initializes a ParticleSystem from a plist file. This plist files can be created manually or with Particle Designer: http://particledesigner.71squared.com/ - @since v2.0 - */ + @since v2.0 + * + * @param Particle plist file name. + * @return An autoreleased ParticleSystem object. + */ static ParticleSystem * create(const std::string& plistFile); - //! create a system with a fixed number of particles + /** Create a system with a fixed number of particles. + * + * @param numberOfParticles A given number of particles. + * @return An autoreleased ParticleSystemQuad object. + */ static ParticleSystem* createWithTotalParticles(int numberOfParticles); - //! Add a particle to the emitter + /** Add a particle to the emitter. + * + * @return True if add success. + */ bool addParticle(); - //! Initializes a particle + /** Initializes a particle. + * + * @param particle A given particle pointer. + */ void initParticle(tParticle* particle); - //! stop emitting particles. Running particles will continue to run until they die + /** Stop emitting particles. Running particles will continue to run until they die. + */ void stopSystem(); - //! Kill all living particles. + /** Kill all living particles. + */ void resetSystem(); - //! whether or not the system is full + /** Whether or not the system is full. + * + * @return True if the system is full. + */ bool isFull(); - //! should be overridden by subclasses + /** Update the verts position data of particle, + should be overridden by subclasses. + * + * @param particle A certain particle. + * @param newPosition A new position. + */ virtual void updateQuadWithParticle(tParticle* particle, const Vec2& newPosition); - //! should be overridden by subclasses + /** Update the VBO verts buffer which does not use batch node, + should be overridden by subclasses. */ virtual void postStep(); + /** Call the update mathod with no time.. + */ virtual void updateWithNoTime(void); + /** Whether or not the particle system removed self on finish. + * + * @return True if the particle system removed self on finish. + */ virtual bool isAutoRemoveOnFinish() const; + + /** Set the particle system auto removed it self on finish. + * + * @param var True if the particle system removed self on finish. + */ virtual void setAutoRemoveOnFinish(bool var); // mode A + /** Gets the garvity. + * + * @return The gravity. + */ virtual const Vec2& getGravity(); + /** Sets the gravity. + * + * @param g The gravity. + */ virtual void setGravity(const Vec2& g); + /** Gets the speed. + * + * @return The speed. + */ virtual float getSpeed() const; + /** Sets the speed. + * + * @param speed The speed. + */ virtual void setSpeed(float speed); + /** Gets the speed variance. + * + * @return The speed variance. + */ virtual float getSpeedVar() const; + /** Sets the speed variance. + * + * @param speed The speed variance. + */ virtual void setSpeedVar(float speed); + /** Gets the tangential acceleration. + * + * @return The tangential acceleration. + */ virtual float getTangentialAccel() const; + /** Sets the tangential acceleration. + * + * @param t The tangential acceleration. + */ virtual void setTangentialAccel(float t); + /** Gets the tangential acceleration variance. + * + * @return The tangential acceleration variance. + */ virtual float getTangentialAccelVar() const; + /** Sets the tangential acceleration variance. + * + * @param t The tangential acceleration variance. + */ virtual void setTangentialAccelVar(float t); + /** Gets the radial acceleration. + * + * @return The radial acceleration. + */ virtual float getRadialAccel() const; + /** Sets the radial acceleration. + * + * @param t The radial acceleration. + */ virtual void setRadialAccel(float t); + /** Gets the radial acceleration variance. + * + * @return The radial acceleration variance. + */ virtual float getRadialAccelVar() const; + /** Sets the radial acceleration variance. + * + * @param t The radial acceleration variance. + */ virtual void setRadialAccelVar(float t); + /** Whether or not the rotation of each particle to its direction. + * + * @return True if the rotation is the direction. + */ virtual bool getRotationIsDir() const; + /** Sets the rotation of each particle to its direction. + * + * @param t True if the rotation is the direction. + */ virtual void setRotationIsDir(bool t); // mode B + /** Gets the start radius. + * + * @return The start radius. + */ virtual float getStartRadius() const; + /** Sets the start radius. + * + * @param startRadius The start radius. + */ virtual void setStartRadius(float startRadius); + /** Gets the start radius variance. + * + * @return The start radius variance. + */ virtual float getStartRadiusVar() const; + /** Sets the start radius variance. + * + * @param startRadiusVar The start radius variance. + */ virtual void setStartRadiusVar(float startRadiusVar); + /** Gets the end radius. + * + * @return The end radius. + */ virtual float getEndRadius() const; + /** Sets the end radius. + * + * @param endRadius The end radius. + */ virtual void setEndRadius(float endRadius); + /** Gets the end radius variance. + * + * @return The end radius variance. + */ virtual float getEndRadiusVar() const; + /** Sets the end radius variance. + * + * @param endRadiusVar The end radius variance. + */ virtual void setEndRadiusVar(float endRadiusVar); + /** Gets the number of degrees to rotate a particle around the source pos per second. + * + * @return The number of degrees to rotate a particle around the source pos per second. + */ virtual float getRotatePerSecond() const; + /** Sets the number of degrees to rotate a particle around the source pos per second. + * + * @param degrees The number of degrees to rotate a particle around the source pos per second. + */ virtual void setRotatePerSecond(float degrees); + /** Gets the rotate per second variance. + * + * @return The rotate per second variance. + */ virtual float getRotatePerSecondVar() const; + /** Sets the rotate per second variance. + * + * @param degrees The rotate per second variance. + */ virtual void setRotatePerSecondVar(float degrees); virtual void setScale(float s) override; @@ -236,109 +387,292 @@ public: virtual void setScaleX(float newScaleX) override; virtual void setScaleY(float newScaleY) override; + /** Whether or not the particle system is active. + * + * @return True if the particle system is active. + */ virtual bool isActive() const; + /** Whether or not the particle system is blend additive. + * + * @return True if the particle system is blend additive. + */ virtual bool isBlendAdditive() const; + /** Sets the particle system blend additive. + * + * @param value True if the particle system is blend additive. + */ virtual void setBlendAdditive(bool value); + /** Gets the batch node. + * + * @return The batch node. + */ virtual ParticleBatchNode* getBatchNode() const; + /** Sets the batch node. + * + * @param batchNode The batch node. + */ virtual void setBatchNode(ParticleBatchNode* batchNode); - // index of system in batch node array + /** Gets the index of system in batch node array. + * + * @return The index of system in batch node array. + */ inline int getAtlasIndex() const { return _atlasIndex; }; + /** Sets the index of system in batch node array. + * + * @param index The index of system in batch node array. + */ inline void setAtlasIndex(int index) { _atlasIndex = index; }; - /** Quantity of particles that are being simulated at the moment */ + /** Gets the Quantity of particles that are being simulated at the moment. + * + * @return The Quantity of particles that are being simulated at the moment. + */ inline unsigned int getParticleCount() const { return _particleCount; }; - /** How many seconds the emitter will run. -1 means 'forever' */ + /** Gets how many seconds the emitter will run. -1 means 'forever'. + * + * @return The seconds that the emitter will run. -1 means 'forever'. + */ inline float getDuration() const { return _duration; }; + /** Sets how many seconds the emitter will run. -1 means 'forever'. + * + * @param duration The seconds that the emitter will run. -1 means 'forever'. + */ inline void setDuration(float duration) { _duration = duration; }; - /** sourcePosition of the emitter */ + /** Gets the source position of the emitter. + * + * @return The source position of the emitter. + */ inline const Vec2& getSourcePosition() const { return _sourcePosition; }; + /** Sets the source position of the emitter. + * + * @param The source position of the emitter. + */ inline void setSourcePosition(const Vec2& pos) { _sourcePosition = pos; }; - /** Position variance of the emitter */ + /** Gets the position variance of the emitter. + * + * @return The position variance of the emitter. + */ inline const Vec2& getPosVar() const { return _posVar; }; + /** Sets the position variance of the emitter. + * + * @param pos The position variance of the emitter. + */ inline void setPosVar(const Vec2& pos) { _posVar = pos; }; - /** life, and life variation of each particle */ + /** Gets the life of each particle. + * + * @return The life of each particle. + */ inline float getLife() const { return _life; }; + /** Sets the life of each particle. + * + * @param life The life of each particle. + */ inline void setLife(float life) { _life = life; }; - /** life variance of each particle */ + /** Gets the life variance of each particle. + * + * @return The life variance of each particle. + */ inline float getLifeVar() const { return _lifeVar; }; + /** Sets the life variance of each particle. + * + * @param lifeVar The life variance of each particle. + */ inline void setLifeVar(float lifeVar) { _lifeVar = lifeVar; }; - /** angle and angle variation of each particle */ + /** Gets the angle of each particle. + * + * @return The angle of each particle. + */ inline float getAngle() const { return _angle; }; + /** Sets the angle of each particle. + * + * @param angle The angle of each particle. + */ inline void setAngle(float angle) { _angle = angle; }; - /** angle variance of each particle */ + /** Gets the angle variance of each particle. + * + * @return The angle variance of each particle. + */ inline float getAngleVar() const { return _angleVar; }; + /** Sets the angle variance of each particle. + * + * @param angleVar The angle variance of each particle. + */ inline void setAngleVar(float angleVar) { _angleVar = angleVar; }; /** Switch between different kind of emitter modes: - - kParticleModeGravity: uses gravity, speed, radial and tangential acceleration - - kParticleModeRadius: uses radius movement + rotation + - kParticleModeGravity: uses gravity, speed, radial and tangential acceleration. + - kParticleModeRadius: uses radius movement + rotation. + * + * @return The mode of the emitter. */ inline Mode getEmitterMode() const { return _emitterMode; }; + /** Sets the mode of the emitter. + * + * @param mode The mode of the emitter. + */ inline void setEmitterMode(Mode mode) { _emitterMode = mode; }; - /** start size in pixels of each particle */ + /** Gets the start size in pixels of each particle. + * + * @return The start size in pixels of each particle. + */ inline float getStartSize() const { return _startSize; }; + /** Sets the start size in pixels of each particle. + * + * @param startSize The start size in pixels of each particle. + */ inline void setStartSize(float startSize) { _startSize = startSize; }; - /** size variance in pixels of each particle */ + /** Gets the start size variance in pixels of each particle. + * + * @return The start size variance in pixels of each particle. + */ inline float getStartSizeVar() const { return _startSizeVar; }; + /** Sets the start size variance in pixels of each particle. + * + * @param sizeVar The start size variance in pixels of each particle. + */ inline void setStartSizeVar(float sizeVar) { _startSizeVar = sizeVar; }; - /** end size in pixels of each particle */ + /** Gets the end size in pixels of each particle. + * + * @return The end size in pixels of each particle. + */ inline float getEndSize() const { return _endSize; }; + /** Sets the end size in pixels of each particle. + * + * @param endSize The end size in pixels of each particle. + */ inline void setEndSize(float endSize) { _endSize = endSize; }; - /** end size variance in pixels of each particle */ + /** Gets the end size variance in pixels of each particle. + * + * @return The end size variance in pixels of each particle. + */ inline float getEndSizeVar() const { return _endSizeVar; }; + /** Sets the end size variance in pixels of each particle. + * + * @param sizeVar The end size variance in pixels of each particle. + */ inline void setEndSizeVar(float sizeVar) { _endSizeVar = sizeVar; }; - /** start color of each particle */ + /** Gets the start color of each particle. + * + * @return The start color of each particle. + */ inline const Color4F& getStartColor() const { return _startColor; }; + /** Sets the start color of each particle. + * + * @param color The start color of each particle. + */ inline void setStartColor(const Color4F& color) { _startColor = color; }; - /** start color variance of each particle */ + /** Gets the start color variance of each particle. + * + * @return The start color variance of each particle. + */ inline const Color4F& getStartColorVar() const { return _startColorVar; }; + /** Sets the start color variance of each particle. + * + * @param color The start color variance of each particle. + */ inline void setStartColorVar(const Color4F& color) { _startColorVar = color; }; - /** end color and end color variation of each particle */ + /** Gets the end color and end color variation of each particle. + * + * @return The end color and end color variation of each particle. + */ inline const Color4F& getEndColor() const { return _endColor; }; + /** Sets the end color and end color variation of each particle. + * + * @param color The end color and end color variation of each particle. + */ inline void setEndColor(const Color4F& color) { _endColor = color; }; - /** end color variance of each particle */ + /** Gets the end color variance of each particle. + * + * @return The end color variance of each particle. + */ inline const Color4F& getEndColorVar() const { return _endColorVar; }; + /** Sets the end color variance of each particle. + * + * @param color The end color variance of each particle. + */ inline void setEndColorVar(const Color4F& color) { _endColorVar = color; }; - //* initial angle of each particle + /** Gets the start spin of each particle. + * + * @return The start spin of each particle. + */ inline float getStartSpin() const { return _startSpin; }; + /** Sets the start spin of each particle. + * + * @param spin The start spin of each particle. + */ inline void setStartSpin(float spin) { _startSpin = spin; }; - //* initial angle of each particle + /** Gets the start spin variance of each particle. + * + * @return The start spin variance of each particle. + */ inline float getStartSpinVar() const { return _startSpinVar; }; + /** Sets the start spin variance of each particle. + * + * @param pinVar The start spin variance of each particle. + */ inline void setStartSpinVar(float pinVar) { _startSpinVar = pinVar; }; - //* initial angle of each particle + /** Gets the end spin of each particle. + * + * @return The end spin of each particle. + */ inline float getEndSpin() const { return _endSpin; }; + /** Sets the end spin of each particle. + * + * @param endSpin The end spin of each particle. + */ inline void setEndSpin(float endSpin) { _endSpin = endSpin; }; - //* initial angle of each particle + /** Gets the end spin variance of each particle. + * + * @return The end spin variance of each particle. + */ inline float getEndSpinVar() const { return _endSpinVar; }; + /** Sets the end spin variance of each particle. + * + * @param endSpinVar The end spin variance of each particle. + */ inline void setEndSpinVar(float endSpinVar) { _endSpinVar = endSpinVar; }; - /** emission rate of the particles */ + /** Gets the emission rate of the particles. + * + * @return The emission rate of the particles. + */ inline float getEmissionRate() const { return _emissionRate; }; + /** Sets the emission rate of the particles. + * + * @param rate The emission rate of the particles. + */ inline void setEmissionRate(float rate) { _emissionRate = rate; }; - /** maximum particles of the system */ + /** Gets the maximum particles of the system. + * + * @return The maximum particles of the system. + */ virtual int getTotalParticles() const; + /** Sets the maximum particles of the system. + * + * @param totalParticles The maximum particles of the system. + */ virtual void setTotalParticles(int totalParticles); /** does the alpha value modify color */ @@ -346,10 +680,17 @@ public: inline bool isOpacityModifyRGB() const override { return _opacityModifyRGB; }; CC_DEPRECATED_ATTRIBUTE inline bool getOpacityModifyRGB() const { return isOpacityModifyRGB(); } - /** particles movement type: Free or Grouped + /** Gets the particles movement type: Free or Grouped. @since v0.8 + * + * @return The particles movement type. */ inline PositionType getPositionType() const { return _positionType; }; + /** Sets the particles movement type: Free or Grouped. + @since v0.8 + * + * @param type The particles movement type. + */ inline void setPositionType(PositionType type) { _positionType = type; }; // Overrides diff --git a/cocos/2d/CCParticleSystemQuad.h b/cocos/2d/CCParticleSystemQuad.h index 918707cb9f..5ccc6c8b18 100644 --- a/cocos/2d/CCParticleSystemQuad.h +++ b/cocos/2d/CCParticleSystemQuad.h @@ -41,35 +41,52 @@ class EventCustom; * @{ */ -/** @brief ParticleSystemQuad is a subclass of ParticleSystem +/** @class ParticleSystemQuad + * @brief ParticleSystemQuad is a subclass of ParticleSystem. It includes all the features of ParticleSystem. Special features and Limitations: - Particle size can be any float number. -- The system can be scaled -- The particles can be rotated -- It supports subrects -- It supports batched rendering since 1.1 +- The system can be scaled. +- The particles can be rotated. +- It supports subrects. +- It supports batched rendering since 1.1. @since v0.8 */ class CC_DLL ParticleSystemQuad : public ParticleSystem { public: - /** creates a Particle Emitter */ + /** Creates a Particle Emitter. + * + * @return An autoreleased ParticleSystemQuad object. + */ static ParticleSystemQuad * create(); - /** creates a Particle Emitter with a number of particles */ + /** Creates a Particle Emitter with a number of particles. + * + * @param numberOfParticles A given number of particles. + * @return An autoreleased ParticleSystemQuad object. + */ static ParticleSystemQuad * createWithTotalParticles(int numberOfParticles); - /** creates an initializes a ParticleSystemQuad from a plist file. - This plist files can be created manually or with Particle Designer: + /** Creates an initializes a ParticleSystemQuad from a plist file. + This plist files can be created manually or with Particle Designer. + * + * @param filename Particle plist file name. + * @return An autoreleased ParticleSystemQuad object. */ static ParticleSystemQuad * create(const std::string& filename); - /** creates a Particle Emitter with a dictionary */ + /** Creates a Particle Emitter with a dictionary. + * + * @param dictionary Particle dictionary. + * @return An autoreleased ParticleSystemQuad object. + */ static ParticleSystemQuad * create(ValueMap &dictionary); /** Sets a new SpriteFrame as particle. WARNING: this method is experimental. Use setTextureWithRect instead. + * + * @param spriteFrame A given sprite frame as particle texture. @since v0.99.4 */ void setDisplayFrame(SpriteFrame *spriteFrame); @@ -78,12 +95,17 @@ public: @since v0.99.4 * @js NA * @lua NA + * + * @param texture A given texture. + 8 @param rect A given rect, in points. */ void setTextureWithRect(Texture2D *texture, const Rect& rect); - /** listen the event that renderer was recreated on Android/WP8 + /** Listen the event that renderer was recreated on Android/WP8. * @js NA * @lua NA + * + * @param event the event that renderer was recreated on Android/WP8. */ void listenRendererRecreated(EventCustom* event); diff --git a/cocos/2d/CCProgressTimer.h b/cocos/2d/CCProgressTimer.h index 061712efe3..7f6d2f48ab 100644 --- a/cocos/2d/CCProgressTimer.h +++ b/cocos/2d/CCProgressTimer.h @@ -34,76 +34,122 @@ NS_CC_BEGIN class Sprite; /** - * @addtogroup misc_nodes + * @addtogroup _2d * @{ */ /** - @brief ProgressTimer is a subclass of Node. - It renders the inner sprite according to the percentage. - The progress can be Radial, Horizontal or vertical. - @since v0.99.1 - */ + * @brief ProgressTimer is a subclass of Node. + * It renders the inner sprite according to the percentage. + * The progress can be Radial, Horizontal or vertical. + * @since v0.99.1 + */ class CC_DLL ProgressTimer : public Node { public: /** Types of progress - @since v0.99.1 + * @since v0.99.1 */ enum class Type { - /// Radial Counter-Clockwise - RADIAL, - /// Bar - BAR, + RADIAL,/** Radial Counter-Clockwise. */ + BAR,/** Bar. */ }; - /** Creates a progress timer with the sprite as the shape the timer goes through */ + /** Creates a progress timer with the sprite as the shape the timer goes through. + * + * @param sp The sprite as the shape the timer goes through. + * @return A ProgressTimer. + */ static ProgressTimer* create(Sprite* sp); - /** Change the percentage to change progress. */ + /** Change the percentage to change progress. + * + * @return A Type + */ inline Type getType() const { return _type; } - /** Percentages are from 0 to 100 */ + /** Percentages are from 0 to 100. + * + * @return Percentages. + */ inline float getPercentage() const {return _percentage; } - /** The image to show the progress percentage, retain */ + /** The image to show the progress percentage, retain. + * + * @return A sprite. + */ inline Sprite* getSprite() const { return _sprite; } - + + /** Set the initial percentage values. + * + * @param percentage The initial percentage values. + */ void setPercentage(float percentage); + + /** Set the sprite as the shape. + * + * @param sprite The sprite as the shape. + */ void setSprite(Sprite *sprite); + + /** Set the ProgressTimer type. + * + * @param type Is an Type. + */ void setType(Type type); - /** + + /** Set the Reverse direction. * @js setReverseDirection * @lua setReverseDirection + * @param reverse If reverse is false it will clockwise,if is true it will Anti-clockwise. */ void setReverseProgress(bool reverse); - + + /** Return the Reverse direction. + * + * @return If the direction is Anti-clockwise,it will return true. + */ inline bool isReverseDirection() { return _reverseDirection; }; + + /** Set the Reverse direction. + * + * @param value If value is false it will clockwise,if is true it will Anti-clockwise. + */ inline void setReverseDirection(bool value) { _reverseDirection = value; }; /** * Midpoint is used to modify the progress start position. - * If you're using radials type then the midpoint changes the center point - * If you're using bar type the the midpoint changes the bar growth + * If you're using radials type then the midpoint changes the center point. + * If you're using bar type the the midpoint changes the bar growth. * it expands from the center but clamps to the sprites edge so: - * you want a left to right then set the midpoint all the way to Vec2(0,y) - * you want a right to left then set the midpoint all the way to Vec2(1,y) - * you want a bottom to top then set the midpoint all the way to Vec2(x,0) - * you want a top to bottom then set the midpoint all the way to Vec2(x,1) + * you want a left to right then set the midpoint all the way to Vec2(0,y). + * you want a right to left then set the midpoint all the way to Vec2(1,y). + * you want a bottom to top then set the midpoint all the way to Vec2(x,0). + * you want a top to bottom then set the midpoint all the way to Vec2(x,1). + * @param point A Vec2 point. */ void setMidpoint(const Vec2& point); - /** Returns the Midpoint */ + + /** Returns the Midpoint. + * + * @return A Vec2. + */ Vec2 getMidpoint() const; /** - * This allows the bar type to move the component at a specific rate + * This allows the bar type to move the component at a specific rate. * Set the component to 0 to make sure it stays at 100%. - * For example you want a left to right bar but not have the height stay 100% - * Set the rate to be Vec2(0,1); and set the midpoint to = Vec2(0,.5f); + * For example you want a left to right bar but not have the height stay 100%. + * Set the rate to be Vec2(0,1); and set the midpoint to = Vec2(0,.5f). + * @param barChangeRate A Vec2. */ inline void setBarChangeRate(const Vec2& barChangeRate ) { _barChangeRate = barChangeRate; } - /** Returns the BarChangeRate */ + + /** Returns the BarChangeRate. + * + * @return A barChangeRate. + */ inline Vec2 getBarChangeRate() const { return _barChangeRate; } // Overrides diff --git a/cocos/2d/CCRenderTexture.h b/cocos/2d/CCRenderTexture.h index f6a83c0ef2..33f64b3b75 100644 --- a/cocos/2d/CCRenderTexture.h +++ b/cocos/2d/CCRenderTexture.h @@ -37,115 +37,227 @@ NS_CC_BEGIN class EventCustom; /** - * @addtogroup textures + * @addtogroup _2d * @{ */ /** -@brief RenderTexture is a generic rendering target. To render things into it, -simply construct a render target, call begin on it, call visit on any cocos -scenes or objects to render them, and call end. For convenience, render texture -adds a sprite as it's display child with the results, so you can simply add -the render texture to your scene and treat it like any other CocosNode. -There are also functions for saving the render texture to disk in PNG or JPG format. - -@since v0.8.1 -*/ + * @brief RenderTexture is a generic rendering target. To render things into it, + * simply construct a render target, call begin on it, call visit on any cocos + * scenes or objects to render them, and call end. For convenience, render texture + * adds a sprite as it's display child with the results, so you can simply add + * the render texture to your scene and treat it like any other CocosNode. + * There are also functions for saving the render texture to disk in PNG or JPG format. + * @since v0.8.1 + */ class CC_DLL RenderTexture : public Node { public: - /** initializes a RenderTexture object with width and height in Points and a pixel format( only RGB and RGBA formats are valid ) and depthStencil format*/ + /** Initializes a RenderTexture object with width and height in Points and a pixel format( only RGB and RGBA formats are valid ) and depthStencil format. + * + * @param w The RenderTexture object width. + * @param h The RenderTexture object height. + * @param format In Points and a pixel format( only RGB and RGBA formats are valid ). + * @param depthStencilFormat The depthStencil format. + */ static RenderTexture * create(int w ,int h, Texture2D::PixelFormat format, GLuint depthStencilFormat); - /** creates a RenderTexture object with width and height in Points and a pixel format, only RGB and RGBA formats are valid */ + /** Creates a RenderTexture object with width and height in Points and a pixel format, only RGB and RGBA formats are valid. + * + * @param w The RenderTexture object width. + * @param h The RenderTexture object height. + * @param format In Points and a pixel format( only RGB and RGBA formats are valid ). + */ static RenderTexture * create(int w, int h, Texture2D::PixelFormat format); - /** creates a RenderTexture object with width and height in Points, pixel format is RGBA8888 */ + /** Creates a RenderTexture object with width and height in Points, pixel format is RGBA8888. + * + * @param w The RenderTexture object width. + * @param h The RenderTexture object height. + */ static RenderTexture * create(int w, int h); - /** starts grabbing */ + /** Starts grabbing. */ virtual void begin(); - /** starts rendering to the texture while clearing the texture first. - This is more efficient then calling -clear first and then -begin */ + /** Starts rendering to the texture while clearing the texture first. + * This is more efficient then calling -clear first and then -begin. + * + * @param r Red. + * @param g Green. + * @param b Blue. + * @param a Alpha. + */ virtual void beginWithClear(float r, float g, float b, float a); - /** starts rendering to the texture while clearing the texture first. - This is more efficient then calling -clear first and then -begin */ + /** Starts rendering to the texture while clearing the texture first. + * This is more efficient then calling -clear first and then -begin. + * + * @param r Red. + * @param g Green. + * @param b Blue. + * @param a Alpha. + */ virtual void beginWithClear(float r, float g, float b, float a, float depthValue); - /** starts rendering to the texture while clearing the texture first. - This is more efficient then calling -clear first and then -begin */ + /** Starts rendering to the texture while clearing the texture first. + * This is more efficient then calling -clear first and then -begin. + * + * @param r Red. + * @param g Green. + * @param b Blue. + * @param a Alpha. + * @param depthValue A specified depth value. + * @param stencilValue A specified stencil value. + */ virtual void beginWithClear(float r, float g, float b, float a, float depthValue, int stencilValue); - /** end is key word of lua, use other name to export to lua. */ + /** End is key word of lua, use other name to export to lua. */ inline void endToLua(){ end();}; - /** ends grabbing*/ + /** Ends grabbing. */ virtual void end(); - /** clears the texture with a color */ + /** Clears the texture with a color. + * + * @param r Red. + * @param g Green. + * @param b Blue. + * @param a Alpha. + */ void clear(float r, float g, float b, float a); - /** clears the texture with a specified depth value */ + /** Clears the texture with a specified depth value. + * + * @param A specified depth value. + */ virtual void clearDepth(float depthValue); - /** clears the texture with a specified stencil value */ - virtual void clearStencil(int stencilValue); - /* creates a new Image from with the texture's data. - Caller is responsible for releasing it by calling delete. + /** Clears the texture with a specified stencil value. + * + * @param A specified stencil value. */ + virtual void clearStencil(int stencilValue); + /* Creates a new Image from with the texture's data. + * Caller is responsible for releasing it by calling delete. + * + * @param flipImage Whether or not to flip image. + * @return An image. + */ Image* newImage(bool flipImage = true); CC_DEPRECATED_ATTRIBUTE Image* newCCImage(bool flipImage = true) { return newImage(flipImage); }; - /** saves the texture into a file using JPEG format. The file will be saved in the Documents folder. - Returns true if the operation is successful. + /** Saves the texture into a file using JPEG format. The file will be saved in the Documents folder. + * Returns true if the operation is successful. + * + * @param filename The file name. + * @param isRGBA The file is RGBA or not. + * @param callback When the file is save finished,it will callback this function. + * @return Returns true if the operation is successful. */ bool saveToFile(const std::string& filename, bool isRGBA = true, std::function callback = nullptr); /** saves the texture into a file. The format could be JPG or PNG. The file will be saved in the Documents folder. Returns true if the operation is successful. + * Notes: since v3.x, saveToFile will generate a custum command, which will be called in the following render->render(). + * So if this function is called in a event handler, the actual save file will be called in the next frame. If we switch to a different scene, the game will crash. + * To solve this, add Director::getInstance()->getRenderer()->render(); after this function. + * + * @param filename The file name. + * @param format The image format. + * @param isRGBA The file is RGBA or not. + * @param callback When the file is save finished,it will callback this function. + * @return Returns true if the operation is successful. */ bool saveToFile(const std::string& filename, Image::Format format, bool isRGBA = true, std::function callback = nullptr); /** Listen "come to background" message, and save render texture. - It only has effect on Android. + * It only has effect on Android. + * + * @param event Event Custom. */ void listenToBackground(EventCustom *event); - /** Listen "come to foreground" message and restore the frame buffer object - It only has effect on Android. + /** Listen "come to foreground" message and restore the frame buffer object. + * It only has effect on Android. + * + * @param event Event Custom. */ void listenToForeground(EventCustom *event); - /** Valid flags: GL_COLOR_BUFFER_BIT, GL_DEPTH_BUFFER_BIT, GL_STENCIL_BUFFER_BIT. They can be OR'ed. Valid when "autoDraw" is true. */ + /** Valid flags: GL_COLOR_BUFFER_BIT, GL_DEPTH_BUFFER_BIT, GL_STENCIL_BUFFER_BIT. They can be OR'ed. Valid when "autoDraw" is true. + * + * @return Clear flags. + */ inline unsigned int getClearFlags() const { return _clearFlags; }; + + /** Set flags. + * + * @param clearFlags Valid flags: GL_COLOR_BUFFER_BIT, GL_DEPTH_BUFFER_BIT, GL_STENCIL_BUFFER_BIT. + */ inline void setClearFlags(unsigned int clearFlags) { _clearFlags = clearFlags; }; - /** Clear color value. Valid only when "autoDraw" is true. */ + /** Clear color value. Valid only when "autoDraw" is true. + * + * @return Color value. + */ inline const Color4F& getClearColor() const { return _clearColor; }; + + /** Set color value. + * + * @param clearColor Color value. + */ inline void setClearColor(const Color4F &clearColor) { _clearColor = clearColor; }; - /** Value for clearDepth. Valid only when "autoDraw" is true. */ + /** Value for clearDepth. Valid only when "autoDraw" is true. + * + * @return Value for clearDepth. + */ inline float getClearDepth() const { return _clearDepth; }; + + /** Set Value for clearDepth. + * + * @param clearDepth Value for clearDepth. + */ inline void setClearDepth(float clearDepth) { _clearDepth = clearDepth; }; - /** Value for clear Stencil. Valid only when "autoDraw" is true */ + /** Value for clear Stencil. Valid only when "autoDraw" is true. + * + * @return Value for clear Stencil. + */ inline int getClearStencil() const { return _clearStencil; }; + + /** Set Value for clear Stencil. + * + * @param clearStencil Value for clear Stencil. + */ inline void setClearStencil(int clearStencil) { _clearStencil = clearStencil; }; /** When enabled, it will render its children into the texture automatically. Disabled by default for compatiblity reasons. - Will be enabled in the future. + * Will be enabled in the future. + * + * @return Return the autoDraw value. */ inline bool isAutoDraw() const { return _autoDraw; }; + + /** Set a valve to control whether or not render its children into the texture automatically. + * + * @param isAutoDraw Whether or not render its children into the texture automatically. + */ inline void setAutoDraw(bool isAutoDraw) { _autoDraw = isAutoDraw; }; - /** Gets the Sprite being used. */ + /** Gets the Sprite being used. + * + * @return A Sprite. + */ inline Sprite* getSprite() const { return _sprite; }; - /** Sets the Sprite being used. */ + /** Sets the Sprite being used. + * + * @param A Sprite. + */ inline void setSprite(Sprite* sprite) { CC_SAFE_RETAIN(sprite); CC_SAFE_RELEASE(_sprite); @@ -156,24 +268,41 @@ public: virtual void visit(Renderer *renderer, const Mat4 &parentTransform, uint32_t parentFlags) override; virtual void draw(Renderer *renderer, const Mat4 &transform, uint32_t flags) override; - //flag: use stack matrix computed from scene hierarchy or generate new modelView and projection matrix + /** Flag: Use stack matrix computed from scene hierarchy or generate new modelView and projection matrix. + * + * @param keepMatrix Wether or not use stack matrix computed from scene hierarchy or generate new modelView and projection matrix. + */ void setKeepMatrix(bool keepMatrix); /**Used for grab part of screen to a texture. - //rtBegin: the position of renderTexture on the fullRect - //fullRect: the total size of screen - //fullViewport: the total viewportSize - */ + * @param rtBegin The position of renderTexture on the fullRect. + * @param fullRect The total size of screen. + * @param fullViewport The total viewportSize. + */ void setVirtualViewport(const Vec2& rtBegin, const Rect& fullRect, const Rect& fullViewport); public: - // FIXME: should be procted. - // but due to a bug in PowerVR + Android, - // the constructor is public again + /** FIXME: should be procted. + * but due to a bug in PowerVR + Android, + * the constructor is public again. + */ RenderTexture(); virtual ~RenderTexture(); - /** initializes a RenderTexture object with width and height in Points and a pixel format, only RGB and RGBA formats are valid */ + /** Initializes a RenderTexture object with width and height in Points and a pixel format, only RGB and RGBA formats are valid. + * + * @param w The RenderTexture object width. + * @param h The RenderTexture object height. + * @param format In Points and a pixel format( only RGB and RGBA formats are valid ). + * @return If successed,it will return true. + */ bool initWithWidthAndHeight(int w, int h, Texture2D::PixelFormat format); - /** initializes a RenderTexture object with width and height in Points and a pixel format( only RGB and RGBA formats are valid ) and depthStencil format*/ + /** Initializes a RenderTexture object with width and height in Points and a pixel format( only RGB and RGBA formats are valid ) and depthStencil format. + * + * @param w The RenderTexture object width. + * @param h The RenderTexture object height. + * @param format In Points and a pixel format( only RGB and RGBA formats are valid ). + * @param depthStencilFormat The depthStencil format. + * @return If successed,it will return true. + */ bool initWithWidthAndHeight(int w, int h, Texture2D::PixelFormat format, GLuint depthStencilFormat); protected: diff --git a/cocos/2d/CCScene.h b/cocos/2d/CCScene.h index 95fd68f0d7..e0ffa2a010 100644 --- a/cocos/2d/CCScene.h +++ b/cocos/2d/CCScene.h @@ -72,6 +72,7 @@ public: * * @param size The predefined size of scene. * @return An autoreleased Scene object. + * @js NA */ static Scene *createWithSize(const Size& size); @@ -81,24 +82,25 @@ public: /** Get all cameras. * * @return The vector of all cameras. + * @js NA */ const std::vector& getCameras() const { return _cameras; } /** Get the default camera. - * + * @js NA * @return The default camera of scene. */ Camera* getDefaultCamera() const { return _defaultCamera; } /** Get lights. - * * @return The vector of lights. + * @js NA */ const std::vector& getLights() const { return _lights; } /** Render the scene. - * * @param renderer The renderer use to render the scene. + * @js NA */ void render(Renderer* renderer); @@ -139,14 +141,14 @@ public: virtual void addChild(Node* child, int zOrder, int tag) override; virtual void addChild(Node* child, int zOrder, const std::string &name) override; /** Get the physics world of the scene. - * * @return The physics world of the scene. + * @js NA */ inline PhysicsWorld* getPhysicsWorld() { return _physicsWorld; } /** Create a scene with physics. - * * @return An autoreleased Scene object with physics. + * @js NA */ static Scene *createWithPhysics(); diff --git a/cocos/2d/CCSpriteBatchNode.h b/cocos/2d/CCSpriteBatchNode.h index 8c627bb909..989dbd2100 100644 --- a/cocos/2d/CCSpriteBatchNode.h +++ b/cocos/2d/CCSpriteBatchNode.h @@ -39,7 +39,7 @@ THE SOFTWARE. NS_CC_BEGIN /** - * @addtogroup sprite_nodes + * @addtogroup _2d * @{ */ @@ -47,41 +47,55 @@ NS_CC_BEGIN class Sprite; /** SpriteBatchNode is like a batch node: if it contains children, it will draw them in 1 single OpenGL call -* (often known as "batch draw"). -* -* A SpriteBatchNode can reference one and only one texture (one image file, one texture atlas). -* Only the Sprites that are contained in that texture can be added to the SpriteBatchNode. -* All Sprites added to a SpriteBatchNode are drawn in one OpenGL ES draw call. -* If the Sprites are not added to a SpriteBatchNode then an OpenGL ES draw call will be needed for each one, which is less efficient. -* -* -* Limitations: -* - The only object that is accepted as child (or grandchild, grand-grandchild, etc...) is Sprite or any subclass of Sprite. eg: particles, labels and layer can't be added to a SpriteBatchNode. -* - Either all its children are Aliased or Antialiased. It can't be a mix. This is because "alias" is a property of the texture, and all the sprites share the same texture. -* -* @since v0.7.1 -*/ + * (often known as "batch draw"). + * + * A SpriteBatchNode can reference one and only one texture (one image file, one texture atlas). + * Only the Sprites that are contained in that texture can be added to the SpriteBatchNode. + * All Sprites added to a SpriteBatchNode are drawn in one OpenGL ES draw call. + * If the Sprites are not added to a SpriteBatchNode then an OpenGL ES draw call will be needed for each one, which is less efficient. + * + * + * Limitations: + * - The only object that is accepted as child (or grandchild, grand-grandchild, etc...) is Sprite or any subclass of Sprite. eg: particles, labels and layer can't be added to a SpriteBatchNode. + * - Either all its children are Aliased or Antialiased. It can't be a mix. This is because "alias" is a property of the texture, and all the sprites share the same texture. + * + * @since v0.7.1 + */ class CC_DLL SpriteBatchNode : public Node, public TextureProtocol { static const int DEFAULT_CAPACITY = 29; public: - /** creates a SpriteBatchNode with a texture2d and capacity of children. - The capacity will be increased in 33% in runtime if it runs out of space. + /** Creates a SpriteBatchNode with a texture2d and capacity of children. + * The capacity will be increased in 33% in runtime if it runs out of space. + * + * @param tex A texture2d. + * @param capacity The capacity of children. + * @return Return an autorelease object. */ static SpriteBatchNode* createWithTexture(Texture2D* tex, ssize_t capacity = DEFAULT_CAPACITY); - /** creates a SpriteBatchNode with a file image (.png, .jpeg, .pvr, etc) and capacity of children. - The capacity will be increased in 33% in runtime if it runs out of space. - The file will be loaded using the TextureMgr. + /** Creates a SpriteBatchNode with a file image (.png, .jpeg, .pvr, etc) and capacity of children. + * The capacity will be increased in 33% in runtime if it runs out of space. + * The file will be loaded using the TextureMgr. + * + * @param fileImage A file image (.png, .jpeg, .pvr, etc). + * @param capacity The capacity of children. + * @return Return an autorelease object. */ static SpriteBatchNode* create(const std::string& fileImage, ssize_t capacity = DEFAULT_CAPACITY); - /** returns the TextureAtlas object */ + /** Returns the TextureAtlas object. + * + * @return The TextureAtlas object. + */ inline TextureAtlas* getTextureAtlas() { return _textureAtlas; } - /** sets the TextureAtlas object */ + /** Sets the TextureAtlas object. + * + * @param textureAtlas The TextureAtlas object. + */ inline void setTextureAtlas(TextureAtlas* textureAtlas) { if (textureAtlas != _textureAtlas) @@ -92,25 +106,66 @@ public: } } - /** returns an array with the descendants (children, gran children, etc.). - This is specific to BatchNode. In order to use the children, use getChildren() instead */ + /** Returns an array with the descendants (children, gran children, etc.). + * This is specific to BatchNode. In order to use the children, use getChildren() instead. + * + * @return An array with the descendants (children, gran children, etc.). + */ inline const std::vector& getDescendants() const { return _descendants; } + /** Increase the Atlas Capacity. */ void increaseAtlasCapacity(); - /** removes a child given a certain index. It will also cleanup the running actions depending on the cleanup parameter. - @warning Removing a child from a SpriteBatchNode is very slow - */ + /** Removes a child given a certain index. It will also cleanup the running actions depending on the cleanup parameter. + * + * @param index A certain index. + * @param doCleanup Whether or not to cleanup the running actions. + * @warning Removing a child from a SpriteBatchNode is very slow. + */ void removeChildAtIndex(ssize_t index, bool doCleanup); - + + /** Append the child. + * + * @param sprite A Sprite. + */ void appendChild(Sprite* sprite); + + /** Remove a sprite from Atlas. + * + * @param sprite A Sprite. + */ void removeSpriteFromAtlas(Sprite *sprite); - + + /** Rebuild index with a sprite all child. + * + * @param parent The parent sprite. + * @param index The child index. + * @return Index. + */ ssize_t rebuildIndexInOrder(Sprite *parent, ssize_t index); + + /** Get the Max image block index,in all child. + * + * @param sprite The parent sprite. + * @return Index. + */ ssize_t highestAtlasIndexInChild(Sprite *sprite); + + /** Get the Min image block index,in all child. + * + * @param sprite The parent sprite. + * @return Index. + */ ssize_t lowestAtlasIndexInChild(Sprite *sprite); + + /** Get the nearest index from the sprite in z. + * + * @param sprite The parent sprite. + * @param z Z order for drawing priority. + * @return Index. + */ ssize_t atlasIndexForChild(Sprite *sprite, int z); - /* Sprites use this to start sortChildren, don't call this manually */ + /* Sprites use this to start sortChildren, don't call this manually. */ void reorderBatch(bool reorder); // @@ -121,9 +176,9 @@ public: virtual void setTexture(Texture2D *texture) override; /** *@code - *When this function bound into js or lua,the parameter will be changed - *In js: var setBlendFunc(var src, var dst) - *@endcode + * When this function bound into js or lua,the parameter will be changed. + * In js: var setBlendFunc(var src, var dst). + * @endcode * @lua NA */ virtual void setBlendFunc(const BlendFunc &blendFunc) override; @@ -147,13 +202,13 @@ public: virtual std::string getDescription() const override; /** Inserts a quad at a certain index into the texture atlas. The Sprite won't be added into the children array. - This method should be called only when you are dealing with very big AtlasSrite and when most of the Sprite won't be updated. - For example: a tile map (TMXMap) or a label with lots of characters (LabelBMFont) + * This method should be called only when you are dealing with very big AtlasSrite and when most of the Sprite won't be updated. + * For example: a tile map (TMXMap) or a label with lots of characters (LabelBMFont). */ void insertQuadFromSprite(Sprite *sprite, ssize_t index); /* This is the opposite of "addQuadFromSprite. - It add the sprite to the children and descendants array, but it doesn't update add it to the texture atlas - */ + * It add the sprite to the children and descendants array, but it doesn't update add it to the texture atlas + */ SpriteBatchNode * addSpriteWithoutQuad(Sprite *child, int z, int aTag); CC_CONSTRUCTOR_ACCESS: @@ -202,7 +257,7 @@ protected: }; // end of sprite_nodes group -/// @} +/** @} */ NS_CC_END diff --git a/cocos/2d/CCSpriteFrameCache.h b/cocos/2d/CCSpriteFrameCache.h index c5a0cfe880..6e1d40282c 100644 --- a/cocos/2d/CCSpriteFrameCache.h +++ b/cocos/2d/CCSpriteFrameCache.h @@ -55,6 +55,7 @@ class Texture2D; * @brief Singleton that handles the loading of the sprite frames. It saves in a cache the sprite frames. @since v0.9 + @js cc.spriteFrameCache */ class CC_DLL SpriteFrameCache : public Ref { @@ -62,17 +63,23 @@ public: /** Returns the shared instance of the Sprite Frame cache. * * @return The instance of the Sprite Frame Cache. + * @js NA */ static SpriteFrameCache* getInstance(); - /** @deprecated Use getInstance() instead */ + /** @deprecated Use getInstance() instead + @js NA + */ CC_DEPRECATED_ATTRIBUTE static SpriteFrameCache* sharedSpriteFrameCache() { return SpriteFrameCache::getInstance(); } /** Destroys the cache. It releases all the Sprite Frames and the retained instance. + * @js NA */ static void destroyInstance(); - /** @deprecated Use destroyInstance() instead */ + /** @deprecated Use destroyInstance() instead + * @js NA + */ CC_DEPRECATED_ATTRIBUTE static void purgeSharedSpriteFrameCache() { return SpriteFrameCache::destroyInstance(); } /** Destructor. @@ -117,7 +124,7 @@ public: void addSpriteFramesWithFile(const std::string&plist, Texture2D *texture); /** Adds multiple Sprite Frames from a plist file content. The texture will be associated with the created sprite frames. - * @js addSpriteFrames + * @js NA * @lua addSpriteFrames * * @param plist_content Plist file content string. @@ -144,6 +151,7 @@ public: /** Removes unused sprite frames. * Sprite Frames that have a retain count of 1 will be deleted. * It is convenient to call this method after when starting a new Scene. + * @js NA */ void removeUnusedSpriteFrames(); @@ -167,6 +175,7 @@ public: * It is convenient to call this method when a specific texture needs to be removed. * * @param plist_content The string of the plist content that needs to removed. + * @js NA */ void removeSpriteFramesFromFileContent(const std::string& plist_content); diff --git a/cocos/2d/CCTMXLayer.h b/cocos/2d/CCTMXLayer.h index d915c61753..32a7b3a7b4 100644 --- a/cocos/2d/CCTMXLayer.h +++ b/cocos/2d/CCTMXLayer.h @@ -38,43 +38,40 @@ class TMXTilesetInfo; struct _ccCArray; /** - * @addtogroup tilemap_parallax_nodes + * @addtogroup _2d * @{ */ /** @brief TMXLayer represents the TMX layer. - -It is a subclass of SpriteBatchNode. By default the tiles are rendered using a TextureAtlas. -If you modify a tile on runtime, then, that tile will become a Sprite, otherwise no Sprite objects are created. -The benefits of using Sprite objects as tiles are: -- tiles (Sprite) can be rotated/scaled/moved with a nice API - -If the layer contains a property named "cc_vertexz" with an integer (in can be positive or negative), -then all the tiles belonging to the layer will use that value as their OpenGL vertex Z for depth. - -On the other hand, if the "cc_vertexz" property has the "automatic" value, then the tiles will use an automatic vertex Z value. -Also before drawing the tiles, GL_ALPHA_TEST will be enabled, and disabled after drawing them. The used alpha func will be: - -glAlphaFunc( GL_GREATER, value ) - -"value" by default is 0, but you can change it from Tiled by adding the "cc_alpha_func" property to the layer. -The value 0 should work for most cases, but if you have tiles that are semi-transparent, then you might want to use a different -value, like 0.5. - -For further information, please see the programming guide: - -http://www.cocos2d-iphone.org/wiki/doku.php/prog_guide:tiled_maps - -@since v0.8.1 -Tiles can have tile flags for additional properties. At the moment only flip horizontal and flip vertical are used. These bit flags are defined in TMXXMLParser.h. - -@since 1.1 -*/ + * It is a subclass of SpriteBatchNode. By default the tiles are rendered using a TextureAtlas. + * If you modify a tile on runtime, then, that tile will become a Sprite, otherwise no Sprite objects are created. + * The benefits of using Sprite objects as tiles are: + * - tiles (Sprite) can be rotated/scaled/moved with a nice API. + * If the layer contains a property named "cc_vertexz" with an integer (in can be positive or negative), + * then all the tiles belonging to the layer will use that value as their OpenGL vertex Z for depth. + * On the other hand, if the "cc_vertexz" property has the "automatic" value, then the tiles will use an automatic vertex Z value. + * Also before drawing the tiles, GL_ALPHA_TEST will be enabled, and disabled after drawing them. The used alpha func will be: + * glAlphaFunc( GL_GREATER, value ). + * "value" by default is 0, but you can change it from Tiled by adding the "cc_alpha_func" property to the layer. + * The value 0 should work for most cases, but if you have tiles that are semi-transparent, then you might want to use a different + * value, like 0.5. + * For further information, please see the programming guide: + * http://www.cocos2d-iphone.org/wiki/doku.php/prog_guide:tiled_maps + * @since v0.8.1 + * Tiles can have tile flags for additional properties. At the moment only flip horizontal and flip vertical are used. These bit flags are defined in TMXXMLParser.h. + * @since 1.1 + */ class CC_DLL TMXLayer : public SpriteBatchNode { public: - /** creates a TMXLayer with an tileset info, a layer info and a map info */ + /** Creates a TMXLayer with an tileset info, a layer info and a map info. + * + * @param tilesetInfo An tileset info. + * @param layerInfo A layer info. + * @param mapInfo A map info. + * @return An autorelease object. + */ static TMXLayer * create(TMXTilesetInfo *tilesetInfo, TMXLayerInfo *layerInfo, TMXMapInfo *mapInfo); /** * @js ctor @@ -86,95 +83,185 @@ public: */ virtual ~TMXLayer(); - /** initializes a TMXLayer with a tileset info, a layer info and a map info */ + /** Initializes a TMXLayer with a tileset info, a layer info and a map info. + * + * @param tilesetInfo An tileset info. + * @param layerInfo A layer info. + * @param mapInfo A map info. + * @return If initializes success,it will return true. + */ bool initWithTilesetInfo(TMXTilesetInfo *tilesetInfo, TMXLayerInfo *layerInfo, TMXMapInfo *mapInfo); - /** dealloc the map that contains the tile position from memory. - Unless you want to know at runtime the tiles positions, you can safely call this method. - If you are going to call layer->tileGIDAt() then, don't release the map - */ + /** Dealloc the map that contains the tile position from memory. + * Unless you want to know at runtime the tiles positions, you can safely call this method. + * If you are going to call layer->tileGIDAt() then, don't release the map. + */ void releaseMap(); - /** returns the tile (Sprite) at a given a tile coordinate. - The returned Sprite will be already added to the TMXLayer. Don't add it again. - The Sprite can be treated like any other Sprite: rotated, scaled, translated, opacity, color, etc. - You can remove either by calling: - - layer->removeChild(sprite, cleanup); - - or layer->removeTileAt(Vec2(x,y)); - */ + /** Returns the tile (Sprite) at a given a tile coordinate. + * The returned Sprite will be already added to the TMXLayer. Don't add it again. + * The Sprite can be treated like any other Sprite: rotated, scaled, translated, opacity, color, etc. + * You can remove either by calling: + * - layer->removeChild(sprite, cleanup); + * - or layer->removeTileAt(Vec2(x,y)); + * + * @param tileCoordinate A tile coordinate. + * @return Returns the tile (Sprite) at a given a tile coordinate. + */ Sprite* getTileAt(const Vec2& tileCoordinate); CC_DEPRECATED_ATTRIBUTE Sprite* tileAt(const Vec2& tileCoordinate) { return getTileAt(tileCoordinate); }; - /** returns the tile gid at a given tile coordinate. It also returns the tile flags. - This method requires the the tile map has not been previously released (eg. don't call [layer releaseMap]) + /** Returns the tile gid at a given tile coordinate. It also returns the tile flags. + * This method requires the the tile map has not been previously released (eg. don't call [layer releaseMap]). + * + * @param tileCoordinate The tile coordinate. + * @param flags Tile flags. + * @return Returns the tile gid at a given tile coordinate. It also returns the tile flags. */ uint32_t getTileGIDAt(const Vec2& tileCoordinate, TMXTileFlags* flags = nullptr); CC_DEPRECATED_ATTRIBUTE uint32_t tileGIDAt(const Vec2& tileCoordinate, TMXTileFlags* flags = nullptr){ return getTileGIDAt(tileCoordinate, flags); }; - /** sets the tile gid (gid = tile global id) at a given tile coordinate. - The Tile GID can be obtained by using the method "tileGIDAt" or by using the TMX editor -> Tileset Mgr +1. - If a tile is already placed at that position, then it will be removed. - */ + /** Sets the tile gid (gid = tile global id) at a given tile coordinate. + * The Tile GID can be obtained by using the method "tileGIDAt" or by using the TMX editor -> Tileset Mgr +1. + * If a tile is already placed at that position, then it will be removed. + * + * @param gid The tile gid. + * @param tileCoordinate The tile coordinate. + */ void setTileGID(uint32_t gid, const Vec2& tileCoordinate); - /** sets the tile gid (gid = tile global id) at a given tile coordinate. - The Tile GID can be obtained by using the method "tileGIDAt" or by using the TMX editor -> Tileset Mgr +1. - If a tile is already placed at that position, then it will be removed. - - Use withFlags if the tile flags need to be changed as well + /** Sets the tile gid (gid = tile global id) at a given tile coordinate. + * The Tile GID can be obtained by using the method "tileGIDAt" or by using the TMX editor -> Tileset Mgr +1. + * If a tile is already placed at that position, then it will be removed. + * Use withFlags if the tile flags need to be changed as well. + * + * @param gid The tile gid. + * @param tileCoordinate The tile coordinate. + * @param flags The tile flags. */ void setTileGID(uint32_t gid, const Vec2& tileCoordinate, TMXTileFlags flags); - /** removes a tile at given tile coordinate */ + /** Removes a tile at given tile coordinate. + * + * @param tileCoordinate The tile coordinate. + */ void removeTileAt(const Vec2& tileCoordinate); - /** returns the position in points of a given tile coordinate */ + /** Returns the position in points of a given tile coordinate. + * + * @param tileCoordinate The tile coordinate. + * @return The position in points of a given tile coordinate. + */ Vec2 getPositionAt(const Vec2& tileCoordinate); CC_DEPRECATED_ATTRIBUTE Vec2 positionAt(const Vec2& tileCoordinate) { return getPositionAt(tileCoordinate); }; - /** return the value for the specific property name */ + /** Return the value for the specific property name. + * + * @param propertyName The specific property name. + * @return Return the value for the specific property name. + */ Value getProperty(const std::string& propertyName) const; CC_DEPRECATED_ATTRIBUTE Value propertyNamed(const std::string& propertyName) const { return getProperty(propertyName); }; - /** Creates the tiles */ + /** Creates the tiles. */ void setupTiles(); - + + /** Get the layer name. + * + * @return The layer name. + */ inline const std::string& getLayerName(){ return _layerName; } + + /** Set the layer name. + * + * @param layerName The layer name. + */ inline void setLayerName(const std::string& layerName){ _layerName = layerName; } - /** size of the layer in tiles */ + /** Size of the layer in tiles. + * + * @return Size of the layer in tiles. + */ inline const Size& getLayerSize() const { return _layerSize; }; + + /** Set size of the layer in tiles. + * + * @param size Size of the layer in tiles. + */ inline void setLayerSize(const Size& size) { _layerSize = size; }; - /** size of the map's tile (could be different from the tile's size) */ + /** Size of the map's tile (could be different from the tile's size). + * + * @return The size of the map's tile. + */ inline const Size& getMapTileSize() const { return _mapTileSize; }; + + /** Set the size of the map's tile. + * + * @param size The size of the map's tile. + */ inline void setMapTileSize(const Size& size) { _mapTileSize = size; }; - /** pointer to the map of tiles + /** Pointer to the map of tiles. * @js NA * @lua NA + * @return Pointer to the map of tiles. */ uint32_t* getTiles() const { return _tiles; }; + + /** Set a pointer to the map of tiles. + * + * @param tiles A pointer to the map of tiles. + */ void setTiles(uint32_t* tiles) { _tiles = tiles; }; - /** Tileset information for the layer */ + /** Tileset information for the layer. + * + * @return Tileset information for the layer. + */ inline TMXTilesetInfo* getTileSet() const { return _tileSet; }; + + /** Set tileset information for the layer. + * + * @param The tileset information for the layer. + */ inline void setTileSet(TMXTilesetInfo* info) { CC_SAFE_RETAIN(info); CC_SAFE_RELEASE(_tileSet); _tileSet = info; }; - /** Layer orientation, which is the same as the map orientation */ + /** Layer orientation, which is the same as the map orientation. + * + * @return Layer orientation, which is the same as the map orientation. + */ inline int getLayerOrientation() const { return _layerOrientation; }; + + /** Set layer orientation, which is the same as the map orientation. + * + * @param orientation Layer orientation,which is the same as the map orientation. + */ inline void setLayerOrientation(int orientation) { _layerOrientation = orientation; }; - /** properties from the layer. They can be added using Tiled */ + /** Properties from the layer. They can be added using Tiled. + * + * @return Properties from the layer. They can be added using Tiled. + */ inline const ValueMap& getProperties() const { return _properties; }; + + /** Properties from the layer. They can be added using Tiled. + * + * @return Properties from the layer. They can be added using Tiled. + */ inline ValueMap& getProperties() { return _properties; }; + + /** Set an Properties from to layer. + * + * @param properties It is used to set the layer Properties. + */ inline void setProperties(const ValueMap& properties) { _properties = properties; }; @@ -244,7 +331,7 @@ protected: }; // end of tilemap_parallax_nodes group -/// @} +/** @} */ NS_CC_END diff --git a/cocos/2d/CCTMXObjectGroup.h b/cocos/2d/CCTMXObjectGroup.h index a1c5938435..b77580b85c 100644 --- a/cocos/2d/CCTMXObjectGroup.h +++ b/cocos/2d/CCTMXObjectGroup.h @@ -35,13 +35,13 @@ THE SOFTWARE. NS_CC_BEGIN /** - * @addtogroup tilemap_parallax_nodes + * @addtogroup _2d * @{ */ /** @brief TMXObjectGroup represents the TMX object group. -@since v0.99.0 -*/ + * @since v0.99.0 + */ class CC_DLL TMXObjectGroup : public Ref { public: @@ -54,42 +54,75 @@ public: * @lua NA */ virtual ~TMXObjectGroup(); - + + /** Get the group name. + * + * @return The group name. + */ inline const std::string& getGroupName() const { return _groupName; } + + /** Set the group name. + * + * @param groupname A string,it is used to set the group name. + */ inline void setGroupName(const std::string& groupName){ _groupName = groupName; } - /** return the value for the specific property name */ + /** Return the value for the specific property name. + * + * @param propertyName The specific property name. + * @return Return the value for the specific property name. + */ Value getProperty(const std::string& propertyName) const; CC_DEPRECATED_ATTRIBUTE Value propertyNamed(const std::string& propertyName) const { return getProperty(propertyName); }; - /** return the dictionary for the specific object name. - It will return the 1st object found on the array for the given name. - */ + /** Return the dictionary for the specific object name. + * It will return the 1st object found on the array for the given name. + * + * @return Return the dictionary for the specific object name. + */ ValueMap getObject(const std::string& objectName) const; CC_DEPRECATED_ATTRIBUTE ValueMap objectNamed(const std::string& objectName) const { return getObject(objectName); }; - /** Gets the offset position of child objects */ + /** Gets the offset position of child objects. + * + * @return The offset position of child objects. + */ inline const Vec2& getPositionOffset() const { return _positionOffset; }; - /** Sets the offset position of child objects */ + /** Sets the offset position of child objects. + * + * @param offset The offset position of child objects. + */ inline void setPositionOffset(const Vec2& offset) { _positionOffset = offset; }; - /** Gets the list of properties stored in a dictionary */ + /** Gets the list of properties stored in a dictionary. + * + * @return The list of properties stored in a dictionary. + */ inline const ValueMap& getProperties() const { return _properties; }; inline ValueMap& getProperties() { return _properties; }; - /** Sets the list of properties */ + /** Sets the list of properties. + * + * @param properties The list of properties. + */ inline void setProperties(const ValueMap& properties) { _properties = properties; }; - /** Gets the array of the objects */ + /** Gets the array of the objects. + * + * @return The array of the objects. + */ inline const ValueVector& getObjects() const { return _objects; }; inline ValueVector& getObjects() { return _objects; }; - /** Sets the array of the objects */ + /** Sets the array of the objects. + * + * @param objects The array of the objects. + */ inline void setObjects(const ValueVector& objects) { _objects = objects; }; @@ -106,7 +139,7 @@ protected: }; // end of tilemap_parallax_nodes group -/// @} +/** @} */ NS_CC_END diff --git a/cocos/2d/CCTransition.h b/cocos/2d/CCTransition.h index 8a28b1addf..b56f11e8be 100644 --- a/cocos/2d/CCTransition.h +++ b/cocos/2d/CCTransition.h @@ -45,26 +45,33 @@ class ActionInterval; class Node; class NodeGrid; -/** @brief TransitionEaseScene can ease the actions of the scene protocol. +/** @class TransitionEaseScene + * @brief TransitionEaseScene can ease the actions of the scene protocol. @since v0.8.2 */ class CC_DLL TransitionEaseScene// : public Ref { public: + /** Constructor. + */ virtual ~TransitionEaseScene() {} - /** returns the Ease action that will be performed on a linear action. + /** Returns the Ease action that will be performed on a linear action. @since v0.8.2 - */ + * + * @param action A given interval action. + * @return The Ease action that will be performed on a linear action. + */ virtual ActionInterval * easeActionWithAction(ActionInterval * action) = 0; }; -/** @brief Base class for Transition scenes +/** @class TransitionScene + * @brief Base class for Transition scenes. */ class CC_DLL TransitionScene : public Scene { public: - /** Orientation Type used by some transitions + /** Orientation Type used by some transitions. */ enum class Orientation { @@ -78,13 +85,20 @@ public: DOWN_OVER = 1, }; - /** creates a base transition with duration and incoming scene */ + /** Creates a base transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @return A autoreleased TransitionScene object. + */ static TransitionScene * create(float t, Scene *scene); - /** called after the transition finishes */ + /** Called after the transition finishes. + */ void finish(void); - /** used by some transitions to hide the outer scene */ + /** Used by some transitions to hide the outer scene. + */ void hideOutShowIn(void); // @@ -116,13 +130,20 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(TransitionScene); }; -/** @brief A Transition that supports orientation like. -* Possible orientation: LeftOver, RightOver, UpOver, DownOver -*/ +/** @class TransitionSceneOriented + * @brief A Transition that supports orientation like. + * Possible orientation: LeftOver, RightOver, UpOver, DownOver + */ class CC_DLL TransitionSceneOriented : public TransitionScene { public: - /** creates a base transition with duration and incoming scene */ + /** Creates a transition with duration, incoming scene and orientation. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @param orientation A given orientation: LeftOver, RightOver, UpOver, DownOver. + * @return A autoreleased TransitionSceneOriented object. + */ static TransitionSceneOriented * create(float t,Scene* scene, Orientation orientation); CC_CONSTRUCTOR_ACCESS: @@ -139,12 +160,19 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(TransitionSceneOriented); }; -/** @brief TransitionRotoZoom: +/** @class TransitionRotoZoom + * @brief TransitionRotoZoom: Rotate and zoom out the outgoing scene, and then rotate and zoom in the incoming */ class CC_DLL TransitionRotoZoom : public TransitionScene { public: + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @return A autoreleased TransitionRotoZoom object. + */ static TransitionRotoZoom* create(float t, Scene* scene); // @@ -161,12 +189,19 @@ private: }; -/** @brief TransitionJumpZoom: +/** @class TransitionJumpZoom + * @brief TransitionJumpZoom: Zoom out and jump the outgoing scene, and then jump and zoom in the incoming */ class CC_DLL TransitionJumpZoom : public TransitionScene { public: + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @return A autoreleased TransitionJumpZoom object. + */ static TransitionJumpZoom* create(float t, Scene* scene); // @@ -182,15 +217,25 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(TransitionJumpZoom); }; -/** @brief TransitionMoveInL: +/** @class TransitionMoveInL + * @brief TransitionMoveInL: Move in from to the left the incoming scene. */ class CC_DLL TransitionMoveInL : public TransitionScene, public TransitionEaseScene { public: + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @return A autoreleased TransitionMoveInL object. + */ static TransitionMoveInL* create(float t, Scene* scene); - /** returns the action that will be performed */ + /** Returns the action that will be performed. + * + * @return The action that will be performed. + */ virtual ActionInterval* action(void); virtual ActionInterval* easeActionWithAction(ActionInterval * action) override; @@ -212,12 +257,19 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(TransitionMoveInL); }; -/** @brief TransitionMoveInR: +/** @class TransitionMoveInR + * @brief TransitionMoveInR: Move in from to the right the incoming scene. */ class CC_DLL TransitionMoveInR : public TransitionMoveInL { public: + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @return A autoreleased TransitionMoveInR object. + */ static TransitionMoveInR* create(float t, Scene* scene); CC_CONSTRUCTOR_ACCESS: @@ -231,12 +283,19 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(TransitionMoveInR); }; -/** @brief TransitionMoveInT: +/** @class TransitionMoveInT + * @brief TransitionMoveInT: Move in from to the top the incoming scene. */ class CC_DLL TransitionMoveInT : public TransitionMoveInL { public: + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @return A autoreleased TransitionMoveInT object. + */ static TransitionMoveInT* create(float t, Scene* scene); CC_CONSTRUCTOR_ACCESS: @@ -250,12 +309,19 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(TransitionMoveInT); }; -/** @brief TransitionMoveInB: +/** @class TransitionMoveInB + * @brief TransitionMoveInB: Move in from to the bottom the incoming scene. */ class CC_DLL TransitionMoveInB : public TransitionMoveInL { public: + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @return A autoreleased TransitionMoveInB object. + */ static TransitionMoveInB* create(float t, Scene* scene); CC_CONSTRUCTOR_ACCESS: @@ -269,17 +335,27 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(TransitionMoveInB); }; -/** @brief TransitionSlideInL: +/** @class TransitionSlideInL + * @brief TransitionSlideInL: Slide in the incoming scene from the left border. */ class CC_DLL TransitionSlideInL : public TransitionScene, public TransitionEaseScene { public: + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @return A autoreleased TransitionSlideInL object. + */ static TransitionSlideInL* create(float t, Scene* scene); virtual ActionInterval* easeActionWithAction(ActionInterval * action) override; - /** returns the action that will be performed by the incoming and outgoing scene */ + /** Returns the action that will be performed by the incoming and outgoing scene. + * + * @return The action that will be performed by the incoming and outgoing scene. + */ virtual ActionInterval* action(void); // @@ -301,15 +377,22 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(TransitionSlideInL); }; -/** @brief TransitionSlideInR: +/** @class TransitionSlideInR + *@brief TransitionSlideInR: Slide in the incoming scene from the right border. */ class CC_DLL TransitionSlideInR : public TransitionSlideInL { public: + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @return A autoreleased TransitionSlideInR object. + */ static TransitionSlideInR* create(float t, Scene* scene); - /** returns the action that will be performed by the incoming and outgoing scene */ + /** Returns the action that will be performed by the incoming and outgoing scene. */ virtual ActionInterval* action(void) override; CC_CONSTRUCTOR_ACCESS: @@ -326,12 +409,19 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(TransitionSlideInR); }; -/** @brief TransitionSlideInB: +/** @class TransitionSlideInB + * @brief TransitionSlideInB: Slide in the incoming scene from the bottom border. */ class CC_DLL TransitionSlideInB : public TransitionSlideInL { public: + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @return A autoreleased TransitionSlideInB object. + */ static TransitionSlideInB* create(float t, Scene* scene); /** returns the action that will be performed by the incoming and outgoing scene */ @@ -351,12 +441,19 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(TransitionSlideInB); }; -/** @brief TransitionSlideInT: +/** @class TransitionSlideInT + * @brief TransitionSlideInT: Slide in the incoming scene from the top border. */ class CC_DLL TransitionSlideInT : public TransitionSlideInL { public: + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @return A autoreleased TransitionSlideInT object. + */ static TransitionSlideInT* create(float t, Scene* scene); /** returns the action that will be performed by the incoming and outgoing scene */ @@ -376,12 +473,18 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(TransitionSlideInT); }; -/** -@brief Shrink the outgoing scene while grow the incoming scene +/** @class TransitionShrinkGrow +* @brief Shrink the outgoing scene while grow the incoming scene */ class CC_DLL TransitionShrinkGrow : public TransitionScene , public TransitionEaseScene { public: + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @return A autoreleased TransitionShrinkGrow object. + */ static TransitionShrinkGrow* create(float t, Scene* scene); // @@ -402,14 +505,28 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(TransitionShrinkGrow); }; -/** @brief TransitionFlipX: +/** @class TransitionFlipX + * @brief TransitionFlipX: Flips the screen horizontally. The front face is the outgoing scene and the back face is the incoming scene. */ class CC_DLL TransitionFlipX : public TransitionSceneOriented { public: + /** Creates a transition with duration, incoming scene and orientation. + * + * @param t Duration time, in seconds. + * @param s A given scene. + * @param o A given orientation. + * @return A autoreleased TransitionFlipX object. + */ static TransitionFlipX* create(float t, Scene* s, Orientation o); + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param s A given scene. + * @return A autoreleased TransitionFlipX object. + */ static TransitionFlipX* create(float t, Scene* s); // @@ -429,14 +546,28 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(TransitionFlipX); }; -/** @brief TransitionFlipY: +/** @class TransitionFlipY + * @brief TransitionFlipY: Flips the screen vertically. The front face is the outgoing scene and the back face is the incoming scene. */ class CC_DLL TransitionFlipY : public TransitionSceneOriented { public: + /** Creates a transition with duration, incoming scene and orientation. + * + * @param t Duration time, in seconds. + * @param s A given scene. + * @param o A given orientation. + * @return A autoreleased TransitionFlipY object. + */ static TransitionFlipY* create(float t, Scene* s, Orientation o); + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param s A given scene. + * @return A autoreleased TransitionFlipY object. + */ static TransitionFlipY* create(float t, Scene* s); // @@ -456,14 +587,28 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(TransitionFlipY); }; -/** @brief TransitionFlipAngular: +/** @class TransitionFlipAngular + * @brief TransitionFlipAngular: Flips the screen half horizontally and half vertically. The front face is the outgoing scene and the back face is the incoming scene. */ class CC_DLL TransitionFlipAngular : public TransitionSceneOriented { public: + /** Creates a transition with duration, incoming scene and orientation. + * + * @param t Duration time, in seconds. + * @param s A given scene. + * @param o A given orientation. + * @return A autoreleased TransitionFlipAngular object. + */ static TransitionFlipAngular* create(float t, Scene* s, Orientation o); + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param s A given scene. + * @return A autoreleased TransitionFlipAngular object. + */ static TransitionFlipAngular* create(float t, Scene* s); // @@ -483,14 +628,28 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(TransitionFlipAngular); }; -/** @brief TransitionZoomFlipX: +/** @class TransitionZoomFlipX + * @brief TransitionZoomFlipX: Flips the screen horizontally doing a zoom out/in The front face is the outgoing scene and the back face is the incoming scene. */ class CC_DLL TransitionZoomFlipX : public TransitionSceneOriented { public: + /** Creates a transition with duration, incoming scene and orientation. + * + * @param t Duration time, in seconds. + * @param s A given scene. + * @param o A given orientation. + * @return A autoreleased TransitionZoomFlipX object. + */ static TransitionZoomFlipX* create(float t, Scene* s, Orientation o); + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param s A given scene. + * @return A autoreleased TransitionZoomFlipX object. + */ static TransitionZoomFlipX* create(float t, Scene* s); // @@ -510,14 +669,28 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(TransitionZoomFlipX); }; -/** @brief TransitionZoomFlipY: +/** @class TransitionZoomFlipY + * @brief TransitionZoomFlipY: Flips the screen vertically doing a little zooming out/in The front face is the outgoing scene and the back face is the incoming scene. */ class CC_DLL TransitionZoomFlipY : public TransitionSceneOriented { public: + /** Creates a transition with duration, incoming scene and orientation. + * + * @param t Duration time, in seconds. + * @param s A given scene. + * @param o A given orientation. + * @return A autoreleased TransitionZoomFlipY object. + */ static TransitionZoomFlipY* create(float t, Scene* s, Orientation o); + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param s A given scene. + * @return A autoreleased TransitionZoomFlipY object. + */ static TransitionZoomFlipY* create(float t, Scene* s); // @@ -537,14 +710,28 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(TransitionZoomFlipY); }; -/** @brief TransitionZoomFlipAngular: +/** @class TransitionZoomFlipAngular + * @brief TransitionZoomFlipAngular: Flips the screen half horizontally and half vertically doing a little zooming out/in. The front face is the outgoing scene and the back face is the incoming scene. */ class CC_DLL TransitionZoomFlipAngular : public TransitionSceneOriented { public: + /** Creates a transition with duration, incoming scene and orientation. + * + * @param t Duration time, in seconds. + * @param s A given scene. + * @param o A given orientation. + * @return A autoreleased TransitionZoomFlipAngular object. + */ static TransitionZoomFlipAngular* create(float t, Scene* s, Orientation o); + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param s A given scene. + * @return A autoreleased TransitionZoomFlipAngular object. + */ static TransitionZoomFlipAngular* create(float t, Scene* s); // @@ -564,16 +751,28 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(TransitionZoomFlipAngular); }; -/** @brief TransitionFade: +/** @class TransitionFade + * @brief TransitionFade: Fade out the outgoing scene and then fade in the incoming scene.''' */ class CC_DLL TransitionFade : public TransitionScene { public: - /** creates the transition with a duration and with an RGB color - * Example: FadeTransition::create(2, scene, Color3B(255,0,0); // red color - */ + /** Creates the transition with a duration and with an RGB color + * Example: FadeTransition::create(2, scene, Color3B(255,0,0); // red color + * + * @param duration Duration time, in seconds. + * @param scene A given scene. + * @param color A given transition color. + * @return A autoreleased TransitionFade object. + */ static TransitionFade* create(float duration, Scene* scene, const Color3B& color); + /** Creates the transition with a duration. + * + * @param duration Duration time, in seconds. + * @param scene A given scene. + * @return A autoreleased TransitionFade object. + */ static TransitionFade* create(float duration, Scene* scene); /** @@ -604,13 +803,19 @@ private: }; class RenderTexture; -/** +/** @class TransitionCrossFade @brief TransitionCrossFade: Cross fades two scenes using the RenderTexture object. */ class CC_DLL TransitionCrossFade : public TransitionScene { public : + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @return A autoreleased TransitionCrossFade object. + */ static TransitionCrossFade* create(float t, Scene* scene); // @@ -640,12 +845,19 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(TransitionCrossFade); }; -/** @brief TransitionTurnOffTiles: +/** @class TransitionTurnOffTiles + * @brief TransitionTurnOffTiles: Turn off the tiles of the outgoing scene in random order */ class CC_DLL TransitionTurnOffTiles : public TransitionScene ,public TransitionEaseScene { public : + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @return A autoreleased TransitionTurnOffTiles object. + */ static TransitionTurnOffTiles* create(float t, Scene* scene); // @@ -672,14 +884,25 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(TransitionTurnOffTiles); }; -/** @brief TransitionSplitCols: +/** @class TransitionSplitCols + * @brief TransitionSplitCols: The odd columns goes upwards while the even columns goes downwards. */ class CC_DLL TransitionSplitCols : public TransitionScene , public TransitionEaseScene { public: + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @return A autoreleased TransitionSplitCols object. + */ static TransitionSplitCols* create(float t, Scene* scene); + /** Returns the action that will be performed. + * + * @return The action that will be performed. + */ virtual ActionInterval* action(); // @@ -705,12 +928,19 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(TransitionSplitCols); }; -/** @brief TransitionSplitRows: +/** @class TransitionSplitRows + * @brief TransitionSplitRows: The odd rows goes to the left while the even rows goes to the right. */ class CC_DLL TransitionSplitRows : public TransitionSplitCols { public: + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @return A autoreleased TransitionSplitRows object. + */ static TransitionSplitRows* create(float t, Scene* scene); // @@ -726,14 +956,26 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(TransitionSplitRows); }; -/** @brief TransitionFadeTR: +/** @class TransitionFadeTR + * @brief TransitionFadeTR: Fade the tiles of the outgoing scene from the left-bottom corner the to top-right corner. */ class CC_DLL TransitionFadeTR : public TransitionScene , public TransitionEaseScene { public: + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @return A autoreleased TransitionFadeTR object. + */ static TransitionFadeTR* create(float t, Scene* scene); + /** Returns the action that will be performed with size. + * + * @param size A given size. + * @return The action that will be performed. + */ virtual ActionInterval* actionWithSize(const Size& size); // @@ -761,12 +1003,19 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(TransitionFadeTR); }; -/** @brief TransitionFadeBL: +/** @class TransitionFadeBL + * @brief TransitionFadeBL: Fade the tiles of the outgoing scene from the top-right corner to the bottom-left corner. */ class CC_DLL TransitionFadeBL : public TransitionFadeTR { public: + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @return A autoreleased TransitionFadeBL object. + */ static TransitionFadeBL* create(float t, Scene* scene); // @@ -782,12 +1031,19 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(TransitionFadeBL); }; -/** @brief TransitionFadeUp: +/** @class TransitionFadeUp + * @brief TransitionFadeUp: * Fade the tiles of the outgoing scene from the bottom to the top. */ class CC_DLL TransitionFadeUp : public TransitionFadeTR { public: + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @return A autoreleased TransitionFadeUp object. + */ static TransitionFadeUp* create(float t, Scene* scene); // @@ -803,12 +1059,19 @@ private: CC_DISALLOW_COPY_AND_ASSIGN(TransitionFadeUp); }; -/** @brief TransitionFadeDown: +/** @class TransitionFadeDown + * @brief TransitionFadeDown: * Fade the tiles of the outgoing scene from the top to the bottom. */ class CC_DLL TransitionFadeDown : public TransitionFadeTR { public: + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @return A autoreleased TransitionFadeDown object. + */ static TransitionFadeDown* create(float t, Scene* scene); // diff --git a/cocos/2d/CCTransitionPageTurn.h b/cocos/2d/CCTransitionPageTurn.h index 815bdce557..9d29ee01f7 100644 --- a/cocos/2d/CCTransitionPageTurn.h +++ b/cocos/2d/CCTransitionPageTurn.h @@ -39,8 +39,8 @@ class NodeGrid; * @{ */ -/** -@brief A transition which peels back the bottom right hand corner of a scene +/** @class TransitionPageTurn +* @brief A transition which peels back the bottom right hand corner of a scene to transition to the scene beneath it simulating a page turn. This uses a 3DAction so it's strongly recommended that depth buffering @@ -57,6 +57,11 @@ public: * Creates a base transition with duration and incoming scene. * If back is true then the effect is reversed to appear as if the incoming * scene is being turned from left over the outgoing scene. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @param backwards If back is true then the effect is reversed to appear as if the incoming scene is being turned from left over the outgoing scene. + * @return An autoreleased TransitionPageTurn object. */ static TransitionPageTurn* create(float t,Scene* scene,bool backwards); @@ -66,12 +71,22 @@ public: virtual void draw(Renderer *renderer, const Mat4 &transform, uint32_t flags) override; /** - * Creates a base transition with duration and incoming scene. - * If back is true then the effect is reversed to appear as if the incoming - * scene is being turned from left over the outgoing scene. - */ + * Creates a base transition with duration and incoming scene. + * If back is true then the effect is reversed to appear as if the incoming + * scene is being turned from left over the outgoing scene. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @param backwards If back is true then the effect is reversed to appear as if the incoming scene is being turned from left over the outgoing scene. + * @return True if initialize success. + */ bool initWithDuration(float t,Scene* scene,bool backwards); + /** Returns the action that will be performed with size. + * + * @param size A given size. + * @return The action that will be performed. + */ ActionInterval* actionWithSize(const Size& vector); // diff --git a/cocos/2d/CCTransitionProgress.h b/cocos/2d/CCTransitionProgress.h index d4cfbe8deb..870680c080 100644 --- a/cocos/2d/CCTransitionProgress.h +++ b/cocos/2d/CCTransitionProgress.h @@ -39,9 +39,18 @@ class RenderTexture; * @addtogroup transition * @{ */ +/** @class TransitionProgress + * @brief A base class of progress transition. + */ class CC_DLL TransitionProgress : public TransitionScene { public: + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @return An autoreleased TransitionProgress object. + */ static TransitionProgress* create(float t, Scene* scene); // @@ -68,12 +77,19 @@ protected: }; -/** TransitionRadialCCW transition. +/** @class TransitionProgressRadialCCW + * @brief TransitionRadialCCW transition. A counter clock-wise radial transition to the next scene */ class CC_DLL TransitionProgressRadialCCW : public TransitionProgress { public: + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @return An autoreleased TransitionProgressRadialCCW object. + */ static TransitionProgressRadialCCW* create(float t, Scene* scene); CC_CONSTRUCTOR_ACCESS: @@ -92,12 +108,19 @@ protected: }; -/** TransitionRadialCW transition. - A counter clock-wise radial transition to the next scene +/** @class TransitionProgressRadialCW + * @brief TransitionRadialCW transition. + A counter clock-wise radial transition to the next scene. */ class CC_DLL TransitionProgressRadialCW : public TransitionProgress { public: + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @return An autoreleased TransitionProgressRadialCW object. + */ static TransitionProgressRadialCW* create(float t, Scene* scene); CC_CONSTRUCTOR_ACCESS: @@ -115,12 +138,19 @@ protected: }; -/** TransitionProgressHorizontal transition. +/** @class TransitionProgressHorizontal + * @brief TransitionProgressHorizontal transition. A clock-wise radial transition to the next scene */ class CC_DLL TransitionProgressHorizontal : public TransitionProgress { public: + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @return An autoreleased TransitionProgressHorizontal object. + */ static TransitionProgressHorizontal* create(float t, Scene* scene); CC_CONSTRUCTOR_ACCESS: @@ -137,9 +167,18 @@ protected: virtual ProgressTimer* progressTimerNodeWithRenderTexture(RenderTexture* texture) override; }; +/** @class TransitionProgressVertical + * @brief TransitionProgressVertical transition. + */ class CC_DLL TransitionProgressVertical : public TransitionProgress { public: + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @return An autoreleased TransitionProgressVertical object. + */ static TransitionProgressVertical* create(float t, Scene* scene); CC_CONSTRUCTOR_ACCESS: @@ -156,9 +195,18 @@ protected: virtual ProgressTimer* progressTimerNodeWithRenderTexture(RenderTexture* texture) override; }; +/** @class TransitionProgressInOut + * @brief TransitionProgressInOut transition. + */ class CC_DLL TransitionProgressInOut : public TransitionProgress { public: + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @return An autoreleased TransitionProgressInOut object. + */ static TransitionProgressInOut* create(float t, Scene* scene); CC_CONSTRUCTOR_ACCESS: @@ -177,9 +225,18 @@ protected: virtual void setupTransition() override; }; +/** @class TransitionProgressOutIn + * @brief TransitionProgressOutIn transition. + */ class CC_DLL TransitionProgressOutIn : public TransitionProgress { public: + /** Creates a transition with duration and incoming scene. + * + * @param t Duration time, in seconds. + * @param scene A given scene. + * @return An autoreleased TransitionProgressOutIn object. + */ static TransitionProgressOutIn* create(float t, Scene* scene); CC_CONSTRUCTOR_ACCESS: diff --git a/cocos/2d/doxygen_modules.h b/cocos/2d/doxygen_modules.h deleted file mode 100644 index f1e55ec591..0000000000 --- a/cocos/2d/doxygen_modules.h +++ /dev/null @@ -1,5 +0,0 @@ - -/**@defgroup sprite_nodes - * @ingroup two_d - **/ - diff --git a/cocos/3d/CCAABB.h b/cocos/3d/CCAABB.h index 860912d07a..662d4c278f 100644 --- a/cocos/3d/CCAABB.h +++ b/cocos/3d/CCAABB.h @@ -30,6 +30,9 @@ NS_CC_BEGIN +/** + * Axis Aligned Bounding Box (AABB), usually caculate some rough but fast collision detection. + */ class CC_DLL AABB { @@ -90,10 +93,13 @@ public: void set(const Vec3& min, const Vec3& max); /** - * reset min and max value. + * Reset min and max value.If you invoke this method, isEmpty() shall return true. */ void reset(); + /** + * check the AABB object is empty(reset). + */ bool isEmpty() const; /** diff --git a/cocos/3d/CCAttachNode.h b/cocos/3d/CCAttachNode.h index da4df54597..c03bf625ee 100644 --- a/cocos/3d/CCAttachNode.h +++ b/cocos/3d/CCAttachNode.h @@ -48,6 +48,7 @@ public: */ static AttachNode* create(Bone3D* attachBone); + //override virtual Mat4 getWorldToNodeTransform() const override; virtual Mat4 getNodeToWorldTransform() const override; virtual const Mat4& getNodeToParentTransform() const override; diff --git a/cocos/3d/CCBillBoard.h b/cocos/3d/CCBillBoard.h index 059470f59c..bb0db9edbb 100644 --- a/cocos/3d/CCBillBoard.h +++ b/cocos/3d/CCBillBoard.h @@ -102,6 +102,9 @@ CC_CONSTRUCTOR_ACCESS: protected: + /** + * calculate a model matrix which keep orignal translate & scaling but always face to the camera + */ bool calculateBillbaordTransform(); Mat4 _camWorldMat; diff --git a/cocos/3d/CCBundle3D.h b/cocos/3d/CCBundle3D.h index 571a58ffa2..5a7a6e2c6d 100644 --- a/cocos/3d/CCBundle3D.h +++ b/cocos/3d/CCBundle3D.h @@ -42,7 +42,9 @@ class Data; class CC_DLL Bundle3D { public: - // create a new bundle, destroy it when finish using it + /** + * create a new bundle, destroy it when finish using it + */ static Bundle3D* createBundle(); static void destroyBundle(Bundle3D* bundle); diff --git a/cocos/3d/CCBundle3DData.h b/cocos/3d/CCBundle3DData.h index 7d404a2d3a..d0cda7cc9f 100644 --- a/cocos/3d/CCBundle3DData.h +++ b/cocos/3d/CCBundle3DData.h @@ -129,6 +129,10 @@ struct MeshData int attribCount; public: + /** + * Get per vertex size + * @return return the sum of each vertex's all attribute size. + */ int getPerVertexSize() const { int vertexsize = 0; @@ -138,6 +142,10 @@ public: } return vertexsize; } + + /** + * Reset the data + */ void resetData() { vertex.clear(); diff --git a/cocos/3d/CCBundleReader.h b/cocos/3d/CCBundleReader.h index 90fb10694b..f4a47a5947 100644 --- a/cocos/3d/CCBundleReader.h +++ b/cocos/3d/CCBundleReader.h @@ -109,6 +109,11 @@ public: * first read length, then read string text */ std::string readString(); + + /** + * Read the matrix. + * @note the matrix type must be the 4*4 float matrix + */ bool readMatrix(float* m); private: diff --git a/cocos/3d/CCFrustum.h b/cocos/3d/CCFrustum.h index 4eac287469..b4d9befcd4 100755 --- a/cocos/3d/CCFrustum.h +++ b/cocos/3d/CCFrustum.h @@ -34,6 +34,11 @@ NS_CC_BEGIN class Camera; + +/** + * the frustum is a six-side geometry, usually use the frustum to do fast-culling: + * check a entity whether is a potential visible entity + */ class CC_DLL Frustum { friend class Camera; diff --git a/cocos/3d/CCMesh.cpp b/cocos/3d/CCMesh.cpp index f21c507166..c79db7b413 100644 --- a/cocos/3d/CCMesh.cpp +++ b/cocos/3d/CCMesh.cpp @@ -196,7 +196,7 @@ void Mesh::setSkin(MeshSkin* skin) CC_SAFE_RETAIN(skin); CC_SAFE_RELEASE(_skin); _skin = skin; - calcuateAABB(); + calculateAABB(); } } @@ -207,7 +207,7 @@ void Mesh::setMeshIndexData(MeshIndexData* subMesh) CC_SAFE_RETAIN(subMesh); CC_SAFE_RELEASE(_meshIndexData); _meshIndexData = subMesh; - calcuateAABB(); + calculateAABB(); bindMeshCommand(); } } @@ -223,7 +223,7 @@ void Mesh::setGLProgramState(GLProgramState* glProgramState) } } -void Mesh::calcuateAABB() +void Mesh::calculateAABB() { if (_meshIndexData) { diff --git a/cocos/3d/CCMesh.h b/cocos/3d/CCMesh.h index 06e42c0b85..04787e3c60 100644 --- a/cocos/3d/CCMesh.h +++ b/cocos/3d/CCMesh.h @@ -110,11 +110,20 @@ CC_CONSTRUCTOR_ACCESS: Mesh(); virtual ~Mesh(); - + + /** + * Get the default GL program. + */ GLProgram* getDefaultGLProgram(bool textured); + /** + * Set the default GL program. + */ void setGLProgramState(GLProgramState* glProgramState); + /** + * Get the MeshCommand. + */ MeshCommand& getMeshCommand() { return _meshCommand; } /**skin setter*/ @@ -124,8 +133,15 @@ CC_CONSTRUCTOR_ACCESS: /**name setter*/ void setName(const std::string& name) { _name = name; } - void calcuateAABB(); + /** + * calculate the AABB of the mesh + * @note the AABB is in the local space, not the world space + */ + void calculateAABB(); + /** + * Bind to the MeshCommand + */ void bindMeshCommand(); protected: Texture2D* _texture; //texture that submesh is using diff --git a/cocos/3d/CCMeshVertexIndexData.h b/cocos/3d/CCMeshVertexIndexData.h index d8c91c896a..74b1f089a5 100644 --- a/cocos/3d/CCMeshVertexIndexData.h +++ b/cocos/3d/CCMeshVertexIndexData.h @@ -43,6 +43,10 @@ NS_CC_BEGIN class MeshVertexData; +/** + * the MeshIndexData class. + * @brief the MeshIndexData contain all of the indices data which mesh need. + */ class MeshIndexData : public Ref { public: @@ -84,6 +88,10 @@ protected: friend class Sprite3D; }; +/** + * the MeshVertexData class. + * @brief the MeshIndexData contain all of the vertices data which mesh need. + */ class MeshVertexData : public Ref { friend class Sprite3D; diff --git a/cocos/3d/CCOBB.h b/cocos/3d/CCOBB.h index 2065035060..5a7e9f8efb 100644 --- a/cocos/3d/CCOBB.h +++ b/cocos/3d/CCOBB.h @@ -29,6 +29,10 @@ NS_CC_BEGIN +/** + * Oritened Bounding Box(OBB) + * @brief the OBB is similar to the AABB but the bounding box has the same direction as Sprite3D. so it's collistion detection more precise than AABB + */ class CC_DLL OBB { public: diff --git a/cocos/3d/CCObjLoader.h b/cocos/3d/CCObjLoader.h index a0ef97cb4d..8f5d547028 100644 --- a/cocos/3d/CCObjLoader.h +++ b/cocos/3d/CCObjLoader.h @@ -16,9 +16,16 @@ NS_CC_BEGIN +/** + * .obj file Loader + **/ class ObjLoader { public: + + /** + * model's material struct + **/ typedef struct { std::string name; @@ -41,11 +48,17 @@ public: std::map unknown_parameter; } material_t; + /** + * model's indices struct + **/ typedef struct { std::vector indices; } mesh_t; + /** + * model's shape struct + **/ typedef struct { std::string name; @@ -53,6 +66,9 @@ public: mesh_t mesh; } shape_t; + /** + * model's shapes struct + **/ typedef struct { std::vector positions; @@ -70,11 +86,13 @@ public: } }shapes_t; - /// Loads .obj from a file. - /// 'shapes' will be filled with parsed shape data - /// The function returns error string. - /// Returns empty string when loading .obj success. - /// 'mtl_basepath' is optional, and used for base path for .mtl file. + /** + * Loads .obj from a file. + * @param shapes will be filled with parsed shape data + * @param filename the .obj file path . + * @param mtl_basepath It's optional, and used for base path for .mtl file + * @return The function returns error string, return empty string when loading .obj success. + */ static std::string LoadObj( shapes_t& shapes, // [output] const char* filename, diff --git a/cocos/3d/CCPlane.h b/cocos/3d/CCPlane.h index b94377250a..85fffb20ac 100755 --- a/cocos/3d/CCPlane.h +++ b/cocos/3d/CCPlane.h @@ -37,6 +37,9 @@ enum class PointSide BEHIND_PLANE, }; +/** + * Defines plane + **/ class CC_DLL Plane { public: @@ -96,8 +99,8 @@ public: PointSide getSide(const Vec3& point) const; protected: - Vec3 _normal; - float _dist; + Vec3 _normal; // the normal line of the plane + float _dist; // original displacement of the normal }; NS_CC_END diff --git a/cocos/3d/CCRay.h b/cocos/3d/CCRay.h index 42e85dc675..53350fc472 100644 --- a/cocos/3d/CCRay.h +++ b/cocos/3d/CCRay.h @@ -32,6 +32,9 @@ NS_CC_BEGIN +/** + * Ray is a line with one end. usually use it to check intersects with some object,such as Plane, OBB, AABB + **/ class CC_DLL Ray { public: diff --git a/cocos/3d/CCSkeleton3D.h b/cocos/3d/CCSkeleton3D.h index 8e97933c93..0bd033896d 100644 --- a/cocos/3d/CCSkeleton3D.h +++ b/cocos/3d/CCSkeleton3D.h @@ -118,7 +118,10 @@ public: protected: - + /** + * the BoneBlendState struct + * @brief store the transformation and weight for bone blending + */ struct BoneBlendState { Vec3 localTranslate; diff --git a/cocos/3d/CCSprite3D.h b/cocos/3d/CCSprite3D.h index b2567b5374..ca4f1dbc08 100644 --- a/cocos/3d/CCSprite3D.h +++ b/cocos/3d/CCSprite3D.h @@ -233,6 +233,10 @@ protected: }; /////////////////////////////////////////////////////// +/** + * Sprite3DCache + * @brief the cache data of Sprite3D, use to speed up Sprite3D::create + */ class CC_DLL Sprite3DCache { public: @@ -256,13 +260,17 @@ public: /**get & destroy*/ static Sprite3DCache* getInstance(); static void destroyInstance(); - + + /**get the SpriteData struct*/ Sprite3DData* getSpriteData(const std::string& key) const; + /**add the SpriteData into Sprite3D by given the specified key*/ bool addSprite3DData(const std::string& key, Sprite3DData* spritedata); + /**remove the SpriteData from Sprite3D by given the specified key*/ void removeSprite3DData(const std::string& key); + /**remove all the SpriteData from Sprite3D*/ void removeAllSprite3DData(); CC_CONSTRUCTOR_ACCESS: diff --git a/cocos/audio/include/AudioEngine.h b/cocos/audio/include/AudioEngine.h index 7690a62907..5bdd5a5965 100644 --- a/cocos/audio/include/AudioEngine.h +++ b/cocos/audio/include/AudioEngine.h @@ -52,6 +52,7 @@ NS_CC_BEGIN * @class AudioProfile * * @brief + * @js NA */ class EXPORT_DLL AudioProfile { @@ -80,6 +81,7 @@ class AudioEngineImpl; * @brief Offers a interface to play audio. * * @note Make sure to call AudioEngine::end() when the audio engine is not needed anymore to release resources. + * @js NA */ class EXPORT_DLL AudioEngine diff --git a/cocos/audio/include/SimpleAudioEngine.h b/cocos/audio/include/SimpleAudioEngine.h index 702d923bdb..c108655eb4 100644 --- a/cocos/audio/include/SimpleAudioEngine.h +++ b/cocos/audio/include/SimpleAudioEngine.h @@ -50,6 +50,7 @@ namespace CocosDenshion { * @brief Offers a very simple interface to play background music & sound effects. * * @note Make sure to call SimpleAudioEngine::end() when the sound engine is not needed anymore to release allocated resources. + * @js cc.audioEngine */ class EXPORT_DLL SimpleAudioEngine @@ -57,6 +58,7 @@ class EXPORT_DLL SimpleAudioEngine public: /** * Returns a shared instance of the SimpleAudioEngine. + * @js NA */ static SimpleAudioEngine* getInstance(); @@ -78,7 +80,7 @@ public: * Preload background music. * * @param filePath The path of the background music file. - * @js preloadMusic + * @js NA * @lua preloadMusic */ virtual void preloadBackgroundMusic(const char* filePath); @@ -235,6 +237,7 @@ public: * The compressed audio will be decoded to wave, then written into an internal buffer in SimpleAudioEngine. * * @param filePath The path of the effect file. + * @js NA */ virtual void preloadEffect(const char* filePath); diff --git a/cocos/base/CCConfiguration.h b/cocos/base/CCConfiguration.h index 9da560336e..d30dad0bc4 100644 --- a/cocos/base/CCConfiguration.h +++ b/cocos/base/CCConfiguration.h @@ -39,18 +39,22 @@ NS_CC_BEGIN * @addtogroup global * @{ */ -/** - @brief Configuration contains some openGL variables - @since v0.99.0 +/** @class Configuration + * @brief Configuration contains some openGL variables + * @since v0.99.0 */ class CC_DLL Configuration : public Ref { public: - /** returns a shared instance of Configuration */ + /** Returns a shared instance of Configuration. + * + * @return An autoreleased Configuration object. + */ static Configuration *getInstance(); - /** purge the shared instance of Configuration */ + /** Purge the shared instance of Configuration. + */ static void destroyInstance(); /** @deprecated Use getInstance() instead */ @@ -60,90 +64,147 @@ public: CC_DEPRECATED_ATTRIBUTE static void purgeConfiguration(); public: - /** + /** Destructor * @js NA * @lua NA */ virtual ~Configuration(); - /** OpenGL Max texture size. */ + /** OpenGL Max texture size. + * + * @return The OpenGL Max texture size. + */ int getMaxTextureSize() const; - /** OpenGL Max Modelview Stack Depth. */ + /** OpenGL Max Modelview Stack Depth. + * + * @return The OpenGL Max Modelview Stack Depth. + */ int getMaxModelviewStackDepth() const; - /** returns the maximum texture units - @since v2.0.0 + /** Returns the maximum texture units. + * + * @return The maximum texture units. + * @since v2.0.0 */ int getMaxTextureUnits() const; /** Whether or not the GPU supports NPOT (Non Power Of Two) textures. OpenGL ES 2.0 already supports NPOT (iOS). - - @since v0.99.2 + * + * @return Is true if supports NPOT. + * @since v0.99.2 */ bool supportsNPOT() const; - /** Whether or not PVR Texture Compressed is supported */ + /** Whether or not PVR Texture Compressed is supported. + * + * @return Is true if supports PVR Texture Compressed. + */ bool supportsPVRTC() const; - /** Whether or not ETC Texture Compressed is supported */ + /** Whether or not ETC Texture Compressed is supported. + * + * + * @return Is true if supports ETC Texture Compressed. + */ bool supportsETC() const; - /** Whether or not S3TC Texture Compressed is supported */ + /** Whether or not S3TC Texture Compressed is supported. + * + * @return Is true if supports S3TC Texture Compressed. + */ bool supportsS3TC() const; - /** Whether or not ATITC Texture Compressed is supported */ + /** Whether or not ATITC Texture Compressed is supported. + * + * @return Is true if supports ATITC Texture Compressed. + */ bool supportsATITC() const; /** Whether or not BGRA8888 textures are supported. - @since v0.99.2 + * + * @return Is true if supports BGRA8888 textures. + * @since v0.99.2 */ bool supportsBGRA8888() const; - /** Whether or not glDiscardFramebufferEXT is supported - @since v0.99.2 + /** Whether or not glDiscardFramebufferEXT is supported. + * @return Is true if supports glDiscardFramebufferEXT. + * @since v0.99.2 */ bool supportsDiscardFramebuffer() const; /** Whether or not shareable VAOs are supported. - @since v2.0.0 + * + * @return Is true if supports shareable VAOs. + * @since v2.0.0 */ bool supportsShareableVAO() const; - /** Max support directional light in shader, for Sprite3D - @since v3.3 + /** Max support directional light in shader, for Sprite3D. + * + * @return Maximum supports directional light in shader. + * @since v3.3 */ int getMaxSupportDirLightInShader() const; - /** Max support point light in shader, for Sprite3D - *since v3.3 + /** Max support point light in shader, for Sprite3D. + * + * @return Maximum supports point light in shader. + * @since v3.3 */ int getMaxSupportPointLightInShader() const; - /** Max support spot light in shader, for Sprite3D - *since v3.3 + /** Max support spot light in shader, for Sprite3D. + * + * @return Maximum supports spot light in shader. + * @since v3.3 */ int getMaxSupportSpotLightInShader() const; - /** returns whether or not an OpenGL is supported */ + /** Returns whether or not an OpenGL is supported. + * + * @param searchName A given search name. + * @return Is true if an OpenGL is supported. + */ bool checkForGLExtension(const std::string &searchName) const; + /** Initialize method. + * + * @return Is true if initialize success. + */ bool init(); - /** returns the value of a given key as a double */ + /** Returns the value of a given key as a double. + * + * @param key A given key. + * @param defaultValue if not find the value, return the defaultValue. + * @return + */ const Value& getValue(const std::string& key, const Value& defaultValue = Value::Null) const; - /** sets a new key/value pair in the configuration dictionary */ + /** Sets a new key/value pair in the configuration dictionary. + * + * @param key A given key. + * @param value A given value. + */ void setValue(const std::string& key, const Value& value); - /** returns the Configuration info */ + /** Returns the Configuration info. + * + * @return The Configuration info. + */ std::string getInfo() const; - /** gathers OpenGL / GPU information */ + /** Gathers OpenGL / GPU information. + */ void gatherGPUInfo(); - /** Loads a config file. If the keys are already present, then they are going to be replaced. Otherwise the new keys are added. */ + /** Loads a config file. If the keys are already present, then they are going to be replaced. Otherwise the new keys are added. + * + * @param filename Config file name. + */ void loadConfigFile(const std::string& filename); private: diff --git a/cocos/base/CCController.h b/cocos/base/CCController.h index b664c15c2b..7892787826 100644 --- a/cocos/base/CCController.h +++ b/cocos/base/CCController.h @@ -41,6 +41,7 @@ class EventDispatcher; /** * @class Controller * @brief A Controller object represents a connected physical game controller. + * @js NA */ class Controller { diff --git a/cocos/base/CCNS.h b/cocos/base/CCNS.h index 4ee039150a..8272ddb481 100644 --- a/cocos/base/CCNS.h +++ b/cocos/base/CCNS.h @@ -36,43 +36,43 @@ NS_CC_BEGIN */ /** -@brief Returns a Core Graphics rectangle structure corresponding to the data in a given string. -@param pszContent A string object whose contents are of the form "{{x,y},{w, h}}", - where x is the x coordinate, y is the y coordinate, w is the width, and h is the height. - These components can represent integer or float values. - An example of a valid string is "{{3,2},{4,5}}". - The string is not localized, so items are always separated with a comma. -@return A Core Graphics structure that represents a rectangle. - If the string is not well-formed, the function returns Rect::ZERO. -*/ + * @brief Returns a Core Graphics rectangle structure corresponding to the data in a given string. + * @param pszContent A string object whose contents are of the form "{{x,y},{w, h}}", + * where x is the x coordinate, y is the y coordinate, w is the width, and h is the height. + * These components can represent integer or float values. + * An example of a valid string is "{{3,2},{4,5}}". + * The string is not localized, so items are always separated with a comma. + * @return A Core Graphics structure that represents a rectangle. + * If the string is not well-formed, the function returns Rect::ZERO. + */ Rect CC_DLL RectFromString(const std::string& str); /** -@brief Returns a Core Graphics point structure corresponding to the data in a given string. -@param pszContent A string object whose contents are of the form "{x,y}", - where x is the x coordinate and y is the y coordinate. - The x and y values can represent integer or float values. - An example of a valid string is "{3.0,2.5}". - The string is not localized, so items are always separated with a comma. -@return A Core Graphics structure that represents a point. - If the string is not well-formed, the function returns Vec2::ZERO. -*/ + * @brief Returns a Core Graphics point structure corresponding to the data in a given string. + * @param pszContent A string object whose contents are of the form "{x,y}", + * where x is the x coordinate and y is the y coordinate. + * The x and y values can represent integer or float values. + * An example of a valid string is "{3.0,2.5}". + * The string is not localized, so items are always separated with a comma. + * @return A Core Graphics structure that represents a point. + * If the string is not well-formed, the function returns Vec2::ZERO. + */ Vec2 CC_DLL PointFromString(const std::string& str); /** -@brief Returns a Core Graphics size structure corresponding to the data in a given string. -@param pszContent A string object whose contents are of the form "{w, h}", - where w is the width and h is the height. - The w and h values can be integer or float values. - An example of a valid string is "{3.0,2.5}". - The string is not localized, so items are always separated with a comma. -@return A Core Graphics structure that represents a size. - If the string is not well-formed, the function returns Size::ZERO. -*/ + * @brief Returns a Core Graphics size structure corresponding to the data in a given string. + * @param pszContent A string object whose contents are of the form "{w, h}", + * where w is the width and h is the height. + * The w and h values can be integer or float values. + * An example of a valid string is "{3.0,2.5}". + * The string is not localized, so items are always separated with a comma. + * @return A Core Graphics structure that represents a size. + * If the string is not well-formed, the function returns Size::ZERO. + */ Size CC_DLL SizeFromString(const std::string& str); // end of data_structure group -/// @} +/** @} */ NS_CC_END diff --git a/cocos/base/CCScheduler.h b/cocos/base/CCScheduler.h index bb75be3e5f..d7f352dc89 100644 --- a/cocos/base/CCScheduler.h +++ b/cocos/base/CCScheduler.h @@ -209,7 +209,6 @@ public: /** 'update' the scheduler. * You should NEVER call this method, unless you know what you are doing. - * @js NA * @lua NA */ void update(float dt); @@ -330,7 +329,6 @@ public: This also includes the "update" selector. @param target The target to be unscheduled. @since v0.99.3 - @js unscheduleCallbackForTarget @lua NA */ void unscheduleAllForTarget(void *target); @@ -400,7 +398,6 @@ public: * @param target The target to be checked. * @return True if the target is paused, false if not. * @since v1.0.0 - * @js isTargetPaused(var jsObject) * @lua NA */ bool isTargetPaused(void *target); @@ -430,6 +427,7 @@ public: This function is thread safe. @param function The function to be run in cocos2d thread. @since v3.0 + @js NA */ void performFunctionInCocosThread( const std::function &function); @@ -445,6 +443,7 @@ public: delay is the amount of time the action will wait before it'll start @deprecated Please use `Scheduler::schedule` instead. @since v0.99.3, repeat and delay added in v1.1 + @js NA */ CC_DEPRECATED_ATTRIBUTE void scheduleSelector(SEL_SCHEDULE selector, Ref *target, float interval, unsigned int repeat, float delay, bool paused) { @@ -453,6 +452,7 @@ public: /** Calls scheduleSelector with CC_REPEAT_FOREVER and a 0 delay. * @deprecated Please use `Scheduler::schedule` instead. + * @js NA */ CC_DEPRECATED_ATTRIBUTE void scheduleSelector(SEL_SCHEDULE selector, Ref *target, float interval, bool paused) { @@ -472,12 +472,14 @@ public: If you want to unschedule the "update", use unscheudleUpdateForTarget. @deprecated Please use 'Scheduler::unschedule' instead. @since v0.99.3 + @js NA */ CC_DEPRECATED_ATTRIBUTE void unscheduleSelector(SEL_SCHEDULE selector, Ref *target) { unschedule(selector, target); }; /** Checks whether a selector for a given taget is scheduled. @deprecated Please use 'Scheduler::isScheduled' instead. @since v0.99.3 + @js NA */ CC_DEPRECATED_ATTRIBUTE bool isScheduledForTarget(Ref *target, SEL_SCHEDULE selector) { return isScheduled(selector, target); }; @@ -494,6 +496,7 @@ protected: The lower the priority, the earlier it is called. @note This method is only for internal use. @since v3.0 + @js _schedulePerFrame */ void schedulePerFrame(const ccSchedulerFunc& callback, void *target, int priority, bool paused); diff --git a/cocos/base/CCTouch.h b/cocos/base/CCTouch.h index efde06d223..98e750dbf6 100644 --- a/cocos/base/CCTouch.h +++ b/cocos/base/CCTouch.h @@ -36,37 +36,68 @@ NS_CC_BEGIN * @{ */ +/** @class Touch + * @brief Encapsulates the Touch information, such as touch point, id and so on, + and provides the methods that commonly used. + */ class CC_DLL Touch : public Ref { public: - /** how the touches are dispathced */ + /** Dispatch mode, how the touches are dispathced. */ enum class DispatchMode { - /** All at once */ - ALL_AT_ONCE, - /** one by one */ - ONE_BY_ONE, + ALL_AT_ONCE, /** All at once. */ + ONE_BY_ONE, /** One by one. */ }; + /** Constructor. + */ Touch() : _id(0), _startPointCaptured(false) {} - /** returns the current touch location in OpenGL coordinates */ + /** Returns the current touch location in OpenGL coordinates. + * + * @return The current touch location in OpenGL coordinates. + */ Vec2 getLocation() const; - /** returns the previous touch location in OpenGL coordinates */ + /** Returns the previous touch location in OpenGL coordinates. + * + * @return The previous touch location in OpenGL coordinates. + */ Vec2 getPreviousLocation() const; - /** returns the start touch location in OpenGL coordinates */ + /** Returns the start touch location in OpenGL coordinates. + * + * @return The start touch location in OpenGL coordinates. + */ Vec2 getStartLocation() const; - /** returns the delta of 2 current touches locations in screen coordinates */ + /** Returns the delta of 2 current touches locations in screen coordinates. + * + * @return The delta of 2 current touches locations in screen coordinates. + */ Vec2 getDelta() const; - /** returns the current touch location in screen coordinates */ + /** Returns the current touch location in screen coordinates. + * + * @return The current touch location in screen coordinates. + */ Vec2 getLocationInView() const; - /** returns the previous touch location in screen coordinates */ + /** Returns the previous touch location in screen coordinates. + * + * @return The previous touch location in screen coordinates. + */ Vec2 getPreviousLocationInView() const; - /** returns the start touch location in screen coordinates */ + /** Returns the start touch location in screen coordinates. + * + * @return The start touch location in screen coordinates. + */ Vec2 getStartLocationInView() const; + /** Set the touch infomation. It always used to monitor touch event. + * + * @param id A given id + * @param x A given x coordinate. + * @param y A given y coordinate. + */ void setTouchInfo(int id, float x, float y) { _id = id; @@ -80,9 +111,11 @@ public: _prevPoint = _point; } } - /** + /** Get touch id. * @js getId * @lua getId + * + * @return The id of touch. */ int getID() const { diff --git a/cocos/base/CCValue.h b/cocos/base/CCValue.h index 2dc1ef9341..160912a26a 100644 --- a/cocos/base/CCValue.h +++ b/cocos/base/CCValue.h @@ -43,94 +43,169 @@ CC_DLL extern const ValueVector ValueVectorNull; CC_DLL extern const ValueMap ValueMapNull; CC_DLL extern const ValueMapIntKey ValueMapIntKeyNull; +/** + * This class is provide as a wrapper of basic types, such as int and bool. + */ class CC_DLL Value { public: + /** A predefined Value that has not value. */ static const Value Null; + /** Default constructor. */ Value(); + + /** Create a Value by an unsigned char value. */ explicit Value(unsigned char v); + + /** Create a Value by an integer value. */ explicit Value(int v); + + /** Create a Value by a float value. */ explicit Value(float v); + + /** Create a Value by a double value. */ explicit Value(double v); + + /** Create a Value by a bool value. */ explicit Value(bool v); + + /** Create a Value by a char pointer. It will copy the chars internally. */ explicit Value(const char* v); + + /** Create a Value by a string. */ explicit Value(const std::string& v); - + + /** Create a Value by a ValueVector object. */ explicit Value(const ValueVector& v); + /** Create a Value by a ValueVector object. It will use std::move internally. */ explicit Value(ValueVector&& v); - + + /** Create a Value by a ValueMap object. */ explicit Value(const ValueMap& v); - explicit Value(ValueMap&& v); - + /** Create a Value by a ValueMap object. It will use std::move internally. */ + explicit Value(ValueMap&& v); + + /** Create a Value by a ValueMapIntKey object. */ explicit Value(const ValueMapIntKey& v); + /** Create a Value by a ValueMapIntKey object. It will use std::move internally. */ explicit Value(ValueMapIntKey&& v); + /** Create a Value by anthoer Value object. */ Value(const Value& other); + /** Create a Value by a Value object. It will use std::move internally. */ Value(Value&& other); + + /** Destructor. */ ~Value(); - // assignment operator + /** Assignment operator, assign from Value to Value. */ Value& operator= (const Value& other); + /** Assignment operator, assign from Value to Value. It will use std::move internally. */ Value& operator= (Value&& other); + /** Assignment operator, assign from unsigned char to Value. */ Value& operator= (unsigned char v); + /** Assignment operator, assign from integer to Value. */ Value& operator= (int v); + /** Assignment operator, assign from float to Value. */ Value& operator= (float v); + /** Assignment operator, assign from double to Value. */ Value& operator= (double v); + /** Assignment operator, assign from bool to Value. */ Value& operator= (bool v); + /** Assignment operator, assign from char* to Value. */ Value& operator= (const char* v); + /** Assignment operator, assign from string to Value. */ Value& operator= (const std::string& v); + /** Assignment operator, assign from ValueVector to Value. */ Value& operator= (const ValueVector& v); + /** Assignment operator, assign from ValueVector to Value. */ Value& operator= (ValueVector&& v); + /** Assignment operator, assign from ValueMap to Value. */ Value& operator= (const ValueMap& v); - Value& operator= (ValueMap&& v); + /** Assignment operator, assign from ValueMap to Value. It will use std::move internally. */ + Value& operator= (ValueMap&& v); + /** Assignment operator, assign from ValueMapIntKey to Value. */ Value& operator= (const ValueMapIntKey& v); + /** Assignment operator, assign from ValueMapIntKey to Value. It will use std::move internally. */ Value& operator= (ValueMapIntKey&& v); - // equal operator + /** != operator overloading */ bool operator!= (const Value& v); + /** != operator overloading */ bool operator!= (const Value& v) const; + /** == operator overloading */ bool operator== (const Value& v); + /** == operator overloading */ bool operator== (const Value& v) const; + /** Gets as a byte value. Will convert to unsigned char if possible, or will trigger assert error. */ unsigned char asByte() const; + /** Gets as an integer value. Will convert to integer if possible, or will trigger assert error. */ int asInt() const; + /** Gets as a float value. Will convert to float if possible, or will trigger assert error. */ float asFloat() const; + /** Gets as a double value. Will convert to double if possible, or will trigger assert error. */ double asDouble() const; + /** Gets as a bool value. Will convert to bool if possible, or will trigger assert error. */ bool asBool() const; + /** Gets as a string value. Will convert to string if possible, or will trigger assert error. */ std::string asString() const; + /** Gets as a ValueVector reference. Will convert to ValueVector if possible, or will trigger assert error. */ ValueVector& asValueVector(); + /** Gets as a const ValueVector reference. Will convert to ValueVector if possible, or will trigger assert error. */ const ValueVector& asValueVector() const; + /** Gets as a ValueMap reference. Will convert to ValueMap if possible, or will trigger assert error. */ ValueMap& asValueMap(); + /** Gets as a const ValueMap reference. Will convert to ValueMap if possible, or will trigger assert error. */ const ValueMap& asValueMap() const; + /** Gets as a ValueMapIntKey reference. Will convert to ValueMapIntKey if possible, or will trigger assert error. */ ValueMapIntKey& asIntKeyMap(); + /** Gets as a const ValueMapIntKey reference. Will convert to ValueMapIntKey if possible, or will trigger assert error. */ const ValueMapIntKey& asIntKeyMap() const; + /** + * Checks if the Value is null. + * @return True if the Value is null, false if not. + */ inline bool isNull() const { return _type == Type::NONE; } + /** Value type wrapped by Value. */ enum class Type { + /// no value is wrapped, an empty Value NONE = 0, + /// wrap byte BYTE, + /// wrap integer INTEGER, + /// wrap float FLOAT, + /// wrap double DOUBLE, + /// wrap bool BOOLEAN, + /// wrap string STRING, + /// wrap vector VECTOR, + /// wrap ValueMap MAP, + /// wrap ValueMapIntKey INT_KEY_MAP }; - inline Type getType() const { return _type; }; + /** Gets the value type. */ + inline Type getType() const { return _type; } + /** Gets the description of the class. */ std::string getDescription() const; private: diff --git a/cocos/base/ccConfig.h b/cocos/base/ccConfig.h index b1490f7a74..88082b823c 100644 --- a/cocos/base/ccConfig.h +++ b/cocos/base/ccConfig.h @@ -31,245 +31,228 @@ THE SOFTWARE. #include "platform/CCPlatformConfig.h" /** - @file - cocos2d (cc) configuration file + * @file + * cocos2d (cc) configuration file. */ /** @def CC_ENABLE_STACKABLE_ACTIONS - If enabled, actions that alter the position property (eg: MoveBy, JumpBy, BezierBy, etc..) will be stacked. - If you run 2 or more 'position' actions at the same time on a node, then end position will be the sum of all the positions. - If disabled, only the last run action will take effect. - - Enabled by default. Disable to be compatible with v2.0 and older versions. - - @since v2.1 + * If enabled, actions that alter the position property (eg: MoveBy, JumpBy, BezierBy, etc..) will be stacked. + * If you run 2 or more 'position' actions at the same time on a node, then end position will be the sum of all the positions. + * If disabled, only the last run action will take effect. + * Enabled by default. Disable to be compatible with v2.0 and older versions. + * @since v2.1 */ #ifndef CC_ENABLE_STACKABLE_ACTIONS #define CC_ENABLE_STACKABLE_ACTIONS 1 #endif /** @def CC_ENABLE_GL_STATE_CACHE - If enabled, cocos2d will maintain an OpenGL state cache internally to avoid unnecessary switches. - In order to use them, you have to use the following functions, instead of the the GL ones: - - ccGLUseProgram() instead of glUseProgram() - - GL::deleteProgram() instead of glDeleteProgram() - - GL::blendFunc() instead of glBlendFunc() + * If enabled, cocos2d will maintain an OpenGL state cache internally to avoid unnecessary switches. + * In order to use them, you have to use the following functions, instead of the the GL ones: + * - ccGLUseProgram() instead of glUseProgram(). + * - GL::deleteProgram() instead of glDeleteProgram(). + * - GL::blendFunc() instead of glBlendFunc(). - If this functionality is disabled, then ccGLUseProgram(), GL::deleteProgram(), GL::blendFunc() will call the GL ones, without using the cache. + * If this functionality is disabled, then ccGLUseProgram(), GL::deleteProgram(), GL::blendFunc() will call the GL ones, without using the cache. - It is recommended to enable whenever possible to improve speed. - If you are migrating your code from GL ES 1.1, then keep it disabled. Once all your code works as expected, turn it on. + * It is recommended to enable whenever possible to improve speed. + * If you are migrating your code from GL ES 1.1, then keep it disabled. Once all your code works as expected, turn it on. - Default value: Enabled by default + * Default value: Enabled by default - @since v2.0.0 + * @since v2.0.0 */ #ifndef CC_ENABLE_GL_STATE_CACHE #define CC_ENABLE_GL_STATE_CACHE 1 #endif /** @def CC_FIX_ARTIFACTS_BY_STRECHING_TEXEL -If enabled, the texture coordinates will be calculated by using this formula: -- texCoord.left = (rect.origin.x*2+1) / (texture.wide*2); -- texCoord.right = texCoord.left + (rect.size.width*2-2)/(texture.wide*2); + * If enabled, the texture coordinates will be calculated by using this formula: + * - texCoord.left = (rect.origin.x*2+1) / (texture.wide*2); + * - texCoord.right = texCoord.left + (rect.size.width*2-2)/(texture.wide*2); -The same for bottom and top. + * The same for bottom and top. -This formula prevents artifacts by using 99% of the texture. -The "correct" way to prevent artifacts is by using the spritesheet-artifact-fixer.py or a similar tool. + * This formula prevents artifacts by using 99% of the texture. + * The "correct" way to prevent artifacts is by using the spritesheet-artifact-fixer.py or a similar tool. -Affected nodes: -- Sprite / SpriteBatchNode and subclasses: LabelBMFont, TMXTiledMap -- LabelAtlas -- QuadParticleSystem -- TileMap - -To enabled set it to 1. Disabled by default. - -@since v0.99.5 -*/ + * Affected nodes: + * - Sprite / SpriteBatchNode and subclasses: LabelBMFont, TMXTiledMap. + * - LabelAtlas. + * - QuadParticleSystem. + * - TileMap. + + * To enabled set it to 1. Disabled by default. + + * @since v0.99.5 + */ #ifndef CC_FIX_ARTIFACTS_BY_STRECHING_TEXEL #define CC_FIX_ARTIFACTS_BY_STRECHING_TEXEL 0 #endif /** @def CC_DIRECTOR_FPS_INTERVAL - Seconds between FPS updates. - 0.5 seconds, means that the FPS number will be updated every 0.5 seconds. - Having a bigger number means a more reliable FPS + * Seconds between FPS updates. + * 0.5 seconds, means that the FPS number will be updated every 0.5 seconds. + * Having a bigger number means a more reliable FPS. - Default value: 0.1f + * Default value: 0.1f */ #ifndef CC_DIRECTOR_STATS_INTERVAL #define CC_DIRECTOR_STATS_INTERVAL (0.1f) #endif /** @def CC_DIRECTOR_FPS_POSITION - Position of the FPS + * Position of the FPS. - Default: 0,0 (bottom-left corner) + * Default: 0,0 (bottom-left corner). */ #ifndef CC_DIRECTOR_FPS_POSITION #define CC_DIRECTOR_FPS_POSITION Vec2(0,0) #endif /** @def CC_DIRECTOR_DISPATCH_FAST_EVENTS - If enabled, and only when it is used with FastDirector, the main loop will wait 0.04 seconds to - dispatch all the events, even if there are not events to dispatch. - If your game uses lot's of events (eg: touches) it might be a good idea to enable this feature. - Otherwise, it is safe to leave it disabled. + * If enabled, and only when it is used with FastDirector, the main loop will wait 0.04 seconds to + * dispatch all the events, even if there are not events to dispatch. + * If your game uses lot's of events (eg: touches) it might be a good idea to enable this feature. + * Otherwise, it is safe to leave it disabled. - To enable set it to 1. Disabled by default. + * To enable set it to 1. Disabled by default. - @warning This feature is experimental + * @warning This feature is experimental. */ #ifndef CC_DIRECTOR_DISPATCH_FAST_EVENTS #define CC_DIRECTOR_DISPATCH_FAST_EVENTS 0 #endif /** @def CC_DIRECTOR_MAC_USE_DISPLAY_LINK_THREAD -If enabled, cocos2d-mac will run on the Display Link thread. If disabled cocos2d-mac will run in its own thread. - -If enabled, the images will be drawn at the "correct" time, but the events might not be very responsive. -If disabled, some frames might be skipped, but the events will be dispatched as they arrived. - -To enable set it to a 1, to disable it set to 0. Enabled by default. - -Only valid for cocos2d-mac. Not supported on cocos2d-ios. - -*/ + * If enabled, cocos2d-mac will run on the Display Link thread. If disabled cocos2d-mac will run in its own thread. + * If enabled, the images will be drawn at the "correct" time, but the events might not be very responsive. + * If disabled, some frames might be skipped, but the events will be dispatched as they arrived. + * To enable set it to a 1, to disable it set to 0. Enabled by default. + * Only valid for cocos2d-mac. Not supported on cocos2d-ios. + */ #ifndef CC_DIRECTOR_MAC_USE_DISPLAY_LINK_THREAD #define CC_DIRECTOR_MAC_USE_DISPLAY_LINK_THREAD 1 #endif /** @def CC_NODE_RENDER_SUBPIXEL - If enabled, the Node objects (Sprite, Label,etc) will be able to render in subpixels. - If disabled, integer pixels will be used. - - To enable set it to 1. Enabled by default. + * If enabled, the Node objects (Sprite, Label,etc) will be able to render in subpixels. + * If disabled, integer pixels will be used. + * To enable set it to 1. Enabled by default. */ #ifndef CC_NODE_RENDER_SUBPIXEL #define CC_NODE_RENDER_SUBPIXEL 1 #endif /** @def CC_SPRITEBATCHNODE_RENDER_SUBPIXEL - If enabled, the Sprite objects rendered with SpriteBatchNode will be able to render in subpixels. - If disabled, integer pixels will be used. - - To enable set it to 1. Enabled by default. + * If enabled, the Sprite objects rendered with SpriteBatchNode will be able to render in subpixels. + * If disabled, integer pixels will be used. + * To enable set it to 1. Enabled by default. */ #ifndef CC_SPRITEBATCHNODE_RENDER_SUBPIXEL #define CC_SPRITEBATCHNODE_RENDER_SUBPIXEL 1 #endif /** @def CC_TEXTURE_ATLAS_USE_VAO - By default, TextureAtlas (used by many cocos2d classes) will use VAO (Vertex Array Objects). - Apple recommends its usage but they might consume a lot of memory, specially if you use many of them. - So for certain cases, where you might need hundreds of VAO objects, it might be a good idea to disable it. - - To disable it set it to 0. Enabled by default. - + * By default, TextureAtlas (used by many cocos2d classes) will use VAO (Vertex Array Objects). + * Apple recommends its usage but they might consume a lot of memory, specially if you use many of them. + * So for certain cases, where you might need hundreds of VAO objects, it might be a good idea to disable it. + * To disable it set it to 0. Enabled by default. */ #ifndef CC_TEXTURE_ATLAS_USE_VAO #if (CC_TARGET_PLATFORM == CC_PLATFORM_IOS) || (CC_TARGET_PLATFORM == CC_PLATFORM_MAC) #define CC_TEXTURE_ATLAS_USE_VAO 1 #else - /* Some Windows display adapter driver cannot support VAO. */ - /* Some android devices cannot support VAO very well, so we disable it by default for android platform. */ - /* Blackberry also doesn't support this feature. */ + /* Some Windows display adapter driver cannot support VAO. + * Some android devices cannot support VAO very well, so we disable it by default for android platform. + * Blackberry also doesn't support this feature. + */ #define CC_TEXTURE_ATLAS_USE_VAO 0 #endif #endif /** @def CC_USE_LA88_LABELS - If enabled, it will use LA88 (Luminance Alpha 16-bit textures) for LabelTTF objects. - If it is disabled, it will use A8 (Alpha 8-bit textures). - LA88 textures are 6% faster than A8 textures, but they will consume 2x memory. - - This feature is enabled by default. - - @since v0.99.5 + * If enabled, it will use LA88 (Luminance Alpha 16-bit textures) for LabelTTF objects. + * If it is disabled, it will use A8 (Alpha 8-bit textures). + * LA88 textures are 6% faster than A8 textures, but they will consume 2x memory. + * This feature is enabled by default. + * @since v0.99.5 */ #ifndef CC_USE_LA88_LABELS #define CC_USE_LA88_LABELS 1 #endif /** @def CC_SPRITE_DEBUG_DRAW - If enabled, all subclasses of Sprite will draw a bounding box - Useful for debugging purposes only. It is recommended to leave it disabled. - - To enable set it to a value different than 0. Disabled by default: - 0 -- disabled - 1 -- draw bounding box - 2 -- draw texture box -*/ + * If enabled, all subclasses of Sprite will draw a bounding box. + * Useful for debugging purposes only. It is recommended to leave it disabled. + * To enable set it to a value different than 0. Disabled by default: + * 0 -- disabled + * 1 -- draw bounding box + * 2 -- draw texture box + */ #ifndef CC_SPRITE_DEBUG_DRAW #define CC_SPRITE_DEBUG_DRAW 0 #endif /** @def CC_SPRITEBATCHNODE_DEBUG_DRAW -If enabled, all subclasses of Sprite that are rendered using an SpriteBatchNode draw a bounding box. -Useful for debugging purposes only. It is recommended to leave it disabled. - -To enable set it to a value different than 0. Disabled by default. -*/ + * If enabled, all subclasses of Sprite that are rendered using an SpriteBatchNode draw a bounding box. + * Useful for debugging purposes only. It is recommended to leave it disabled. + * To enable set it to a value different than 0. Disabled by default. + */ #ifndef CC_SPRITEBATCHNODE_DEBUG_DRAW #define CC_SPRITEBATCHNODE_DEBUG_DRAW 0 #endif /** @def CC_LABELBMFONT_DEBUG_DRAW -If enabled, all subclasses of LabelBMFont will draw a bounding box -Useful for debugging purposes only. It is recommended to leave it disabled. - -To enable set it to a value different than 0. Disabled by default. -*/ + * If enabled, all subclasses of LabelBMFont will draw a bounding box. + * Useful for debugging purposes only. It is recommended to leave it disabled. + * To enable set it to a value different than 0. Disabled by default. + */ #ifndef CC_LABELBMFONT_DEBUG_DRAW #define CC_LABELBMFONT_DEBUG_DRAW 0 #endif /** @def CC_LABELATLAS_DEBUG_DRAW - If enabled, all subclasses of LabeltAtlas will draw a bounding box - Useful for debugging purposes only. It is recommended to leave it disabled. - - To enable set it to a value different than 0. Disabled by default. + * If enabled, all subclasses of LabeltAtlas will draw a bounding box + * Useful for debugging purposes only. It is recommended to leave it disabled. + * To enable set it to a value different than 0. Disabled by default. */ #ifndef CC_LABELATLAS_DEBUG_DRAW #define CC_LABELATLAS_DEBUG_DRAW 0 #endif /** @def CC_NODE_DEBUG_VERIFY_EVENT_LISTENERS - If enabled (in conjunction with assertion macros) will verify on Node destruction that the node being destroyed has no event - listeners still associated with it in the event dispatcher. This can be used to track down problems where the event dispatch - system has dangling pointers to destroyed nodes. - - Note: event listener verification will always be disabled in builds where assertions are disabled regardless of this setting. + * If enabled (in conjunction with assertion macros) will verify on Node destruction that the node being destroyed has no event + * listeners still associated with it in the event dispatcher. This can be used to track down problems where the event dispatch + * system has dangling pointers to destroyed nodes. + * Note: event listener verification will always be disabled in builds where assertions are disabled regardless of this setting. */ #ifndef CC_NODE_DEBUG_VERIFY_EVENT_LISTENERS #define CC_NODE_DEBUG_VERIFY_EVENT_LISTENERS 0 #endif /** @def CC_ENABLE_PROFILERS - If enabled, will activate various profilers within cocos2d. This statistical data will be output to the console - once per second showing average time (in milliseconds) required to execute the specific routine(s). - Useful for debugging purposes only. It is recommended to leave it disabled. - - To enable set it to a value different than 0. Disabled by default. + * If enabled, will activate various profilers within cocos2d. This statistical data will be output to the console + * once per second showing average time (in milliseconds) required to execute the specific routine(s). + * Useful for debugging purposes only. It is recommended to leave it disabled. + * To enable set it to a value different than 0. Disabled by default. */ #ifndef CC_ENABLE_PROFILERS #define CC_ENABLE_PROFILERS 0 #endif -/** Enable Lua engine debug log */ +/** Enable Lua engine debug log. */ #ifndef CC_LUA_ENGINE_DEBUG #define CC_LUA_ENGINE_DEBUG 0 #endif -/** Use physics integration API */ +/** Use physics integration API. */ #ifndef CC_USE_PHYSICS #define CC_USE_PHYSICS 1 #endif -/** Use culling or not */ +/** Use culling or not. */ #ifndef CC_USE_CULLING #define CC_USE_CULLING 1 #endif @@ -294,54 +277,53 @@ To enable set it to a value different than 0. Disabled by default. #endif #endif // CC_USE_WEBP -/** Enable Script binding */ +/** Enable Script binding. */ #ifndef CC_ENABLE_SCRIPT_BINDING #define CC_ENABLE_SCRIPT_BINDING 1 #endif /** @def CC_CONSTRUCTOR_ACCESS - Indicate the init functions access modifier. If value equals to protected, then these functions are protected. - If value equals to public, these functions are public - - protected by default. + * Indicate the init functions access modifier. If value equals to protected, then these functions are protected. + * If value equals to public, these functions are public + * protected by default. */ #ifndef CC_CONSTRUCTOR_ACCESS #define CC_CONSTRUCTOR_ACCESS protected #endif /** @def CC_ENABLE_ALLOCATOR - Turn on creation of global allocator and pool allocators - as specified by CC_ALLOCATOR_GLOBAL below. + * Turn on creation of global allocator and pool allocators + * as specified by CC_ALLOCATOR_GLOBAL below. */ #ifndef CC_ENABLE_ALLOCATOR # define CC_ENABLE_ALLOCATOR 0 #endif /** @def CC_ENABLE_ALLOCATOR_DIAGNOSTICS - Turn on debugging of allocators. This is slower, uses - more memory, and should not be used for production builds. + * Turn on debugging of allocators. This is slower, uses + * more memory, and should not be used for production builds. */ #ifndef CC_ENABLE_ALLOCATOR_DIAGNOSTICS # define CC_ENABLE_ALLOCATOR_DIAGNOSTICS CC_ENABLE_ALLOCATOR #endif /** @def CC_ENABLE_ALLOCATOR_GLOBAL_NEW_DELETE - Turn on override of global new and delete - as specified by CC_ALLOCATOR_GLOBAL_NEW_DELETE below. + * Turn on override of global new and delete + * as specified by CC_ALLOCATOR_GLOBAL_NEW_DELETE below. */ #ifndef CC_ENABLE_ALLOCATOR_GLOBAL_NEW_DELETE # define CC_ENABLE_ALLOCATOR_GLOBAL_NEW_DELETE 0 # endif//CC_ENABLE_ALLOCATOR_GLOBAL_NEW_DELETE /** @def CC_ALLOCATOR_GLOBAL - Specify allocator to use for global allocator + * Specify allocator to use for global allocator. */ #ifndef CC_ALLOCATOR_GLOBAL # define CC_ALLOCATOR_GLOBAL cocos2d::allocator::AllocatorStrategyDefault #endif /** @def CC_ALLOCATOR_GLOBAL_NEW_DELETE - Specify allocator to use when overriding of new and delete + * Specify allocator to use when overriding of new and delete. */ #ifndef CC_ALLOCATOR_GLOBAL_NEW_DELETE # define CC_ALLOCATOR_GLOBAL_NEW_DELETE cocos2d::allocator::AllocatorStrategyGlobalSmallBlock diff --git a/cocos/doxygen_modules.h b/cocos/doxygen_modules.h deleted file mode 100644 index a3d0a50977..0000000000 --- a/cocos/doxygen_modules.h +++ /dev/null @@ -1,39 +0,0 @@ -/**@defgroup two_d 2D - **/ - -/**@defgroup three_d 3D - **/ - -/**@defgroup audio Audio - **/ - -/**@defgroup base Base - **/ - -/**@defgroup deprecated Deprecated - **/ - -/**@defgroup math Math - **/ - -/**@defgroup network Network - **/ - -/**@defgroup physics Physics - **/ - -/**@defgroup platform Platform - **/ - -/**@defgroup renderer Renderer - **/ - -/**@defgroup scripting Script Binding - **/ - -/**@defgroup storage Storage - **/ - -/**@defgroup ui UI - **/ - diff --git a/cocos/editor-support/cocostudio/FlatBuffersSerialize.cpp b/cocos/editor-support/cocostudio/FlatBuffersSerialize.cpp index fccc97bbc2..7604658117 100644 --- a/cocos/editor-support/cocostudio/FlatBuffersSerialize.cpp +++ b/cocos/editor-support/cocostudio/FlatBuffersSerialize.cpp @@ -1359,7 +1359,22 @@ Offset FlatBuffersSerialize::createProjectNodeOptionsForSimu auto nodeOptions = *(Offset*)(&temp); std::string filename = ""; - + float innerspeed = 1.0f; + + const tinyxml2::XMLAttribute* objattri = objectData->FirstAttribute(); + // inneraction speed + while (objattri) + { + std::string name = objattri->Name(); + std::string value = objattri->Value(); + if (name == "InnerActionSpeed") + { + innerspeed = atof(objattri->Value()); + break; + } + objattri = objattri->Next(); + } + // FileData const tinyxml2::XMLElement* child = objectData->FirstChildElement(); while (child) @@ -1389,7 +1404,8 @@ Offset FlatBuffersSerialize::createProjectNodeOptionsForSimu return CreateProjectNodeOptions(*_builder, nodeOptions, - _builder->CreateString(filename)); + _builder->CreateString(filename), + innerspeed); } } diff --git a/cocos/editor-support/cocostudio/WidgetReader/ArmatureNodeReader/ArmatureNodeReader.cpp b/cocos/editor-support/cocostudio/WidgetReader/ArmatureNodeReader/ArmatureNodeReader.cpp index f4c0032d07..6d7189c225 100644 --- a/cocos/editor-support/cocostudio/WidgetReader/ArmatureNodeReader/ArmatureNodeReader.cpp +++ b/cocos/editor-support/cocostudio/WidgetReader/ArmatureNodeReader/ArmatureNodeReader.cpp @@ -116,24 +116,46 @@ void ArmatureNodeReader::setPropsWithFlatBuffers(cocos2d::Node *node, { auto* custom = static_cast(node); - auto options = (flatbuffers::CSArmatureNodeOption*)nodeOptions; + auto options = (flatbuffers::CSArmatureNodeOption*)nodeOptions; + + bool fileExist = false; + std::string errorFilePath = ""; - std::string filepath(options->fileData()->path()->c_str()); - std::string fullpath = FileUtils::getInstance()->fullPathForFilename(filepath); + std::string filepath(options->fileData()->path()->c_str()); - std::string dirpath = fullpath.substr(0, fullpath.find_last_of("/")); - FileUtils::getInstance()->addSearchPath(dirpath); - - ArmatureDataManager::getInstance()->addArmatureFileInfo(fullpath); - custom->init(getArmatureName(filepath)); - std::string currentname = options->currentAnimationName()->c_str(); - if (options->isAutoPlay()) - custom->getAnimation()->play(currentname, -1, options->isLoop()); - else + if (FileUtils::getInstance()->isFileExist(filepath)) { - custom->getAnimation()->play(currentname); - custom->getAnimation()->gotoAndPause(0); + fileExist = true; + + std::string fullpath = FileUtils::getInstance()->fullPathForFilename(filepath); + + std::string dirpath = fullpath.substr(0, fullpath.find_last_of("/")); + FileUtils::getInstance()->addSearchPath(dirpath); + + ArmatureDataManager::getInstance()->addArmatureFileInfo(fullpath); + custom->init(getArmatureName(filepath)); + std::string currentname = options->currentAnimationName()->c_str(); + if (options->isAutoPlay()) + custom->getAnimation()->play(currentname, -1, options->isLoop()); + else + { + custom->getAnimation()->play(currentname); + custom->getAnimation()->gotoAndPause(0); + } } + else + { + errorFilePath = filepath; + fileExist = false; + } + + if (!fileExist) + { + auto label = Label::create(); + label->setString(__String::createWithFormat("%s missed", filepath.c_str())->getCString()); + custom->addChild(label); + } + } cocos2d::Node* ArmatureNodeReader::createNodeWithFlatBuffers(const flatbuffers::Table *nodeOptions) diff --git a/cocos/network/HttpAsynConnection.h b/cocos/network/HttpAsynConnection.h index 53e65dc32d..21e7f5cd1e 100644 --- a/cocos/network/HttpAsynConnection.h +++ b/cocos/network/HttpAsynConnection.h @@ -26,7 +26,7 @@ #import #import - +/// @cond @interface HttpAsynConnection : NSObject { } @@ -46,6 +46,7 @@ @property (readonly) NSString *statusString; @property (strong) NSError *responseError; +@property (strong) NSError *connError; @property (strong) NSURLConnection *conn; @@ -57,5 +58,5 @@ -(void) startRequest:(NSURLRequest*)request; @end - +/// @endcond #endif //__HTTPASYNCONNECTION_H__ diff --git a/cocos/network/HttpAsynConnection.m b/cocos/network/HttpAsynConnection.m index 1be9ff2fdd..a9177d7805 100755 --- a/cocos/network/HttpAsynConnection.m +++ b/cocos/network/HttpAsynConnection.m @@ -40,6 +40,7 @@ @synthesize responseCode; @synthesize statusString; @synthesize responseError; +@synthesize connError; @synthesize conn; @synthesize finish; @synthesize runLoop; @@ -65,7 +66,9 @@ self.responseData = [NSMutableData data]; getDataTime = 0; + self.responseError = nil; + self.connError = nil; // create the connection with the target request and this class as the delegate self.conn = [[[NSURLConnection alloc] initWithRequest:request @@ -109,10 +112,9 @@ */ if (responseCode < 200 || responseCode >= 300) {// something went wrong, abort the whole thing - - [connection cancel]; - finish = true; - return; + self.responseError = [NSError errorWithDomain:@"CCBackendDomain" + code:responseCode + userInfo:@{NSLocalizedDescriptionKey: @"Bad HTTP Response Code"}]; } [responseData setLength:0]; @@ -138,7 +140,7 @@ didFailWithError:(NSError *)error { //NSLog(@"Load failed with error %@", [error localizedDescription]); - self.responseError = error; + self.connError = error; finish = true; } diff --git a/cocos/network/HttpClient-apple.mm b/cocos/network/HttpClient-apple.mm index 883bb85a3d..34c9f64d0e 100644 --- a/cocos/network/HttpClient-apple.mm +++ b/cocos/network/HttpClient-apple.mm @@ -242,11 +242,18 @@ static int processTask(HttpRequest *request, NSString* requestType, void *stream } //if http connection return error + if (httpAsynConn.connError != nil) + { + NSString* errorString = [httpAsynConn.connError localizedDescription]; + strcpy(errorBuffer, [errorString UTF8String]); + return 0; + } + + //if http response got error, just log the error if (httpAsynConn.responseError != nil) { NSString* errorString = [httpAsynConn.responseError localizedDescription]; strcpy(errorBuffer, [errorString UTF8String]); - return 0; } *responseCode = httpAsynConn.responseCode; diff --git a/cocos/network/HttpClient.h b/cocos/network/HttpClient.h index 4f5d50d0ee..0b3d938d77 100644 --- a/cocos/network/HttpClient.h +++ b/cocos/network/HttpClient.h @@ -29,7 +29,6 @@ #include "network/HttpRequest.h" #include "network/HttpResponse.h" -#include "network/HttpClient.h" NS_CC_BEGIN @@ -41,30 +40,44 @@ namespace network { */ -/** @brief Singleton that handles asynchrounous http requests - * Once the request completed, a callback will issued in main thread when it provided during make request +/** Singleton that handles asynchrounous http requests. + * + * Once the request completed, a callback will issued in main thread when it provided during make request. + * + * @lua NA */ class CC_DLL HttpClient { public: - /** Return the shared instance **/ + /** + * Get instance of HttpClient. + * + * @return the instance of HttpClient. + */ static HttpClient *getInstance(); - /** Relase the shared instance **/ + /** + * Relase the instance of HttpClient. + */ static void destroyInstance(); - /** Enable cookie support. **/ + /** + * Enable cookie support. + * + * @param cookieFile the filepath of cookie file. + */ void enableCookies(const char* cookieFile); /** * Set root certificate path for SSL verification. - * @param caFile a full path of root certificate. - * if it is empty, SSL verification is disabled. + * + * @param caFile a full path of root certificate.if it is empty, SSL verification is disabled. */ void setSSLVerification(const std::string& caFile); /** * Add a get request to task queue + * * @param request a HttpRequest object, which includes url, response callback etc. please make sure request->_requestData is clear before calling "send" here. */ @@ -72,6 +85,7 @@ public: /** * Immediate send a request + * * @param request a HttpRequest object, which includes url, response callback etc. please make sure request->_requestData is clear before calling "sendImmediate" here. */ @@ -79,28 +93,32 @@ public: /** - * Change the connect timeout - * @param value The desired timeout. + * Set the timeout value for connecting. + * + * @param value the timeout value for connecting. */ inline void setTimeoutForConnect(int value) {_timeoutForConnect = value;}; /** - * Get connect timeout - * @return int + * Get the timeout value for connecting. + * + * @return int the timeout value for connecting. */ inline int getTimeoutForConnect() {return _timeoutForConnect;} /** - * Change the download timeout - * @param value + * Set the timeout value for reading. + * + * @param value the timeout value for reading. */ inline void setTimeoutForRead(int value) {_timeoutForRead = value;}; /** - * Get download timeout - * @return int + * Get the timeout value for reading. + * + * @return int the timeout value for reading. */ inline int getTimeoutForRead() {return _timeoutForRead;}; diff --git a/cocos/network/HttpRequest.h b/cocos/network/HttpRequest.h index fe5bdf0903..34938cdc50 100644 --- a/cocos/network/HttpRequest.h +++ b/cocos/network/HttpRequest.h @@ -43,9 +43,11 @@ typedef void (cocos2d::Ref::*SEL_HttpResponse)(HttpClient* client, HttpResponse* #define httpresponse_selector(_SELECTOR) (cocos2d::network::SEL_HttpResponse)(&_SELECTOR) /** - @brief defines the object which users must packed for HttpClient::send(HttpRequest*) method. - Please refer to tests/test-cpp/Classes/ExtensionTest/NetworkTest/HttpClientTest.cpp as a sample - @since v2.0.2 + * Defines the object which users must packed for HttpClient::send(HttpRequest*) method. + * Please refer to tests/test-cpp/Classes/ExtensionTest/NetworkTest/HttpClientTest.cpp as a sample + * @since v2.0.2 + * + * @lua NA */ #if (CC_TARGET_PLATFORM == CC_PLATFORM_WP8) || (CC_TARGET_PLATFORM == CC_PLATFORM_WINRT) @@ -57,7 +59,9 @@ typedef void (cocos2d::Ref::*SEL_HttpResponse)(HttpClient* client, HttpResponse* class CC_DLL HttpRequest : public Ref { public: - /** Use this enum type as param in setReqeustType(param) */ + /** + * The HttpRequest type enum used in the HttpRequest::setRequestType. + */ enum class Type { GET, @@ -67,11 +71,12 @@ public: UNKNOWN, }; - /** Constructor - Because HttpRequest object will be used between UI thead and network thread, - requestObj->autorelease() is forbidden to avoid crashes in AutoreleasePool - new/retain/release still works, which means you need to release it manually - Please refer to HttpRequestTest.cpp to find its usage + /** + * Constructor. + * Because HttpRequest object will be used between UI thead and network thread, + requestObj->autorelease() is forbidden to avoid crashes in AutoreleasePool + new/retain/release still works, which means you need to release it manually + Please refer to HttpRequestTest.cpp to find its usage. */ HttpRequest() { @@ -85,7 +90,7 @@ public: _pUserData = nullptr; }; - /** Destructor */ + /** Destructor. */ virtual ~HttpRequest() { if (_pTarget) @@ -94,7 +99,12 @@ public: } }; - /** Override autorelease method to avoid developers to call it */ + /** + * Override autorelease method to avoid developers to call it. + * If this function was called, it would trigger assert in debug mode + * + * @return Ref* always return nullptr. + */ Ref* autorelease(void) { CCASSERT(false, "HttpResponse is used between network thread and ui thread \ @@ -104,38 +114,60 @@ public: // setter/getters for properties - /** Required field for HttpRequest object before being sent. - kHttpGet & kHttpPost is currently supported + /** + * Set request type of HttpRequest object before being sent,now it support the enum value of HttpRequest::Type. + * + * @param type the request type. */ inline void setRequestType(Type type) { _requestType = type; }; - /** Get back the kHttpGet/Post/... enum value */ + /** + * Get the request type of HttpRequest object. + * + * @return HttpRequest::Type. + */ inline Type getRequestType() { return _requestType; }; - /** Required field for HttpRequest object before being sent. + /** + * Set the url address of HttpRequest object. + * The url value could be like these: "http://httpbin.org/ip" or "https://httpbin.org/get" + * + * @param url the string pointer. */ inline void setUrl(const char* url) { _url = url; }; - /** Get back the setted url */ + /** + * Get the url address of HttpRequest object. + * + * @return const char* the pointer of _url. + */ inline const char* getUrl() { return _url.c_str(); }; - /** Option field. You can set your post data here + /** + * Set the request data of HttpRequest object. + * + * @param buffer the buffer of request data, it support binary data. + * @param len the size of request data. */ inline void setRequestData(const char* buffer, size_t len) { _requestData.assign(buffer, buffer + len); }; - /** Get the request data pointer back */ + /** + * Get the request data pointer of HttpRequest object. + * + * @return char* the request data pointer. + */ inline char* getRequestData() { if(_requestData.size() != 0) @@ -143,48 +175,78 @@ public: return nullptr; } - /** Get the size of request data back */ + /** + * Get the size of request data + * + * @return ssize_t the size of request data + */ inline ssize_t getRequestDataSize() { return _requestData.size(); } - /** Option field. You can set a string tag to identify your request, this tag can be found in HttpResponse->getHttpRequest->getTag() + /** + * Set a string tag to identify your request. + * This tag can be found in HttpResponse->getHttpRequest->getTag(). + * + * @param tag the string pointer */ inline void setTag(const char* tag) { _tag = tag; }; - /** Get the string tag back to identify the request. - The best practice is to use it in your MyClass::onMyHttpRequestCompleted(sender, HttpResponse*) callback + /** + * Get the string tag to identify the request. + * The best practice is to use it in your MyClass::onMyHttpRequestCompleted(sender, HttpResponse*) callback. + * + * @return const char* the pointer of _tag */ inline const char* getTag() { return _tag.c_str(); }; - /** Option field. You can attach a customed data in each request, and get it back in response callback. - But you need to new/delete the data pointer manully + /** + * Set user-customed data of HttpRequest object. + * You can attach a customed data in each request, and get it back in response callback. + * But you need to new/delete the data pointer manully. + * + * @param pUserData the string pointer */ inline void setUserData(void* pUserData) { _pUserData = pUserData; }; - /** Get the pre-setted custom data pointer back. - Don't forget to delete it. HttpClient/HttpResponse/HttpRequest will do nothing with this pointer + /** + * Get the user-customed data pointer which were pre-setted. + * Don't forget to delete it. HttpClient/HttpResponse/HttpRequest will do nothing with this pointer. + * + * @return void* the pointer of user-customed data. */ inline void* getUserData() { return _pUserData; }; - /** Required field. You should set the callback selector function at ack the http request completed + /** + * Set the target and related callback selector. + * When response come back, it would call (pTarget->*pSelector) to process something. + * + * @param pTarget the target object pointer. + * @param pSelector the callback function. */ CC_DEPRECATED_ATTRIBUTE inline void setResponseCallback(Ref* pTarget, SEL_CallFuncND pSelector) { setResponseCallback(pTarget, (SEL_HttpResponse) pSelector); } - + + /** + * Set the target and related callback selector of HttpRequest object. + * When response come back, we would call (pTarget->*pSelector) to process response data. + * + * @param pTarget the target object pointer. + * @param pSelector the SEL_HttpResponse function. + */ CC_DEPRECATED_ATTRIBUTE inline void setResponseCallback(Ref* pTarget, SEL_HttpResponse pSelector) { _pTarget = pTarget; @@ -195,49 +257,81 @@ public: _pTarget->retain(); } } - + /** + * Set response callback function of HttpRequest object. + * When response come back, we would call _pCallback to process response data. + * + * @param callback the ccHttpRequestCallback function. + */ inline void setResponseCallback(const ccHttpRequestCallback& callback) { _pCallback = callback; } - /** Get the target of callback selector funtion, mainly used by HttpClient */ + /** + * Get the target of callback selector funtion, mainly used by HttpClient. + * + * @return Ref* the target of callback selector funtion + */ inline Ref* getTarget() { return _pTarget; } - /* This sub class is just for migration SEL_CallFuncND to SEL_HttpResponse, - someday this way will be removed */ + /** + * This sub class is just for migration SEL_CallFuncND to SEL_HttpResponse,someday this way will be removed. + * + * @lua NA + */ class _prxy { public: + /** Constructor. */ _prxy( SEL_HttpResponse cb ) :_cb(cb) {} + /** Destructor. */ ~_prxy(){}; + /** Destructor. */ operator SEL_HttpResponse() const { return _cb; } CC_DEPRECATED_ATTRIBUTE operator SEL_CallFuncND() const { return (SEL_CallFuncND) _cb; } protected: SEL_HttpResponse _cb; }; - /** Get the selector function pointer, mainly used by HttpClient */ + /** + * Get _prxy object by the _pSelector. + * + * @return _prxy the _prxy object + */ inline _prxy getSelector() { return _prxy(_pSelector); } + /** + * Get ccHttpRequestCallback callback function. + * + * @return const ccHttpRequestCallback& ccHttpRequestCallback callback function. + */ inline const ccHttpRequestCallback& getCallback() { return _pCallback; } - /** Set any custom headers **/ + /** + * Set custom-defined headers. + * + * @param pHeaders the string vector of custom-defined headers. + */ inline void setHeaders(std::vector pHeaders) { _headers=pHeaders; } - /** Get custom headers **/ + /** + * Get custom headers. + * + * @return std::vector the string vector of custom-defined headers. + */ inline std::vector getHeaders() { return _headers; diff --git a/cocos/network/HttpResponse.h b/cocos/network/HttpResponse.h index e2c89b7098..40f8de2250 100644 --- a/cocos/network/HttpResponse.h +++ b/cocos/network/HttpResponse.h @@ -33,15 +33,17 @@ NS_CC_BEGIN namespace network { /** - @brief defines the object which users will receive at onHttpCompleted(sender, HttpResponse) callback - Please refer to samples/TestCpp/Classes/ExtensionTest/NetworkTest/HttpClientTest.cpp as a sample - @since v2.0.2 + * @brief defines the object which users will receive at onHttpCompleted(sender, HttpResponse) callback. + * Please refer to samples/TestCpp/Classes/ExtensionTest/NetworkTest/HttpClientTest.cpp as a sample. + * @since v2.0.2. + * @lua NA */ class CC_DLL HttpResponse : public cocos2d::Ref { public: - /** Constructor, it's used by HttpClient internal, users don't need to create HttpResponse manually - @param request the corresponding HttpRequest which leads to this response + /** + * Constructor, it's used by HttpClient internal, users don't need to create HttpResponse manually. + * @param request the corresponding HttpRequest which leads to this response. */ HttpResponse(HttpRequest* request) { @@ -57,8 +59,9 @@ public: _responseDataString = ""; } - /** Destructor, it will be called in HttpClient internal, - users don't need to desturct HttpResponse object manully + /** + * Destructor, it will be called in HttpClient internal. + * Users don't need to desturct HttpResponse object manully. */ virtual ~HttpResponse() { @@ -68,7 +71,11 @@ public: } } - /** Override autorelease method to prevent developers from calling it */ + /** + * Override autorelease method to prevent developers from calling it. + * If this method is called , it would trigger CCASSERT. + * @return cocos2d::Ref* always return nullptr. + */ cocos2d::Ref* autorelease(void) { CCASSERT(false, "HttpResponse is used between network thread and ui thread \ @@ -78,44 +85,59 @@ public: // getters, will be called by users - /** Get the corresponding HttpRequest object which leads to this response - There's no paired setter for it, coz it's already setted in class constructor + /** + * Get the corresponding HttpRequest object which leads to this response. + * There's no paired setter for it, because it's already setted in class constructor + * @return HttpRequest* the corresponding HttpRequest object which leads to this response. */ inline HttpRequest* getHttpRequest() { return _pHttpRequest; } - /** To see if the http reqeust is returned successfully, - Althrough users can judge if (http return code = 200), we want an easier way - If this getter returns false, you can call getResponseCode and getErrorBuffer to find more details + /** + * To see if the http reqeust is returned successfully. + * Althrough users can judge if (http response code = 200), we want an easier way. + * If this getter returns false, you can call getResponseCode and getErrorBuffer to find more details. + * @return bool the flag that represent whether the http request return sucesssfully or not. */ inline bool isSucceed() { return _succeed; }; - /** Get the http response raw data */ + /** + * Get the http response data. + * @return std::vector* the pointer that point to the _responseData. + */ inline std::vector* getResponseData() { return &_responseData; } - /** get the Rawheader **/ + /** + * Get the response headers. + * @return std::vector* the pointer that point to the _responseHeader. + */ inline std::vector* getResponseHeader() { return &_responseHeader; } - /** Get the http response errorCode - * I know that you want to see http 200 :) + /** + * Get the http response code to judge whether response is sucessful or not. + * I know that you want to see the _responseCode is 200. + * If _responseCode is not 200, you should check the meaning for _responseCode by the net. + * @return long the value of _responseCode */ inline long getResponseCode() { return _responseCode; } - /** Get the rror buffer which will tell you more about the reason why http request failed + /** + * Get the rror buffer which will tell you more about the reason why http request failed. + * @return const char* the pointer that point to _errorBuffer. */ inline const char* getErrorBuffer() { @@ -126,9 +148,10 @@ public: // users should avoid invoking these methods - /** Set if the http request is returned successfully, - Althrough users can judge if (http code == 200), we want a easier way - This setter is mainly used in HttpClient, users mustn't set it directly + /** + * Set whether the http request is returned successfully or not, + * This setter is mainly used in HttpClient, users mustn't set it directly + * @param value the flag represent whether the http request is successful or not. */ inline void setSucceed(bool value) { @@ -136,14 +159,18 @@ public: }; - /** Set the http response raw buffer, is used by HttpClient + /** + * Set the http response data buffer, it is used by HttpClient. + * @param data the pointer point to the response data buffer. */ inline void setResponseData(std::vector* data) { _responseData = *data; } - /** Set the http response Header raw buffer, is used by HttpClient + /** + * Set the http response headers buffer, it is used by HttpClient. + * @param data the pointer point to the response headers buffer. */ inline void setResponseHeader(std::vector* data) { @@ -151,7 +178,9 @@ public: } - /** Set the http response errorCode + /** + * Set the http response code. + * @param value the http response code that represent whether the request is successful or not. */ inline void setResponseCode(long value) { @@ -159,7 +188,9 @@ public: } - /** Set the error buffer which will tell you more the reason why http request failed + /** + * Set the error buffer which will tell you more the reason why http request failed. + * @param value a string pointer that point to the reason. */ inline void setErrorBuffer(const char* value) { @@ -167,12 +198,21 @@ public: _errorBuffer.assign(value); }; + /** + * Set the response data by the string pointer and the defined size. + * @param value a string pointer that point to response data buffer. + * @param n the defined size that the response data buffer would be copied. + */ inline void setResponseDataString(const char* value, size_t n) { _responseDataString.clear(); _responseDataString.assign(value, n); } + /** + * Get the string pointer that point to the response data. + * @return const char* the string pointer that point to the response data. + */ inline const char* getResponseDataString() { return _responseDataString.c_str(); diff --git a/cocos/network/SocketIO.h b/cocos/network/SocketIO.h index 6e1f7fd682..2c324941ce 100644 --- a/cocos/network/SocketIO.h +++ b/cocos/network/SocketIO.h @@ -73,36 +73,88 @@ class SIOClientImpl; class SIOClient; /** - * @brief Singleton and wrapper class to provide static creation method as well as registry of all sockets + * Singleton and wrapper class to provide static creation method as well as registry of all sockets. + * + * @lua NA */ class CC_DLL SocketIO { public: + /** + * Get instance of SocketIO. + * + * @return SocketIO* the instance of SocketIO. + */ static SocketIO* getInstance(); static void destroyInstance(); /** - * @brief The delegate class to process socket.io events + * The delegate class to process socket.io events. + * @lua NA */ class SIODelegate { public: + /** Destructor of SIODelegate. */ virtual ~SIODelegate() {} + /** + * Pure virtual callback function, this function should be overrided by the subclass. + * + * This function would be called when the related SIOClient object recevie messages that mean it have connected to endpoint sucessfully. + * + * @param client the connected SIOClient object. + */ virtual void onConnect(SIOClient* client) = 0; + /** + * Pure virtual callback function, this function should be overrided by the subclass. + * + * This function would be called wwhen the related SIOClient object recevie message or json message. + * + * @param client the connected SIOClient object. + * @param data the message,it could be json message + */ virtual void onMessage(SIOClient* client, const std::string& data) = 0; + /** + * Pure virtual callback function, this function should be overrided by the subclass. + * + * This function would be called when the related SIOClient object disconnect or recevie disconnect signal. + * + * @param client the connected SIOClient object. + */ virtual void onClose(SIOClient* client) = 0; + /** + * Pure virtual callback function, this function should be overrided by the subclass. + * + * This function would be called wwhen the related SIOClient object recevie error signal or didn't connect the endpoint but do some network operation,eg.,send and emit,etc. + * + * @param client the connected SIOClient object. + * @param data the error message + */ virtual void onError(SIOClient* client, const std::string& data) = 0; + /** + * Fire event to script when the related SIOClient object receive the fire event signal. + * + * @param client the connected SIOClient object. + * @param eventName the event's name. + * @param data the event's data information. + */ virtual void fireEventToScript(SIOClient* client, const std::string& eventName, const std::string& data) { CCLOG("SIODelegate event '%s' fired with data: %s", eventName.c_str(), data.c_str()); }; }; /** - * @brief Static client creation method, similar to socketio.connect(uri) in JS - * @param delegate The delegate which want to receive events from the socket.io client - * @param uri The URI of the socket.io server - * @return An initialized SIOClient if connected successfully, otherwise NULL + * Static client creation method, similar to socketio.connect(uri) in JS. + * @param uri the URI of the socket.io server. + * @param delegate the delegate which want to receive events from the socket.io client. + * @return SIOClient* an initialized SIOClient if connected successfully, otherwise nullptr. */ static SIOClient* connect(const std::string& uri, SocketIO::SIODelegate& delegate); + /** + * Static client creation method, similar to socketio.connect(uri) in JS. + * @param delegate the delegate which want to receive events from the socket.io client. + * @param uri the URI of the socket.io server. + * @return SIOClient* an initialized SIOClient if connected successfully, otherwise nullptr. + */ CC_DEPRECATED_ATTRIBUTE static SIOClient* connect(SocketIO::SIODelegate& delegate, const std::string& uri); private: @@ -129,8 +181,10 @@ typedef std::function SIOEvent; typedef std::unordered_map EventRegistry; /** - * @brief A single connection to a socket.io endpoint - */ + * A single connection to a socket.io endpoint. + * + * @lua NA + */ class CC_DLL SIOClient : public cocos2d::Ref { @@ -153,37 +207,64 @@ private: friend class SIOClientImpl; public: + /** + * Construtor of SIOClient class. + * + * @param host the string that represent the host address. + * @param port the int value represent the port number. + * @param path the string that represent endpoint. + * @param impl the SIOClientImpl object. + * @param delegate the SIODelegate object. + */ SIOClient(const std::string& host, int port, const std::string& path, SIOClientImpl* impl, SocketIO::SIODelegate& delegate); + /** + * Destructior of SIOClient class. + */ virtual ~SIOClient(void); /** - * @brief Returns the delegate for the client + * Get the delegate for the client + * @return the delegate object for the client */ SocketIO::SIODelegate* getDelegate() { return _delegate; }; /** - * @brief Disconnect from the endpoint, onClose will be called on the delegate when complete + * Disconnect from the endpoint, onClose will be called for the delegate when complete */ void disconnect(); /** - * @brief Send a message to the socket.io server + * Send a message to the socket.io server. + * + * @param s message. */ void send(std::string s); /** - * @brief The delegate class to process socket.io events + * Emit the eventname and the args to the endpoint that _path point to. + * @param eventname + * @param args */ void emit(std::string eventname, std::string args); /** - * @brief Used to register a socket.io event callback - * Event argument should be passed using CC_CALLBACK2(&Base::function, this) + * Used to register a socket.io event callback. + * Event argument should be passed using CC_CALLBACK2(&Base::function, this). + * @param eventName. + * @param e the callback function. */ void on(const std::string& eventName, SIOEvent e); - + + /** + * Set tag of SIOClient. + * The tag is used to distinguish the various SIOClient objects. + * @param tag string object. + */ inline void setTag(const char* tag) { _tag = tag; }; - + /** + * Get tag of SIOClient. + * @return const char* the pointer point to the _tag. + */ inline const char* getTag() { return _tag.c_str(); diff --git a/cocos/network/WebSocket.h b/cocos/network/WebSocket.h index b5f0048976..e5c06b6d76 100644 --- a/cocos/network/WebSocket.h +++ b/cocos/network/WebSocket.h @@ -51,17 +51,21 @@ class CC_DLL WebSocket { public: /** + * Construtor of WebSocket. + * * @js ctor */ WebSocket(); /** + * Destructor of WebSocket. + * * @js NA * @lua NA */ virtual ~WebSocket(); /** - * @brief Data structure for message + * Data structure for message */ struct Data { @@ -72,36 +76,67 @@ public: }; /** - * @brief Errors in websocket + * ErrorCode enum used to represent the error in the websocket. */ enum class ErrorCode { - TIME_OUT, - CONNECTION_FAILURE, - UNKNOWN, + TIME_OUT, /** < value 0 */ + CONNECTION_FAILURE, /** < value 1 */ + UNKNOWN, /** < value 2 */ }; /** - * Websocket state + * State enum used to represent the Websocket state. */ enum class State { - CONNECTING, - OPEN, - CLOSING, - CLOSED, + CONNECTING, /** < value 0 */ + OPEN, /** < value 1 */ + CLOSING, /** < value 2 */ + CLOSED, /** < value 3 */ }; /** - * @brief The delegate class to process websocket events. + * The delegate class is used to process websocket events. + * + * The most member function are pure virtual functions,they should be implemented the in subclass. + * @lua NA */ class Delegate { public: + /** Destructor of Delegate. */ virtual ~Delegate() {} + /** + * This function to be called after the client connection complete a handshake with the remote server. + * This means that the WebSocket connection is ready to send and receive data. + * + * @param ws The WebSocket object connected + */ virtual void onOpen(WebSocket* ws) = 0; + /** + * This function to be called when data has appeared from the server for the client connection. + * + * @param ws The WebSocket object connected. + * @param data Data object for message. + */ virtual void onMessage(WebSocket* ws, const Data& data) = 0; + /** + * When the WebSocket object connected wants to close or the protocol won't get used at all and current _readyState is State::CLOSING,this function is to be called. + * + * @param ws The WebSocket object connected. + */ virtual void onClose(WebSocket* ws) = 0; + /** + * This function is to be called in the following cases: + * 1. client connection is failed. + * 2. the request client connection has been unable to complete a handshake with the remote server. + * 3. the protocol won't get used at all after this callback and current _readyState is State::CONNECTING. + * 4. when a socket descriptor needs to be removed from an external polling array. in is again the struct libwebsocket_pollargs containing the fd member to be removed. If you are using the internal polling loop, you can just ignore it and current _readyState is State::CONNECTING. + * + * @param ws The WebSocket object connected. + * @param error WebSocket::ErrorCode enum,would be ErrorCode::TIME_OUT or ErrorCode::CONNECTION_FAILURE. + */ virtual void onError(WebSocket* ws, const ErrorCode& error) = 0; }; @@ -111,7 +146,8 @@ public: * It needs to be invoked right after websocket instance is allocated. * @param delegate The delegate which want to receive event from websocket. * @param url The URL of websocket server. - * @return true: Success, false: Failure + * @return true: Success, false: Failure. + * @lua NA */ bool init(const Delegate& delegate, const std::string& url, @@ -119,11 +155,18 @@ public: /** * @brief Sends string data to websocket server. + * + * @param message string data. + * @lua sendstring */ void send(const std::string& message); /** * @brief Sends binary data to websocket server. + * + * @param binaryMsg binary string data. + * @param len the size of binary string data. + * @lua sendstring */ void send(const unsigned char* binaryMsg, unsigned int len); @@ -134,6 +177,7 @@ public: /** * @brief Gets current state of connection. + * @return State the state value coule be State::CONNECTING, State::OPEN, State::CLOSING or State::CLOSED */ State getReadyState(); diff --git a/cocos/physics/CCPhysicsBody.h b/cocos/physics/CCPhysicsBody.h index 91cfc57d53..a89c6fee5b 100644 --- a/cocos/physics/CCPhysicsBody.h +++ b/cocos/physics/CCPhysicsBody.h @@ -47,99 +47,250 @@ typedef Vec2 Vect; const PhysicsMaterial PHYSICSBODY_MATERIAL_DEFAULT(0.1f, 0.5f, 0.5f); +/** + * @addtogroup physics + * @{ + */ + /** * A body affect by physics. - * it can attach one or more shapes. - * if you create body with createXXX, it will automatically compute mass and moment with density your specified(which is PHYSICSBODY_MATERIAL_DEFAULT by default, and the density value is 0.1f), and it based on the formular: mass = density * area. - * if you create body with createEdgeXXX, the mass and moment will be PHYSICS_INFINITY by default. and it's a static body. - * you can change mass and moment with setMass() and setMoment(). and you can change the body to be dynamic or static by use function setDynamic(). + * + * It can attach one or more shapes. + * If you create body with createXXX, it will automatically compute mass and moment with density your specified(which is PHYSICSBODY_MATERIAL_DEFAULT by default, and the density value is 0.1f), and it based on the formular: mass = density * area. + * If you create body with createEdgeXXX, the mass and moment will be PHYSICS_INFINITY by default. And it's a static body. + * You can change mass and moment with setMass() and setMoment(). And you can change the body to be dynamic or static by use function setDynamic(). */ class CC_DLL PhysicsBody : public Ref { public: - /** create a body with defult mass and moment. */ + /** + Create a body with default mass and moment. + + This default mass value is 1.0. + This default moment value is 200. + @return An autoreleased PhysicsBody object pointer. + */ static PhysicsBody* create(); - /** create a body with mass and defult moment. */ + + /** + Create a body with mass and default moment. + + @param mass This body's mass. + @return An autoreleased PhysicsBody object pointer. + */ static PhysicsBody* create(float mass); - /** create a body with mass and moment. */ + + /** + Create a body with mass and moment. + + @param mass This body's mass. + @param moment This body's moment. + @return An autoreleased PhysicsBody object pointer. + */ static PhysicsBody* create(float mass, float moment); - /** Create a body contains a circle shape. */ + + /** + Create a body contains a circle. + + @param radius A float number, it is the circle's radius. + @param material A PhysicsMaterial object, the default value is PHYSICSSHAPE_MATERIAL_DEFAULT. + @param offset A Vec2 object, it is the offset from the body’s center of gravity in body local coordinates. + @return An autoreleased PhysicsBody object pointer. + */ static PhysicsBody* createCircle(float radius, const PhysicsMaterial& material = PHYSICSBODY_MATERIAL_DEFAULT, const Vec2& offset = Vec2::ZERO); - /** Create a body contains a box shape. */ + /** + * Create a body contains a box shape. + * + * @param size Size contains this box's width and height. + * @param material A PhysicsMaterial object, the default value is PHYSICSSHAPE_MATERIAL_DEFAULT. + * @param offset A Vec2 object, it is the offset from the body’s center of gravity in body local coordinates. + * @return An autoreleased PhysicsBody object pointer. + */ static PhysicsBody* createBox(const Size& size, const PhysicsMaterial& material = PHYSICSBODY_MATERIAL_DEFAULT, const Vec2& offset = Vec2::ZERO); + /** * @brief Create a body contains a polygon shape. - * points is an array of Vec2 structs defining a convex hull with a clockwise winding. + * + * @param points Points is an array of Vec2 structs defining a convex hull with a clockwise winding. + * @param count An interger number, contains the count of the points array. + * @param material A PhysicsMaterial object, the default value is PHYSICSSHAPE_MATERIAL_DEFAULT. + * @param offset A Vec2 object, it is the offset from the body’s center of gravity in body local coordinates. + * @return An autoreleased PhysicsBody object pointer. */ static PhysicsBody* createPolygon(const Vec2* points, int count, const PhysicsMaterial& material = PHYSICSBODY_MATERIAL_DEFAULT, const Vec2& offset = Vec2::ZERO); - /** Create a body contains a EdgeSegment shape. */ + /** + Create a body contains a EdgeSegment shape. + + * @param a It's the edge's begin position. + * @param b It's the edge's end position. + * @param material A PhysicsMaterial object, the default value is PHYSICSSHAPE_MATERIAL_DEFAULT. + * @param border It's a edge's border width. + * @return An autoreleased PhysicsBody object pointer. + */ static PhysicsBody* createEdgeSegment(const Vec2& a, const Vec2& b, const PhysicsMaterial& material = PHYSICSBODY_MATERIAL_DEFAULT, float border = 1); - /** Create a body contains a EdgeBox shape. */ + + /** + Create a body contains a EdgeBox shape. + + * @param size Size contains this box's width and height. + * @param material A PhysicsMaterial object, the default value is PHYSICSSHAPE_MATERIAL_DEFAULT. + * @param border It's a edge's border width. + * @param offset A Vec2 object, it is the offset from the body’s center of gravity in body local coordinates. + * @return An autoreleased PhysicsBody object pointer. + */ static PhysicsBody* createEdgeBox(const Size& size, const PhysicsMaterial& material = PHYSICSBODY_MATERIAL_DEFAULT, float border = 1, const Vec2& offset = Vec2::ZERO); - /** Create a body contains a EdgePolygon shape. */ + + /** + Create a body contains a EdgePolygon shape. + + * @param points Points is an array of Vec2 structs defining a convex hull with a clockwise winding. + * @param count An interger number, contains the count of the points array. + * @param material A PhysicsMaterial object, the default value is PHYSICSSHAPE_MATERIAL_DEFAULT. + * @param border It's a edge's border width. + * @return An autoreleased PhysicsBody object pointer. + */ static PhysicsBody* createEdgePolygon(const Vec2* points, int count, const PhysicsMaterial& material = PHYSICSBODY_MATERIAL_DEFAULT, float border = 1); - /** Create a body contains a EdgeChain shape. */ + + /** + Create a body contains a EdgeChain shape. + + * @param points A Vec2 object pointer, it contains an array of points. + * @param count An interger number, contains the count of the points array. + * @param material A PhysicsMaterial object, the default value is PHYSICSSHAPE_MATERIAL_DEFAULT. + * @param border It's a edge's border width. + * @return An autoreleased PhysicsBody object pointer. + */ static PhysicsBody* createEdgeChain(const Vec2* points, int count, const PhysicsMaterial& material = PHYSICSBODY_MATERIAL_DEFAULT, float border = 1); - /* - * @brief add a shape to body - * @param shape the shape to be added - * @param addMassAndMoment if this is true, the shape's mass and moment will be added to body. the default is true + /** + * @brief Add a shape to body. + * @param shape The shape to be added. + * @param addMassAndMoment If this is true, the shape's mass and moment will be added to body. The default is true. + * @return This shape's pointer if added success or nullptr if failed. */ virtual PhysicsShape* addShape(PhysicsShape* shape, bool addMassAndMoment = true); - /* - * @brief remove a shape from body - * @param shape the shape to be removed - * @param reduceMassAndMoment if this is true, the body mass and moment will be reduced by shape. the default is true + + /** + * @brief Remove a shape from body. + * @param shape Shape the shape to be removed. + * @param reduceMassAndMoment If this is true, the body mass and moment will be reduced by shape. The default is true. */ void removeShape(PhysicsShape* shape, bool reduceMassAndMoment = true); - /* - * @brief remove a shape from body - * @param tag the tag of the shape to be removed - * @param reduceMassAndMoment if this is true, the body mass and moment will be reduced by shape. the default is true + + /** + * @brief Remove a shape from body. + * @param tag The tag of the shape to be removed. + * @param reduceMassAndMoment If this is true, the body mass and moment will be reduced by shape. The default is true. */ void removeShape(int tag, bool reduceMassAndMoment = true); - /* remove all shapes */ + + /** + Remove all shapes. + + * @param reduceMassAndMoment If this is true, the body mass and moment will be reduced by shape. The default is true. + */ void removeAllShapes(bool reduceMassAndMoment = true); - /* get the body shapes. */ + + /** + Get the body shapes. + + * @return A Vector object contains PhysicsShape pointer. + */ inline const Vector& getShapes() const { return _shapes; } - /* get the first shape of the body shapes. */ + + /** + Get the first shape of the body shapes. + + @return The first shape in this body. + */ inline PhysicsShape* getFirstShape() const { return _shapes.size() >= 1 ? _shapes.at(0) : nullptr; } - /* get the shape of the body. */ + + /** + get the shape of the body. + + @param tag An interger number that identifies a PhysicsShape object. + @return A PhysicsShape object pointer or nullptr if no shapes were found. + */ PhysicsShape* getShape(int tag) const; - /** Applies a immediate force to body. */ + /** + Applies a continuous force to body. + + @param force The force is applies to this body. + */ virtual void applyForce(const Vect& force); - /** Applies a immediate force to body. */ + + /** + Applies a continuous force to body. + + @param force The force is applies to this body. + @param offset A Vec2 object, it is the offset from the body’s center of gravity in world coordinates. + */ virtual void applyForce(const Vect& force, const Vec2& offset); - /** reset all the force applied to body. */ + + /** + reset all the force applied to body. + */ virtual void resetForces(); - /** Applies a continuous force to body. */ + + /** + Applies a immediate force to body. + + @param impulse The impulse is applies to this body. + */ virtual void applyImpulse(const Vect& impulse); - /** Applies a continuous force to body. */ + + /** + Applies a immediate force to body. + + @param impulse The impulse is applies to this body. + @param offset A Vec2 object, it is the offset from the body’s center of gravity in world coordinates. + */ virtual void applyImpulse(const Vect& impulse, const Vec2& offset); - /** Applies a torque force to body. */ + + /** + Applies a torque force to body. + + @param torque The torque is applies to this body. + */ virtual void applyTorque(float torque); - /** set the velocity of a body */ + /** + Set the velocity of a body. + + @param velocity The velocity is set to this body. + */ virtual void setVelocity(const Vect& velocity); - /** get the velocity of a body */ + + /** Get the velocity of a body. */ virtual Vec2 getVelocity(); - /** set the angular velocity of a body */ + + /** + Set the angular velocity of a body. + + @param velocity The angular velocity is set to this body. + */ virtual void setAngularVelocity(float velocity); - /** get the angular velocity of a body at a local point */ + + /** Get the angular velocity of a body at a local point.*/ virtual Vec2 getVelocityAtLocalPoint(const Vec2& point); + /** get the angular velocity of a body at a world point */ virtual Vec2 getVelocityAtWorldPoint(const Vec2& point); + /** get the angular velocity of a body */ virtual float getAngularVelocity(); + /** set the max of velocity */ virtual void setVelocityLimit(float limit); + /** get the max of velocity */ virtual float getVelocityLimit(); + /** set the max of angular velocity */ virtual void setAngularVelocityLimit(float limit); + /** get the max of angular velocity */ virtual float getAngularVelocityLimit(); @@ -156,73 +307,108 @@ public: /** * A mask that defines which categories this physics body belongs to. + * * Every physics body in a scene can be assigned to up to 32 different categories, each corresponding to a bit in the bit mask. You define the mask values used in your game. In conjunction with the collisionBitMask and contactTestBitMask properties, you define which physics bodies interact with each other and when your game is notified of these interactions. - * The default value is 0xFFFFFFFF (all bits set). + * @param bitmask An interger number, the default value is 0xFFFFFFFF (all bits set). */ void setCategoryBitmask(int bitmask); + /** * A mask that defines which categories of bodies cause intersection notifications with this physics body. + * * When two bodies share the same space, each body’s category mask is tested against the other body’s contact mask by performing a logical AND operation. If either comparison results in a non-zero value, an PhysicsContact object is created and passed to the physics world’s delegate. For best performance, only set bits in the contacts mask for interactions you are interested in. - * The default value is 0x00000000 (all bits cleared). + * @param bitmask An interger number, the default value is 0x00000000 (all bits cleared). */ void setContactTestBitmask(int bitmask); + /** * A mask that defines which categories of physics bodies can collide with this physics body. + * * When two physics bodies contact each other, a collision may occur. This body’s collision mask is compared to the other body’s category mask by performing a logical AND operation. If the result is a non-zero value, then this body is affected by the collision. Each body independently chooses whether it wants to be affected by the other body. For example, you might use this to avoid collision calculations that would make negligible changes to a body’s velocity. - * The default value is 0xFFFFFFFF (all bits set). + * @param bitmask An interger number, the default value is 0xFFFFFFFF (all bits set). */ void setCollisionBitmask(int bitmask); - /** Return bitmask of first shape, if there is no shape in body, return default value.(0xFFFFFFFF) */ + + /** + Return bitmask of first shape. + + * @return If there is no shape in body, return default value.(0xFFFFFFFF) + */ int getCategoryBitmask() const; - /** Return bitmask of first shape, if there is no shape in body, return default value.(0x00000000) */ + + /** + Return bitmask of first shape. + + * @return If there is no shape in body, return default value.(0x00000000) + */ int getContactTestBitmask() const; - /** Return bitmask of first shape, if there is no shape in body, return default value.(0xFFFFFFFF) */ + + /** + Return bitmask of first shape. + + @return If there is no shape in body, return default value.(0xFFFFFFFF) + */ int getCollisionBitmask() const; /** - * set the group of body - * Collision groups let you specify an integral group index. You can have all fixtures with the same group index always collide (positive index) or never collide (negative index) - * it have high priority than bit masks + * Set the group of body. + * + * Collision groups let you specify an integral group index. You can have all fixtures with the same group index always collide (positive index) or never collide (negative index). + * It have high priority than bit masks. */ void setGroup(int group); - /** Return group of first shape, if there is no shape in body, return default value.(0) */ + + /** + Return group of first shape. + + @return If there is no shape in body, return default value.(0) + */ int getGroup() const; /** get the body position. */ const Vec2& getPosition(); + /** get the body rotation. */ float getRotation(); /** set body position offset, it's the position witch relative to node */ void setPositionOffset(const Vec2& position); + /** get body position offset. */ const Vec2& getPositionOffset() const { return _positionOffset; } + /** set body rotation offset, it's the rotation witch relative to node */ void setRotationOffset(float rotation); + /** set the body rotation offset */ float getRotationOffset() const { return _rotationOffset; } /** - * @brief test the body is dynamic or not. - * a dynamic body will effect with gravity. + * @brief Test the body is dynamic or not. + * + * A dynamic body will effect with gravity. */ inline bool isDynamic() const { return _dynamic; } /** - * @brief set dynamic to body. - * a dynamic body will effect with gravity. + * @brief Set dynamic to body. + * + * A dynamic body will effect with gravity. */ void setDynamic(bool dynamic); /** - * @brief set the body mass. - * @note if you need add/subtract mass to body, don't use setMass(getMass() +/- mass), because the mass of body may be equal to PHYSICS_INFINITY, it will cause some unexpected result, please use addMass() instead. + * @brief Set the body mass. + * + * @attension If you need add/subtract mass to body, don't use setMass(getMass() +/- mass), because the mass of body may be equal to PHYSICS_INFINITY, it will cause some unexpected result, please use addMass() instead. */ void setMass(float mass); - /** get the body mass. */ + + /** Get the body mass. */ inline float getMass() const { return _mass; } /** - * @brief add mass to body. - * if _mass(mass of the body) == PHYSICS_INFINITY, it remains. + * @brief Add mass to body. + * + * @param mass If _mass(mass of the body) == PHYSICS_INFINITY, it remains. * if mass == PHYSICS_INFINITY, _mass will be PHYSICS_INFINITY. * if mass == -PHYSICS_INFINITY, _mass will not change. * if mass + _mass <= 0, _mass will equal to MASS_DEFAULT(1.0) @@ -231,73 +417,92 @@ public: void addMass(float mass); /** - * @brief set the body moment of inertia. - * @note if you need add/subtract moment to body, don't use setMoment(getMoment() +/- moment), because the moment of body may be equal to PHYSICS_INFINITY, it will cause some unexpected result, please use addMoment() instead. + * @brief Set the body moment of inertia. + * + * @note If you need add/subtract moment to body, don't use setMoment(getMoment() +/- moment), because the moment of body may be equal to PHYSICS_INFINITY, it will cause some unexpected result, please use addMoment() instead. */ void setMoment(float moment); - /** get the body moment of inertia. */ + + /** Get the body moment of inertia. */ inline float getMoment() const { return _moment; } + /** - * @brief add moment of inertia to body. - * if _moment(moment of the body) == PHYSICS_INFINITY, it remains. + * @brief Add moment of inertia to body. + * + * @param moment If _moment(moment of the body) == PHYSICS_INFINITY, it remains. * if moment == PHYSICS_INFINITY, _moment will be PHYSICS_INFINITY. * if moment == -PHYSICS_INFINITY, _moment will not change. * if moment + _moment <= 0, _moment will equal to MASS_DEFAULT(1.0) * other wise, moment = moment + _moment; */ void addMoment(float moment); + /** get linear damping. */ inline float getLinearDamping() const { return _linearDamping; } + /** - * set linear damping. - * it is used to simulate fluid or air friction forces on the body. - * the value is 0.0f to 1.0f. + * Set linear damping. + * + * it is used to simulate fluid or air friction forces on the body. + * @param damping The value is 0.0f to 1.0f. */ inline void setLinearDamping(float damping) { _linearDamping = damping; updateDamping(); } - /** get angular damping. */ + + /** Get angular damping. */ inline float getAngularDamping() const { return _angularDamping; } /** - * set angular damping. - * it is used to simulate fluid or air friction forces on the body. - * the value is 0.0f to 1.0f. + * Set angular damping. + * + * It is used to simulate fluid or air friction forces on the body. + * @param damping The value is 0.0f to 1.0f. */ inline void setAngularDamping(float damping) { _angularDamping = damping; updateDamping(); } - /** whether the body is at rest */ + /** Whether the body is at rest. */ bool isResting() const; + /** set body to rest */ void setResting(bool rest) const; - /** - * whether the body is enabled - * if the body it isn't enabled, it will not has simulation by world + + /** + * Whether the body is enabled. + * + * If the body it isn't enabled, it will not has simulation by world. */ inline bool isEnabled() const { return _enabled; } + /** - * set the enable value. - * if the body it isn't enabled, it will not has simulation by world + * Set the enable value. + * + * If the body it isn't enabled, it will not has simulation by world. */ void setEnable(bool enable); - /** whether the body can rotation */ + /** Whether the body can rotation. */ inline bool isRotationEnabled() const { return _rotationEnabled; } - /** set the body is allow rotation or not */ + + /** Set the body is allow rotation or not */ void setRotationEnable(bool enable); - /** whether this physics body is affected by the physics world’s gravitational force. */ + /** Whether this physics body is affected by the physics world’s gravitational force. */ inline bool isGravityEnabled() const { return _gravityEnabled; } - /** set the body is affected by the physics world's gravitational force or not. */ + + /** Set the body is affected by the physics world's gravitational force or not. */ void setGravityEnable(bool enable); - /** get the body's tag */ + /** Get the body's tag. */ inline int getTag() const { return _tag; } - /** set the body's tag */ + + /** set the body's tag. */ inline void setTag(int tag) { _tag = tag; } - /** convert the world point to local */ + /** Convert the world point to local. */ Vec2 world2Local(const Vec2& point); - /** convert the local point to world */ + + /** Convert the local point to world. */ Vec2 local2World(const Vec2& point); + /** Get the rigid body of chipmunk. */ cpBody* getCPBody() { return _cpBody; } protected: @@ -354,6 +559,8 @@ protected: friend class ProtectedNode; }; +/** @} */ + NS_CC_END #endif // CC_USE_PHYSICS diff --git a/cocos/physics/CCPhysicsContact.h b/cocos/physics/CCPhysicsContact.h index c074cd8325..00200370cb 100644 --- a/cocos/physics/CCPhysicsContact.h +++ b/cocos/physics/CCPhysicsContact.h @@ -55,7 +55,14 @@ typedef struct CC_DLL PhysicsContactData }PhysicsContactData; /** - * @brief Contact infomation. it will created automatically when two shape contact with each other. and it will destoried automatically when two shape separated. + * @addtogroup physics + * @{ + */ + +/** + * @brief Contact infomation. + + * It will created automatically when two shape contact with each other. And it will destoried automatically when two shape separated. */ class CC_DLL PhysicsContact : public EventCustom { @@ -70,21 +77,29 @@ public: SEPERATE }; - /** get contact shape A. */ + /** Get contact shape A. */ inline PhysicsShape* getShapeA() const { return _shapeA; } - /** get contact shape B. */ + + /** Get contact shape B. */ inline PhysicsShape* getShapeB() const { return _shapeB; } - /** get contact data */ + + /** Get contact data. */ inline const PhysicsContactData* getContactData() const { return _contactData; } - /** get previous contact data */ + + /** Get previous contact data */ inline const PhysicsContactData* getPreContactData() const { return _preContactData; } - /** get data. */ + + /** Get data. */ inline void* getData() const { return _data; } + /** - * @brief set data to contact. you must manage the memory yourself, Generally you can set data at contact begin, and distory it at contact seperate. + * @brief Set data to contact. + + * You must manage the memory yourself, Generally you can set data at contact begin, and distory it at contact seperate. */ inline void setData(void* data) { _data = data; } - /** get the event code */ + + /** Get the event code */ EventCode getEventCode() const { return _eventCode; }; private: @@ -123,25 +138,25 @@ private: friend class PhysicsWorld; }; -/* - * @brief presolve value generated when onContactPreSolve called. +/** + * @brief Presolve value generated when onContactPreSolve called. */ class CC_DLL PhysicsContactPreSolve { public: - /** get restitution between two bodies*/ + /** Get restitution between two bodies.*/ float getRestitution() const; - /** get friction between two bodies*/ + /** Get friction between two bodies.*/ float getFriction() const; - /** get surface velocity between two bodies*/ + /** Get surface velocity between two bodies.*/ Vec2 getSurfaceVelocity() const; - /** set the restitution*/ + /** Set the restitution.*/ void setRestitution(float restitution); - /** set the friction*/ + /** Set the friction.*/ void setFriction(float friction); - /** set the surface velocity*/ + /** Set the surface velocity.*/ void setSurfaceVelocity(const Vect& velocity); - /** ignore the rest of the contact presolve and postsolve callbacks */ + /** Ignore the rest of the contact presolve and postsolve callbacks. */ void ignore(); private: @@ -154,17 +169,17 @@ private: friend class EventListenerPhysicsContact; }; -/* - * @brief postsolve value generated when onContactPostSolve called. +/** + * @brief Postsolve value generated when onContactPostSolve called. */ class CC_DLL PhysicsContactPostSolve { public: - /** get restitution between two bodies*/ + /** Get restitution between two bodies.*/ float getRestitution() const; - /** get friction between two bodies*/ + /** Get friction between two bodies.*/ float getFriction() const; - /** get surface velocity between two bodies*/ + /** Get surface velocity between two bodies.*/ Vec2 getSurfaceVelocity() const; private: @@ -177,37 +192,44 @@ private: friend class EventListenerPhysicsContact; }; -/* contact listener. it will recive all the contact callbacks. */ +/** Contact listener. It will recive all the contact callbacks. */ class CC_DLL EventListenerPhysicsContact : public EventListenerCustom { public: - /** create the listener */ + /** Create the listener. */ static EventListenerPhysicsContact* create(); + + /** Check the listener is available. + + *@return Ture if there's one available callback function at least, false if there's no one. + */ virtual bool checkAvailable() override; + + /** Clone an object from this listener.*/ virtual EventListenerPhysicsContact* clone() override; protected: /** - * it will be call when two body have contact. - * if return false, it will not invoke callbacks + * It will be call when two body have contact. + * if return false, it will not invoke callbacks. */ virtual bool hitTest(PhysicsShape* shapeA, PhysicsShape* shapeB); public: - /* - * @brief it will called at two shapes start to contact, and only call it once. + /** + * @brief It will called at two shapes start to contact, and only call it once. */ std::function onContactBegin; - /* + /** * @brief Two shapes are touching during this step. Return false from the callback to make world ignore the collision this step or true to process it normally. Additionally, you may override collision values, restitution, or surface velocity values. */ std::function onContactPreSolve; - /* + /** * @brief Two shapes are touching and their collision response has been processed. You can retrieve the collision impulse or kinetic energy at this time if you want to use it to calculate sound volumes or damage amounts. See cpArbiter for more info */ std::function onContactPostSolve; - /* - * @brief it will called at two shapes separated, and only call it once. + /** + * @brief It will called at two shapes separated, and only call it once. * onContactBegin and onContactSeperate will called in pairs. */ std::function onContactSeperate; @@ -223,13 +245,15 @@ protected: friend class PhysicsWorld; }; -/** this event listener only be called when bodyA and bodyB have contacts */ +/** This event listener only be called when bodyA and bodyB have contacts. */ class CC_DLL EventListenerPhysicsContactWithBodies : public EventListenerPhysicsContact { public: + /** Create the listener. */ static EventListenerPhysicsContactWithBodies* create(PhysicsBody* bodyA, PhysicsBody* bodyB); virtual bool hitTest(PhysicsShape* shapeA, PhysicsShape* shapeB) override; + virtual EventListenerPhysicsContactWithBodies* clone() override; protected: @@ -241,10 +265,11 @@ protected: virtual ~EventListenerPhysicsContactWithBodies(); }; -/** this event listener only be called when shapeA and shapeB have contacts */ +/** This event listener only be called when shapeA and shapeB have contacts. */ class CC_DLL EventListenerPhysicsContactWithShapes : public EventListenerPhysicsContact { public: + /** Create the listener. */ static EventListenerPhysicsContactWithShapes* create(PhysicsShape* shapeA, PhysicsShape* shapeB); virtual bool hitTest(PhysicsShape* shapeA, PhysicsShape* shapeB) override; @@ -259,10 +284,11 @@ protected: virtual ~EventListenerPhysicsContactWithShapes(); }; -/** this event listener only be called when shapeA or shapeB is in the group your specified */ +/** This event listener only be called when shapeA or shapeB is in the group your specified */ class CC_DLL EventListenerPhysicsContactWithGroup : public EventListenerPhysicsContact { public: + /** Create the listener. */ static EventListenerPhysicsContactWithGroup* create(int group); virtual bool hitTest(PhysicsShape* shapeA, PhysicsShape* shapeB) override; @@ -276,6 +302,8 @@ protected: virtual ~EventListenerPhysicsContactWithGroup(); }; +/** @} */ + NS_CC_END #endif // CC_USE_PHYSICS diff --git a/cocos/physics/CCPhysicsHelper.h b/cocos/physics/CCPhysicsHelper.h index a53d1cf337..67bafa446e 100644 --- a/cocos/physics/CCPhysicsHelper.h +++ b/cocos/physics/CCPhysicsHelper.h @@ -34,18 +34,51 @@ NS_CC_BEGIN +/** + * @addtogroup physics + * @{ + */ + +/** + * A physics helper class. + * + * Support for conversion between the chipmunk types and cocos types, eg: cpVect to Vec2, cpVect to Size, cpFloat to float. + */ class PhysicsHelper { public: + /** Make cpVect type convert to Vec2 type. */ static Vec2 cpv2point(const cpVect& vec) { return Vec2(vec.x, vec.y); } + + /** Make Vec2 type convert to cpVect type. */ static cpVect point2cpv(const Vec2& point) { return cpv(point.x, point.y); } + + /** Make cpVect type convert to Size type. */ static Size cpv2size(const cpVect& vec) { return Size(vec.x, vec.y); } + + /** Make Size type convert to cpVect type. */ static cpVect size2cpv(const Size& size) { return cpv(size.width, size.height); } + + /** Make cpFloat type convert to float type. */ static float cpfloat2float(cpFloat f) { return f; } + + /** Make float type convert to cpFloat type. */ static cpFloat float2cpfloat(float f) { return f; } + + /** Make Rect type convert to cpBB type. */ static cpBB rect2cpbb(const Rect& rect) { return cpBBNew(rect.origin.x, rect.origin.y, rect.origin.x + rect.size.width, rect.origin.y + rect.size.height); } + + /** Make cpBB type convert to Rect type. */ static Rect cpbb2rect(const cpBB& bb) { return Rect(bb.l, bb.b, bb.r - bb.l, bb.t - bb.b); } + /** + Make cpVect array convert to Vec2 array. + + @param cpvs The be converted object, it's a cpVect array. + @param out The coverted object, it's a Vec2 array. + @param count It's cpvs array length. + @return The out object's pointer. + */ static Vec2* cpvs2points(const cpVect* cpvs, Vec2* out, int count) { for (int i = 0; i < count; ++i) @@ -56,6 +89,14 @@ public: return out; } + /** + Make Vec2 array convert to cpVect array. + + @param points The be converted object, it's a Vec2 array. + @param out The coverted object, it's a cpVect array. + @param count It's points array length. + @return The out object's pointer. + */ static cpVect* points2cpvs(const Vec2* points, cpVect* out, int count) { for (int i = 0; i < count; ++i) @@ -67,6 +108,8 @@ public: } }; +/** @} */ + NS_CC_END #endif // CC_USE_PHYSICS diff --git a/cocos/physics/CCPhysicsJoint.h b/cocos/physics/CCPhysicsJoint.h index 523b4b5662..f026a1cb76 100644 --- a/cocos/physics/CCPhysicsJoint.h +++ b/cocos/physics/CCPhysicsJoint.h @@ -39,7 +39,12 @@ class Node; class PhysicsBody; class PhysicsWorld; -/* +/** + * @addtogroup physics + * @{ + */ + +/** * @brief An PhysicsJoint object connects two physics bodies together. */ class CC_DLL PhysicsJoint @@ -49,29 +54,56 @@ protected: virtual ~PhysicsJoint() = 0; public: + /**Get physics body a connected to this joint.*/ inline PhysicsBody* getBodyA() const { return _bodyA; } + + /**Get physics body b connected to this joint.*/ inline PhysicsBody* getBodyB() const { return _bodyB; } + + /**Get the physics world.*/ inline PhysicsWorld* getWorld() const { return _world; } + + /** + * Get this joint's tag. + * + * @return An interger number. + */ inline int getTag() const { return _tag; } + + /** + * Set this joint's tag. + * + * @param tag An interger number that identifies a PhysicsJoint. + */ inline void setTag(int tag) { _tag = tag; } + + /** Determines if the joint is enable. */ inline bool isEnabled() const { return _enable; } - /** Enable/Disable the joint */ + + /** Enable/Disable the joint. */ void setEnable(bool enable); + + /** Determines if the collsion is enable. */ inline bool isCollisionEnabled() const { return _collisionEnable; } - /** Enable/disable the collision between two bodies */ + + /** Enable/disable the collision between two bodies. */ void setCollisionEnable(bool enable); - /** Remove the joint from the world */ + + /** Remove the joint from the world. */ void removeFormWorld(); - /** Set the max force between two bodies */ + /** Set the max force between two bodies. */ void setMaxForce(float force); - /** Get the max force setting */ + + /** Get the max force setting. */ float getMaxForce() const { return _maxForce; } protected: bool init(PhysicsBody* a, PhysicsBody* b); bool initJoint(); + + /** Create constraints for this type joint */ virtual bool createConstraints() { return false; } std::vector _cpConstraints; @@ -92,12 +124,19 @@ protected: friend class PhysicsDebugDraw; }; -/* +/** * @brief A fixed joint fuses the two bodies together at a reference point. Fixed joints are useful for creating complex shapes that can be broken apart later. */ class CC_DLL PhysicsJointFixed : public PhysicsJoint { public: + /** Create a fixed joint. + + @param a A is the body to connect. + @param b B is the body to connect. + @param anchr It's the pivot position. + @return A object pointer. + */ static PhysicsJointFixed* construct(PhysicsBody* a, PhysicsBody* b, const Vec2& anchr); virtual bool createConstraints() override; @@ -109,22 +148,54 @@ protected: Vec2 _anchr; }; -/* +/** * @brief A limit joint imposes a maximum distance between the two bodies, as if they were connected by a rope. */ class CC_DLL PhysicsJointLimit : public PhysicsJoint { public: + /** Create a limit joint. + + @param a A is the body to connect. + @param b B is the body to connect. + @param anchr1 Anchr1 is the anchor point on body a. + @param anchr2 Anchr2 is the anchor point on body b. + @return A object pointer. + */ static PhysicsJointLimit* construct(PhysicsBody* a, PhysicsBody* b, const Vec2& anchr1, const Vec2& anchr2); + + /** Create a limit joint. + + @param a A is the body to connect. + @param b B is the body to connect. + @param anchr1 Anchr1 is the anchor point on body a. + @param anchr2 Anchr2 is the anchor point on body b. + @param min Define the allowed min distance of the anchor points. + @param max Define the allowed max distance of the anchor points. + @return A object pointer. + */ static PhysicsJointLimit* construct(PhysicsBody* a, PhysicsBody* b, const Vec2& anchr1, const Vec2& anchr2, float min, float max); + /** Get the anchor point on body a.*/ Vec2 getAnchr1() const; + + /** Set the anchor point on body a.*/ void setAnchr1(const Vec2& anchr1); + + /** Get the anchor point on body b.*/ Vec2 getAnchr2() const; + + /** Set the anchor point on body b.*/ void setAnchr2(const Vec2& anchr2); + + /** Get the allowed min distance of the anchor points.*/ float getMin() const; + /** Set the min distance of the anchor points.*/ void setMin(float min); + + /** Get the allowed max distance of the anchor points.*/ float getMax() const; + /** Set the max distance of the anchor points.*/ void setMax(float max); virtual bool createConstraints() override; @@ -139,13 +210,29 @@ protected: float _max; }; -/* +/** * @brief A pin joint allows the two bodies to independently rotate around the anchor point as if pinned together. */ class CC_DLL PhysicsJointPin : public PhysicsJoint { public: + /** Create a pin joint. + + @param a A is the body to connect. + @param b B is the body to connect. + @param pivot It's the pivot position. + @return A object pointer. + */ static PhysicsJointPin* construct(PhysicsBody* a, PhysicsBody* b, const Vec2& pivot); + + /** Create a pin joint. + + @param a A is the body to connect. + @param b B is the body to connect. + @param anchr1 Anchr1 is the anchor point on body a. + @param anchr2 Anchr2 is the anchor point on body b. + @return A object pointer. + */ static PhysicsJointPin* construct(PhysicsBody* a, PhysicsBody* b, const Vec2& anchr1, const Vec2& anchr2); virtual bool createConstraints() override; @@ -163,9 +250,19 @@ protected: class CC_DLL PhysicsJointDistance : public PhysicsJoint { public: + /** Create a fixed distance joint. + + @param a A is the body to connect. + @param b B is the body to connect. + @param anchr1 Anchr1 is the anchor point on body a. + @param anchr2 Anchr2 is the anchor point on body b. + @return A object pointer. + */ static PhysicsJointDistance* construct(PhysicsBody* a, PhysicsBody* b, const Vec2& anchr1, const Vec2& anchr2); + /** Get the distance of the anchor points.*/ float getDistance() const; + /** Set the distance of the anchor points.*/ void setDistance(float distance); virtual bool createConstraints() override; @@ -181,17 +278,48 @@ protected: class CC_DLL PhysicsJointSpring : public PhysicsJoint { public: + /** Create a fixed distance joint. + + @param a A is the body to connect. + @param b B is the body to connect. + @param anchr1 Anchr1 is the anchor point on body a. + @param anchr2 Anchr2 is the anchor point on body b. + @param stiffness It's the spring constant. + @param damping It's how soft to make the damping of the spring. + @return A object pointer. + */ static PhysicsJointSpring* construct(PhysicsBody* a, PhysicsBody* b, const Vec2& anchr1, const Vec2& anchr2, float stiffness, float damping); + + /** Get the anchor point on body a.*/ Vec2 getAnchr1() const; + + /** Set the anchor point on body a.*/ void setAnchr1(const Vec2& anchr1); + + /** Get the anchor point on body b.*/ Vec2 getAnchr2() const; + + /** Set the anchor point on body b.*/ void setAnchr2(const Vec2& anchr2); + + /** Get the distance of the anchor points.*/ float getRestLength() const; + + /** Set the distance of the anchor points.*/ void setRestLength(float restLength); + + /** Get the spring constant.*/ float getStiffness() const; + + /** Set the spring constant.*/ void setStiffness(float stiffness); + + /** Get the spring soft constant.*/ float getDamping() const; + + /** Set the spring soft constant.*/ void setDamping(float damping); + virtual bool createConstraints() override; protected: @@ -204,18 +332,39 @@ protected: float _damping; }; -/** Attach body a to a line, and attach body b to a dot */ +/** Attach body a to a line, and attach body b to a dot. */ class CC_DLL PhysicsJointGroove : public PhysicsJoint { public: + /** Create a groove joint. + + @param a A is the body to connect. + @param b B is the body to connect. + @param grooveA The line begin position. + @param grooveB The line end position. + @param anchr2 Anchr2 is the anchor point on body b. + @return A object pointer. + */ static PhysicsJointGroove* construct(PhysicsBody* a, PhysicsBody* b, const Vec2& grooveA, const Vec2& grooveB, const Vec2& anchr2); + /** Get the line begin position*/ Vec2 getGrooveA() const; + + /** Set the line begin position*/ void setGrooveA(const Vec2& grooveA); + + /** Get the line end position*/ Vec2 getGrooveB() const; + + /** Set the line end position*/ void setGrooveB(const Vec2& grooveB); + + /** Get the anchor point on body b.*/ Vec2 getAnchr2() const; + + /** Set the anchor point on body b.*/ void setAnchr2(const Vec2& anchr2); + virtual bool createConstraints() override; protected: @@ -227,18 +376,38 @@ protected: Vec2 _anchr2; }; -/** Likes a spring joint, but works with rotary */ +/** Likes a spring joint, but works with rotary. */ class CC_DLL PhysicsJointRotarySpring : public PhysicsJoint { public: + /** Create a damped rotary spring joint. + + @param a A is the body to connect. + @param b B is the body to connect. + @param stiffness It's the spring constant. + @param damping It's how soft to make the damping of the spring. + @return A object pointer. + */ static PhysicsJointRotarySpring* construct(PhysicsBody* a, PhysicsBody* b, float stiffness, float damping); + /** Get the relative angle in radians from the body a to b.*/ float getRestAngle() const; + + /** Set the relative angle in radians from the body a to b.*/ void setRestAngle(float restAngle); + + /** Get the spring constant.*/ float getStiffness() const; + + /** Set the spring constant.*/ void setStiffness(float stiffness); + + /** Get the spring soft constant.*/ float getDamping() const; + + /** Set the spring soft constant.*/ void setDamping(float damping); + virtual bool createConstraints() override; protected: @@ -249,17 +418,40 @@ protected: float _damping; }; -/** Likes a limit joint, but works with rotary */ +/** Likes a limit joint, but works with rotary. */ class CC_DLL PhysicsJointRotaryLimit : public PhysicsJoint { public: + /** Create a limit rotary joint. + + @param a A is the body to connect. + @param b B is the body to connect. + @param min It's min rotation limit in radians. + @param max It's max rotation limit in radians. + @return A object pointer. + */ static PhysicsJointRotaryLimit* construct(PhysicsBody* a, PhysicsBody* b, float min, float max); + + /** Create a limit rotary joint. + + @param a A is the body to connect. + @param b B is the body to connect. + @return A object pointer. + */ static PhysicsJointRotaryLimit* construct(PhysicsBody* a, PhysicsBody* b); + /** Get the min rotation limit.*/ float getMin() const; + + /** Set the min rotation limit.*/ void setMin(float min); + + /** Get the max rotation limit.*/ float getMax() const; + + /** Set the max rotation limit.*/ void setMax(float max); + virtual bool createConstraints() override; protected: @@ -274,13 +466,32 @@ protected: class CC_DLL PhysicsJointRatchet : public PhysicsJoint { public: + /** Create a ratchet joint. + + @param a A is the body to connect. + @param b B is the body to connect. + @param phase Phase is the initial offset to use when deciding where the ratchet angles are. + @param ratchet Ratchet is the distance between “clicks”. + @return A object pointer. + */ static PhysicsJointRatchet* construct(PhysicsBody* a, PhysicsBody* b, float phase, float ratchet); + /** Get the ratchet angle.*/ float getAngle() const; + + /** Set the ratchet angle.*/ void setAngle(float angle); + + /** Get the initial offset.*/ float getPhase() const; + + /** Set the initial offset.*/ void setPhase(float phase); + + /** Get the distance between “clicks”.*/ float getRatchet() const; + + /** Set the distance between “clicks”.*/ void setRatchet(float ratchet); virtual bool createConstraints() override; @@ -296,11 +507,26 @@ protected: class CC_DLL PhysicsJointGear : public PhysicsJoint { public: + /** Create a gear joint. + + @param a A is the body to connect. + @param b B is the body to connect. + @param phase Phase is the initial angular offset of the two bodies. + @param ratio Ratio is always measured in absolute terms. + @return A object pointer. + */ static PhysicsJointGear* construct(PhysicsBody* a, PhysicsBody* b, float phase, float ratio); + /** Get the angular offset of the two bodies.*/ float getPhase() const; + + /** Set the angular offset of the two bodies.*/ void setPhase(float phase); + + /** Get the ratio.*/ float getRatio() const; + + /** Set the ratio.*/ void setRatio(float ratchet); virtual bool createConstraints() override; @@ -313,13 +539,23 @@ protected: float _ratio; }; -/** Keeps the relative angular velocity of a pair of bodies constant */ +/** Keeps the relative angular velocity of a pair of bodies constant. */ class CC_DLL PhysicsJointMotor : public PhysicsJoint { public: + /** Create a motor joint. + + @param a A is the body to connect. + @param b B is the body to connect. + @param rate Rate is the desired relative angular velocity. + @return A object pointer. + */ static PhysicsJointMotor* construct(PhysicsBody* a, PhysicsBody* b, float rate); + /** Get the relative angular velocity.*/ float getRate() const; + + /** Set the relative angular velocity.*/ void setRate(float rate); virtual bool createConstraints() override; @@ -330,6 +566,8 @@ protected: float _rate; }; +/** @} */ + NS_CC_END #endif // CC_USE_PHYSICS diff --git a/cocos/physics/CCPhysicsShape.h b/cocos/physics/CCPhysicsShape.h index 9c456624ea..e02072e611 100644 --- a/cocos/physics/CCPhysicsShape.h +++ b/cocos/physics/CCPhysicsShape.h @@ -58,6 +58,11 @@ typedef struct CC_DLL PhysicsMaterial const PhysicsMaterial PHYSICSSHAPE_MATERIAL_DEFAULT; +/** + * @addtogroup physics + * @{ + */ + /** * @brief A shape for body. You do not create PhysicsWorld objects directly, instead, you can view PhysicsBody to see how to create it. */ @@ -77,74 +82,246 @@ public: }; public: - /** Get the body that this shape attaches */ + /** + * Get the body that this shape attaches. + * + * @return A PhysicsBody object pointer. + */ inline PhysicsBody* getBody() const { return _body; } - /** Return the type of this shape */ + + /** + * Return this shape's type. + * + * @return A Type object. + */ inline Type getType() const { return _type; } - /** return the area of this shape */ + + /** + * Return this shape's area. + * + * @return A float number. + */ inline float getArea() const { return _area; } - /** get moment */ + + /** + * Get this shape's moment. + * + * @return A float number. + */ inline float getMoment() const { return _moment; } - /** Set moment, it will change the body's moment this shape attaches */ + + /** + * Set this shape's moment. + * + * It will change the body's moment this shape attaches. + * + * @param moment A float number. + */ void setMoment(float moment); + + /** + * Set this shape's tag. + * + * @param tag An interger number that identifies a shape object. + */ inline void setTag(int tag) { _tag = tag; } + + /** + * Get this shape's tag. + * + * @return An interger number. + */ inline int getTag() const { return _tag; } - /** get mass */ + /** + * Get the mass of this shape. + * + * @return A float number. + */ inline float getMass() const { return _mass; } - /** Set mass, it will change the body's mass this shape attaches */ + + /** + * Set this shape's mass. + * + * It will change the body's mass this shape attaches. + * + * @param mass A float number. + */ void setMass(float mass); + + /** + * Get this shape's density. + * + * @return A float number. + */ inline float getDensity() const { return _material.density; } + + /** + * Set this shape's density. + * + * It will change the body's mass this shape attaches. + * + * @param density A float number. + */ void setDensity(float density); + + /** + * Get this shape's restitution. + * + * @return A float number. + */ inline float getRestitution() const { return _material.restitution; } + + /** + * Set this shape's restitution. + * + * It will change the shape's elasticity. + * + * @param restitution A float number. + */ void setRestitution(float restitution); + + /** + * Get this shape's friction. + * + * @return A float number. + */ inline float getFriction() const { return _material.friction; } + + /** + * Set this shape's friction. + * + * It will change the shape's friction. + * + * @param friction A float number. + */ void setFriction(float friction); + + /** + * Get this shape's PhysicsMaterial object. + * + * @return A PhysicsMaterial object reference. + */ const PhysicsMaterial& getMaterial() const { return _material; } + + /** + * Set this shape's material. + * + * It will change the shape's mass, elasticity and friction. + * + * @param material A PhysicsMaterial object. + */ void setMaterial(const PhysicsMaterial& material); - /** Calculate the default moment value */ + /** + * Calculate the default moment value. + * + * This function should be overrided in inherit classes. + * @return A float number, equals 0.0. + */ virtual float calculateDefaultMoment() { return 0.0f; } - /** Get offset */ + + /** + * Get this shape's position offset. + * + * This function should be overrided in inherit classes. + * @return A Vec2 object. + */ virtual Vec2 getOffset() { return Vec2::ZERO; } - /** Get center of this shape */ + + /** + * Get this shape's center position. + * + * This function should be overrided in inherit classes. + * @return A Vec2 object. + */ virtual Vec2 getCenter() { return getOffset(); } - /** Test point is in shape or not */ + + /** + * Test point is inside this shape or not. + * + * @param point A Vec2 object. + * @return A bool object. + */ bool containsPoint(const Vec2& point) const; - /** move the points to the center */ + /** + * Move the points to the center. + * + * @param points A Vec2 object pointer. + * @param count An interger number. + * @param center A Vec2 object, default value is Vec2(0,0). + */ static void recenterPoints(Vec2* points, int count, const Vec2& center = Vec2::ZERO); - /** get center of the polyon points */ + + /** + * Get center of the polyon points. + * + * @param points A Vec2 object pointer. + * @param count An interger number. + * @return A Vec2 object. + */ static Vec2 getPolyonCenter(const Vec2* points, int count); /** - * A mask that defines which categories this physics body belongs to. + * Set a mask that defines which categories this physics body belongs to. + * * Every physics body in a scene can be assigned to up to 32 different categories, each corresponding to a bit in the bit mask. You define the mask values used in your game. In conjunction with the collisionBitMask and contactTestBitMask properties, you define which physics bodies interact with each other and when your game is notified of these interactions. - * The default value is 0xFFFFFFFF (all bits set). + * @param bitmask An interger number, the default value is 0xFFFFFFFF (all bits set). */ inline void setCategoryBitmask(int bitmask) { _categoryBitmask = bitmask; } + + /** + * Get a mask that defines which categories this physics body belongs to. + * + * @return An interger number. + */ inline int getCategoryBitmask() const { return _categoryBitmask; } + + /** * A mask that defines which categories of bodies cause intersection notifications with this physics body. + * * When two bodies share the same space, each body’s category mask is tested against the other body’s contact mask by performing a logical AND operation. If either comparison results in a non-zero value, an PhysicsContact object is created and passed to the physics world’s delegate. For best performance, only set bits in the contacts mask for interactions you are interested in. - * The default value is 0x00000000 (all bits cleared). + * @param bitmask An interger number, the default value is 0x00000000 (all bits cleared). */ inline void setContactTestBitmask(int bitmask) { _contactTestBitmask = bitmask; } + + /** + * Get a mask that defines which categories of bodies cause intersection notifications with this physics body. + * + * @return An interger number. + */ inline int getContactTestBitmask() const { return _contactTestBitmask; } + /** * A mask that defines which categories of physics bodies can collide with this physics body. + * * When two physics bodies contact each other, a collision may occur. This body’s collision mask is compared to the other body’s category mask by performing a logical AND operation. If the result is a non-zero value, then this body is affected by the collision. Each body independently chooses whether it wants to be affected by the other body. For example, you might use this to avoid collision calculations that would make negligible changes to a body’s velocity. - * The default value is 0xFFFFFFFF (all bits set). + * @param bitmask An interger number, the default value is 0xFFFFFFFF (all bits set). */ inline void setCollisionBitmask(int bitmask) { _collisionBitmask = bitmask; } + + /** + * Get a mask that defines which categories of physics bodies can collide with this physics body. + * + * @return An interger number. + */ inline int getCollisionBitmask() const { return _collisionBitmask; } /** - * set the group of body - * Collision groups let you specify an integral group index. You can have all fixtures with the same group index always collide (positive index) or never collide (negative index) - * it have high priority than bit masks + * Set the group of body. + * + * Collision groups let you specify an integral group index. You can have all fixtures with the same group index always collide (positive index) or never collide (negative index). + * @param group An interger number, it have high priority than bit masks. */ void setGroup(int group); + + /** + * Get the group of body. + * + * @return An interger number. + */ inline int getGroup() { return _group; } protected: @@ -186,17 +363,57 @@ protected: friend class PhysicsDebugDraw; }; -/** A circle shape */ +/** A circle shape. */ class CC_DLL PhysicsShapeCircle : public PhysicsShape { public: + /** + * Creates a PhysicsShapeCircle with specified value. + * + * @param radius A float number, it is the circle's radius. + * @param material A PhysicsMaterial object, the default value is PHYSICSSHAPE_MATERIAL_DEFAULT. + * @param offset A Vec2 object, it is the offset from the body’s center of gravity in body local coordinates. + * @return An autoreleased PhysicsShapeCircle object pointer. + */ static PhysicsShapeCircle* create(float radius, const PhysicsMaterial& material = PHYSICSSHAPE_MATERIAL_DEFAULT, const Vec2& offset = Vec2(0, 0)); + + /** + * Calculate the area of a circle with specified radius. + * + * @param radius A float number + * @return A float number + */ static float calculateArea(float radius); + + /** + * Calculate the moment of a circle with specified value. + * + * @param mass A float number + * @param radius A float number + * @param offset A Vec2 object, it is the offset from the body’s center of gravity in body local coordinates. + * @return A float number + */ static float calculateMoment(float mass, float radius, const Vec2& offset = Vec2::ZERO); + /** + * Calculate the moment for a circle. + * + * @return A float number. + */ virtual float calculateDefaultMoment() override; + /** + * Get the circle's radius. + * + * @return A float number. + */ float getRadius() const; + + /** + * Get this circle's position offset. + * + * @return A Vec2 object. + */ virtual Vec2 getOffset() override; protected: @@ -209,19 +426,75 @@ protected: virtual ~PhysicsShapeCircle(); }; -/** A polygon shape */ +/** A polygon shape. */ class CC_DLL PhysicsShapePolygon : public PhysicsShape { public: + /** + * Creates a PhysicsShapePolygon with specified value. + * + * @param points A Vec2 object pointer, it is an array of Vec2. + * @param count An interger number, contains the count of the points array. + * @param material A PhysicsMaterial object, the default value is PHYSICSSHAPE_MATERIAL_DEFAULT. + * @param offset A Vec2 object, it is the offset from the body’s center of gravity in body local coordinates. + * @return An autoreleased PhysicsShapePolygon object pointer. + */ static PhysicsShapePolygon* create(const Vec2* points, int count, const PhysicsMaterial& material = PHYSICSSHAPE_MATERIAL_DEFAULT, const Vec2& offset = Vec2::ZERO); + + /** + * Calculate the area of a polygon with specified value. + * + * @param points A Vec2 object pointer, it is an array of Vec2. + * @param count An interger number, contains the count of the points array. + * @return A float number. + */ static float calculateArea(const Vec2* points, int count); + + /** + * Calculate the moment of a polygon with specified value. + * + * @param mass A float number + * @param points A Vec2 object pointer, it is an array of Vec2. + * @param count An interger number, contains the count of the points array. + * @param offset A Vec2 object, it is the offset from the body’s center of gravity in body local coordinates. + * @return A float number + */ static float calculateMoment(float mass, const Vec2* points, int count, const Vec2& offset = Vec2::ZERO); + /** + * Calculate the moment for a polygon. + * + * @return A float number. + */ float calculateDefaultMoment() override; + /** + * Get a point of this polygon's points array. + * + * @param i A index of this polygon's points array. + * @return A point value. + */ Vec2 getPoint(int i) const; + + /** + * Get this polygon's points array. + * + * @param outPoints A Vec2 array pointer. + */ void getPoints(Vec2* outPoints) const; + + /** + * Get this polygon's points array count. + * + * @preturn An interger number. + */ int getPointsCount() const; + + /** + * Get this polygon's center position. + * + * @return A Vec2 object. + */ virtual Vec2 getCenter() override; protected: bool init(const Vec2* points, int count, const PhysicsMaterial& material = PHYSICSSHAPE_MATERIAL_DEFAULT, const Vec2& offset = Vec2::ZERO); @@ -233,13 +506,32 @@ protected: virtual ~PhysicsShapePolygon(); }; -/** A box shape */ +/** A box shape. */ class CC_DLL PhysicsShapeBox : public PhysicsShapePolygon { public: + /** + * Creates a PhysicsShapeBox with specified value. + * + * @param size Size contains this box's width and height. + * @param material A PhysicsMaterial object, the default value is PHYSICSSHAPE_MATERIAL_DEFAULT. + * @param offset A Vec2 object, it is the offset from the body’s center of gravity in body local coordinates. + * @return An autoreleased PhysicsShapeBox object pointer. + */ static PhysicsShapeBox* create(const Size& size, const PhysicsMaterial& material = PHYSICSSHAPE_MATERIAL_DEFAULT, const Vec2& offset = Vec2::ZERO); + /** + * Get this box's width and height. + * + * @preturn An Size object. + */ Size getSize() const; + + /** + * Get this box's position offset. + * + * @return A Vec2 object. + */ virtual Vec2 getOffset() override { return getCenter(); } protected: @@ -250,14 +542,40 @@ protected: virtual ~PhysicsShapeBox(); }; -/** A segment shape */ +/** A segment shape. */ class CC_DLL PhysicsShapeEdgeSegment : public PhysicsShape { public: + /** + * Creates a PhysicsShapeEdgeSegment with specified value. + * + * @param a It's the edge's begin position. + * @param b It's the edge's end position. + * @param material A PhysicsMaterial object, the default value is PHYSICSSHAPE_MATERIAL_DEFAULT. + * @param border It's a edge's border width. + * @return An autoreleased PhysicsShapeEdgeSegment object pointer. + */ static PhysicsShapeEdgeSegment* create(const Vec2& a, const Vec2& b, const PhysicsMaterial& material = PHYSICSSHAPE_MATERIAL_DEFAULT, float border = 1); + /** + * Get this edge's begin position. + * + * @return A Vec2 object. + */ Vec2 getPointA() const; + + /** + * Get this edge's end position. + * + * @return A Vec2 object. + */ Vec2 getPointB() const; + + /** + * Get this edge's center position. + * + * @return A Vec2 object. + */ virtual Vec2 getCenter() override; protected: @@ -271,13 +589,40 @@ protected: friend class PhysicsBody; }; -/** An edge polygon shape */ +/** An edge polygon shape. */ class CC_DLL PhysicsShapeEdgePolygon : public PhysicsShape { public: + /** + * Creates a PhysicsShapeEdgePolygon with specified value. + * + * @param points A Vec2 object pointer, it contains an array of points. + * @param count An interger number, contains the count of the points array. + * @param material A PhysicsMaterial object, the default value is PHYSICSSHAPE_MATERIAL_DEFAULT. + * @param border It's a edge's border width. + * @return An autoreleased PhysicsShapeEdgePolygon object pointer. + */ static PhysicsShapeEdgePolygon* create(const Vec2* points, int count, const PhysicsMaterial& material = PHYSICSSHAPE_MATERIAL_DEFAULT, float border = 1); + + /** + * Get this polygon's center position. + * + * @return A Vec2 object. + */ virtual Vec2 getCenter() override; + + /** + * Get this polygon's points array. + * + * @param outPoints A Vec2 array pointer. + */ void getPoints(Vec2* outPoints) const; + + /** + * Get this polygon's points array count. + * + * @preturn An interger number. + */ int getPointsCount() const; protected: @@ -291,11 +636,26 @@ protected: friend class PhysicsBody; }; -/** An edge box shape */ +/** An edge box shape. */ class CC_DLL PhysicsShapeEdgeBox : public PhysicsShapeEdgePolygon { public: + /** + * Creates a PhysicsShapeEdgeBox with specified value. + * + * @param size Size contains this box's width and height. + * @param material A PhysicsMaterial object, the default value is PHYSICSSHAPE_MATERIAL_DEFAULT. + * @param border It's a edge's border width. + * @param offset A Vec2 object, it is the offset from the body’s center of gravity in body local coordinates. + * @return An autoreleased PhysicsShapeEdgeBox object pointer. + */ static PhysicsShapeEdgeBox* create(const Size& size, const PhysicsMaterial& material = PHYSICSSHAPE_MATERIAL_DEFAULT, float border = 0, const Vec2& offset = Vec2::ZERO); + + /** + * Get this box's position offset. + * + * @return A Vec2 object. + */ virtual Vec2 getOffset() override { return getCenter(); } protected: @@ -308,13 +668,40 @@ protected: friend class PhysicsBody; }; -/** a chain shape */ +/** A chain shape. */ class CC_DLL PhysicsShapeEdgeChain : public PhysicsShape { public: + /** + * Creates a PhysicsShapeEdgeChain with specified value. + * + * @param points A Vec2 object pointer, it contains an array of points. + * @param count An interger number, contains the count of the points array. + * @param material A PhysicsMaterial object, the default value is PHYSICSSHAPE_MATERIAL_DEFAULT. + * @param border It's a edge's border width. + * @return An autoreleased PhysicsShapeEdgeChain object pointer. + */ static PhysicsShapeEdgeChain* create(const Vec2* points, int count, const PhysicsMaterial& material = PHYSICSSHAPE_MATERIAL_DEFAULT, float border = 1); + + /** + * Get this chain's center position. + * + * @return A Vec2 object. + */ virtual Vec2 getCenter() override; + + /** + * Get this chain's points array. + * + * @param outPoints A Vec2 array pointer. + */ void getPoints(Vec2* outPoints) const; + + /** + * Get this chain's points array count. + * + * @preturn An interger number. + */ int getPointsCount() const; protected: @@ -328,6 +715,8 @@ protected: friend class PhysicsBody; }; +/** @} */ + NS_CC_END #endif // CC_USE_PHYSICS diff --git a/cocos/physics/CCPhysicsWorld.h b/cocos/physics/CCPhysicsWorld.h index 6f714b55ab..1c98511ba1 100644 --- a/cocos/physics/CCPhysicsWorld.h +++ b/cocos/physics/CCPhysicsWorld.h @@ -80,6 +80,12 @@ typedef std::function PhysicsQueryRec typedef PhysicsQueryRectCallbackFunc PhysicsQueryPointCallbackFunc; /** + * @addtogroup physics + * @{ + */ + +/** + * @class PhysicsWorld CCPhysicsWorld.h * @brief An PhysicsWorld object simulates collisions and other physical properties. You do not create PhysicsWorld objects directly; instead, you can get it from an Scene object. */ class CC_DLL PhysicsWorld @@ -92,82 +98,231 @@ public: static const int DEBUGDRAW_ALL; ///< draw all public: - /** Adds a joint to the physics world.*/ + /** + * Adds a joint to this physics world. + * + * This joint will be added to this physics world at next frame. + * @attention If this joint is already added to another physics world, it will be removed from that world first and then add to this world. + * @param joint A pointer to an existing PhysicsJoint object. + */ virtual void addJoint(PhysicsJoint* joint); - /** Remove a joint from physics world.*/ + + /** + * Remove a joint from this physics world. + * + * If this world is not locked, the joint is removed immediately, otherwise at next frame. + * If this joint is connected with a body, it will be removed from the body also. + * @param joint A pointer to an existing PhysicsJoint object. + * @param destroy true this joint will be destroyed after remove from this world, false otherwise. + */ virtual void removeJoint(PhysicsJoint* joint, bool destroy = true); - /** Remove all joints from physics world.*/ + + /** + * Remove all joints from this physics world. + * + * @attention This function is invoked in the destructor of this physics world, you do not use this api in common. + * @param destroy true all joints will be destroyed after remove from this world, false otherwise. + */ virtual void removeAllJoints(bool destroy = true); - /** Remove a body from physics world. */ + /** + * Remove a body from this physics world. + * + * If this world is not locked, the body is removed immediately, otherwise at next frame. + * @attention If this body has joints, those joints will be removed also. + * @param body A pointer to an existing PhysicsBody object. + */ virtual void removeBody(PhysicsBody* body); - /** Remove body by tag. */ + + /** + * Remove body by tag. + * + * If this world is not locked, the object is removed immediately, otherwise at next frame. + * @attention If this body has joints, those joints will be removed also. + * @param tag An interger number that identifies a PhysicsBody object. + */ virtual void removeBody(int tag); - /** Remove all bodies from physics world. */ + + /** + * Remove all bodies from physics world. + * + * If this world is not locked, those body are removed immediately, otherwise at next frame. + */ virtual void removeAllBodies(); - /** Searches for physics shapes that intersects the ray. */ + /** + * Searches for physics shapes that intersects the ray. + * + * Query this physics world along the line segment from start to end. + * @param func Func is called for each shape found. + * @param start A Vec2 object contains the begin position of the ray. + * @param end A Vec2 object contains the end position of the ray. + * @param data User defined data, it is passed to func. + */ void rayCast(PhysicsRayCastCallbackFunc func, const Vec2& start, const Vec2& end, void* data); - /** Searches for physics shapes that contains in the rect. */ + + /** + * Searches for physics shapes that contains in the rect. + * + * Query this physics world to find all shapes overlap rect. + * @param func Func is called for each shape whose bounding box overlaps rect. + * @param rect A Rect object contains a rectangle's x, y, width and height. + * @param data User defined data, it is passed to func. + */ void queryRect(PhysicsQueryRectCallbackFunc func, const Rect& rect, void* data); - /** Searches for physics shapes that contains the point. */ + + /** + * Searches for physics shapes that contains the point. + * + * @attention The point must lie inside a shape. + * @param func Func is called for each shape contains the point. + * @param point A Vec2 object contains the position of the point. + * @param data User defined data, it is passed to func. + */ void queryPoint(PhysicsQueryPointCallbackFunc func, const Vec2& point, void* data); - /** Get phsyics shapes that contains the point. */ + + /** + * Get phsyics shapes that contains the point. + * + * All shapes contains the point will be pushed in a Vector object. + * @attention The point must lie inside a shape. + * @param point A Vec2 object contains the position of the point. + * @return A Vector object contains all found PhysicsShape pointer. + */ Vector getShapes(const Vec2& point) const; - /** return physics shape that contains the point. */ + + /** + * Get the nearest phsyics shape that contains the point. + * + * Query this physics world at point and return the closest shape. + * @param point A Vec2 object contains the position of the point. + * @return A PhysicsShape object pointer or nullptr if no shapes were found + */ PhysicsShape* getShape(const Vec2& point) const; - /** Get all the bodys that in the physics world. */ + + /** + * Get all the bodys that in this physics world. + * + * @return A Vector& object contains all bodies in this physics world. + */ const Vector& getAllBodies() const; - /** Get body by tag */ + + /** + * Get a body by tag. + * + * @param tag An interger number that identifies a PhysicsBody object. + * @return A PhysicsBody object pointer or nullptr if no shapes were found. + */ PhysicsBody* getBody(int tag) const; - /** Get scene contain this physics world */ - inline Scene& getScene() const { return *_scene; } - /** get the gravity value */ - inline Vect getGravity() const { return _gravity; } - /** set the gravity value */ - void setGravity(const Vect& gravity); /** - * Set the speed of physics world, speed is the rate at which the simulation executes. default value is 1.0 - * Note: if you setAutoStep(false), this won't work. + * Get a scene contain this physics world. + * + * @attention This value is initialized in constructor + * @return A Scene object reference. + */ + inline Scene& getScene() const { return *_scene; } + + /** + * Get the gravity value of this physics world. + * + * @return A Vect object. + */ + inline Vect getGravity() const { return _gravity; } + + /** + * set the gravity value of this physics world. + * + * @param gravity A gravity value of this physics world. + */ + void setGravity(const Vect& gravity); + + /** + * Set the speed of this physics world. + * + * @attention if you setAutoStep(false), this won't work. + * @param speed A float number. Speed is the rate at which the simulation executes. default value is 1.0. */ inline void setSpeed(float speed) { if(speed >= 0.0f) { _speed = speed; } } - /** get the speed of physics world */ - inline float getSpeed() { return _speed; } + /** - * set the update rate of physics world, update rate is the value of EngineUpdateTimes/PhysicsWorldUpdateTimes. - * set it higher can improve performance, set it lower can improve accuracy of physics world simulation. - * default value is 1.0 - * Note: if you setAutoStep(false), this won't work. + * Get the speed of this physics world. + * + * @return A float number. + */ + inline float getSpeed() { return _speed; } + + /** + * Set the update rate of this physics world + * + * Update rate is the value of EngineUpdateTimes/PhysicsWorldUpdateTimes. + * Set it higher can improve performance, set it lower can improve accuracy of physics world simulation. + * @attention if you setAutoStep(false), this won't work. + * @param rate An interger number, default value is 1.0. */ inline void setUpdateRate(int rate) { if(rate > 0) { _updateRate = rate; } } - /** get the update rate */ + + + /** + * Get the update rate of this physics world. + * + * @return An interger number. + */ inline int getUpdateRate() { return _updateRate; } + /** * set the number of substeps in an update of the physics world. + * * One physics update will be divided into several substeps to increase its accuracy. - * default value is 1 + * @param steps An interger number, default value is 1. */ void setSubsteps(int steps); - /** get the number of substeps */ + + /** + * Get the number of substeps of this physics world. + * + * @return An interger number. + */ inline int getSubsteps() const { return _substeps; } - /** set the debug draw mask */ + /** + * Set the debug draw mask of this physics world. + * + * This physics world will draw shapes and joints by DrawNode acoording to mask. + * @param mask Mask has four value:DEBUGDRAW_NONE, DEBUGDRAW_SHAPE, DEBUGDRAW_JOINT, DEBUGDRAW_CONTACT and DEBUGDRAW_ALL, default is DEBUGDRAW_NONE + */ void setDebugDrawMask(int mask); - /** get the bebug draw mask */ + + /** + * Get the bebug draw mask. + * + * @return An interger number. + */ inline int getDebugDrawMask() { return _debugDrawMask; } /** - * To control the step of physics, if you want control it by yourself( fixed-timestep for example ), you can set this to false and call step by yourself. - * Defaut value is true. - * Note: if you set auto step to false, setSpeed setSubsteps and setUpdateRate won't work, you need to control the time step by yourself. + * To control the step of physics. + * + * If you want control it by yourself( fixed-timestep for example ), you can set this to false and call step by yourself. + * @attention If you set auto step to false, setSpeed setSubsteps and setUpdateRate won't work, you need to control the time step by yourself. + * @param autoStep A bool object, defaut value is true. */ void setAutoStep(bool autoStep){ _autoStep = autoStep; } - /** Get the auto step */ - bool isAutoStep() { return _autoStep; } + + /** - * The step for physics world, The times passing for simulate the physics. - * Note: you need to setAutoStep(false) first before it can work. + * Get the auto step of this physics world. + * + * @return A bool object. + */ + bool isAutoStep() { return _autoStep; } + + /** + * The step for physics world. + * + * The times passing for simulate the physics. + * @attention You need to setAutoStep(false) first before it can work. + * @param delta A float number. */ void step(float delta); @@ -234,7 +389,10 @@ protected: friend class PhysicsDebugDraw; }; - +/** A physics helper class. Draw physics shape, joint in debug mode. + + * You do not create PhysicsDebugDraw objects directly; Instead, you can activate it by PhysicsWorld::setDebugDrawMask. + */ class CC_DLL PhysicsDebugDraw { protected: @@ -256,6 +414,7 @@ protected: }; extern const float CC_DLL PHYSICS_INFINITY; +/** @} */ NS_CC_END #endif // CC_USE_PHYSICS diff --git a/cocos/platform/CCApplicationProtocol.h b/cocos/platform/CCApplicationProtocol.h index 9993973d0c..641e6b0637 100644 --- a/cocos/platform/CCApplicationProtocol.h +++ b/cocos/platform/CCApplicationProtocol.h @@ -41,22 +41,23 @@ class CC_DLL ApplicationProtocol { public: - // Since WINDOWS and ANDROID are defined as macros, we could not just use these keywords in enumeration(Platform). - // Therefore, 'OS_' prefix is added to avoid conflicts with the definitions of system macros. + /** Since WINDOWS and ANDROID are defined as macros, we could not just use these keywords in enumeration(Platform). + * Therefore, 'OS_' prefix is added to avoid conflicts with the definitions of system macros. + */ enum class Platform { - OS_WINDOWS, - OS_LINUX, - OS_MAC, - OS_ANDROID, - OS_IPHONE, - OS_IPAD, - OS_BLACKBERRY, - OS_NACL, - OS_EMSCRIPTEN, - OS_TIZEN, - OS_WINRT, - OS_WP8 + OS_WINDOWS,/** Windows */ + OS_LINUX,/** Linux */ + OS_MAC,/** Mac*/ + OS_ANDROID,/** Android */ + OS_IPHONE,/** Iphone */ + OS_IPAD,/** Ipad */ + OS_BLACKBERRY,/** BLACKBERRY */ + OS_NACL,/** Nacl */ + OS_EMSCRIPTEN,/** Emscripten */ + OS_TIZEN,/** Tizen */ + OS_WINRT,/** Winrt */ + OS_WP8/** WP8 */ }; /** @@ -67,77 +68,78 @@ public: #if CC_ENABLE_SCRIPT_BINDING ScriptEngineManager::destroyInstance(); #endif - // clean auto release pool + /** clean auto release pool. */ PoolManager::destroyInstance(); } /** - @brief Implement Director and Scene init code here. - @return true Initialize success, app continue. - @return false Initialize failed, app terminate. + * @brief Implement Director and Scene init code here. + * @return true Initialize success, app continue. + * @return false Initialize failed, app terminate. * @js NA * @lua NA */ virtual bool applicationDidFinishLaunching() = 0; /** - @brief This function will be called when the application enters background. + * @brief This function will be called when the application enters background. * @js NA * @lua NA */ virtual void applicationDidEnterBackground() = 0; /** - @brief This function will be called when the application enters foreground. + * @brief This function will be called when the application enters foreground. * @js NA * @lua NA */ virtual void applicationWillEnterForeground() = 0; /** - @brief Callback by Director for limit FPS. - @param interval The time, expressed in seconds, between current frame and next. + * @brief Callback by Director for limit FPS. + * @param interval The time, expressed in seconds, between current frame and next. * @js NA * @lua NA */ virtual void setAnimationInterval(double interval) = 0; - //subclass override the function to set OpenGL context attribution instead of use default value - //and now can only set six attributions:redBits,greenBits,blueBits,alphaBits,depthBits,stencilBits - //default value are(5,6,5,0,16,0), usually use as follows: - /*void AppDelegate::initGLContextAttrs(){ - GLContextAttrs glContextAttrs = {8, 8, 8, 8, 24, 8}; - GLView::setGLContextAttrs(glContextAttrs); - }*/ + /** Subclass override the function to set OpenGL context attribution instead of use default value. + * And now can only set six attributions:redBits,greenBits,blueBits,alphaBits,depthBits,stencilBits. + * Default value are(5,6,5,0,16,0), usually use as follows: + * void AppDelegate::initGLContextAttrs(){ + * GLContextAttrs glContextAttrs = {8, 8, 8, 8, 24, 8}; + * GLView::setGLContextAttrs(glContextAttrs); + * } + */ virtual void initGLContextAttrs() {} /** - @brief Get current language config - @return Current language config + @brief Get current language config. + @return Current language config. * @js NA * @lua NA */ virtual LanguageType getCurrentLanguage() = 0; /** - @brief Get current language iso 639-1 code - @return Current language iso 639-1 code + @brief Get current language iso 639-1 code. + @return Current language iso 639-1 code. * @js NA * @lua NA */ virtual const char * getCurrentLanguageCode() = 0; /** - @brief Get target platform + @brief Get target platform. * @js NA * @lua NA */ virtual Platform getTargetPlatform() = 0; /** - @brief Open url in default browser + @brief Open url in default browser. @param String with url to open. - @return true if the resource located by the URL was successfully opened; otherwise false. + @return True if the resource located by the URL was successfully opened; otherwise false. * @js NA * @lua NA */ @@ -145,7 +147,7 @@ public: }; // end of platform group -/// @} +/** @} */ NS_CC_END diff --git a/cocos/platform/android/java/src/org/cocos2dx/lib/Cocos2dxHttpURLConnection.java b/cocos/platform/android/java/src/org/cocos2dx/lib/Cocos2dxHttpURLConnection.java index 53b25e6100..c0d9c5f7c4 100644 --- a/cocos/platform/android/java/src/org/cocos2dx/lib/Cocos2dxHttpURLConnection.java +++ b/cocos/platform/android/java/src/org/cocos2dx/lib/Cocos2dxHttpURLConnection.java @@ -260,8 +260,17 @@ public class Cocos2dxHttpURLConnection } static byte[] getResponseContent(HttpURLConnection http) { - try { - DataInputStream in = new DataInputStream(http.getInputStream()); + DataInputStream in; + try { + in = new DataInputStream(http.getInputStream()); + } catch (IOException e) { + in = new DataInputStream(http.getErrorStream()); + } catch (Exception e) { + Log.e("Cocos2dxHttpURLConnection exception", e.toString()); + return null; + } + + try { byte[] buffer = new byte[1024]; int size = 0; ByteArrayOutputStream bytestream = new ByteArrayOutputStream(); @@ -272,12 +281,13 @@ public class Cocos2dxHttpURLConnection byte retbuffer[] = bytestream.toByteArray(); bytestream.close(); return retbuffer; - } catch (Exception e) { - Log.e("Cocos2dxHttpURLConnection exception", e.toString()); - } + } catch (Exception e) { + Log.e("Cocos2dxHttpURLConnection exception", e.toString()); + } + return null; } - + static int getResponseCode(HttpURLConnection http) { int code = 0; try { diff --git a/cocos/platform/wp8/shaders/precompiledshaders.h b/cocos/platform/wp8/shaders/precompiledshaders.h index 61fa0162ee..40d97491c5 100644 --- a/cocos/platform/wp8/shaders/precompiledshaders.h +++ b/cocos/platform/wp8/shaders/precompiledshaders.h @@ -1568,1135 +1568,6 @@ const unsigned char s_2540BD20098D2FB820A4897DEC619A8E4B8CD354[] = { 171, 171, }; -const unsigned char s_2CF9793879165058483EFB4AD6FA9746ECD7DD2A[] = { - -166, 147, 0, 0, 142, 9, 2, 1, - 0, 128, 0, 0, 82, 139, 0, 0, - 10, 0, 0, 0, 97, 95, 112, 111, -115, 105, 116, 105, 111, 110, 1, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 255, 255, 255, 255, 80, 139, - 0, 0, 10, 0, 0, 0, 97, 95, -116, 101, 120, 67, 111, 111, 114, 100, - 2, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 255, 255, 255, 255, - 0, 0, 0, 0, 0, 0, 0, 0, -255, 255, 255, 255, 0, 0, 0, 0, - 0, 0, 0, 0, 255, 255, 255, 255, - 81, 139, 0, 0, 8, 0, 0, 0, - 97, 95, 110, 111, 114, 109, 97, 108, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 255, 255, 255, 255, - 0, 0, 0, 0, 0, 0, 0, 0, -255, 255, 255, 255, 0, 0, 0, 0, - 0, 0, 0, 0, 255, 255, 255, 255, - 0, 0, 0, 0, 0, 0, 0, 0, -255, 255, 255, 255, 0, 0, 0, 0, - 0, 0, 0, 0, 255, 255, 255, 255, - 0, 0, 0, 0, 0, 0, 0, 0, -255, 255, 255, 255, 0, 0, 0, 0, - 0, 0, 0, 0, 255, 255, 255, 255, - 0, 0, 0, 0, 0, 0, 0, 0, -255, 255, 255, 255, 0, 0, 0, 0, - 0, 0, 0, 0, 255, 255, 255, 255, - 1, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1, 0, 0, 0, - 0, 17, 0, 0, 0, 92, 139, 0, - 0, 241, 141, 0, 0, 11, 0, 0, - 0, 67, 67, 95, 77, 86, 77, 97, -116, 114, 105, 120, 0, 0, 0, 0, -255, 255, 255, 255, 0, 0, 0, 0, - 4, 0, 0, 0, 91, 139, 0, 0, -241, 141, 0, 0, 15, 0, 0, 0, - 67, 67, 95, 78, 111, 114, 109, 97, -108, 77, 97, 116, 114, 105, 120, 0, - 0, 0, 0, 255, 255, 255, 255, 4, - 0, 0, 0, 3, 0, 0, 0, 92, -139, 0, 0, 241, 141, 0, 0, 10, - 0, 0, 0, 67, 67, 95, 80, 77, - 97, 116, 114, 105, 120, 0, 0, 0, - 0, 255, 255, 255, 255, 7, 0, 0, - 0, 4, 0, 0, 0, 81, 139, 0, - 0, 241, 141, 0, 0, 26, 0, 0, - 0, 117, 95, 80, 111, 105, 110, 116, - 76, 105, 103, 104, 116, 83, 111, 117, -114, 99, 101, 80, 111, 115, 105, 116, -105, 111, 110, 1, 0, 0, 0, 255, -255, 255, 255, 11, 0, 0, 0, 1, - 0, 0, 0, 81, 139, 0, 0, 241, -141, 0, 0, 25, 0, 0, 0, 117, - 95, 83, 112, 111, 116, 76, 105, 103, -104, 116, 83, 111, 117, 114, 99, 101, - 80, 111, 115, 105, 116, 105, 111, 110, - 1, 0, 0, 0, 255, 255, 255, 255, - 12, 0, 0, 0, 1, 0, 0, 0, - 94, 139, 0, 0, 0, 0, 0, 0, - 11, 0, 0, 0, 67, 67, 95, 84, -101, 120, 116, 117, 114, 101, 48, 0, - 0, 0, 0, 0, 0, 0, 0, 255, -255, 255, 255, 1, 0, 0, 0, 81, -139, 0, 0, 241, 141, 0, 0, 25, - 0, 0, 0, 117, 95, 65, 109, 98, -105, 101, 110, 116, 76, 105, 103, 104, -116, 83, 111, 117, 114, 99, 101, 67, -111, 108, 111, 114, 0, 0, 0, 0, - 0, 0, 0, 0, 255, 255, 255, 255, - 1, 0, 0, 0, 81, 139, 0, 0, -241, 141, 0, 0, 21, 0, 0, 0, -117, 95, 68, 105, 114, 76, 105, 103, -104, 116, 83, 111, 117, 114, 99, 101, - 67, 111, 108, 111, 114, 1, 0, 0, - 0, 1, 0, 0, 0, 255, 255, 255, -255, 1, 0, 0, 0, 81, 139, 0, - 0, 241, 141, 0, 0, 25, 0, 0, - 0, 117, 95, 68, 105, 114, 76, 105, -103, 104, 116, 83, 111, 117, 114, 99, -101, 68, 105, 114, 101, 99, 116, 105, -111, 110, 1, 0, 0, 0, 2, 0, - 0, 0, 255, 255, 255, 255, 1, 0, - 0, 0, 81, 139, 0, 0, 241, 141, - 0, 0, 23, 0, 0, 0, 117, 95, - 80, 111, 105, 110, 116, 76, 105, 103, -104, 116, 83, 111, 117, 114, 99, 101, - 67, 111, 108, 111, 114, 1, 0, 0, - 0, 3, 0, 0, 0, 255, 255, 255, -255, 1, 0, 0, 0, 6, 20, 0, - 0, 241, 141, 0, 0, 30, 0, 0, - 0, 117, 95, 80, 111, 105, 110, 116, - 76, 105, 103, 104, 116, 83, 111, 117, -114, 99, 101, 82, 97, 110, 103, 101, - 73, 110, 118, 101, 114, 115, 101, 1, - 0, 0, 0, 4, 0, 0, 0, 255, -255, 255, 255, 1, 0, 0, 0, 81, -139, 0, 0, 241, 141, 0, 0, 22, - 0, 0, 0, 117, 95, 83, 112, 111, -116, 76, 105, 103, 104, 116, 83, 111, -117, 114, 99, 101, 67, 111, 108, 111, -114, 1, 0, 0, 0, 5, 0, 0, - 0, 255, 255, 255, 255, 1, 0, 0, - 0, 81, 139, 0, 0, 241, 141, 0, - 0, 26, 0, 0, 0, 117, 95, 83, -112, 111, 116, 76, 105, 103, 104, 116, - 83, 111, 117, 114, 99, 101, 68, 105, -114, 101, 99, 116, 105, 111, 110, 1, - 0, 0, 0, 6, 0, 0, 0, 255, -255, 255, 255, 1, 0, 0, 0, 6, - 20, 0, 0, 241, 141, 0, 0, 30, - 0, 0, 0, 117, 95, 83, 112, 111, -116, 76, 105, 103, 104, 116, 83, 111, -117, 114, 99, 101, 73, 110, 110, 101, -114, 65, 110, 103, 108, 101, 67, 111, -115, 1, 0, 0, 0, 7, 0, 0, - 0, 255, 255, 255, 255, 1, 0, 0, - 0, 6, 20, 0, 0, 241, 141, 0, - 0, 30, 0, 0, 0, 117, 95, 83, -112, 111, 116, 76, 105, 103, 104, 116, - 83, 111, 117, 114, 99, 101, 79, 117, -116, 101, 114, 65, 110, 103, 108, 101, - 67, 111, 115, 1, 0, 0, 0, 8, - 0, 0, 0, 255, 255, 255, 255, 1, - 0, 0, 0, 6, 20, 0, 0, 241, -141, 0, 0, 29, 0, 0, 0, 117, - 95, 83, 112, 111, 116, 76, 105, 103, -104, 116, 83, 111, 117, 114, 99, 101, - 82, 97, 110, 103, 101, 73, 110, 118, -101, 114, 115, 101, 1, 0, 0, 0, - 9, 0, 0, 0, 255, 255, 255, 255, - 1, 0, 0, 0, 82, 139, 0, 0, -241, 141, 0, 0, 7, 0, 0, 0, -117, 95, 99, 111, 108, 111, 114, 0, - 0, 0, 0, 10, 0, 0, 0, 255, -255, 255, 255, 1, 0, 0, 0, 17, - 0, 0, 0, 11, 0, 0, 0, 67, - 67, 95, 77, 86, 77, 97, 116, 114, -105, 120, 0, 0, 0, 0, 0, 0, - 0, 0, 15, 0, 0, 0, 67, 67, - 95, 78, 111, 114, 109, 97, 108, 77, - 97, 116, 114, 105, 120, 0, 0, 0, - 0, 1, 0, 0, 0, 10, 0, 0, - 0, 67, 67, 95, 80, 77, 97, 116, -114, 105, 120, 0, 0, 0, 0, 2, - 0, 0, 0, 26, 0, 0, 0, 117, - 95, 80, 111, 105, 110, 116, 76, 105, -103, 104, 116, 83, 111, 117, 114, 99, -101, 80, 111, 115, 105, 116, 105, 111, -110, 0, 0, 0, 0, 3, 0, 0, - 0, 25, 0, 0, 0, 117, 95, 83, -112, 111, 116, 76, 105, 103, 104, 116, - 83, 111, 117, 114, 99, 101, 80, 111, -115, 105, 116, 105, 111, 110, 0, 0, - 0, 0, 4, 0, 0, 0, 11, 0, - 0, 0, 67, 67, 95, 84, 101, 120, -116, 117, 114, 101, 48, 0, 0, 0, - 0, 5, 0, 0, 0, 25, 0, 0, - 0, 117, 95, 65, 109, 98, 105, 101, -110, 116, 76, 105, 103, 104, 116, 83, -111, 117, 114, 99, 101, 67, 111, 108, -111, 114, 0, 0, 0, 0, 6, 0, - 0, 0, 21, 0, 0, 0, 117, 95, - 68, 105, 114, 76, 105, 103, 104, 116, - 83, 111, 117, 114, 99, 101, 67, 111, -108, 111, 114, 0, 0, 0, 0, 7, - 0, 0, 0, 25, 0, 0, 0, 117, - 95, 68, 105, 114, 76, 105, 103, 104, -116, 83, 111, 117, 114, 99, 101, 68, -105, 114, 101, 99, 116, 105, 111, 110, - 0, 0, 0, 0, 8, 0, 0, 0, - 23, 0, 0, 0, 117, 95, 80, 111, -105, 110, 116, 76, 105, 103, 104, 116, - 83, 111, 117, 114, 99, 101, 67, 111, -108, 111, 114, 0, 0, 0, 0, 9, - 0, 0, 0, 30, 0, 0, 0, 117, - 95, 80, 111, 105, 110, 116, 76, 105, -103, 104, 116, 83, 111, 117, 114, 99, -101, 82, 97, 110, 103, 101, 73, 110, -118, 101, 114, 115, 101, 0, 0, 0, - 0, 10, 0, 0, 0, 22, 0, 0, - 0, 117, 95, 83, 112, 111, 116, 76, -105, 103, 104, 116, 83, 111, 117, 114, - 99, 101, 67, 111, 108, 111, 114, 0, - 0, 0, 0, 11, 0, 0, 0, 26, - 0, 0, 0, 117, 95, 83, 112, 111, -116, 76, 105, 103, 104, 116, 83, 111, -117, 114, 99, 101, 68, 105, 114, 101, - 99, 116, 105, 111, 110, 0, 0, 0, - 0, 12, 0, 0, 0, 30, 0, 0, - 0, 117, 95, 83, 112, 111, 116, 76, -105, 103, 104, 116, 83, 111, 117, 114, - 99, 101, 73, 110, 110, 101, 114, 65, -110, 103, 108, 101, 67, 111, 115, 0, - 0, 0, 0, 13, 0, 0, 0, 30, - 0, 0, 0, 117, 95, 83, 112, 111, -116, 76, 105, 103, 104, 116, 83, 111, -117, 114, 99, 101, 79, 117, 116, 101, -114, 65, 110, 103, 108, 101, 67, 111, -115, 0, 0, 0, 0, 14, 0, 0, - 0, 29, 0, 0, 0, 117, 95, 83, -112, 111, 116, 76, 105, 103, 104, 116, - 83, 111, 117, 114, 99, 101, 82, 97, -110, 103, 101, 73, 110, 118, 101, 114, -115, 101, 0, 0, 0, 0, 15, 0, - 0, 0, 7, 0, 0, 0, 117, 95, - 99, 111, 108, 111, 114, 0, 0, 0, - 0, 16, 0, 0, 0, 236, 16, 0, - 0, 124, 10, 0, 0, 0, 0, 0, - 0, 183, 123, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 68, 88, 66, 67, 2, 25, 137, -206, 217, 191, 45, 93, 183, 145, 101, - 17, 169, 207, 141, 211, 1, 0, 0, - 0, 236, 16, 0, 0, 6, 0, 0, - 0, 56, 0, 0, 0, 140, 3, 0, - 0, 144, 11, 0, 0, 12, 12, 0, - 0, 244, 15, 0, 0, 112, 16, 0, - 0, 65, 111, 110, 57, 76, 3, 0, - 0, 76, 3, 0, 0, 0, 2, 255, -255, 24, 3, 0, 0, 52, 0, 0, - 0, 1, 0, 40, 0, 0, 0, 52, - 0, 0, 0, 52, 0, 1, 0, 36, - 0, 0, 0, 52, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 11, 0, 0, - 0, 0, 0, 0, 0, 1, 2, 255, -255, 81, 0, 0, 5, 11, 0, 15, -160, 0, 0, 0, 0, 0, 0, 128, - 63, 0, 0, 0, 192, 0, 0, 64, - 64, 31, 0, 0, 2, 0, 0, 0, -128, 0, 0, 7, 176, 31, 0, 0, - 2, 0, 0, 0, 128, 1, 0, 7, -176, 31, 0, 0, 2, 0, 0, 0, -128, 2, 0, 7, 176, 31, 0, 0, - 2, 0, 0, 0, 128, 3, 0, 3, -176, 31, 0, 0, 2, 0, 0, 0, -144, 0, 8, 15, 160, 5, 0, 0, - 3, 0, 0, 7, 128, 1, 0, 228, -176, 4, 0, 0, 160, 8, 0, 0, - 3, 0, 0, 1, 128, 0, 0, 228, -128, 0, 0, 228, 128, 2, 0, 0, - 3, 0, 0, 1, 128, 0, 0, 0, -129, 11, 0, 85, 160, 11, 0, 0, - 3, 1, 0, 8, 128, 0, 0, 0, -128, 11, 0, 0, 160, 2, 0, 0, - 3, 0, 0, 7, 128, 2, 0, 228, -160, 2, 0, 228, 160, 36, 0, 0, - 2, 1, 0, 7, 128, 0, 0, 228, -128, 36, 0, 0, 2, 0, 0, 7, -128, 0, 0, 228, 176, 8, 0, 0, - 3, 0, 0, 8, 128, 0, 0, 228, -128, 1, 0, 228, 129, 5, 0, 0, - 3, 1, 0, 7, 128, 0, 0, 255, -128, 1, 0, 228, 160, 88, 0, 0, - 4, 1, 0, 7, 128, 0, 0, 255, -128, 1, 0, 228, 128, 11, 0, 0, -160, 2, 0, 0, 3, 1, 0, 7, -128, 1, 0, 228, 128, 0, 0, 228, -160, 36, 0, 0, 2, 2, 0, 7, -128, 1, 0, 228, 176, 8, 0, 0, - 3, 0, 0, 8, 128, 0, 0, 228, -128, 2, 0, 228, 128, 5, 0, 0, - 3, 2, 0, 7, 128, 0, 0, 255, -128, 3, 0, 228, 160, 88, 0, 0, - 4, 2, 0, 7, 128, 0, 0, 255, -128, 2, 0, 228, 128, 11, 0, 0, -160, 4, 0, 0, 4, 1, 0, 7, -128, 2, 0, 228, 128, 1, 0, 255, -128, 1, 0, 228, 128, 2, 0, 0, - 3, 2, 0, 7, 128, 6, 0, 228, -160, 6, 0, 228, 160, 36, 0, 0, - 2, 3, 0, 7, 128, 2, 0, 228, -128, 36, 0, 0, 2, 2, 0, 7, -128, 2, 0, 228, 176, 8, 0, 0, - 3, 0, 0, 8, 128, 3, 0, 228, -128, 2, 0, 228, 129, 8, 0, 0, - 3, 1, 0, 8, 128, 0, 0, 228, -128, 2, 0, 228, 128, 2, 0, 0, - 3, 0, 0, 1, 128, 0, 0, 255, -128, 8, 0, 0, 161, 1, 0, 0, - 2, 2, 0, 1, 128, 8, 0, 0, -160, 2, 0, 0, 3, 0, 0, 2, -128, 2, 0, 0, 129, 7, 0, 0, -160, 6, 0, 0, 2, 0, 0, 2, -128, 0, 0, 85, 128, 5, 0, 0, - 3, 0, 0, 17, 128, 0, 0, 85, -128, 0, 0, 0, 128, 4, 0, 0, - 4, 0, 0, 2, 128, 0, 0, 0, -128, 11, 0, 170, 160, 11, 0, 255, -160, 5, 0, 0, 3, 0, 0, 1, -128, 0, 0, 0, 128, 0, 0, 0, -128, 5, 0, 0, 3, 0, 0, 1, -128, 0, 0, 0, 128, 0, 0, 85, -128, 5, 0, 0, 3, 0, 0, 14, -128, 2, 0, 144, 176, 9, 0, 0, -160, 8, 0, 0, 3, 0, 0, 2, -128, 0, 0, 249, 128, 0, 0, 249, -128, 2, 0, 0, 3, 0, 0, 2, -128, 0, 0, 85, 129, 11, 0, 85, -160, 5, 0, 0, 3, 0, 0, 1, -128, 0, 0, 0, 128, 0, 0, 85, -128, 88, 0, 0, 4, 0, 0, 1, -128, 0, 0, 85, 128, 0, 0, 0, -128, 11, 0, 0, 160, 5, 0, 0, - 3, 0, 0, 14, 128, 1, 0, 255, -128, 5, 0, 144, 160, 88, 0, 0, - 4, 0, 0, 14, 128, 1, 0, 255, -128, 0, 0, 228, 128, 11, 0, 0, -160, 4, 0, 0, 4, 0, 0, 7, -128, 0, 0, 249, 128, 0, 0, 0, -128, 1, 0, 228, 128, 66, 0, 0, - 3, 1, 0, 15, 128, 3, 0, 228, -176, 0, 8, 228, 160, 5, 0, 0, - 3, 1, 0, 15, 128, 1, 0, 228, -128, 10, 0, 228, 160, 1, 0, 0, - 2, 0, 0, 8, 128, 11, 0, 85, -160, 5, 0, 0, 3, 0, 0, 15, -128, 0, 0, 228, 128, 1, 0, 228, -128, 1, 0, 0, 2, 0, 8, 15, -128, 0, 0, 228, 128, 1, 0, 0, - 2, 1, 8, 15, 128, 0, 0, 228, -128, 1, 0, 0, 2, 2, 8, 15, -128, 0, 0, 228, 128, 1, 0, 0, - 2, 3, 8, 15, 128, 0, 0, 228, -128, 255, 255, 0, 0, 83, 72, 68, - 82, 252, 7, 0, 0, 64, 0, 0, - 0, 255, 1, 0, 0, 89, 0, 0, - 4, 70, 142, 32, 0, 0, 0, 0, - 0, 11, 0, 0, 0, 90, 0, 0, - 3, 0, 96, 16, 0, 0, 0, 0, - 0, 88, 24, 0, 4, 0, 112, 16, - 0, 0, 0, 0, 0, 85, 85, 0, - 0, 98, 16, 0, 3, 114, 16, 16, - 0, 0, 0, 0, 0, 98, 16, 0, - 3, 114, 16, 16, 0, 1, 0, 0, - 0, 98, 16, 0, 3, 114, 16, 16, - 0, 2, 0, 0, 0, 98, 16, 0, - 3, 50, 16, 16, 0, 3, 0, 0, - 0, 101, 0, 0, 3, 242, 32, 16, - 0, 0, 0, 0, 0, 101, 0, 0, - 3, 242, 32, 16, 0, 1, 0, 0, - 0, 101, 0, 0, 3, 242, 32, 16, - 0, 2, 0, 0, 0, 101, 0, 0, - 3, 242, 32, 16, 0, 3, 0, 0, - 0, 104, 0, 0, 2, 4, 0, 0, - 0, 16, 0, 0, 7, 18, 0, 16, - 0, 0, 0, 0, 0, 70, 18, 16, - 0, 0, 0, 0, 0, 70, 18, 16, - 0, 0, 0, 0, 0, 68, 0, 0, - 5, 18, 0, 16, 0, 0, 0, 0, - 0, 10, 0, 16, 0, 0, 0, 0, - 0, 56, 0, 0, 7, 114, 0, 16, - 0, 0, 0, 0, 0, 6, 0, 16, - 0, 0, 0, 0, 0, 70, 18, 16, - 0, 0, 0, 0, 0, 0, 0, 0, - 9, 114, 0, 16, 0, 1, 0, 0, - 0, 70, 130, 32, 0, 0, 0, 0, - 0, 2, 0, 0, 0, 70, 130, 32, - 0, 0, 0, 0, 0, 2, 0, 0, - 0, 16, 0, 0, 7, 130, 0, 16, - 0, 0, 0, 0, 0, 70, 2, 16, - 0, 1, 0, 0, 0, 70, 2, 16, - 0, 1, 0, 0, 0, 68, 0, 0, - 5, 130, 0, 16, 0, 0, 0, 0, - 0, 58, 0, 16, 0, 0, 0, 0, - 0, 56, 0, 0, 7, 114, 0, 16, - 0, 1, 0, 0, 0, 246, 15, 16, - 0, 0, 0, 0, 0, 70, 2, 16, - 0, 1, 0, 0, 0, 16, 0, 0, - 8, 130, 0, 16, 0, 0, 0, 0, - 0, 70, 2, 16, 0, 0, 0, 0, - 0, 70, 2, 16, 128, 65, 0, 0, - 0, 1, 0, 0, 0, 52, 0, 0, - 7, 130, 0, 16, 0, 0, 0, 0, - 0, 58, 0, 16, 0, 0, 0, 0, - 0, 1, 64, 0, 0, 0, 0, 0, - 0, 54, 0, 0, 6, 114, 0, 16, - 0, 1, 0, 0, 0, 70, 130, 32, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 54, 0, 0, 5, 130, 0, 16, - 0, 1, 0, 0, 0, 1, 64, 0, - 0, 0, 0, 0, 0, 48, 0, 0, - 1, 33, 0, 0, 7, 18, 0, 16, - 0, 2, 0, 0, 0, 58, 0, 16, - 0, 1, 0, 0, 0, 1, 64, 0, - 0, 1, 0, 0, 0, 3, 0, 4, - 3, 10, 0, 16, 0, 2, 0, 0, - 0, 50, 0, 0, 10, 114, 0, 16, - 0, 1, 0, 0, 0, 70, 130, 32, - 0, 0, 0, 0, 0, 1, 0, 0, - 0, 246, 15, 16, 0, 0, 0, 0, - 0, 70, 2, 16, 0, 1, 0, 0, - 0, 30, 0, 0, 7, 130, 0, 16, - 0, 1, 0, 0, 0, 58, 0, 16, - 0, 1, 0, 0, 0, 1, 64, 0, - 0, 1, 0, 0, 0, 22, 0, 0, - 1, 56, 0, 0, 8, 114, 0, 16, - 0, 2, 0, 0, 0, 70, 18, 16, - 0, 1, 0, 0, 0, 6, 128, 32, - 0, 0, 0, 0, 0, 4, 0, 0, - 0, 16, 0, 0, 7, 130, 0, 16, - 0, 0, 0, 0, 0, 70, 2, 16, - 0, 2, 0, 0, 0, 70, 2, 16, - 0, 2, 0, 0, 0, 0, 0, 0, - 8, 130, 0, 16, 0, 0, 0, 0, - 0, 58, 0, 16, 128, 65, 0, 0, - 0, 0, 0, 0, 0, 1, 64, 0, - 0, 0, 0, 128, 63, 52, 0, 0, - 7, 130, 0, 16, 0, 0, 0, 0, - 0, 58, 0, 16, 0, 0, 0, 0, - 0, 1, 64, 0, 0, 0, 0, 0, - 0, 16, 0, 0, 7, 130, 0, 16, - 0, 1, 0, 0, 0, 70, 18, 16, - 0, 1, 0, 0, 0, 70, 18, 16, - 0, 1, 0, 0, 0, 68, 0, 0, - 5, 130, 0, 16, 0, 1, 0, 0, - 0, 58, 0, 16, 0, 1, 0, 0, - 0, 56, 0, 0, 7, 114, 0, 16, - 0, 2, 0, 0, 0, 246, 15, 16, - 0, 1, 0, 0, 0, 70, 18, 16, - 0, 1, 0, 0, 0, 16, 0, 0, - 7, 130, 0, 16, 0, 1, 0, 0, - 0, 70, 2, 16, 0, 0, 0, 0, - 0, 70, 2, 16, 0, 2, 0, 0, - 0, 52, 0, 0, 7, 130, 0, 16, - 0, 1, 0, 0, 0, 58, 0, 16, - 0, 1, 0, 0, 0, 1, 64, 0, - 0, 0, 0, 0, 0, 56, 0, 0, - 8, 114, 0, 16, 0, 2, 0, 0, - 0, 246, 15, 16, 0, 1, 0, 0, - 0, 70, 130, 32, 0, 0, 0, 0, - 0, 3, 0, 0, 0, 54, 0, 0, - 5, 114, 0, 16, 0, 3, 0, 0, - 0, 70, 2, 16, 0, 1, 0, 0, - 0, 54, 0, 0, 5, 130, 0, 16, - 0, 1, 0, 0, 0, 1, 64, 0, - 0, 0, 0, 0, 0, 48, 0, 0, - 1, 33, 0, 0, 7, 130, 0, 16, - 0, 2, 0, 0, 0, 58, 0, 16, - 0, 1, 0, 0, 0, 1, 64, 0, - 0, 1, 0, 0, 0, 3, 0, 4, - 3, 58, 0, 16, 0, 2, 0, 0, - 0, 50, 0, 0, 9, 114, 0, 16, - 0, 3, 0, 0, 0, 70, 2, 16, - 0, 2, 0, 0, 0, 246, 15, 16, - 0, 0, 0, 0, 0, 70, 2, 16, - 0, 3, 0, 0, 0, 30, 0, 0, - 7, 130, 0, 16, 0, 1, 0, 0, - 0, 58, 0, 16, 0, 1, 0, 0, - 0, 1, 64, 0, 0, 1, 0, 0, - 0, 22, 0, 0, 1, 56, 0, 0, - 8, 114, 0, 16, 0, 1, 0, 0, - 0, 70, 18, 16, 0, 2, 0, 0, - 0, 6, 128, 32, 0, 0, 0, 0, - 0, 9, 0, 0, 0, 16, 0, 0, - 7, 130, 0, 16, 0, 0, 0, 0, - 0, 70, 2, 16, 0, 1, 0, 0, - 0, 70, 2, 16, 0, 1, 0, 0, - 0, 0, 0, 0, 8, 130, 0, 16, - 0, 0, 0, 0, 0, 58, 0, 16, -128, 65, 0, 0, 0, 0, 0, 0, - 0, 1, 64, 0, 0, 0, 0, 128, - 63, 52, 0, 0, 7, 130, 0, 16, - 0, 0, 0, 0, 0, 58, 0, 16, - 0, 0, 0, 0, 0, 1, 64, 0, - 0, 0, 0, 0, 0, 16, 0, 0, - 7, 18, 0, 16, 0, 1, 0, 0, - 0, 70, 18, 16, 0, 2, 0, 0, - 0, 70, 18, 16, 0, 2, 0, 0, - 0, 68, 0, 0, 5, 18, 0, 16, - 0, 1, 0, 0, 0, 10, 0, 16, - 0, 1, 0, 0, 0, 56, 0, 0, - 7, 114, 0, 16, 0, 1, 0, 0, - 0, 6, 0, 16, 0, 1, 0, 0, - 0, 70, 18, 16, 0, 2, 0, 0, - 0, 0, 0, 0, 9, 114, 0, 16, - 0, 2, 0, 0, 0, 70, 130, 32, - 0, 0, 0, 0, 0, 6, 0, 0, - 0, 70, 130, 32, 0, 0, 0, 0, - 0, 6, 0, 0, 0, 16, 0, 0, - 7, 130, 0, 16, 0, 1, 0, 0, - 0, 70, 2, 16, 0, 2, 0, 0, - 0, 70, 2, 16, 0, 2, 0, 0, - 0, 68, 0, 0, 5, 130, 0, 16, - 0, 1, 0, 0, 0, 58, 0, 16, - 0, 1, 0, 0, 0, 56, 0, 0, - 7, 114, 0, 16, 0, 2, 0, 0, - 0, 246, 15, 16, 0, 1, 0, 0, - 0, 70, 2, 16, 0, 2, 0, 0, - 0, 16, 0, 0, 8, 130, 0, 16, - 0, 1, 0, 0, 0, 70, 2, 16, - 0, 2, 0, 0, 0, 70, 2, 16, -128, 65, 0, 0, 0, 1, 0, 0, - 0, 0, 0, 0, 10, 18, 0, 16, - 0, 2, 0, 0, 0, 10, 128, 32, - 0, 0, 0, 0, 0, 7, 0, 0, - 0, 10, 128, 32, 128, 65, 0, 0, - 0, 0, 0, 0, 0, 8, 0, 0, - 0, 0, 0, 0, 9, 130, 0, 16, - 0, 1, 0, 0, 0, 58, 0, 16, - 0, 1, 0, 0, 0, 10, 128, 32, -128, 65, 0, 0, 0, 0, 0, 0, - 0, 8, 0, 0, 0, 14, 0, 0, - 10, 18, 0, 16, 0, 2, 0, 0, - 0, 2, 64, 0, 0, 0, 0, 128, - 63, 0, 0, 128, 63, 0, 0, 128, - 63, 0, 0, 128, 63, 10, 0, 16, - 0, 2, 0, 0, 0, 56, 32, 0, - 7, 130, 0, 16, 0, 1, 0, 0, - 0, 58, 0, 16, 0, 1, 0, 0, - 0, 10, 0, 16, 0, 2, 0, 0, - 0, 50, 0, 0, 9, 18, 0, 16, - 0, 2, 0, 0, 0, 58, 0, 16, - 0, 1, 0, 0, 0, 1, 64, 0, - 0, 0, 0, 0, 192, 1, 64, 0, - 0, 0, 0, 64, 64, 56, 0, 0, - 7, 130, 0, 16, 0, 1, 0, 0, - 0, 58, 0, 16, 0, 1, 0, 0, - 0, 58, 0, 16, 0, 1, 0, 0, - 0, 56, 0, 0, 7, 130, 0, 16, - 0, 1, 0, 0, 0, 58, 0, 16, - 0, 1, 0, 0, 0, 10, 0, 16, - 0, 2, 0, 0, 0, 56, 0, 0, - 7, 130, 0, 16, 0, 0, 0, 0, - 0, 58, 0, 16, 0, 0, 0, 0, - 0, 58, 0, 16, 0, 1, 0, 0, - 0, 16, 0, 0, 7, 18, 0, 16, - 0, 0, 0, 0, 0, 70, 2, 16, - 0, 0, 0, 0, 0, 70, 2, 16, - 0, 1, 0, 0, 0, 52, 0, 0, - 7, 18, 0, 16, 0, 0, 0, 0, - 0, 10, 0, 16, 0, 0, 0, 0, - 0, 1, 64, 0, 0, 0, 0, 0, - 0, 56, 0, 0, 8, 114, 0, 16, - 0, 0, 0, 0, 0, 6, 0, 16, - 0, 0, 0, 0, 0, 70, 130, 32, - 0, 0, 0, 0, 0, 5, 0, 0, - 0, 54, 0, 0, 5, 114, 0, 16, - 0, 1, 0, 0, 0, 70, 2, 16, - 0, 3, 0, 0, 0, 54, 0, 0, - 5, 18, 0, 16, 0, 2, 0, 0, - 0, 1, 64, 0, 0, 0, 0, 0, - 0, 48, 0, 0, 1, 33, 0, 0, - 7, 34, 0, 16, 0, 2, 0, 0, - 0, 10, 0, 16, 0, 2, 0, 0, - 0, 1, 64, 0, 0, 1, 0, 0, - 0, 3, 0, 4, 3, 26, 0, 16, - 0, 2, 0, 0, 0, 50, 0, 0, - 9, 114, 0, 16, 0, 1, 0, 0, - 0, 70, 2, 16, 0, 0, 0, 0, - 0, 246, 15, 16, 0, 0, 0, 0, - 0, 70, 2, 16, 0, 1, 0, 0, - 0, 30, 0, 0, 7, 18, 0, 16, - 0, 2, 0, 0, 0, 10, 0, 16, - 0, 2, 0, 0, 0, 1, 64, 0, - 0, 1, 0, 0, 0, 22, 0, 0, - 1, 69, 0, 0, 9, 242, 0, 16, - 0, 0, 0, 0, 0, 70, 16, 16, - 0, 3, 0, 0, 0, 70, 126, 16, - 0, 0, 0, 0, 0, 0, 96, 16, - 0, 0, 0, 0, 0, 56, 0, 0, - 8, 242, 0, 16, 0, 0, 0, 0, - 0, 70, 14, 16, 0, 0, 0, 0, - 0, 70, 142, 32, 0, 0, 0, 0, - 0, 10, 0, 0, 0, 54, 0, 0, - 5, 130, 0, 16, 0, 1, 0, 0, - 0, 1, 64, 0, 0, 0, 0, 128, - 63, 56, 0, 0, 7, 242, 0, 16, - 0, 0, 0, 0, 0, 70, 14, 16, - 0, 0, 0, 0, 0, 70, 14, 16, - 0, 1, 0, 0, 0, 54, 0, 0, - 5, 242, 32, 16, 0, 0, 0, 0, - 0, 70, 14, 16, 0, 0, 0, 0, - 0, 54, 0, 0, 5, 242, 32, 16, - 0, 1, 0, 0, 0, 70, 14, 16, - 0, 0, 0, 0, 0, 54, 0, 0, - 5, 242, 32, 16, 0, 2, 0, 0, - 0, 70, 14, 16, 0, 0, 0, 0, - 0, 54, 0, 0, 5, 242, 32, 16, - 0, 3, 0, 0, 0, 70, 14, 16, - 0, 0, 0, 0, 0, 62, 0, 0, - 1, 83, 84, 65, 84, 116, 0, 0, - 0, 75, 0, 0, 0, 4, 0, 0, - 0, 0, 0, 0, 0, 8, 0, 0, - 0, 47, 0, 0, 0, 6, 0, 0, - 0, 0, 0, 0, 0, 1, 0, 0, - 0, 3, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 11, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 82, 68, 69, - 70, 224, 3, 0, 0, 1, 0, 0, - 0, 176, 0, 0, 0, 3, 0, 0, - 0, 28, 0, 0, 0, 0, 4, 255, -255, 0, 65, 0, 0, 172, 3, 0, - 0, 124, 0, 0, 0, 3, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1, 0, 0, 0, 1, 0, 0, - 0, 145, 0, 0, 0, 2, 0, 0, - 0, 5, 0, 0, 0, 4, 0, 0, - 0, 255, 255, 255, 255, 0, 0, 0, - 0, 1, 0, 0, 0, 13, 0, 0, - 0, 166, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1, 0, 0, 0, 0, 0, 0, - 0, 115, 97, 109, 112, 108, 101, 114, - 95, 95, 67, 67, 95, 84, 101, 120, -116, 117, 114, 101, 48, 0, 116, 101, -120, 116, 117, 114, 101, 95, 95, 67, - 67, 95, 84, 101, 120, 116, 117, 114, -101, 48, 0, 36, 71, 108, 111, 98, - 97, 108, 115, 0, 171, 166, 0, 0, - 0, 11, 0, 0, 0, 200, 0, 0, - 0, 176, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 208, 1, 0, - 0, 0, 0, 0, 0, 12, 0, 0, - 0, 2, 0, 0, 0, 236, 1, 0, - 0, 0, 0, 0, 0, 252, 1, 0, - 0, 16, 0, 0, 0, 12, 0, 0, - 0, 2, 0, 0, 0, 20, 2, 0, - 0, 0, 0, 0, 0, 36, 2, 0, - 0, 32, 0, 0, 0, 12, 0, 0, - 0, 2, 0, 0, 0, 64, 2, 0, - 0, 0, 0, 0, 0, 80, 2, 0, - 0, 48, 0, 0, 0, 12, 0, 0, - 0, 2, 0, 0, 0, 108, 2, 0, - 0, 0, 0, 0, 0, 124, 2, 0, - 0, 64, 0, 0, 0, 4, 0, 0, - 0, 2, 0, 0, 0, 156, 2, 0, - 0, 0, 0, 0, 0, 172, 2, 0, - 0, 80, 0, 0, 0, 12, 0, 0, - 0, 2, 0, 0, 0, 196, 2, 0, - 0, 0, 0, 0, 0, 212, 2, 0, - 0, 96, 0, 0, 0, 12, 0, 0, - 0, 2, 0, 0, 0, 240, 2, 0, - 0, 0, 0, 0, 0, 0, 3, 0, - 0, 112, 0, 0, 0, 4, 0, 0, - 0, 2, 0, 0, 0, 32, 3, 0, - 0, 0, 0, 0, 0, 48, 3, 0, - 0, 128, 0, 0, 0, 4, 0, 0, - 0, 2, 0, 0, 0, 80, 3, 0, - 0, 0, 0, 0, 0, 96, 3, 0, - 0, 144, 0, 0, 0, 4, 0, 0, - 0, 2, 0, 0, 0, 128, 3, 0, - 0, 0, 0, 0, 0, 144, 3, 0, - 0, 160, 0, 0, 0, 16, 0, 0, - 0, 2, 0, 0, 0, 156, 3, 0, - 0, 0, 0, 0, 0, 95, 117, 95, - 65, 109, 98, 105, 101, 110, 116, 76, -105, 103, 104, 116, 83, 111, 117, 114, - 99, 101, 67, 111, 108, 111, 114, 0, -171, 1, 0, 3, 0, 1, 0, 3, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 95, 117, 95, 68, 105, 114, 76, -105, 103, 104, 116, 83, 111, 117, 114, - 99, 101, 67, 111, 108, 111, 114, 0, -171, 1, 0, 3, 0, 1, 0, 3, - 0, 1, 0, 0, 0, 0, 0, 0, - 0, 95, 117, 95, 68, 105, 114, 76, -105, 103, 104, 116, 83, 111, 117, 114, - 99, 101, 68, 105, 114, 101, 99, 116, -105, 111, 110, 0, 171, 1, 0, 3, - 0, 1, 0, 3, 0, 1, 0, 0, - 0, 0, 0, 0, 0, 95, 117, 95, - 80, 111, 105, 110, 116, 76, 105, 103, -104, 116, 83, 111, 117, 114, 99, 101, - 67, 111, 108, 111, 114, 0, 171, 171, -171, 1, 0, 3, 0, 1, 0, 3, - 0, 1, 0, 0, 0, 0, 0, 0, - 0, 95, 117, 95, 80, 111, 105, 110, -116, 76, 105, 103, 104, 116, 83, 111, -117, 114, 99, 101, 82, 97, 110, 103, -101, 73, 110, 118, 101, 114, 115, 101, - 0, 0, 0, 3, 0, 1, 0, 1, - 0, 1, 0, 0, 0, 0, 0, 0, - 0, 95, 117, 95, 83, 112, 111, 116, - 76, 105, 103, 104, 116, 83, 111, 117, -114, 99, 101, 67, 111, 108, 111, 114, - 0, 1, 0, 3, 0, 1, 0, 3, - 0, 1, 0, 0, 0, 0, 0, 0, - 0, 95, 117, 95, 83, 112, 111, 116, - 76, 105, 103, 104, 116, 83, 111, 117, -114, 99, 101, 68, 105, 114, 101, 99, -116, 105, 111, 110, 0, 1, 0, 3, - 0, 1, 0, 3, 0, 1, 0, 0, - 0, 0, 0, 0, 0, 95, 117, 95, - 83, 112, 111, 116, 76, 105, 103, 104, -116, 83, 111, 117, 114, 99, 101, 73, -110, 110, 101, 114, 65, 110, 103, 108, -101, 67, 111, 115, 0, 0, 0, 3, - 0, 1, 0, 1, 0, 1, 0, 0, - 0, 0, 0, 0, 0, 95, 117, 95, - 83, 112, 111, 116, 76, 105, 103, 104, -116, 83, 111, 117, 114, 99, 101, 79, -117, 116, 101, 114, 65, 110, 103, 108, -101, 67, 111, 115, 0, 0, 0, 3, - 0, 1, 0, 1, 0, 1, 0, 0, - 0, 0, 0, 0, 0, 95, 117, 95, - 83, 112, 111, 116, 76, 105, 103, 104, -116, 83, 111, 117, 114, 99, 101, 82, - 97, 110, 103, 101, 73, 110, 118, 101, -114, 115, 101, 0, 171, 0, 0, 3, - 0, 1, 0, 1, 0, 1, 0, 0, - 0, 0, 0, 0, 0, 95, 117, 95, - 99, 111, 108, 111, 114, 0, 171, 171, -171, 1, 0, 3, 0, 1, 0, 4, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 77, 105, 99, 114, 111, 115, 111, -102, 116, 32, 40, 82, 41, 32, 72, - 76, 83, 76, 32, 83, 104, 97, 100, -101, 114, 32, 67, 111, 109, 112, 105, -108, 101, 114, 32, 54, 46, 51, 46, - 57, 54, 48, 48, 46, 49, 55, 52, - 49, 53, 0, 171, 171, 73, 83, 71, - 78, 116, 0, 0, 0, 4, 0, 0, - 0, 8, 0, 0, 0, 104, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 3, 0, 0, 0, 0, 0, 0, - 0, 7, 7, 0, 0, 104, 0, 0, - 0, 1, 0, 0, 0, 0, 0, 0, - 0, 3, 0, 0, 0, 1, 0, 0, - 0, 7, 7, 0, 0, 104, 0, 0, - 0, 2, 0, 0, 0, 0, 0, 0, - 0, 3, 0, 0, 0, 2, 0, 0, - 0, 7, 7, 0, 0, 104, 0, 0, - 0, 3, 0, 0, 0, 0, 0, 0, - 0, 3, 0, 0, 0, 3, 0, 0, - 0, 3, 3, 0, 0, 84, 69, 88, - 67, 79, 79, 82, 68, 0, 171, 171, -171, 79, 83, 71, 78, 116, 0, 0, - 0, 4, 0, 0, 0, 8, 0, 0, - 0, 104, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 3, 0, 0, - 0, 0, 0, 0, 0, 15, 0, 0, - 0, 104, 0, 0, 0, 1, 0, 0, - 0, 0, 0, 0, 0, 3, 0, 0, - 0, 1, 0, 0, 0, 15, 0, 0, - 0, 104, 0, 0, 0, 2, 0, 0, - 0, 0, 0, 0, 0, 3, 0, 0, - 0, 2, 0, 0, 0, 15, 0, 0, - 0, 104, 0, 0, 0, 3, 0, 0, - 0, 0, 0, 0, 0, 3, 0, 0, - 0, 3, 0, 0, 0, 15, 0, 0, - 0, 83, 86, 95, 84, 97, 114, 103, -101, 116, 0, 171, 171, 68, 88, 66, - 67, 83, 219, 12, 79, 109, 140, 127, -159, 214, 55, 101, 168, 193, 132, 87, - 74, 1, 0, 0, 0, 124, 10, 0, - 0, 6, 0, 0, 0, 56, 0, 0, - 0, 224, 2, 0, 0, 64, 7, 0, - 0, 188, 7, 0, 0, 120, 9, 0, - 0, 220, 9, 0, 0, 65, 111, 110, - 57, 160, 2, 0, 0, 160, 2, 0, - 0, 0, 2, 254, 255, 108, 2, 0, - 0, 52, 0, 0, 0, 1, 0, 36, - 0, 0, 0, 48, 0, 0, 0, 48, - 0, 0, 0, 36, 0, 1, 0, 48, - 0, 0, 0, 0, 0, 13, 0, 1, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1, 2, 254, 255, 81, 0, 0, - 5, 0, 0, 15, 160, 0, 0, 125, - 67, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 81, 0, 0, - 5, 14, 0, 15, 160, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 128, - 63, 0, 0, 0, 63, 81, 0, 0, - 5, 15, 0, 15, 160, 0, 0, 128, - 63, 0, 0, 128, 191, 0, 0, 0, - 0, 0, 0, 0, 0, 48, 0, 0, - 5, 0, 0, 15, 240, 253, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 31, 0, 0, - 2, 5, 0, 0, 128, 0, 0, 15, -144, 31, 0, 0, 2, 5, 0, 1, -128, 1, 0, 15, 144, 31, 0, 0, - 2, 5, 0, 2, 128, 2, 0, 15, -144, 9, 0, 0, 3, 0, 0, 1, -128, 1, 0, 228, 160, 1, 0, 228, -144, 9, 0, 0, 3, 0, 0, 2, -128, 2, 0, 228, 160, 1, 0, 228, -144, 9, 0, 0, 3, 0, 0, 4, -128, 3, 0, 228, 160, 1, 0, 228, -144, 9, 0, 0, 3, 0, 0, 8, -128, 4, 0, 228, 160, 1, 0, 228, -144, 2, 0, 0, 3, 1, 0, 7, -128, 0, 0, 228, 129, 12, 0, 228, -160, 1, 0, 0, 2, 2, 0, 7, -128, 14, 0, 85, 160, 1, 0, 0, - 2, 1, 0, 8, 128, 14, 0, 85, -160, 38, 0, 0, 1, 0, 0, 228, -240, 45, 0, 3, 2, 1, 0, 255, -128, 14, 0, 170, 160, 2, 0, 0, - 3, 1, 0, 8, 128, 1, 0, 255, -128, 14, 0, 170, 160, 1, 0, 0, - 2, 2, 0, 7, 128, 1, 0, 228, -128, 39, 0, 0, 0, 1, 0, 0, - 2, 1, 0, 7, 224, 2, 0, 228, -128, 2, 0, 0, 3, 1, 0, 7, -128, 0, 0, 228, 129, 13, 0, 228, -160, 1, 0, 0, 2, 2, 0, 7, -128, 14, 0, 85, 160, 1, 0, 0, - 2, 1, 0, 8, 128, 14, 0, 85, -160, 38, 0, 0, 1, 0, 0, 228, -240, 45, 0, 3, 2, 1, 0, 255, -128, 14, 0, 170, 160, 2, 0, 0, - 3, 1, 0, 8, 128, 1, 0, 255, -128, 14, 0, 170, 160, 1, 0, 0, - 2, 2, 0, 7, 128, 1, 0, 228, -128, 39, 0, 0, 0, 1, 0, 0, - 2, 2, 0, 7, 224, 2, 0, 228, -128, 8, 0, 0, 3, 0, 0, 1, -224, 5, 0, 228, 160, 0, 0, 228, -144, 8, 0, 0, 3, 0, 0, 2, -224, 6, 0, 228, 160, 0, 0, 228, -144, 8, 0, 0, 3, 0, 0, 4, -224, 7, 0, 228, 160, 0, 0, 228, -144, 9, 0, 0, 3, 1, 0, 1, -128, 8, 0, 228, 160, 0, 0, 228, -128, 9, 0, 0, 3, 1, 0, 4, -128, 9, 0, 228, 160, 0, 0, 228, -128, 9, 0, 0, 3, 1, 0, 8, -128, 10, 0, 228, 160, 0, 0, 228, -128, 9, 0, 0, 3, 0, 0, 1, -128, 11, 0, 228, 160, 0, 0, 228, -128, 1, 0, 0, 2, 1, 0, 2, -128, 1, 0, 170, 129, 2, 0, 0, - 3, 0, 0, 2, 128, 0, 0, 0, -128, 1, 0, 255, 128, 5, 0, 0, - 3, 0, 0, 4, 192, 0, 0, 85, -128, 14, 0, 255, 160, 4, 0, 0, - 4, 0, 0, 3, 192, 0, 0, 0, -128, 0, 0, 228, 160, 1, 0, 228, -128, 4, 0, 0, 4, 3, 0, 3, -224, 2, 0, 228, 144, 15, 0, 228, -160, 15, 0, 226, 160, 1, 0, 0, - 2, 0, 0, 8, 192, 0, 0, 0, -128, 255, 255, 0, 0, 83, 72, 68, - 82, 88, 4, 0, 0, 64, 0, 1, - 0, 22, 1, 0, 0, 89, 0, 0, - 4, 70, 142, 32, 0, 0, 0, 0, - 0, 13, 0, 0, 0, 95, 0, 0, - 3, 114, 16, 16, 0, 0, 0, 0, - 0, 95, 0, 0, 3, 242, 16, 16, - 0, 1, 0, 0, 0, 95, 0, 0, - 3, 50, 16, 16, 0, 2, 0, 0, - 0, 101, 0, 0, 3, 114, 32, 16, - 0, 0, 0, 0, 0, 101, 0, 0, - 3, 114, 32, 16, 0, 1, 0, 0, - 0, 101, 0, 0, 3, 114, 32, 16, - 0, 2, 0, 0, 0, 101, 0, 0, - 3, 50, 32, 16, 0, 3, 0, 0, - 0, 103, 0, 0, 4, 242, 32, 16, - 0, 4, 0, 0, 0, 1, 0, 0, - 0, 104, 0, 0, 2, 3, 0, 0, - 0, 105, 0, 0, 4, 0, 0, 0, - 0, 1, 0, 0, 0, 4, 0, 0, - 0, 105, 0, 0, 4, 1, 0, 0, - 0, 1, 0, 0, 0, 4, 0, 0, - 0, 54, 0, 0, 9, 114, 48, 32, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 2, 64, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 54, 0, 0, - 9, 114, 48, 32, 0, 1, 0, 0, - 0, 0, 0, 0, 0, 2, 64, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 17, 0, 0, 8, 18, 0, 16, - 0, 0, 0, 0, 0, 70, 142, 32, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 70, 30, 16, 0, 1, 0, 0, - 0, 17, 0, 0, 8, 34, 0, 16, - 0, 0, 0, 0, 0, 70, 142, 32, - 0, 0, 0, 0, 0, 1, 0, 0, - 0, 70, 30, 16, 0, 1, 0, 0, - 0, 17, 0, 0, 8, 66, 0, 16, - 0, 0, 0, 0, 0, 70, 142, 32, - 0, 0, 0, 0, 0, 2, 0, 0, - 0, 70, 30, 16, 0, 1, 0, 0, - 0, 17, 0, 0, 8, 130, 0, 16, - 0, 0, 0, 0, 0, 70, 142, 32, - 0, 0, 0, 0, 0, 3, 0, 0, - 0, 70, 30, 16, 0, 1, 0, 0, - 0, 0, 0, 0, 9, 114, 0, 16, - 0, 1, 0, 0, 0, 70, 2, 16, -128, 65, 0, 0, 0, 0, 0, 0, - 0, 70, 130, 32, 0, 0, 0, 0, - 0, 11, 0, 0, 0, 54, 0, 0, - 5, 130, 0, 16, 0, 1, 0, 0, - 0, 1, 64, 0, 0, 0, 0, 0, - 0, 48, 0, 0, 1, 33, 0, 0, - 7, 18, 0, 16, 0, 2, 0, 0, - 0, 58, 0, 16, 0, 1, 0, 0, - 0, 1, 64, 0, 0, 1, 0, 0, - 0, 3, 0, 4, 3, 10, 0, 16, - 0, 2, 0, 0, 0, 54, 0, 0, - 6, 114, 48, 32, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 70, 2, 16, - 0, 1, 0, 0, 0, 30, 0, 0, - 7, 130, 0, 16, 0, 1, 0, 0, - 0, 58, 0, 16, 0, 1, 0, 0, - 0, 1, 64, 0, 0, 1, 0, 0, - 0, 22, 0, 0, 1, 0, 0, 0, - 9, 114, 0, 16, 0, 1, 0, 0, - 0, 70, 2, 16, 128, 65, 0, 0, - 0, 0, 0, 0, 0, 70, 130, 32, - 0, 0, 0, 0, 0, 12, 0, 0, - 0, 54, 0, 0, 5, 130, 0, 16, - 0, 1, 0, 0, 0, 1, 64, 0, - 0, 0, 0, 0, 0, 48, 0, 0, - 1, 33, 0, 0, 7, 18, 0, 16, - 0, 2, 0, 0, 0, 58, 0, 16, - 0, 1, 0, 0, 0, 1, 64, 0, - 0, 1, 0, 0, 0, 3, 0, 4, - 3, 10, 0, 16, 0, 2, 0, 0, - 0, 54, 0, 0, 6, 114, 48, 32, - 0, 1, 0, 0, 0, 0, 0, 0, - 0, 70, 2, 16, 0, 1, 0, 0, - 0, 30, 0, 0, 7, 130, 0, 16, - 0, 1, 0, 0, 0, 58, 0, 16, - 0, 1, 0, 0, 0, 1, 64, 0, - 0, 1, 0, 0, 0, 22, 0, 0, - 1, 16, 0, 0, 8, 18, 32, 16, - 0, 0, 0, 0, 0, 70, 130, 32, - 0, 0, 0, 0, 0, 4, 0, 0, - 0, 70, 18, 16, 0, 0, 0, 0, - 0, 16, 0, 0, 8, 34, 32, 16, - 0, 0, 0, 0, 0, 70, 130, 32, - 0, 0, 0, 0, 0, 5, 0, 0, - 0, 70, 18, 16, 0, 0, 0, 0, - 0, 16, 0, 0, 8, 66, 32, 16, - 0, 0, 0, 0, 0, 70, 130, 32, - 0, 0, 0, 0, 0, 6, 0, 0, - 0, 70, 18, 16, 0, 0, 0, 0, - 0, 17, 0, 0, 8, 18, 32, 16, - 0, 4, 0, 0, 0, 70, 142, 32, - 0, 0, 0, 0, 0, 7, 0, 0, - 0, 70, 14, 16, 0, 0, 0, 0, - 0, 17, 0, 0, 8, 18, 0, 16, - 0, 1, 0, 0, 0, 70, 142, 32, - 0, 0, 0, 0, 0, 8, 0, 0, - 0, 70, 14, 16, 0, 0, 0, 0, - 0, 17, 0, 0, 8, 34, 0, 16, - 0, 1, 0, 0, 0, 70, 142, 32, - 0, 0, 0, 0, 0, 9, 0, 0, - 0, 70, 14, 16, 0, 0, 0, 0, - 0, 17, 0, 0, 8, 18, 0, 16, - 0, 0, 0, 0, 0, 70, 142, 32, - 0, 0, 0, 0, 0, 10, 0, 0, - 0, 70, 14, 16, 0, 0, 0, 0, - 0, 54, 0, 0, 6, 34, 32, 16, - 0, 4, 0, 0, 0, 10, 0, 16, -128, 65, 0, 0, 0, 1, 0, 0, - 0, 0, 0, 0, 7, 34, 0, 16, - 0, 0, 0, 0, 0, 10, 0, 16, - 0, 0, 0, 0, 0, 26, 0, 16, - 0, 1, 0, 0, 0, 56, 0, 0, - 7, 66, 32, 16, 0, 4, 0, 0, - 0, 26, 0, 16, 0, 0, 0, 0, - 0, 1, 64, 0, 0, 0, 0, 0, - 63, 54, 0, 0, 6, 114, 32, 16, - 0, 1, 0, 0, 0, 70, 50, 32, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 54, 0, 0, 6, 114, 32, 16, - 0, 2, 0, 0, 0, 70, 50, 32, - 0, 1, 0, 0, 0, 0, 0, 0, - 0, 54, 0, 0, 5, 130, 32, 16, - 0, 4, 0, 0, 0, 10, 0, 16, - 0, 0, 0, 0, 0, 50, 0, 0, - 15, 50, 32, 16, 0, 3, 0, 0, - 0, 70, 16, 16, 0, 2, 0, 0, - 0, 2, 64, 0, 0, 0, 0, 128, - 63, 0, 0, 128, 191, 0, 0, 0, - 0, 0, 0, 0, 0, 2, 64, 0, - 0, 0, 0, 0, 0, 0, 0, 128, - 63, 0, 0, 0, 0, 0, 0, 0, - 0, 62, 0, 0, 1, 83, 84, 65, - 84, 116, 0, 0, 0, 37, 0, 0, - 0, 3, 0, 0, 0, 0, 0, 0, - 0, 8, 0, 0, 0, 17, 0, 0, - 0, 4, 0, 0, 0, 0, 0, 0, - 0, 1, 0, 0, 0, 2, 0, 0, - 0, 0, 0, 0, 0, 2, 0, 0, - 0, 6, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 3, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 82, 68, 69, 70, 180, 1, 0, - 0, 1, 0, 0, 0, 72, 0, 0, - 0, 1, 0, 0, 0, 28, 0, 0, - 0, 0, 4, 254, 255, 0, 65, 0, - 0, 128, 1, 0, 0, 60, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1, 0, 0, - 0, 0, 0, 0, 0, 36, 71, 108, -111, 98, 97, 108, 115, 0, 171, 171, -171, 60, 0, 0, 0, 5, 0, 0, - 0, 96, 0, 0, 0, 208, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 216, 0, 0, 0, 0, 0, 0, - 0, 64, 0, 0, 0, 2, 0, 0, - 0, 232, 0, 0, 0, 0, 0, 0, - 0, 248, 0, 0, 0, 64, 0, 0, - 0, 44, 0, 0, 0, 2, 0, 0, - 0, 12, 1, 0, 0, 0, 0, 0, - 0, 28, 1, 0, 0, 112, 0, 0, - 0, 64, 0, 0, 0, 2, 0, 0, - 0, 232, 0, 0, 0, 0, 0, 0, - 0, 40, 1, 0, 0, 176, 0, 0, - 0, 12, 0, 0, 0, 2, 0, 0, - 0, 68, 1, 0, 0, 0, 0, 0, - 0, 84, 1, 0, 0, 192, 0, 0, - 0, 12, 0, 0, 0, 2, 0, 0, - 0, 112, 1, 0, 0, 0, 0, 0, - 0, 95, 67, 67, 95, 77, 86, 77, - 97, 116, 114, 105, 120, 0, 171, 171, -171, 3, 0, 3, 0, 4, 0, 4, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 95, 67, 67, 95, 78, 111, 114, -109, 97, 108, 77, 97, 116, 114, 105, -120, 0, 171, 171, 171, 3, 0, 3, - 0, 3, 0, 3, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 95, 67, 67, - 95, 80, 77, 97, 116, 114, 105, 120, - 0, 95, 117, 95, 80, 111, 105, 110, -116, 76, 105, 103, 104, 116, 83, 111, -117, 114, 99, 101, 80, 111, 115, 105, -116, 105, 111, 110, 0, 1, 0, 3, - 0, 1, 0, 3, 0, 1, 0, 0, - 0, 0, 0, 0, 0, 95, 117, 95, - 83, 112, 111, 116, 76, 105, 103, 104, -116, 83, 111, 117, 114, 99, 101, 80, -111, 115, 105, 116, 105, 111, 110, 0, -171, 1, 0, 3, 0, 1, 0, 3, - 0, 1, 0, 0, 0, 0, 0, 0, - 0, 77, 105, 99, 114, 111, 115, 111, -102, 116, 32, 40, 82, 41, 32, 72, - 76, 83, 76, 32, 83, 104, 97, 100, -101, 114, 32, 67, 111, 109, 112, 105, -108, 101, 114, 32, 54, 46, 51, 46, - 57, 54, 48, 48, 46, 49, 55, 52, - 49, 53, 0, 171, 171, 73, 83, 71, - 78, 92, 0, 0, 0, 3, 0, 0, - 0, 8, 0, 0, 0, 80, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 3, 0, 0, 0, 0, 0, 0, - 0, 7, 7, 0, 0, 80, 0, 0, - 0, 1, 0, 0, 0, 0, 0, 0, - 0, 3, 0, 0, 0, 1, 0, 0, - 0, 15, 15, 0, 0, 80, 0, 0, - 0, 2, 0, 0, 0, 0, 0, 0, - 0, 3, 0, 0, 0, 2, 0, 0, - 0, 3, 3, 0, 0, 84, 69, 88, - 67, 79, 79, 82, 68, 0, 171, 171, -171, 79, 83, 71, 78, 152, 0, 0, - 0, 5, 0, 0, 0, 8, 0, 0, - 0, 128, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 3, 0, 0, - 0, 0, 0, 0, 0, 7, 8, 0, - 0, 128, 0, 0, 0, 1, 0, 0, - 0, 0, 0, 0, 0, 3, 0, 0, - 0, 1, 0, 0, 0, 7, 8, 0, - 0, 128, 0, 0, 0, 2, 0, 0, - 0, 0, 0, 0, 0, 3, 0, 0, - 0, 2, 0, 0, 0, 7, 8, 0, - 0, 128, 0, 0, 0, 3, 0, 0, - 0, 0, 0, 0, 0, 3, 0, 0, - 0, 3, 0, 0, 0, 3, 12, 0, - 0, 137, 0, 0, 0, 0, 0, 0, - 0, 1, 0, 0, 0, 3, 0, 0, - 0, 4, 0, 0, 0, 15, 0, 0, - 0, 84, 69, 88, 67, 79, 79, 82, - 68, 0, 83, 86, 95, 80, 111, 115, -105, 116, 105, 111, 110, 0, 171, 171, -171, -}; - const unsigned char s_502845049F68EB561266A6F565B06F642ADD3E53[] = { 166, 147, 0, 0, 142, 9, 2, 1, @@ -3018,6 +1889,1075 @@ const unsigned char s_502845049F68EB561266A6F565B06F642ADD3E53[] = { 116, 105, 111, 110, 0, 171, 171, 171, }; +const unsigned char s_5189BFCE7D37638731DED2D9C2D0FCA7386CB8E5[] = { + +166, 147, 0, 0, 142, 9, 2, 1, + 0, 128, 0, 0, 82, 139, 0, 0, + 10, 0, 0, 0, 97, 95, 112, 111, +115, 105, 116, 105, 111, 110, 1, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 255, 255, 255, 255, 80, 139, + 0, 0, 10, 0, 0, 0, 97, 95, +116, 101, 120, 67, 111, 111, 114, 100, + 2, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 255, 255, 255, 255, + 0, 0, 0, 0, 0, 0, 0, 0, +255, 255, 255, 255, 0, 0, 0, 0, + 0, 0, 0, 0, 255, 255, 255, 255, + 81, 139, 0, 0, 8, 0, 0, 0, + 97, 95, 110, 111, 114, 109, 97, 108, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 255, 255, 255, 255, + 0, 0, 0, 0, 0, 0, 0, 0, +255, 255, 255, 255, 0, 0, 0, 0, + 0, 0, 0, 0, 255, 255, 255, 255, + 0, 0, 0, 0, 0, 0, 0, 0, +255, 255, 255, 255, 0, 0, 0, 0, + 0, 0, 0, 0, 255, 255, 255, 255, + 0, 0, 0, 0, 0, 0, 0, 0, +255, 255, 255, 255, 0, 0, 0, 0, + 0, 0, 0, 0, 255, 255, 255, 255, + 0, 0, 0, 0, 0, 0, 0, 0, +255, 255, 255, 255, 0, 0, 0, 0, + 0, 0, 0, 0, 255, 255, 255, 255, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 16, 0, 0, 0, 92, 139, 0, + 0, 241, 141, 0, 0, 11, 0, 0, + 0, 67, 67, 95, 77, 86, 77, 97, +116, 114, 105, 120, 0, 0, 0, 0, +255, 255, 255, 255, 0, 0, 0, 0, + 4, 0, 0, 0, 91, 139, 0, 0, +241, 141, 0, 0, 15, 0, 0, 0, + 67, 67, 95, 78, 111, 114, 109, 97, +108, 77, 97, 116, 114, 105, 120, 0, + 0, 0, 0, 255, 255, 255, 255, 4, + 0, 0, 0, 3, 0, 0, 0, 92, +139, 0, 0, 241, 141, 0, 0, 10, + 0, 0, 0, 67, 67, 95, 80, 77, + 97, 116, 114, 105, 120, 0, 0, 0, + 0, 255, 255, 255, 255, 7, 0, 0, + 0, 4, 0, 0, 0, 81, 139, 0, + 0, 241, 141, 0, 0, 26, 0, 0, + 0, 117, 95, 80, 111, 105, 110, 116, + 76, 105, 103, 104, 116, 83, 111, 117, +114, 99, 101, 80, 111, 115, 105, 116, +105, 111, 110, 1, 0, 0, 0, 255, +255, 255, 255, 11, 0, 0, 0, 1, + 0, 0, 0, 81, 139, 0, 0, 241, +141, 0, 0, 25, 0, 0, 0, 117, + 95, 83, 112, 111, 116, 76, 105, 103, +104, 116, 83, 111, 117, 114, 99, 101, + 80, 111, 115, 105, 116, 105, 111, 110, + 1, 0, 0, 0, 255, 255, 255, 255, + 12, 0, 0, 0, 1, 0, 0, 0, + 81, 139, 0, 0, 241, 141, 0, 0, + 25, 0, 0, 0, 117, 95, 65, 109, + 98, 105, 101, 110, 116, 76, 105, 103, +104, 116, 83, 111, 117, 114, 99, 101, + 67, 111, 108, 111, 114, 0, 0, 0, + 0, 0, 0, 0, 0, 255, 255, 255, +255, 1, 0, 0, 0, 81, 139, 0, + 0, 241, 141, 0, 0, 21, 0, 0, + 0, 117, 95, 68, 105, 114, 76, 105, +103, 104, 116, 83, 111, 117, 114, 99, +101, 67, 111, 108, 111, 114, 1, 0, + 0, 0, 1, 0, 0, 0, 255, 255, +255, 255, 1, 0, 0, 0, 81, 139, + 0, 0, 241, 141, 0, 0, 25, 0, + 0, 0, 117, 95, 68, 105, 114, 76, +105, 103, 104, 116, 83, 111, 117, 114, + 99, 101, 68, 105, 114, 101, 99, 116, +105, 111, 110, 1, 0, 0, 0, 2, + 0, 0, 0, 255, 255, 255, 255, 1, + 0, 0, 0, 81, 139, 0, 0, 241, +141, 0, 0, 23, 0, 0, 0, 117, + 95, 80, 111, 105, 110, 116, 76, 105, +103, 104, 116, 83, 111, 117, 114, 99, +101, 67, 111, 108, 111, 114, 1, 0, + 0, 0, 3, 0, 0, 0, 255, 255, +255, 255, 1, 0, 0, 0, 6, 20, + 0, 0, 241, 141, 0, 0, 30, 0, + 0, 0, 117, 95, 80, 111, 105, 110, +116, 76, 105, 103, 104, 116, 83, 111, +117, 114, 99, 101, 82, 97, 110, 103, +101, 73, 110, 118, 101, 114, 115, 101, + 1, 0, 0, 0, 4, 0, 0, 0, +255, 255, 255, 255, 1, 0, 0, 0, + 81, 139, 0, 0, 241, 141, 0, 0, + 22, 0, 0, 0, 117, 95, 83, 112, +111, 116, 76, 105, 103, 104, 116, 83, +111, 117, 114, 99, 101, 67, 111, 108, +111, 114, 1, 0, 0, 0, 5, 0, + 0, 0, 255, 255, 255, 255, 1, 0, + 0, 0, 81, 139, 0, 0, 241, 141, + 0, 0, 26, 0, 0, 0, 117, 95, + 83, 112, 111, 116, 76, 105, 103, 104, +116, 83, 111, 117, 114, 99, 101, 68, +105, 114, 101, 99, 116, 105, 111, 110, + 1, 0, 0, 0, 6, 0, 0, 0, +255, 255, 255, 255, 1, 0, 0, 0, + 6, 20, 0, 0, 241, 141, 0, 0, + 30, 0, 0, 0, 117, 95, 83, 112, +111, 116, 76, 105, 103, 104, 116, 83, +111, 117, 114, 99, 101, 73, 110, 110, +101, 114, 65, 110, 103, 108, 101, 67, +111, 115, 1, 0, 0, 0, 7, 0, + 0, 0, 255, 255, 255, 255, 1, 0, + 0, 0, 6, 20, 0, 0, 241, 141, + 0, 0, 30, 0, 0, 0, 117, 95, + 83, 112, 111, 116, 76, 105, 103, 104, +116, 83, 111, 117, 114, 99, 101, 79, +117, 116, 101, 114, 65, 110, 103, 108, +101, 67, 111, 115, 1, 0, 0, 0, + 8, 0, 0, 0, 255, 255, 255, 255, + 1, 0, 0, 0, 6, 20, 0, 0, +241, 141, 0, 0, 29, 0, 0, 0, +117, 95, 83, 112, 111, 116, 76, 105, +103, 104, 116, 83, 111, 117, 114, 99, +101, 82, 97, 110, 103, 101, 73, 110, +118, 101, 114, 115, 101, 1, 0, 0, + 0, 9, 0, 0, 0, 255, 255, 255, +255, 1, 0, 0, 0, 82, 139, 0, + 0, 241, 141, 0, 0, 7, 0, 0, + 0, 117, 95, 99, 111, 108, 111, 114, + 0, 0, 0, 0, 10, 0, 0, 0, +255, 255, 255, 255, 1, 0, 0, 0, + 16, 0, 0, 0, 11, 0, 0, 0, + 67, 67, 95, 77, 86, 77, 97, 116, +114, 105, 120, 0, 0, 0, 0, 0, + 0, 0, 0, 15, 0, 0, 0, 67, + 67, 95, 78, 111, 114, 109, 97, 108, + 77, 97, 116, 114, 105, 120, 0, 0, + 0, 0, 1, 0, 0, 0, 10, 0, + 0, 0, 67, 67, 95, 80, 77, 97, +116, 114, 105, 120, 0, 0, 0, 0, + 2, 0, 0, 0, 26, 0, 0, 0, +117, 95, 80, 111, 105, 110, 116, 76, +105, 103, 104, 116, 83, 111, 117, 114, + 99, 101, 80, 111, 115, 105, 116, 105, +111, 110, 0, 0, 0, 0, 3, 0, + 0, 0, 25, 0, 0, 0, 117, 95, + 83, 112, 111, 116, 76, 105, 103, 104, +116, 83, 111, 117, 114, 99, 101, 80, +111, 115, 105, 116, 105, 111, 110, 0, + 0, 0, 0, 4, 0, 0, 0, 25, + 0, 0, 0, 117, 95, 65, 109, 98, +105, 101, 110, 116, 76, 105, 103, 104, +116, 83, 111, 117, 114, 99, 101, 67, +111, 108, 111, 114, 0, 0, 0, 0, + 5, 0, 0, 0, 21, 0, 0, 0, +117, 95, 68, 105, 114, 76, 105, 103, +104, 116, 83, 111, 117, 114, 99, 101, + 67, 111, 108, 111, 114, 0, 0, 0, + 0, 6, 0, 0, 0, 25, 0, 0, + 0, 117, 95, 68, 105, 114, 76, 105, +103, 104, 116, 83, 111, 117, 114, 99, +101, 68, 105, 114, 101, 99, 116, 105, +111, 110, 0, 0, 0, 0, 7, 0, + 0, 0, 23, 0, 0, 0, 117, 95, + 80, 111, 105, 110, 116, 76, 105, 103, +104, 116, 83, 111, 117, 114, 99, 101, + 67, 111, 108, 111, 114, 0, 0, 0, + 0, 8, 0, 0, 0, 30, 0, 0, + 0, 117, 95, 80, 111, 105, 110, 116, + 76, 105, 103, 104, 116, 83, 111, 117, +114, 99, 101, 82, 97, 110, 103, 101, + 73, 110, 118, 101, 114, 115, 101, 0, + 0, 0, 0, 9, 0, 0, 0, 22, + 0, 0, 0, 117, 95, 83, 112, 111, +116, 76, 105, 103, 104, 116, 83, 111, +117, 114, 99, 101, 67, 111, 108, 111, +114, 0, 0, 0, 0, 10, 0, 0, + 0, 26, 0, 0, 0, 117, 95, 83, +112, 111, 116, 76, 105, 103, 104, 116, + 83, 111, 117, 114, 99, 101, 68, 105, +114, 101, 99, 116, 105, 111, 110, 0, + 0, 0, 0, 11, 0, 0, 0, 30, + 0, 0, 0, 117, 95, 83, 112, 111, +116, 76, 105, 103, 104, 116, 83, 111, +117, 114, 99, 101, 73, 110, 110, 101, +114, 65, 110, 103, 108, 101, 67, 111, +115, 0, 0, 0, 0, 12, 0, 0, + 0, 30, 0, 0, 0, 117, 95, 83, +112, 111, 116, 76, 105, 103, 104, 116, + 83, 111, 117, 114, 99, 101, 79, 117, +116, 101, 114, 65, 110, 103, 108, 101, + 67, 111, 115, 0, 0, 0, 0, 13, + 0, 0, 0, 29, 0, 0, 0, 117, + 95, 83, 112, 111, 116, 76, 105, 103, +104, 116, 83, 111, 117, 114, 99, 101, + 82, 97, 110, 103, 101, 73, 110, 118, +101, 114, 115, 101, 0, 0, 0, 0, + 14, 0, 0, 0, 7, 0, 0, 0, +117, 95, 99, 111, 108, 111, 114, 0, + 0, 0, 0, 15, 0, 0, 0, 240, + 15, 0, 0, 216, 9, 0, 0, 0, + 0, 0, 0, 183, 123, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 68, 88, 66, 67, 52, +111, 166, 244, 238, 169, 183, 185, 217, +188, 228, 155, 232, 152, 251, 90, 1, + 0, 0, 0, 240, 15, 0, 0, 6, + 0, 0, 0, 56, 0, 0, 0, 92, + 3, 0, 0, 20, 11, 0, 0, 144, + 11, 0, 0, 16, 15, 0, 0, 116, + 15, 0, 0, 65, 111, 110, 57, 28, + 3, 0, 0, 28, 3, 0, 0, 0, + 2, 255, 255, 236, 2, 0, 0, 48, + 0, 0, 0, 1, 0, 36, 0, 0, + 0, 48, 0, 0, 0, 48, 0, 0, + 0, 36, 0, 0, 0, 48, 0, 0, + 0, 0, 0, 11, 0, 0, 0, 0, + 0, 0, 0, 1, 2, 255, 255, 81, + 0, 0, 5, 11, 0, 15, 160, 0, + 0, 0, 0, 0, 0, 128, 63, 0, + 0, 0, 192, 0, 0, 64, 64, 31, + 0, 0, 2, 0, 0, 0, 128, 0, + 0, 7, 176, 31, 0, 0, 2, 0, + 0, 0, 128, 1, 0, 7, 176, 31, + 0, 0, 2, 0, 0, 0, 128, 2, + 0, 7, 176, 5, 0, 0, 3, 0, + 0, 7, 128, 1, 0, 228, 176, 4, + 0, 0, 160, 8, 0, 0, 3, 0, + 0, 1, 128, 0, 0, 228, 128, 0, + 0, 228, 128, 2, 0, 0, 3, 0, + 0, 1, 128, 0, 0, 0, 129, 11, + 0, 85, 160, 11, 0, 0, 3, 1, + 0, 8, 128, 0, 0, 0, 128, 11, + 0, 0, 160, 2, 0, 0, 3, 0, + 0, 7, 128, 2, 0, 228, 160, 2, + 0, 228, 160, 36, 0, 0, 2, 1, + 0, 7, 128, 0, 0, 228, 128, 36, + 0, 0, 2, 0, 0, 7, 128, 0, + 0, 228, 176, 8, 0, 0, 3, 0, + 0, 8, 128, 0, 0, 228, 128, 1, + 0, 228, 129, 5, 0, 0, 3, 1, + 0, 7, 128, 0, 0, 255, 128, 1, + 0, 228, 160, 88, 0, 0, 4, 1, + 0, 7, 128, 0, 0, 255, 128, 1, + 0, 228, 128, 11, 0, 0, 160, 2, + 0, 0, 3, 1, 0, 7, 128, 1, + 0, 228, 128, 0, 0, 228, 160, 36, + 0, 0, 2, 2, 0, 7, 128, 1, + 0, 228, 176, 8, 0, 0, 3, 0, + 0, 8, 128, 0, 0, 228, 128, 2, + 0, 228, 128, 5, 0, 0, 3, 2, + 0, 7, 128, 0, 0, 255, 128, 3, + 0, 228, 160, 88, 0, 0, 4, 2, + 0, 7, 128, 0, 0, 255, 128, 2, + 0, 228, 128, 11, 0, 0, 160, 4, + 0, 0, 4, 1, 0, 7, 128, 2, + 0, 228, 128, 1, 0, 255, 128, 1, + 0, 228, 128, 2, 0, 0, 3, 2, + 0, 7, 128, 6, 0, 228, 160, 6, + 0, 228, 160, 36, 0, 0, 2, 3, + 0, 7, 128, 2, 0, 228, 128, 36, + 0, 0, 2, 2, 0, 7, 128, 2, + 0, 228, 176, 8, 0, 0, 3, 0, + 0, 8, 128, 3, 0, 228, 128, 2, + 0, 228, 129, 8, 0, 0, 3, 1, + 0, 8, 128, 0, 0, 228, 128, 2, + 0, 228, 128, 2, 0, 0, 3, 0, + 0, 1, 128, 0, 0, 255, 128, 8, + 0, 0, 161, 1, 0, 0, 2, 2, + 0, 1, 128, 8, 0, 0, 160, 2, + 0, 0, 3, 0, 0, 2, 128, 2, + 0, 0, 129, 7, 0, 0, 160, 6, + 0, 0, 2, 0, 0, 2, 128, 0, + 0, 85, 128, 5, 0, 0, 3, 0, + 0, 17, 128, 0, 0, 85, 128, 0, + 0, 0, 128, 4, 0, 0, 4, 0, + 0, 2, 128, 0, 0, 0, 128, 11, + 0, 170, 160, 11, 0, 255, 160, 5, + 0, 0, 3, 0, 0, 1, 128, 0, + 0, 0, 128, 0, 0, 0, 128, 5, + 0, 0, 3, 0, 0, 1, 128, 0, + 0, 0, 128, 0, 0, 85, 128, 5, + 0, 0, 3, 0, 0, 14, 128, 2, + 0, 144, 176, 9, 0, 0, 160, 8, + 0, 0, 3, 0, 0, 2, 128, 0, + 0, 249, 128, 0, 0, 249, 128, 2, + 0, 0, 3, 0, 0, 2, 128, 0, + 0, 85, 129, 11, 0, 85, 160, 5, + 0, 0, 3, 0, 0, 17, 128, 0, + 0, 0, 128, 0, 0, 85, 128, 88, + 0, 0, 4, 0, 0, 1, 128, 0, + 0, 85, 128, 0, 0, 0, 128, 11, + 0, 0, 160, 5, 0, 0, 3, 0, + 0, 14, 128, 1, 0, 255, 128, 5, + 0, 144, 160, 5, 0, 0, 3, 0, + 0, 7, 128, 0, 0, 0, 128, 0, + 0, 249, 128, 88, 0, 0, 4, 0, + 0, 7, 128, 1, 0, 255, 128, 0, + 0, 228, 128, 11, 0, 0, 160, 2, + 0, 0, 3, 0, 0, 7, 128, 0, + 0, 228, 128, 1, 0, 228, 128, 1, + 0, 0, 2, 0, 0, 8, 128, 11, + 0, 85, 160, 5, 0, 0, 3, 0, + 0, 15, 128, 0, 0, 228, 128, 10, + 0, 228, 160, 1, 0, 0, 2, 0, + 8, 15, 128, 0, 0, 228, 128, 1, + 0, 0, 2, 1, 8, 15, 128, 0, + 0, 228, 128, 1, 0, 0, 2, 2, + 8, 15, 128, 0, 0, 228, 128, 1, + 0, 0, 2, 3, 8, 15, 128, 0, + 0, 228, 128, 255, 255, 0, 0, 83, + 72, 68, 82, 176, 7, 0, 0, 64, + 0, 0, 0, 236, 1, 0, 0, 89, + 0, 0, 4, 70, 142, 32, 0, 0, + 0, 0, 0, 11, 0, 0, 0, 98, + 16, 0, 3, 114, 16, 16, 0, 0, + 0, 0, 0, 98, 16, 0, 3, 114, + 16, 16, 0, 1, 0, 0, 0, 98, + 16, 0, 3, 114, 16, 16, 0, 2, + 0, 0, 0, 101, 0, 0, 3, 242, + 32, 16, 0, 0, 0, 0, 0, 101, + 0, 0, 3, 242, 32, 16, 0, 1, + 0, 0, 0, 101, 0, 0, 3, 242, + 32, 16, 0, 2, 0, 0, 0, 101, + 0, 0, 3, 242, 32, 16, 0, 3, + 0, 0, 0, 104, 0, 0, 2, 4, + 0, 0, 0, 16, 0, 0, 7, 18, + 0, 16, 0, 0, 0, 0, 0, 70, + 18, 16, 0, 0, 0, 0, 0, 70, + 18, 16, 0, 0, 0, 0, 0, 68, + 0, 0, 5, 18, 0, 16, 0, 0, + 0, 0, 0, 10, 0, 16, 0, 0, + 0, 0, 0, 56, 0, 0, 7, 114, + 0, 16, 0, 0, 0, 0, 0, 6, + 0, 16, 0, 0, 0, 0, 0, 70, + 18, 16, 0, 0, 0, 0, 0, 0, + 0, 0, 9, 114, 0, 16, 0, 1, + 0, 0, 0, 70, 130, 32, 0, 0, + 0, 0, 0, 2, 0, 0, 0, 70, +130, 32, 0, 0, 0, 0, 0, 2, + 0, 0, 0, 16, 0, 0, 7, 130, + 0, 16, 0, 0, 0, 0, 0, 70, + 2, 16, 0, 1, 0, 0, 0, 70, + 2, 16, 0, 1, 0, 0, 0, 68, + 0, 0, 5, 130, 0, 16, 0, 0, + 0, 0, 0, 58, 0, 16, 0, 0, + 0, 0, 0, 56, 0, 0, 7, 114, + 0, 16, 0, 1, 0, 0, 0, 246, + 15, 16, 0, 0, 0, 0, 0, 70, + 2, 16, 0, 1, 0, 0, 0, 16, + 0, 0, 8, 130, 0, 16, 0, 0, + 0, 0, 0, 70, 2, 16, 0, 0, + 0, 0, 0, 70, 2, 16, 128, 65, + 0, 0, 0, 1, 0, 0, 0, 52, + 0, 0, 7, 130, 0, 16, 0, 0, + 0, 0, 0, 58, 0, 16, 0, 0, + 0, 0, 0, 1, 64, 0, 0, 0, + 0, 0, 0, 54, 0, 0, 6, 114, + 0, 16, 0, 1, 0, 0, 0, 70, +130, 32, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 54, 0, 0, 5, 130, + 0, 16, 0, 1, 0, 0, 0, 1, + 64, 0, 0, 0, 0, 0, 0, 48, + 0, 0, 1, 33, 0, 0, 7, 18, + 0, 16, 0, 2, 0, 0, 0, 58, + 0, 16, 0, 1, 0, 0, 0, 1, + 64, 0, 0, 1, 0, 0, 0, 3, + 0, 4, 3, 10, 0, 16, 0, 2, + 0, 0, 0, 50, 0, 0, 10, 114, + 0, 16, 0, 1, 0, 0, 0, 70, +130, 32, 0, 0, 0, 0, 0, 1, + 0, 0, 0, 246, 15, 16, 0, 0, + 0, 0, 0, 70, 2, 16, 0, 1, + 0, 0, 0, 30, 0, 0, 7, 130, + 0, 16, 0, 1, 0, 0, 0, 58, + 0, 16, 0, 1, 0, 0, 0, 1, + 64, 0, 0, 1, 0, 0, 0, 22, + 0, 0, 1, 56, 0, 0, 8, 114, + 0, 16, 0, 2, 0, 0, 0, 70, + 18, 16, 0, 1, 0, 0, 0, 6, +128, 32, 0, 0, 0, 0, 0, 4, + 0, 0, 0, 16, 0, 0, 7, 130, + 0, 16, 0, 0, 0, 0, 0, 70, + 2, 16, 0, 2, 0, 0, 0, 70, + 2, 16, 0, 2, 0, 0, 0, 0, + 0, 0, 8, 130, 0, 16, 0, 0, + 0, 0, 0, 58, 0, 16, 128, 65, + 0, 0, 0, 0, 0, 0, 0, 1, + 64, 0, 0, 0, 0, 128, 63, 52, + 0, 0, 7, 130, 0, 16, 0, 0, + 0, 0, 0, 58, 0, 16, 0, 0, + 0, 0, 0, 1, 64, 0, 0, 0, + 0, 0, 0, 16, 0, 0, 7, 130, + 0, 16, 0, 1, 0, 0, 0, 70, + 18, 16, 0, 1, 0, 0, 0, 70, + 18, 16, 0, 1, 0, 0, 0, 68, + 0, 0, 5, 130, 0, 16, 0, 1, + 0, 0, 0, 58, 0, 16, 0, 1, + 0, 0, 0, 56, 0, 0, 7, 114, + 0, 16, 0, 2, 0, 0, 0, 246, + 15, 16, 0, 1, 0, 0, 0, 70, + 18, 16, 0, 1, 0, 0, 0, 16, + 0, 0, 7, 130, 0, 16, 0, 1, + 0, 0, 0, 70, 2, 16, 0, 0, + 0, 0, 0, 70, 2, 16, 0, 2, + 0, 0, 0, 52, 0, 0, 7, 130, + 0, 16, 0, 1, 0, 0, 0, 58, + 0, 16, 0, 1, 0, 0, 0, 1, + 64, 0, 0, 0, 0, 0, 0, 56, + 0, 0, 8, 114, 0, 16, 0, 2, + 0, 0, 0, 246, 15, 16, 0, 1, + 0, 0, 0, 70, 130, 32, 0, 0, + 0, 0, 0, 3, 0, 0, 0, 54, + 0, 0, 5, 114, 0, 16, 0, 3, + 0, 0, 0, 70, 2, 16, 0, 1, + 0, 0, 0, 54, 0, 0, 5, 130, + 0, 16, 0, 1, 0, 0, 0, 1, + 64, 0, 0, 0, 0, 0, 0, 48, + 0, 0, 1, 33, 0, 0, 7, 130, + 0, 16, 0, 2, 0, 0, 0, 58, + 0, 16, 0, 1, 0, 0, 0, 1, + 64, 0, 0, 1, 0, 0, 0, 3, + 0, 4, 3, 58, 0, 16, 0, 2, + 0, 0, 0, 50, 0, 0, 9, 114, + 0, 16, 0, 3, 0, 0, 0, 70, + 2, 16, 0, 2, 0, 0, 0, 246, + 15, 16, 0, 0, 0, 0, 0, 70, + 2, 16, 0, 3, 0, 0, 0, 30, + 0, 0, 7, 130, 0, 16, 0, 1, + 0, 0, 0, 58, 0, 16, 0, 1, + 0, 0, 0, 1, 64, 0, 0, 1, + 0, 0, 0, 22, 0, 0, 1, 56, + 0, 0, 8, 114, 0, 16, 0, 1, + 0, 0, 0, 70, 18, 16, 0, 2, + 0, 0, 0, 6, 128, 32, 0, 0, + 0, 0, 0, 9, 0, 0, 0, 16, + 0, 0, 7, 130, 0, 16, 0, 0, + 0, 0, 0, 70, 2, 16, 0, 1, + 0, 0, 0, 70, 2, 16, 0, 1, + 0, 0, 0, 0, 0, 0, 8, 130, + 0, 16, 0, 0, 0, 0, 0, 58, + 0, 16, 128, 65, 0, 0, 0, 0, + 0, 0, 0, 1, 64, 0, 0, 0, + 0, 128, 63, 52, 0, 0, 7, 130, + 0, 16, 0, 0, 0, 0, 0, 58, + 0, 16, 0, 0, 0, 0, 0, 1, + 64, 0, 0, 0, 0, 0, 0, 16, + 0, 0, 7, 18, 0, 16, 0, 1, + 0, 0, 0, 70, 18, 16, 0, 2, + 0, 0, 0, 70, 18, 16, 0, 2, + 0, 0, 0, 68, 0, 0, 5, 18, + 0, 16, 0, 1, 0, 0, 0, 10, + 0, 16, 0, 1, 0, 0, 0, 56, + 0, 0, 7, 114, 0, 16, 0, 1, + 0, 0, 0, 6, 0, 16, 0, 1, + 0, 0, 0, 70, 18, 16, 0, 2, + 0, 0, 0, 0, 0, 0, 9, 114, + 0, 16, 0, 2, 0, 0, 0, 70, +130, 32, 0, 0, 0, 0, 0, 6, + 0, 0, 0, 70, 130, 32, 0, 0, + 0, 0, 0, 6, 0, 0, 0, 16, + 0, 0, 7, 130, 0, 16, 0, 1, + 0, 0, 0, 70, 2, 16, 0, 2, + 0, 0, 0, 70, 2, 16, 0, 2, + 0, 0, 0, 68, 0, 0, 5, 130, + 0, 16, 0, 1, 0, 0, 0, 58, + 0, 16, 0, 1, 0, 0, 0, 56, + 0, 0, 7, 114, 0, 16, 0, 2, + 0, 0, 0, 246, 15, 16, 0, 1, + 0, 0, 0, 70, 2, 16, 0, 2, + 0, 0, 0, 16, 0, 0, 8, 130, + 0, 16, 0, 1, 0, 0, 0, 70, + 2, 16, 0, 2, 0, 0, 0, 70, + 2, 16, 128, 65, 0, 0, 0, 1, + 0, 0, 0, 0, 0, 0, 10, 18, + 0, 16, 0, 2, 0, 0, 0, 10, +128, 32, 0, 0, 0, 0, 0, 7, + 0, 0, 0, 10, 128, 32, 128, 65, + 0, 0, 0, 0, 0, 0, 0, 8, + 0, 0, 0, 0, 0, 0, 9, 130, + 0, 16, 0, 1, 0, 0, 0, 58, + 0, 16, 0, 1, 0, 0, 0, 10, +128, 32, 128, 65, 0, 0, 0, 0, + 0, 0, 0, 8, 0, 0, 0, 14, + 0, 0, 10, 18, 0, 16, 0, 2, + 0, 0, 0, 2, 64, 0, 0, 0, + 0, 128, 63, 0, 0, 128, 63, 0, + 0, 128, 63, 0, 0, 128, 63, 10, + 0, 16, 0, 2, 0, 0, 0, 56, + 32, 0, 7, 130, 0, 16, 0, 1, + 0, 0, 0, 58, 0, 16, 0, 1, + 0, 0, 0, 10, 0, 16, 0, 2, + 0, 0, 0, 50, 0, 0, 9, 18, + 0, 16, 0, 2, 0, 0, 0, 58, + 0, 16, 0, 1, 0, 0, 0, 1, + 64, 0, 0, 0, 0, 0, 192, 1, + 64, 0, 0, 0, 0, 64, 64, 56, + 0, 0, 7, 130, 0, 16, 0, 1, + 0, 0, 0, 58, 0, 16, 0, 1, + 0, 0, 0, 58, 0, 16, 0, 1, + 0, 0, 0, 56, 0, 0, 7, 130, + 0, 16, 0, 1, 0, 0, 0, 58, + 0, 16, 0, 1, 0, 0, 0, 10, + 0, 16, 0, 2, 0, 0, 0, 56, + 0, 0, 7, 130, 0, 16, 0, 0, + 0, 0, 0, 58, 0, 16, 0, 0, + 0, 0, 0, 58, 0, 16, 0, 1, + 0, 0, 0, 51, 0, 0, 7, 130, + 0, 16, 0, 0, 0, 0, 0, 58, + 0, 16, 0, 0, 0, 0, 0, 1, + 64, 0, 0, 0, 0, 128, 63, 16, + 0, 0, 7, 18, 0, 16, 0, 0, + 0, 0, 0, 70, 2, 16, 0, 0, + 0, 0, 0, 70, 2, 16, 0, 1, + 0, 0, 0, 52, 0, 0, 7, 18, + 0, 16, 0, 0, 0, 0, 0, 10, + 0, 16, 0, 0, 0, 0, 0, 1, + 64, 0, 0, 0, 0, 0, 0, 56, + 0, 0, 8, 114, 0, 16, 0, 0, + 0, 0, 0, 6, 0, 16, 0, 0, + 0, 0, 0, 70, 130, 32, 0, 0, + 0, 0, 0, 5, 0, 0, 0, 54, + 0, 0, 5, 114, 0, 16, 0, 1, + 0, 0, 0, 70, 2, 16, 0, 3, + 0, 0, 0, 54, 0, 0, 5, 18, + 0, 16, 0, 2, 0, 0, 0, 1, + 64, 0, 0, 0, 0, 0, 0, 48, + 0, 0, 1, 33, 0, 0, 7, 34, + 0, 16, 0, 2, 0, 0, 0, 10, + 0, 16, 0, 2, 0, 0, 0, 1, + 64, 0, 0, 1, 0, 0, 0, 3, + 0, 4, 3, 26, 0, 16, 0, 2, + 0, 0, 0, 50, 0, 0, 9, 114, + 0, 16, 0, 1, 0, 0, 0, 70, + 2, 16, 0, 0, 0, 0, 0, 246, + 15, 16, 0, 0, 0, 0, 0, 70, + 2, 16, 0, 1, 0, 0, 0, 30, + 0, 0, 7, 18, 0, 16, 0, 2, + 0, 0, 0, 10, 0, 16, 0, 2, + 0, 0, 0, 1, 64, 0, 0, 1, + 0, 0, 0, 22, 0, 0, 1, 54, + 0, 0, 5, 130, 0, 16, 0, 1, + 0, 0, 0, 1, 64, 0, 0, 0, + 0, 128, 63, 56, 0, 0, 8, 242, + 0, 16, 0, 0, 0, 0, 0, 70, + 14, 16, 0, 1, 0, 0, 0, 70, +142, 32, 0, 0, 0, 0, 0, 10, + 0, 0, 0, 54, 0, 0, 5, 242, + 32, 16, 0, 0, 0, 0, 0, 70, + 14, 16, 0, 0, 0, 0, 0, 54, + 0, 0, 5, 242, 32, 16, 0, 1, + 0, 0, 0, 70, 14, 16, 0, 0, + 0, 0, 0, 54, 0, 0, 5, 242, + 32, 16, 0, 2, 0, 0, 0, 70, + 14, 16, 0, 0, 0, 0, 0, 54, + 0, 0, 5, 242, 32, 16, 0, 3, + 0, 0, 0, 70, 14, 16, 0, 0, + 0, 0, 0, 62, 0, 0, 1, 83, + 84, 65, 84, 116, 0, 0, 0, 74, + 0, 0, 0, 4, 0, 0, 0, 0, + 0, 0, 0, 7, 0, 0, 0, 47, + 0, 0, 0, 6, 0, 0, 0, 0, + 0, 0, 0, 1, 0, 0, 0, 3, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 11, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 82, 68, 69, 70, 120, + 3, 0, 0, 1, 0, 0, 0, 72, + 0, 0, 0, 1, 0, 0, 0, 28, + 0, 0, 0, 0, 4, 255, 255, 0, + 65, 0, 0, 68, 3, 0, 0, 60, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1, + 0, 0, 0, 0, 0, 0, 0, 36, + 71, 108, 111, 98, 97, 108, 115, 0, +171, 171, 171, 60, 0, 0, 0, 11, + 0, 0, 0, 96, 0, 0, 0, 176, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 104, 1, 0, 0, 0, + 0, 0, 0, 12, 0, 0, 0, 2, + 0, 0, 0, 132, 1, 0, 0, 0, + 0, 0, 0, 148, 1, 0, 0, 16, + 0, 0, 0, 12, 0, 0, 0, 2, + 0, 0, 0, 172, 1, 0, 0, 0, + 0, 0, 0, 188, 1, 0, 0, 32, + 0, 0, 0, 12, 0, 0, 0, 2, + 0, 0, 0, 216, 1, 0, 0, 0, + 0, 0, 0, 232, 1, 0, 0, 48, + 0, 0, 0, 12, 0, 0, 0, 2, + 0, 0, 0, 4, 2, 0, 0, 0, + 0, 0, 0, 20, 2, 0, 0, 64, + 0, 0, 0, 4, 0, 0, 0, 2, + 0, 0, 0, 52, 2, 0, 0, 0, + 0, 0, 0, 68, 2, 0, 0, 80, + 0, 0, 0, 12, 0, 0, 0, 2, + 0, 0, 0, 92, 2, 0, 0, 0, + 0, 0, 0, 108, 2, 0, 0, 96, + 0, 0, 0, 12, 0, 0, 0, 2, + 0, 0, 0, 136, 2, 0, 0, 0, + 0, 0, 0, 152, 2, 0, 0, 112, + 0, 0, 0, 4, 0, 0, 0, 2, + 0, 0, 0, 184, 2, 0, 0, 0, + 0, 0, 0, 200, 2, 0, 0, 128, + 0, 0, 0, 4, 0, 0, 0, 2, + 0, 0, 0, 232, 2, 0, 0, 0, + 0, 0, 0, 248, 2, 0, 0, 144, + 0, 0, 0, 4, 0, 0, 0, 2, + 0, 0, 0, 24, 3, 0, 0, 0, + 0, 0, 0, 40, 3, 0, 0, 160, + 0, 0, 0, 16, 0, 0, 0, 2, + 0, 0, 0, 52, 3, 0, 0, 0, + 0, 0, 0, 95, 117, 95, 65, 109, + 98, 105, 101, 110, 116, 76, 105, 103, +104, 116, 83, 111, 117, 114, 99, 101, + 67, 111, 108, 111, 114, 0, 171, 1, + 0, 3, 0, 1, 0, 3, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 95, +117, 95, 68, 105, 114, 76, 105, 103, +104, 116, 83, 111, 117, 114, 99, 101, + 67, 111, 108, 111, 114, 0, 171, 1, + 0, 3, 0, 1, 0, 3, 0, 1, + 0, 0, 0, 0, 0, 0, 0, 95, +117, 95, 68, 105, 114, 76, 105, 103, +104, 116, 83, 111, 117, 114, 99, 101, + 68, 105, 114, 101, 99, 116, 105, 111, +110, 0, 171, 1, 0, 3, 0, 1, + 0, 3, 0, 1, 0, 0, 0, 0, + 0, 0, 0, 95, 117, 95, 80, 111, +105, 110, 116, 76, 105, 103, 104, 116, + 83, 111, 117, 114, 99, 101, 67, 111, +108, 111, 114, 0, 171, 171, 171, 1, + 0, 3, 0, 1, 0, 3, 0, 1, + 0, 0, 0, 0, 0, 0, 0, 95, +117, 95, 80, 111, 105, 110, 116, 76, +105, 103, 104, 116, 83, 111, 117, 114, + 99, 101, 82, 97, 110, 103, 101, 73, +110, 118, 101, 114, 115, 101, 0, 0, + 0, 3, 0, 1, 0, 1, 0, 1, + 0, 0, 0, 0, 0, 0, 0, 95, +117, 95, 83, 112, 111, 116, 76, 105, +103, 104, 116, 83, 111, 117, 114, 99, +101, 67, 111, 108, 111, 114, 0, 1, + 0, 3, 0, 1, 0, 3, 0, 1, + 0, 0, 0, 0, 0, 0, 0, 95, +117, 95, 83, 112, 111, 116, 76, 105, +103, 104, 116, 83, 111, 117, 114, 99, +101, 68, 105, 114, 101, 99, 116, 105, +111, 110, 0, 1, 0, 3, 0, 1, + 0, 3, 0, 1, 0, 0, 0, 0, + 0, 0, 0, 95, 117, 95, 83, 112, +111, 116, 76, 105, 103, 104, 116, 83, +111, 117, 114, 99, 101, 73, 110, 110, +101, 114, 65, 110, 103, 108, 101, 67, +111, 115, 0, 0, 0, 3, 0, 1, + 0, 1, 0, 1, 0, 0, 0, 0, + 0, 0, 0, 95, 117, 95, 83, 112, +111, 116, 76, 105, 103, 104, 116, 83, +111, 117, 114, 99, 101, 79, 117, 116, +101, 114, 65, 110, 103, 108, 101, 67, +111, 115, 0, 0, 0, 3, 0, 1, + 0, 1, 0, 1, 0, 0, 0, 0, + 0, 0, 0, 95, 117, 95, 83, 112, +111, 116, 76, 105, 103, 104, 116, 83, +111, 117, 114, 99, 101, 82, 97, 110, +103, 101, 73, 110, 118, 101, 114, 115, +101, 0, 171, 0, 0, 3, 0, 1, + 0, 1, 0, 1, 0, 0, 0, 0, + 0, 0, 0, 95, 117, 95, 99, 111, +108, 111, 114, 0, 171, 171, 171, 1, + 0, 3, 0, 1, 0, 4, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 77, +105, 99, 114, 111, 115, 111, 102, 116, + 32, 40, 82, 41, 32, 72, 76, 83, + 76, 32, 83, 104, 97, 100, 101, 114, + 32, 67, 111, 109, 112, 105, 108, 101, +114, 32, 54, 46, 51, 46, 57, 54, + 48, 48, 46, 49, 55, 52, 49, 53, + 0, 171, 171, 73, 83, 71, 78, 92, + 0, 0, 0, 3, 0, 0, 0, 8, + 0, 0, 0, 80, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 3, + 0, 0, 0, 0, 0, 0, 0, 7, + 7, 0, 0, 80, 0, 0, 0, 1, + 0, 0, 0, 0, 0, 0, 0, 3, + 0, 0, 0, 1, 0, 0, 0, 7, + 7, 0, 0, 80, 0, 0, 0, 2, + 0, 0, 0, 0, 0, 0, 0, 3, + 0, 0, 0, 2, 0, 0, 0, 7, + 7, 0, 0, 84, 69, 88, 67, 79, + 79, 82, 68, 0, 171, 171, 171, 79, + 83, 71, 78, 116, 0, 0, 0, 4, + 0, 0, 0, 8, 0, 0, 0, 104, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 3, 0, 0, 0, 0, + 0, 0, 0, 15, 0, 0, 0, 104, + 0, 0, 0, 1, 0, 0, 0, 0, + 0, 0, 0, 3, 0, 0, 0, 1, + 0, 0, 0, 15, 0, 0, 0, 104, + 0, 0, 0, 2, 0, 0, 0, 0, + 0, 0, 0, 3, 0, 0, 0, 2, + 0, 0, 0, 15, 0, 0, 0, 104, + 0, 0, 0, 3, 0, 0, 0, 0, + 0, 0, 0, 3, 0, 0, 0, 3, + 0, 0, 0, 15, 0, 0, 0, 83, + 86, 95, 84, 97, 114, 103, 101, 116, + 0, 171, 171, 68, 88, 66, 67, 69, + 54, 203, 176, 77, 203, 81, 224, 230, + 32, 196, 185, 127, 91, 250, 163, 1, + 0, 0, 0, 216, 9, 0, 0, 6, + 0, 0, 0, 56, 0, 0, 0, 168, + 2, 0, 0, 180, 6, 0, 0, 48, + 7, 0, 0, 236, 8, 0, 0, 80, + 9, 0, 0, 65, 111, 110, 57, 104, + 2, 0, 0, 104, 2, 0, 0, 0, + 2, 254, 255, 52, 2, 0, 0, 52, + 0, 0, 0, 1, 0, 36, 0, 0, + 0, 48, 0, 0, 0, 48, 0, 0, + 0, 36, 0, 1, 0, 48, 0, 0, + 0, 0, 0, 13, 0, 1, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1, + 2, 254, 255, 81, 0, 0, 5, 0, + 0, 15, 160, 0, 0, 125, 67, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 81, 0, 0, 5, 14, + 0, 15, 160, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 128, 63, 0, + 0, 0, 63, 48, 0, 0, 5, 0, + 0, 15, 240, 253, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 31, 0, 0, 2, 5, + 0, 0, 128, 0, 0, 15, 144, 31, + 0, 0, 2, 5, 0, 1, 128, 1, + 0, 15, 144, 9, 0, 0, 3, 0, + 0, 1, 128, 1, 0, 228, 160, 1, + 0, 228, 144, 9, 0, 0, 3, 0, + 0, 2, 128, 2, 0, 228, 160, 1, + 0, 228, 144, 9, 0, 0, 3, 0, + 0, 4, 128, 3, 0, 228, 160, 1, + 0, 228, 144, 9, 0, 0, 3, 0, + 0, 8, 128, 4, 0, 228, 160, 1, + 0, 228, 144, 2, 0, 0, 3, 1, + 0, 7, 128, 0, 0, 228, 129, 12, + 0, 228, 160, 1, 0, 0, 2, 2, + 0, 7, 128, 14, 0, 85, 160, 1, + 0, 0, 2, 1, 0, 8, 128, 14, + 0, 85, 160, 38, 0, 0, 1, 0, + 0, 228, 240, 45, 0, 3, 2, 1, + 0, 255, 128, 14, 0, 170, 160, 2, + 0, 0, 3, 1, 0, 8, 128, 1, + 0, 255, 128, 14, 0, 170, 160, 1, + 0, 0, 2, 2, 0, 7, 128, 1, + 0, 228, 128, 39, 0, 0, 0, 1, + 0, 0, 2, 1, 0, 7, 224, 2, + 0, 228, 128, 2, 0, 0, 3, 1, + 0, 7, 128, 0, 0, 228, 129, 13, + 0, 228, 160, 1, 0, 0, 2, 2, + 0, 7, 128, 14, 0, 85, 160, 1, + 0, 0, 2, 1, 0, 8, 128, 14, + 0, 85, 160, 38, 0, 0, 1, 0, + 0, 228, 240, 45, 0, 3, 2, 1, + 0, 255, 128, 14, 0, 170, 160, 2, + 0, 0, 3, 1, 0, 8, 128, 1, + 0, 255, 128, 14, 0, 170, 160, 1, + 0, 0, 2, 2, 0, 7, 128, 1, + 0, 228, 128, 39, 0, 0, 0, 1, + 0, 0, 2, 2, 0, 7, 224, 2, + 0, 228, 128, 8, 0, 0, 3, 0, + 0, 1, 224, 5, 0, 228, 160, 0, + 0, 228, 144, 8, 0, 0, 3, 0, + 0, 2, 224, 6, 0, 228, 160, 0, + 0, 228, 144, 8, 0, 0, 3, 0, + 0, 4, 224, 7, 0, 228, 160, 0, + 0, 228, 144, 9, 0, 0, 3, 1, + 0, 1, 128, 8, 0, 228, 160, 0, + 0, 228, 128, 9, 0, 0, 3, 1, + 0, 4, 128, 9, 0, 228, 160, 0, + 0, 228, 128, 9, 0, 0, 3, 1, + 0, 8, 128, 10, 0, 228, 160, 0, + 0, 228, 128, 9, 0, 0, 3, 0, + 0, 1, 128, 11, 0, 228, 160, 0, + 0, 228, 128, 1, 0, 0, 2, 1, + 0, 2, 128, 1, 0, 170, 129, 2, + 0, 0, 3, 0, 0, 2, 128, 0, + 0, 0, 128, 1, 0, 255, 128, 5, + 0, 0, 3, 0, 0, 4, 192, 0, + 0, 85, 128, 14, 0, 255, 160, 4, + 0, 0, 4, 0, 0, 3, 192, 0, + 0, 0, 128, 0, 0, 228, 160, 1, + 0, 228, 128, 1, 0, 0, 2, 0, + 0, 8, 192, 0, 0, 0, 128, 255, +255, 0, 0, 83, 72, 68, 82, 4, + 4, 0, 0, 64, 0, 1, 0, 1, + 1, 0, 0, 89, 0, 0, 4, 70, +142, 32, 0, 0, 0, 0, 0, 13, + 0, 0, 0, 95, 0, 0, 3, 114, + 16, 16, 0, 0, 0, 0, 0, 95, + 0, 0, 3, 242, 16, 16, 0, 1, + 0, 0, 0, 101, 0, 0, 3, 114, + 32, 16, 0, 0, 0, 0, 0, 101, + 0, 0, 3, 114, 32, 16, 0, 1, + 0, 0, 0, 101, 0, 0, 3, 114, + 32, 16, 0, 2, 0, 0, 0, 103, + 0, 0, 4, 242, 32, 16, 0, 3, + 0, 0, 0, 1, 0, 0, 0, 104, + 0, 0, 2, 3, 0, 0, 0, 105, + 0, 0, 4, 0, 0, 0, 0, 1, + 0, 0, 0, 4, 0, 0, 0, 105, + 0, 0, 4, 1, 0, 0, 0, 1, + 0, 0, 0, 4, 0, 0, 0, 54, + 0, 0, 9, 114, 48, 32, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 2, + 64, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 54, 0, 0, 9, 114, + 48, 32, 0, 1, 0, 0, 0, 0, + 0, 0, 0, 2, 64, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 17, + 0, 0, 8, 18, 0, 16, 0, 0, + 0, 0, 0, 70, 142, 32, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 70, + 30, 16, 0, 1, 0, 0, 0, 17, + 0, 0, 8, 34, 0, 16, 0, 0, + 0, 0, 0, 70, 142, 32, 0, 0, + 0, 0, 0, 1, 0, 0, 0, 70, + 30, 16, 0, 1, 0, 0, 0, 17, + 0, 0, 8, 66, 0, 16, 0, 0, + 0, 0, 0, 70, 142, 32, 0, 0, + 0, 0, 0, 2, 0, 0, 0, 70, + 30, 16, 0, 1, 0, 0, 0, 17, + 0, 0, 8, 130, 0, 16, 0, 0, + 0, 0, 0, 70, 142, 32, 0, 0, + 0, 0, 0, 3, 0, 0, 0, 70, + 30, 16, 0, 1, 0, 0, 0, 0, + 0, 0, 9, 114, 0, 16, 0, 1, + 0, 0, 0, 70, 2, 16, 128, 65, + 0, 0, 0, 0, 0, 0, 0, 70, +130, 32, 0, 0, 0, 0, 0, 11, + 0, 0, 0, 54, 0, 0, 5, 130, + 0, 16, 0, 1, 0, 0, 0, 1, + 64, 0, 0, 0, 0, 0, 0, 48, + 0, 0, 1, 33, 0, 0, 7, 18, + 0, 16, 0, 2, 0, 0, 0, 58, + 0, 16, 0, 1, 0, 0, 0, 1, + 64, 0, 0, 1, 0, 0, 0, 3, + 0, 4, 3, 10, 0, 16, 0, 2, + 0, 0, 0, 54, 0, 0, 6, 114, + 48, 32, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 70, 2, 16, 0, 1, + 0, 0, 0, 30, 0, 0, 7, 130, + 0, 16, 0, 1, 0, 0, 0, 58, + 0, 16, 0, 1, 0, 0, 0, 1, + 64, 0, 0, 1, 0, 0, 0, 22, + 0, 0, 1, 0, 0, 0, 9, 114, + 0, 16, 0, 1, 0, 0, 0, 70, + 2, 16, 128, 65, 0, 0, 0, 0, + 0, 0, 0, 70, 130, 32, 0, 0, + 0, 0, 0, 12, 0, 0, 0, 54, + 0, 0, 5, 130, 0, 16, 0, 1, + 0, 0, 0, 1, 64, 0, 0, 0, + 0, 0, 0, 48, 0, 0, 1, 33, + 0, 0, 7, 18, 0, 16, 0, 2, + 0, 0, 0, 58, 0, 16, 0, 1, + 0, 0, 0, 1, 64, 0, 0, 1, + 0, 0, 0, 3, 0, 4, 3, 10, + 0, 16, 0, 2, 0, 0, 0, 54, + 0, 0, 6, 114, 48, 32, 0, 1, + 0, 0, 0, 0, 0, 0, 0, 70, + 2, 16, 0, 1, 0, 0, 0, 30, + 0, 0, 7, 130, 0, 16, 0, 1, + 0, 0, 0, 58, 0, 16, 0, 1, + 0, 0, 0, 1, 64, 0, 0, 1, + 0, 0, 0, 22, 0, 0, 1, 16, + 0, 0, 8, 18, 32, 16, 0, 0, + 0, 0, 0, 70, 130, 32, 0, 0, + 0, 0, 0, 4, 0, 0, 0, 70, + 18, 16, 0, 0, 0, 0, 0, 16, + 0, 0, 8, 34, 32, 16, 0, 0, + 0, 0, 0, 70, 130, 32, 0, 0, + 0, 0, 0, 5, 0, 0, 0, 70, + 18, 16, 0, 0, 0, 0, 0, 16, + 0, 0, 8, 66, 32, 16, 0, 0, + 0, 0, 0, 70, 130, 32, 0, 0, + 0, 0, 0, 6, 0, 0, 0, 70, + 18, 16, 0, 0, 0, 0, 0, 17, + 0, 0, 8, 18, 32, 16, 0, 3, + 0, 0, 0, 70, 142, 32, 0, 0, + 0, 0, 0, 7, 0, 0, 0, 70, + 14, 16, 0, 0, 0, 0, 0, 17, + 0, 0, 8, 18, 0, 16, 0, 1, + 0, 0, 0, 70, 142, 32, 0, 0, + 0, 0, 0, 8, 0, 0, 0, 70, + 14, 16, 0, 0, 0, 0, 0, 17, + 0, 0, 8, 34, 0, 16, 0, 1, + 0, 0, 0, 70, 142, 32, 0, 0, + 0, 0, 0, 9, 0, 0, 0, 70, + 14, 16, 0, 0, 0, 0, 0, 17, + 0, 0, 8, 18, 0, 16, 0, 0, + 0, 0, 0, 70, 142, 32, 0, 0, + 0, 0, 0, 10, 0, 0, 0, 70, + 14, 16, 0, 0, 0, 0, 0, 54, + 0, 0, 6, 34, 32, 16, 0, 3, + 0, 0, 0, 10, 0, 16, 128, 65, + 0, 0, 0, 1, 0, 0, 0, 0, + 0, 0, 7, 34, 0, 16, 0, 0, + 0, 0, 0, 10, 0, 16, 0, 0, + 0, 0, 0, 26, 0, 16, 0, 1, + 0, 0, 0, 56, 0, 0, 7, 66, + 32, 16, 0, 3, 0, 0, 0, 26, + 0, 16, 0, 0, 0, 0, 0, 1, + 64, 0, 0, 0, 0, 0, 63, 54, + 0, 0, 6, 114, 32, 16, 0, 1, + 0, 0, 0, 70, 50, 32, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 54, + 0, 0, 6, 114, 32, 16, 0, 2, + 0, 0, 0, 70, 50, 32, 0, 1, + 0, 0, 0, 0, 0, 0, 0, 54, + 0, 0, 5, 130, 32, 16, 0, 3, + 0, 0, 0, 10, 0, 16, 0, 0, + 0, 0, 0, 62, 0, 0, 1, 83, + 84, 65, 84, 116, 0, 0, 0, 36, + 0, 0, 0, 3, 0, 0, 0, 0, + 0, 0, 0, 6, 0, 0, 0, 16, + 0, 0, 0, 4, 0, 0, 0, 0, + 0, 0, 0, 1, 0, 0, 0, 2, + 0, 0, 0, 0, 0, 0, 0, 2, + 0, 0, 0, 6, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 3, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 82, 68, 69, 70, 180, + 1, 0, 0, 1, 0, 0, 0, 72, + 0, 0, 0, 1, 0, 0, 0, 28, + 0, 0, 0, 0, 4, 254, 255, 0, + 65, 0, 0, 128, 1, 0, 0, 60, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1, + 0, 0, 0, 0, 0, 0, 0, 36, + 71, 108, 111, 98, 97, 108, 115, 0, +171, 171, 171, 60, 0, 0, 0, 5, + 0, 0, 0, 96, 0, 0, 0, 208, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 216, 0, 0, 0, 0, + 0, 0, 0, 64, 0, 0, 0, 2, + 0, 0, 0, 232, 0, 0, 0, 0, + 0, 0, 0, 248, 0, 0, 0, 64, + 0, 0, 0, 44, 0, 0, 0, 2, + 0, 0, 0, 12, 1, 0, 0, 0, + 0, 0, 0, 28, 1, 0, 0, 112, + 0, 0, 0, 64, 0, 0, 0, 2, + 0, 0, 0, 232, 0, 0, 0, 0, + 0, 0, 0, 40, 1, 0, 0, 176, + 0, 0, 0, 12, 0, 0, 0, 2, + 0, 0, 0, 68, 1, 0, 0, 0, + 0, 0, 0, 84, 1, 0, 0, 192, + 0, 0, 0, 12, 0, 0, 0, 2, + 0, 0, 0, 112, 1, 0, 0, 0, + 0, 0, 0, 95, 67, 67, 95, 77, + 86, 77, 97, 116, 114, 105, 120, 0, +171, 171, 171, 3, 0, 3, 0, 4, + 0, 4, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 95, 67, 67, 95, 78, +111, 114, 109, 97, 108, 77, 97, 116, +114, 105, 120, 0, 171, 171, 171, 3, + 0, 3, 0, 3, 0, 3, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 95, + 67, 67, 95, 80, 77, 97, 116, 114, +105, 120, 0, 95, 117, 95, 80, 111, +105, 110, 116, 76, 105, 103, 104, 116, + 83, 111, 117, 114, 99, 101, 80, 111, +115, 105, 116, 105, 111, 110, 0, 1, + 0, 3, 0, 1, 0, 3, 0, 1, + 0, 0, 0, 0, 0, 0, 0, 95, +117, 95, 83, 112, 111, 116, 76, 105, +103, 104, 116, 83, 111, 117, 114, 99, +101, 80, 111, 115, 105, 116, 105, 111, +110, 0, 171, 1, 0, 3, 0, 1, + 0, 3, 0, 1, 0, 0, 0, 0, + 0, 0, 0, 77, 105, 99, 114, 111, +115, 111, 102, 116, 32, 40, 82, 41, + 32, 72, 76, 83, 76, 32, 83, 104, + 97, 100, 101, 114, 32, 67, 111, 109, +112, 105, 108, 101, 114, 32, 54, 46, + 51, 46, 57, 54, 48, 48, 46, 49, + 55, 52, 49, 53, 0, 171, 171, 73, + 83, 71, 78, 92, 0, 0, 0, 3, + 0, 0, 0, 8, 0, 0, 0, 80, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 3, 0, 0, 0, 0, + 0, 0, 0, 7, 7, 0, 0, 80, + 0, 0, 0, 1, 0, 0, 0, 0, + 0, 0, 0, 3, 0, 0, 0, 1, + 0, 0, 0, 15, 15, 0, 0, 80, + 0, 0, 0, 2, 0, 0, 0, 0, + 0, 0, 0, 3, 0, 0, 0, 2, + 0, 0, 0, 3, 0, 0, 0, 84, + 69, 88, 67, 79, 79, 82, 68, 0, +171, 171, 171, 79, 83, 71, 78, 128, + 0, 0, 0, 4, 0, 0, 0, 8, + 0, 0, 0, 104, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 3, + 0, 0, 0, 0, 0, 0, 0, 7, + 8, 0, 0, 104, 0, 0, 0, 1, + 0, 0, 0, 0, 0, 0, 0, 3, + 0, 0, 0, 1, 0, 0, 0, 7, + 8, 0, 0, 104, 0, 0, 0, 2, + 0, 0, 0, 0, 0, 0, 0, 3, + 0, 0, 0, 2, 0, 0, 0, 7, + 8, 0, 0, 113, 0, 0, 0, 0, + 0, 0, 0, 1, 0, 0, 0, 3, + 0, 0, 0, 3, 0, 0, 0, 15, + 0, 0, 0, 84, 69, 88, 67, 79, + 79, 82, 68, 0, 83, 86, 95, 80, +111, 115, 105, 116, 105, 111, 110, 0, +171, 171, 171, +}; + const unsigned char s_53938AB67AD93ABA0DDB87F3C9889304284E011E[] = { 166, 147, 0, 0, 142, 9, 2, 1, @@ -3400,386 +3340,7 @@ const unsigned char s_53938AB67AD93ABA0DDB87F3C9889304284E011E[] = { 111, 110, 0, 171, 171, 171, }; -const unsigned char s_67837675F2BB48C0E926316F505FC1538228E0FA[] = { - -166, 147, 0, 0, 142, 9, 2, 1, - 0, 128, 0, 0, 82, 139, 0, 0, - 10, 0, 0, 0, 97, 95, 112, 111, -115, 105, 116, 105, 111, 110, 1, 0, - 0, 0, 82, 139, 0, 0, 7, 0, - 0, 0, 97, 95, 99, 111, 108, 111, -114, 0, 0, 0, 0, 80, 139, 0, - 0, 10, 0, 0, 0, 97, 95, 116, -101, 120, 99, 111, 111, 114, 100, 2, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 255, 255, 255, 255, 0, - 0, 0, 0, 0, 0, 0, 0, 255, -255, 255, 255, 0, 0, 0, 0, 0, - 0, 0, 0, 255, 255, 255, 255, 0, - 0, 0, 0, 0, 0, 0, 0, 255, -255, 255, 255, 0, 0, 0, 0, 0, - 0, 0, 0, 255, 255, 255, 255, 0, - 0, 0, 0, 0, 0, 0, 0, 255, -255, 255, 255, 0, 0, 0, 0, 0, - 0, 0, 0, 255, 255, 255, 255, 0, - 0, 0, 0, 0, 0, 0, 0, 255, -255, 255, 255, 0, 0, 0, 0, 0, - 0, 0, 0, 255, 255, 255, 255, 0, - 0, 0, 0, 0, 0, 0, 0, 255, -255, 255, 255, 0, 0, 0, 0, 0, - 0, 0, 0, 255, 255, 255, 255, 0, - 0, 0, 0, 0, 0, 0, 0, 255, -255, 255, 255, 0, 0, 0, 0, 0, - 0, 0, 0, 255, 255, 255, 255, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 1, 0, 0, 0, 92, 139, 0, 0, -241, 141, 0, 0, 12, 0, 0, 0, - 67, 67, 95, 77, 86, 80, 77, 97, -116, 114, 105, 120, 0, 0, 0, 0, -255, 255, 255, 255, 0, 0, 0, 0, - 4, 0, 0, 0, 1, 0, 0, 0, - 12, 0, 0, 0, 67, 67, 95, 77, - 86, 80, 77, 97, 116, 114, 105, 120, - 0, 0, 0, 0, 0, 0, 0, 0, - 16, 4, 0, 0, 48, 5, 0, 0, - 0, 0, 0, 0, 183, 123, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 68, 88, 66, 67, -200, 75, 132, 243, 88, 73, 77, 96, -240, 254, 57, 54, 235, 98, 133, 154, - 1, 0, 0, 0, 16, 4, 0, 0, - 6, 0, 0, 0, 56, 0, 0, 0, - 28, 1, 0, 0, 116, 2, 0, 0, -240, 2, 0, 0, 72, 3, 0, 0, -148, 3, 0, 0, 65, 111, 110, 57, -220, 0, 0, 0, 220, 0, 0, 0, - 0, 2, 255, 255, 184, 0, 0, 0, - 36, 0, 0, 0, 0, 0, 36, 0, - 0, 0, 36, 0, 0, 0, 36, 0, - 0, 0, 36, 0, 0, 0, 36, 0, - 1, 2, 255, 255, 81, 0, 0, 5, - 0, 0, 15, 160, 0, 0, 0, 0, - 0, 0, 128, 63, 0, 0, 0, 0, - 0, 0, 0, 0, 31, 0, 0, 2, - 0, 0, 0, 128, 0, 0, 15, 176, - 31, 0, 0, 2, 0, 0, 0, 128, - 1, 0, 3, 176, 90, 0, 0, 4, - 0, 0, 8, 128, 1, 0, 228, 176, - 1, 0, 228, 176, 0, 0, 0, 160, - 7, 0, 0, 2, 0, 0, 1, 128, - 0, 0, 255, 128, 6, 0, 0, 2, - 0, 0, 1, 128, 0, 0, 0, 128, - 2, 0, 0, 3, 0, 0, 1, 128, - 0, 0, 0, 129, 0, 0, 85, 160, - 88, 0, 0, 4, 0, 0, 15, 128, - 0, 0, 0, 128, 0, 0, 228, 176, - 0, 0, 0, 160, 1, 0, 0, 2, - 0, 8, 15, 128, 0, 0, 228, 128, - 1, 0, 0, 2, 1, 8, 15, 128, - 0, 0, 228, 128, 1, 0, 0, 2, - 2, 8, 15, 128, 0, 0, 228, 128, - 1, 0, 0, 2, 3, 8, 15, 128, - 0, 0, 228, 128, 255, 255, 0, 0, - 83, 72, 68, 82, 80, 1, 0, 0, - 64, 0, 0, 0, 84, 0, 0, 0, - 98, 16, 0, 3, 242, 16, 16, 0, - 0, 0, 0, 0, 98, 16, 0, 3, - 50, 16, 16, 0, 1, 0, 0, 0, -101, 0, 0, 3, 242, 32, 16, 0, - 0, 0, 0, 0, 101, 0, 0, 3, -242, 32, 16, 0, 1, 0, 0, 0, -101, 0, 0, 3, 242, 32, 16, 0, - 2, 0, 0, 0, 101, 0, 0, 3, -242, 32, 16, 0, 3, 0, 0, 0, -104, 0, 0, 2, 1, 0, 0, 0, - 15, 0, 0, 7, 18, 0, 16, 0, - 0, 0, 0, 0, 70, 16, 16, 0, - 1, 0, 0, 0, 70, 16, 16, 0, - 1, 0, 0, 0, 75, 0, 0, 5, - 18, 0, 16, 0, 0, 0, 0, 0, - 10, 0, 16, 0, 0, 0, 0, 0, - 0, 0, 0, 8, 18, 0, 16, 0, - 0, 0, 0, 0, 10, 0, 16, 128, - 65, 0, 0, 0, 0, 0, 0, 0, - 1, 64, 0, 0, 0, 0, 128, 63, - 29, 0, 0, 7, 18, 0, 16, 0, - 0, 0, 0, 0, 10, 0, 16, 0, - 0, 0, 0, 0, 1, 64, 0, 0, - 0, 0, 0, 0, 1, 0, 0, 7, - 18, 0, 16, 0, 0, 0, 0, 0, - 10, 0, 16, 0, 0, 0, 0, 0, - 1, 64, 0, 0, 0, 0, 128, 63, - 56, 0, 0, 7, 242, 0, 16, 0, - 0, 0, 0, 0, 6, 0, 16, 0, - 0, 0, 0, 0, 70, 30, 16, 0, - 0, 0, 0, 0, 54, 0, 0, 5, -242, 32, 16, 0, 0, 0, 0, 0, - 70, 14, 16, 0, 0, 0, 0, 0, - 54, 0, 0, 5, 242, 32, 16, 0, - 1, 0, 0, 0, 70, 14, 16, 0, - 0, 0, 0, 0, 54, 0, 0, 5, -242, 32, 16, 0, 2, 0, 0, 0, - 70, 14, 16, 0, 0, 0, 0, 0, - 54, 0, 0, 5, 242, 32, 16, 0, - 3, 0, 0, 0, 70, 14, 16, 0, - 0, 0, 0, 0, 62, 0, 0, 1, - 83, 84, 65, 84, 116, 0, 0, 0, - 11, 0, 0, 0, 1, 0, 0, 0, - 0, 0, 0, 0, 6, 0, 0, 0, - 5, 0, 0, 0, 0, 0, 0, 0, - 1, 0, 0, 0, 1, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 4, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 82, 68, 69, 70, - 80, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 28, 0, 0, 0, 0, 4, 255, 255, - 0, 65, 0, 0, 28, 0, 0, 0, - 77, 105, 99, 114, 111, 115, 111, 102, -116, 32, 40, 82, 41, 32, 72, 76, - 83, 76, 32, 83, 104, 97, 100, 101, -114, 32, 67, 111, 109, 112, 105, 108, -101, 114, 32, 54, 46, 51, 46, 57, - 54, 48, 48, 46, 49, 55, 52, 49, - 53, 0, 171, 171, 73, 83, 71, 78, - 68, 0, 0, 0, 2, 0, 0, 0, - 8, 0, 0, 0, 56, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 3, 0, 0, 0, 0, 0, 0, 0, - 15, 15, 0, 0, 56, 0, 0, 0, - 1, 0, 0, 0, 0, 0, 0, 0, - 3, 0, 0, 0, 1, 0, 0, 0, - 3, 3, 0, 0, 84, 69, 88, 67, - 79, 79, 82, 68, 0, 171, 171, 171, - 79, 83, 71, 78, 116, 0, 0, 0, - 4, 0, 0, 0, 8, 0, 0, 0, -104, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 3, 0, 0, 0, - 0, 0, 0, 0, 15, 0, 0, 0, -104, 0, 0, 0, 1, 0, 0, 0, - 0, 0, 0, 0, 3, 0, 0, 0, - 1, 0, 0, 0, 15, 0, 0, 0, -104, 0, 0, 0, 2, 0, 0, 0, - 0, 0, 0, 0, 3, 0, 0, 0, - 2, 0, 0, 0, 15, 0, 0, 0, -104, 0, 0, 0, 3, 0, 0, 0, - 0, 0, 0, 0, 3, 0, 0, 0, - 3, 0, 0, 0, 15, 0, 0, 0, - 83, 86, 95, 84, 97, 114, 103, 101, -116, 0, 171, 171, 68, 88, 66, 67, -230, 254, 249, 163, 46, 134, 61, 224, - 16, 68, 114, 69, 103, 13, 78, 214, - 1, 0, 0, 0, 48, 5, 0, 0, - 6, 0, 0, 0, 56, 0, 0, 0, -108, 1, 0, 0, 12, 3, 0, 0, -136, 3, 0, 0, 92, 4, 0, 0, -192, 4, 0, 0, 65, 111, 110, 57, - 44, 1, 0, 0, 44, 1, 0, 0, - 0, 2, 254, 255, 248, 0, 0, 0, - 52, 0, 0, 0, 1, 0, 36, 0, - 0, 0, 48, 0, 0, 0, 48, 0, - 0, 0, 36, 0, 1, 0, 48, 0, - 0, 0, 0, 0, 4, 0, 1, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 1, 2, 254, 255, 81, 0, 0, 5, - 5, 0, 15, 160, 0, 0, 0, 63, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 31, 0, 0, 2, - 5, 0, 0, 128, 0, 0, 15, 144, - 31, 0, 0, 2, 5, 0, 1, 128, - 1, 0, 15, 144, 31, 0, 0, 2, - 5, 0, 2, 128, 2, 0, 15, 144, - 5, 0, 0, 3, 0, 0, 7, 224, - 0, 0, 255, 144, 0, 0, 228, 144, - 9, 0, 0, 3, 0, 0, 1, 128, - 3, 0, 228, 160, 1, 0, 228, 144, - 9, 0, 0, 3, 0, 0, 2, 128, - 4, 0, 228, 160, 1, 0, 228, 144, - 2, 0, 0, 3, 0, 0, 1, 128, - 0, 0, 85, 128, 0, 0, 0, 128, - 5, 0, 0, 3, 0, 0, 4, 192, - 0, 0, 0, 128, 5, 0, 0, 160, - 9, 0, 0, 3, 0, 0, 1, 128, - 2, 0, 228, 160, 1, 0, 228, 144, - 1, 0, 0, 2, 1, 0, 2, 128, - 0, 0, 0, 129, 9, 0, 0, 3, - 1, 0, 1, 128, 1, 0, 228, 160, - 1, 0, 228, 144, 4, 0, 0, 4, - 0, 0, 3, 192, 0, 0, 85, 128, - 0, 0, 228, 160, 1, 0, 228, 128, - 1, 0, 0, 2, 0, 0, 8, 192, - 0, 0, 85, 128, 1, 0, 0, 2, - 0, 0, 8, 224, 0, 0, 255, 144, - 1, 0, 0, 2, 1, 0, 3, 224, - 2, 0, 228, 144, 255, 255, 0, 0, - 83, 72, 68, 82, 152, 1, 0, 0, - 64, 0, 1, 0, 102, 0, 0, 0, - 89, 0, 0, 4, 70, 142, 32, 0, - 0, 0, 0, 0, 4, 0, 0, 0, - 95, 0, 0, 3, 242, 16, 16, 0, - 0, 0, 0, 0, 95, 0, 0, 3, -242, 16, 16, 0, 1, 0, 0, 0, - 95, 0, 0, 3, 50, 16, 16, 0, - 2, 0, 0, 0, 101, 0, 0, 3, -242, 32, 16, 0, 0, 0, 0, 0, -101, 0, 0, 3, 50, 32, 16, 0, - 1, 0, 0, 0, 103, 0, 0, 4, -242, 32, 16, 0, 2, 0, 0, 0, - 1, 0, 0, 0, 104, 0, 0, 2, - 1, 0, 0, 0, 56, 0, 0, 7, -114, 32, 16, 0, 0, 0, 0, 0, -246, 31, 16, 0, 0, 0, 0, 0, - 70, 18, 16, 0, 0, 0, 0, 0, - 54, 0, 0, 5, 130, 32, 16, 0, - 0, 0, 0, 0, 58, 16, 16, 0, - 0, 0, 0, 0, 54, 0, 0, 5, - 50, 32, 16, 0, 1, 0, 0, 0, - 70, 16, 16, 0, 2, 0, 0, 0, - 17, 0, 0, 8, 18, 0, 16, 0, - 0, 0, 0, 0, 70, 142, 32, 0, - 0, 0, 0, 0, 1, 0, 0, 0, - 70, 30, 16, 0, 1, 0, 0, 0, - 54, 0, 0, 6, 34, 32, 16, 0, - 2, 0, 0, 0, 10, 0, 16, 128, - 65, 0, 0, 0, 0, 0, 0, 0, - 17, 0, 0, 8, 18, 0, 16, 0, - 0, 0, 0, 0, 70, 142, 32, 0, - 0, 0, 0, 0, 2, 0, 0, 0, - 70, 30, 16, 0, 1, 0, 0, 0, - 17, 0, 0, 8, 34, 0, 16, 0, - 0, 0, 0, 0, 70, 142, 32, 0, - 0, 0, 0, 0, 3, 0, 0, 0, - 70, 30, 16, 0, 1, 0, 0, 0, - 0, 0, 0, 7, 18, 0, 16, 0, - 0, 0, 0, 0, 26, 0, 16, 0, - 0, 0, 0, 0, 10, 0, 16, 0, - 0, 0, 0, 0, 54, 0, 0, 5, -130, 32, 16, 0, 2, 0, 0, 0, - 26, 0, 16, 0, 0, 0, 0, 0, - 56, 0, 0, 7, 66, 32, 16, 0, - 2, 0, 0, 0, 10, 0, 16, 0, - 0, 0, 0, 0, 1, 64, 0, 0, - 0, 0, 0, 63, 17, 0, 0, 8, - 18, 32, 16, 0, 2, 0, 0, 0, - 70, 142, 32, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 70, 30, 16, 0, - 1, 0, 0, 0, 62, 0, 0, 1, - 83, 84, 65, 84, 116, 0, 0, 0, - 12, 0, 0, 0, 1, 0, 0, 0, - 0, 0, 0, 0, 6, 0, 0, 0, - 8, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 3, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 82, 68, 69, 70, -204, 0, 0, 0, 1, 0, 0, 0, - 72, 0, 0, 0, 1, 0, 0, 0, - 28, 0, 0, 0, 0, 4, 254, 255, - 0, 65, 0, 0, 152, 0, 0, 0, - 60, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 1, 0, 0, 0, 0, 0, 0, 0, - 36, 71, 108, 111, 98, 97, 108, 115, - 0, 171, 171, 171, 60, 0, 0, 0, - 1, 0, 0, 0, 96, 0, 0, 0, - 64, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 120, 0, 0, 0, - 0, 0, 0, 0, 64, 0, 0, 0, - 2, 0, 0, 0, 136, 0, 0, 0, - 0, 0, 0, 0, 95, 67, 67, 95, - 77, 86, 80, 77, 97, 116, 114, 105, -120, 0, 171, 171, 3, 0, 3, 0, - 4, 0, 4, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 77, 105, 99, 114, -111, 115, 111, 102, 116, 32, 40, 82, - 41, 32, 72, 76, 83, 76, 32, 83, -104, 97, 100, 101, 114, 32, 67, 111, -109, 112, 105, 108, 101, 114, 32, 54, - 46, 51, 46, 57, 54, 48, 48, 46, - 49, 55, 52, 49, 53, 0, 171, 171, - 73, 83, 71, 78, 92, 0, 0, 0, - 3, 0, 0, 0, 8, 0, 0, 0, - 80, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 3, 0, 0, 0, - 0, 0, 0, 0, 15, 15, 0, 0, - 80, 0, 0, 0, 1, 0, 0, 0, - 0, 0, 0, 0, 3, 0, 0, 0, - 1, 0, 0, 0, 15, 15, 0, 0, - 80, 0, 0, 0, 2, 0, 0, 0, - 0, 0, 0, 0, 3, 0, 0, 0, - 2, 0, 0, 0, 3, 3, 0, 0, - 84, 69, 88, 67, 79, 79, 82, 68, - 0, 171, 171, 171, 79, 83, 71, 78, -104, 0, 0, 0, 3, 0, 0, 0, - 8, 0, 0, 0, 80, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 3, 0, 0, 0, 0, 0, 0, 0, - 15, 0, 0, 0, 80, 0, 0, 0, - 1, 0, 0, 0, 0, 0, 0, 0, - 3, 0, 0, 0, 1, 0, 0, 0, - 3, 12, 0, 0, 89, 0, 0, 0, - 0, 0, 0, 0, 1, 0, 0, 0, - 3, 0, 0, 0, 2, 0, 0, 0, - 15, 0, 0, 0, 84, 69, 88, 67, - 79, 79, 82, 68, 0, 83, 86, 95, - 80, 111, 115, 105, 116, 105, 111, 110, - 0, 171, 171, 171, -}; - -const unsigned char s_77D0755E06AA7AF59FAA6B003CA2363EDEB25C4C[] = { +const unsigned char s_66FA8020CFC652F1DF0D33021BF25C03810D50BF[] = { 166, 147, 0, 0, 142, 9, 2, 1, 0, 128, 0, 0, 81, 139, 0, 0, @@ -4640,20 +4201,20 @@ const unsigned char s_77D0755E06AA7AF59FAA6B003CA2363EDEB25C4C[] = { 115, 101, 0, 0, 0, 0, 16, 0, 0, 0, 7, 0, 0, 0, 117, 95, 99, 111, 108, 111, 114, 0, 0, 0, - 0, 17, 0, 0, 0, 236, 16, 0, + 0, 17, 0, 0, 0, 20, 17, 0, 0, 232, 19, 0, 0, 0, 0, 0, 0, 183, 123, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 68, 88, 66, 67, 2, 25, 137, -206, 217, 191, 45, 93, 183, 145, 101, - 17, 169, 207, 141, 211, 1, 0, 0, - 0, 236, 16, 0, 0, 6, 0, 0, - 0, 56, 0, 0, 0, 140, 3, 0, - 0, 144, 11, 0, 0, 12, 12, 0, - 0, 244, 15, 0, 0, 112, 16, 0, - 0, 65, 111, 110, 57, 76, 3, 0, - 0, 76, 3, 0, 0, 0, 2, 255, -255, 24, 3, 0, 0, 52, 0, 0, + 0, 68, 88, 66, 67, 50, 192, 176, +213, 184, 110, 232, 234, 13, 16, 67, +128, 54, 140, 124, 133, 1, 0, 0, + 0, 20, 17, 0, 0, 6, 0, 0, + 0, 56, 0, 0, 0, 152, 3, 0, + 0, 184, 11, 0, 0, 52, 12, 0, + 0, 28, 16, 0, 0, 152, 16, 0, + 0, 65, 111, 110, 57, 88, 3, 0, + 0, 88, 3, 0, 0, 0, 2, 255, +255, 36, 3, 0, 0, 52, 0, 0, 0, 1, 0, 40, 0, 0, 0, 52, 0, 0, 0, 52, 0, 1, 0, 36, 0, 0, 0, 52, 0, 0, 0, 0, @@ -4732,165 +4293,112 @@ const unsigned char s_77D0755E06AA7AF59FAA6B003CA2363EDEB25C4C[] = { 128, 0, 0, 249, 128, 0, 0, 249, 128, 2, 0, 0, 3, 0, 0, 2, 128, 0, 0, 85, 129, 11, 0, 85, -160, 5, 0, 0, 3, 0, 0, 1, +160, 5, 0, 0, 3, 0, 0, 17, 128, 0, 0, 0, 128, 0, 0, 85, 128, 88, 0, 0, 4, 0, 0, 1, 128, 0, 0, 85, 128, 0, 0, 0, 128, 11, 0, 0, 160, 5, 0, 0, 3, 0, 0, 14, 128, 1, 0, 255, -128, 5, 0, 144, 160, 88, 0, 0, - 4, 0, 0, 14, 128, 1, 0, 255, +128, 5, 0, 144, 160, 5, 0, 0, + 3, 0, 0, 7, 128, 0, 0, 0, +128, 0, 0, 249, 128, 88, 0, 0, + 4, 0, 0, 7, 128, 1, 0, 255, 128, 0, 0, 228, 128, 11, 0, 0, -160, 4, 0, 0, 4, 0, 0, 7, -128, 0, 0, 249, 128, 0, 0, 0, -128, 1, 0, 228, 128, 66, 0, 0, - 3, 1, 0, 15, 128, 3, 0, 228, -176, 0, 8, 228, 160, 5, 0, 0, - 3, 1, 0, 15, 128, 1, 0, 228, -128, 10, 0, 228, 160, 1, 0, 0, - 2, 0, 0, 8, 128, 11, 0, 85, -160, 5, 0, 0, 3, 0, 0, 15, +160, 2, 0, 0, 3, 0, 0, 7, 128, 0, 0, 228, 128, 1, 0, 228, -128, 1, 0, 0, 2, 0, 8, 15, +128, 66, 0, 0, 3, 1, 0, 15, +128, 3, 0, 228, 176, 0, 8, 228, +160, 5, 0, 0, 3, 1, 0, 15, +128, 1, 0, 228, 128, 10, 0, 228, +160, 1, 0, 0, 2, 0, 0, 8, +128, 11, 0, 85, 160, 5, 0, 0, + 3, 0, 0, 15, 128, 0, 0, 228, +128, 1, 0, 228, 128, 1, 0, 0, + 2, 0, 8, 15, 128, 0, 0, 228, +128, 1, 0, 0, 2, 1, 8, 15, 128, 0, 0, 228, 128, 1, 0, 0, - 2, 1, 8, 15, 128, 0, 0, 228, -128, 1, 0, 0, 2, 2, 8, 15, -128, 0, 0, 228, 128, 1, 0, 0, - 2, 3, 8, 15, 128, 0, 0, 228, -128, 255, 255, 0, 0, 83, 72, 68, - 82, 252, 7, 0, 0, 64, 0, 0, - 0, 255, 1, 0, 0, 89, 0, 0, - 4, 70, 142, 32, 0, 0, 0, 0, - 0, 11, 0, 0, 0, 90, 0, 0, - 3, 0, 96, 16, 0, 0, 0, 0, - 0, 88, 24, 0, 4, 0, 112, 16, - 0, 0, 0, 0, 0, 85, 85, 0, + 2, 2, 8, 15, 128, 0, 0, 228, +128, 1, 0, 0, 2, 3, 8, 15, +128, 0, 0, 228, 128, 255, 255, 0, + 0, 83, 72, 68, 82, 24, 8, 0, + 0, 64, 0, 0, 0, 6, 2, 0, + 0, 89, 0, 0, 4, 70, 142, 32, + 0, 0, 0, 0, 0, 11, 0, 0, + 0, 90, 0, 0, 3, 0, 96, 16, + 0, 0, 0, 0, 0, 88, 24, 0, + 4, 0, 112, 16, 0, 0, 0, 0, + 0, 85, 85, 0, 0, 98, 16, 0, + 3, 114, 16, 16, 0, 0, 0, 0, 0, 98, 16, 0, 3, 114, 16, 16, - 0, 0, 0, 0, 0, 98, 16, 0, - 3, 114, 16, 16, 0, 1, 0, 0, - 0, 98, 16, 0, 3, 114, 16, 16, - 0, 2, 0, 0, 0, 98, 16, 0, - 3, 50, 16, 16, 0, 3, 0, 0, + 0, 1, 0, 0, 0, 98, 16, 0, + 3, 114, 16, 16, 0, 2, 0, 0, + 0, 98, 16, 0, 3, 50, 16, 16, + 0, 3, 0, 0, 0, 101, 0, 0, + 3, 242, 32, 16, 0, 0, 0, 0, 0, 101, 0, 0, 3, 242, 32, 16, - 0, 0, 0, 0, 0, 101, 0, 0, - 3, 242, 32, 16, 0, 1, 0, 0, + 0, 1, 0, 0, 0, 101, 0, 0, + 3, 242, 32, 16, 0, 2, 0, 0, 0, 101, 0, 0, 3, 242, 32, 16, - 0, 2, 0, 0, 0, 101, 0, 0, - 3, 242, 32, 16, 0, 3, 0, 0, - 0, 104, 0, 0, 2, 4, 0, 0, - 0, 16, 0, 0, 7, 18, 0, 16, - 0, 0, 0, 0, 0, 70, 18, 16, - 0, 0, 0, 0, 0, 70, 18, 16, - 0, 0, 0, 0, 0, 68, 0, 0, - 5, 18, 0, 16, 0, 0, 0, 0, - 0, 10, 0, 16, 0, 0, 0, 0, - 0, 56, 0, 0, 7, 114, 0, 16, - 0, 0, 0, 0, 0, 6, 0, 16, - 0, 0, 0, 0, 0, 70, 18, 16, - 0, 0, 0, 0, 0, 0, 0, 0, - 9, 114, 0, 16, 0, 1, 0, 0, - 0, 70, 130, 32, 0, 0, 0, 0, - 0, 2, 0, 0, 0, 70, 130, 32, + 0, 3, 0, 0, 0, 104, 0, 0, + 2, 4, 0, 0, 0, 16, 0, 0, + 7, 18, 0, 16, 0, 0, 0, 0, + 0, 70, 18, 16, 0, 0, 0, 0, + 0, 70, 18, 16, 0, 0, 0, 0, + 0, 68, 0, 0, 5, 18, 0, 16, + 0, 0, 0, 0, 0, 10, 0, 16, + 0, 0, 0, 0, 0, 56, 0, 0, + 7, 114, 0, 16, 0, 0, 0, 0, + 0, 6, 0, 16, 0, 0, 0, 0, + 0, 70, 18, 16, 0, 0, 0, 0, + 0, 0, 0, 0, 9, 114, 0, 16, + 0, 1, 0, 0, 0, 70, 130, 32, 0, 0, 0, 0, 0, 2, 0, 0, - 0, 16, 0, 0, 7, 130, 0, 16, - 0, 0, 0, 0, 0, 70, 2, 16, - 0, 1, 0, 0, 0, 70, 2, 16, - 0, 1, 0, 0, 0, 68, 0, 0, - 5, 130, 0, 16, 0, 0, 0, 0, - 0, 58, 0, 16, 0, 0, 0, 0, - 0, 56, 0, 0, 7, 114, 0, 16, - 0, 1, 0, 0, 0, 246, 15, 16, - 0, 0, 0, 0, 0, 70, 2, 16, - 0, 1, 0, 0, 0, 16, 0, 0, - 8, 130, 0, 16, 0, 0, 0, 0, - 0, 70, 2, 16, 0, 0, 0, 0, - 0, 70, 2, 16, 128, 65, 0, 0, - 0, 1, 0, 0, 0, 52, 0, 0, + 0, 70, 130, 32, 0, 0, 0, 0, + 0, 2, 0, 0, 0, 16, 0, 0, 7, 130, 0, 16, 0, 0, 0, 0, - 0, 58, 0, 16, 0, 0, 0, 0, - 0, 1, 64, 0, 0, 0, 0, 0, - 0, 54, 0, 0, 6, 114, 0, 16, - 0, 1, 0, 0, 0, 70, 130, 32, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 54, 0, 0, 5, 130, 0, 16, - 0, 1, 0, 0, 0, 1, 64, 0, - 0, 0, 0, 0, 0, 48, 0, 0, - 1, 33, 0, 0, 7, 18, 0, 16, - 0, 2, 0, 0, 0, 58, 0, 16, - 0, 1, 0, 0, 0, 1, 64, 0, - 0, 1, 0, 0, 0, 3, 0, 4, - 3, 10, 0, 16, 0, 2, 0, 0, - 0, 50, 0, 0, 10, 114, 0, 16, - 0, 1, 0, 0, 0, 70, 130, 32, - 0, 0, 0, 0, 0, 1, 0, 0, + 0, 70, 2, 16, 0, 1, 0, 0, + 0, 70, 2, 16, 0, 1, 0, 0, + 0, 68, 0, 0, 5, 130, 0, 16, + 0, 0, 0, 0, 0, 58, 0, 16, + 0, 0, 0, 0, 0, 56, 0, 0, + 7, 114, 0, 16, 0, 1, 0, 0, 0, 246, 15, 16, 0, 0, 0, 0, 0, 70, 2, 16, 0, 1, 0, 0, - 0, 30, 0, 0, 7, 130, 0, 16, - 0, 1, 0, 0, 0, 58, 0, 16, - 0, 1, 0, 0, 0, 1, 64, 0, - 0, 1, 0, 0, 0, 22, 0, 0, - 1, 56, 0, 0, 8, 114, 0, 16, - 0, 2, 0, 0, 0, 70, 18, 16, - 0, 1, 0, 0, 0, 6, 128, 32, - 0, 0, 0, 0, 0, 4, 0, 0, - 0, 16, 0, 0, 7, 130, 0, 16, + 0, 16, 0, 0, 8, 130, 0, 16, 0, 0, 0, 0, 0, 70, 2, 16, - 0, 2, 0, 0, 0, 70, 2, 16, - 0, 2, 0, 0, 0, 0, 0, 0, - 8, 130, 0, 16, 0, 0, 0, 0, - 0, 58, 0, 16, 128, 65, 0, 0, - 0, 0, 0, 0, 0, 1, 64, 0, - 0, 0, 0, 128, 63, 52, 0, 0, - 7, 130, 0, 16, 0, 0, 0, 0, - 0, 58, 0, 16, 0, 0, 0, 0, - 0, 1, 64, 0, 0, 0, 0, 0, - 0, 16, 0, 0, 7, 130, 0, 16, - 0, 1, 0, 0, 0, 70, 18, 16, - 0, 1, 0, 0, 0, 70, 18, 16, - 0, 1, 0, 0, 0, 68, 0, 0, - 5, 130, 0, 16, 0, 1, 0, 0, - 0, 58, 0, 16, 0, 1, 0, 0, - 0, 56, 0, 0, 7, 114, 0, 16, - 0, 2, 0, 0, 0, 246, 15, 16, - 0, 1, 0, 0, 0, 70, 18, 16, - 0, 1, 0, 0, 0, 16, 0, 0, - 7, 130, 0, 16, 0, 1, 0, 0, - 0, 70, 2, 16, 0, 0, 0, 0, - 0, 70, 2, 16, 0, 2, 0, 0, + 0, 0, 0, 0, 0, 70, 2, 16, +128, 65, 0, 0, 0, 1, 0, 0, 0, 52, 0, 0, 7, 130, 0, 16, - 0, 1, 0, 0, 0, 58, 0, 16, - 0, 1, 0, 0, 0, 1, 64, 0, - 0, 0, 0, 0, 0, 56, 0, 0, - 8, 114, 0, 16, 0, 2, 0, 0, - 0, 246, 15, 16, 0, 1, 0, 0, + 0, 0, 0, 0, 0, 58, 0, 16, + 0, 0, 0, 0, 0, 1, 64, 0, + 0, 0, 0, 0, 0, 54, 0, 0, + 6, 114, 0, 16, 0, 1, 0, 0, 0, 70, 130, 32, 0, 0, 0, 0, - 0, 3, 0, 0, 0, 54, 0, 0, - 5, 114, 0, 16, 0, 3, 0, 0, - 0, 70, 2, 16, 0, 1, 0, 0, - 0, 54, 0, 0, 5, 130, 0, 16, - 0, 1, 0, 0, 0, 1, 64, 0, - 0, 0, 0, 0, 0, 48, 0, 0, - 1, 33, 0, 0, 7, 130, 0, 16, - 0, 2, 0, 0, 0, 58, 0, 16, - 0, 1, 0, 0, 0, 1, 64, 0, - 0, 1, 0, 0, 0, 3, 0, 4, - 3, 58, 0, 16, 0, 2, 0, 0, - 0, 50, 0, 0, 9, 114, 0, 16, - 0, 3, 0, 0, 0, 70, 2, 16, - 0, 2, 0, 0, 0, 246, 15, 16, + 0, 0, 0, 0, 0, 54, 0, 0, + 5, 130, 0, 16, 0, 1, 0, 0, + 0, 1, 64, 0, 0, 0, 0, 0, + 0, 48, 0, 0, 1, 33, 0, 0, + 7, 18, 0, 16, 0, 2, 0, 0, + 0, 58, 0, 16, 0, 1, 0, 0, + 0, 1, 64, 0, 0, 1, 0, 0, + 0, 3, 0, 4, 3, 10, 0, 16, + 0, 2, 0, 0, 0, 50, 0, 0, + 10, 114, 0, 16, 0, 1, 0, 0, + 0, 70, 130, 32, 0, 0, 0, 0, + 0, 1, 0, 0, 0, 246, 15, 16, 0, 0, 0, 0, 0, 70, 2, 16, - 0, 3, 0, 0, 0, 30, 0, 0, + 0, 1, 0, 0, 0, 30, 0, 0, 7, 130, 0, 16, 0, 1, 0, 0, 0, 58, 0, 16, 0, 1, 0, 0, 0, 1, 64, 0, 0, 1, 0, 0, 0, 22, 0, 0, 1, 56, 0, 0, - 8, 114, 0, 16, 0, 1, 0, 0, - 0, 70, 18, 16, 0, 2, 0, 0, + 8, 114, 0, 16, 0, 2, 0, 0, + 0, 70, 18, 16, 0, 1, 0, 0, 0, 6, 128, 32, 0, 0, 0, 0, - 0, 9, 0, 0, 0, 16, 0, 0, + 0, 4, 0, 0, 0, 16, 0, 0, 7, 130, 0, 16, 0, 0, 0, 0, - 0, 70, 2, 16, 0, 1, 0, 0, - 0, 70, 2, 16, 0, 1, 0, 0, + 0, 70, 2, 16, 0, 2, 0, 0, + 0, 70, 2, 16, 0, 2, 0, 0, 0, 0, 0, 0, 8, 130, 0, 16, 0, 0, 0, 0, 0, 58, 0, 16, 128, 65, 0, 0, 0, 0, 0, 0, @@ -4899,67 +4407,125 @@ const unsigned char s_77D0755E06AA7AF59FAA6B003CA2363EDEB25C4C[] = { 0, 0, 0, 0, 0, 58, 0, 16, 0, 0, 0, 0, 0, 1, 64, 0, 0, 0, 0, 0, 0, 16, 0, 0, - 7, 18, 0, 16, 0, 1, 0, 0, - 0, 70, 18, 16, 0, 2, 0, 0, - 0, 70, 18, 16, 0, 2, 0, 0, - 0, 68, 0, 0, 5, 18, 0, 16, - 0, 1, 0, 0, 0, 10, 0, 16, - 0, 1, 0, 0, 0, 56, 0, 0, - 7, 114, 0, 16, 0, 1, 0, 0, - 0, 6, 0, 16, 0, 1, 0, 0, - 0, 70, 18, 16, 0, 2, 0, 0, - 0, 0, 0, 0, 9, 114, 0, 16, - 0, 2, 0, 0, 0, 70, 130, 32, - 0, 0, 0, 0, 0, 6, 0, 0, - 0, 70, 130, 32, 0, 0, 0, 0, - 0, 6, 0, 0, 0, 16, 0, 0, 7, 130, 0, 16, 0, 1, 0, 0, - 0, 70, 2, 16, 0, 2, 0, 0, - 0, 70, 2, 16, 0, 2, 0, 0, + 0, 70, 18, 16, 0, 1, 0, 0, + 0, 70, 18, 16, 0, 1, 0, 0, 0, 68, 0, 0, 5, 130, 0, 16, 0, 1, 0, 0, 0, 58, 0, 16, 0, 1, 0, 0, 0, 56, 0, 0, 7, 114, 0, 16, 0, 2, 0, 0, 0, 246, 15, 16, 0, 1, 0, 0, + 0, 70, 18, 16, 0, 1, 0, 0, + 0, 16, 0, 0, 7, 130, 0, 16, + 0, 1, 0, 0, 0, 70, 2, 16, + 0, 0, 0, 0, 0, 70, 2, 16, + 0, 2, 0, 0, 0, 52, 0, 0, + 7, 130, 0, 16, 0, 1, 0, 0, + 0, 58, 0, 16, 0, 1, 0, 0, + 0, 1, 64, 0, 0, 0, 0, 0, + 0, 56, 0, 0, 8, 114, 0, 16, + 0, 2, 0, 0, 0, 246, 15, 16, + 0, 1, 0, 0, 0, 70, 130, 32, + 0, 0, 0, 0, 0, 3, 0, 0, + 0, 54, 0, 0, 5, 114, 0, 16, + 0, 3, 0, 0, 0, 70, 2, 16, + 0, 1, 0, 0, 0, 54, 0, 0, + 5, 130, 0, 16, 0, 1, 0, 0, + 0, 1, 64, 0, 0, 0, 0, 0, + 0, 48, 0, 0, 1, 33, 0, 0, + 7, 130, 0, 16, 0, 2, 0, 0, + 0, 58, 0, 16, 0, 1, 0, 0, + 0, 1, 64, 0, 0, 1, 0, 0, + 0, 3, 0, 4, 3, 58, 0, 16, + 0, 2, 0, 0, 0, 50, 0, 0, + 9, 114, 0, 16, 0, 3, 0, 0, 0, 70, 2, 16, 0, 2, 0, 0, - 0, 16, 0, 0, 8, 130, 0, 16, + 0, 246, 15, 16, 0, 0, 0, 0, + 0, 70, 2, 16, 0, 3, 0, 0, + 0, 30, 0, 0, 7, 130, 0, 16, + 0, 1, 0, 0, 0, 58, 0, 16, + 0, 1, 0, 0, 0, 1, 64, 0, + 0, 1, 0, 0, 0, 22, 0, 0, + 1, 56, 0, 0, 8, 114, 0, 16, + 0, 1, 0, 0, 0, 70, 18, 16, + 0, 2, 0, 0, 0, 6, 128, 32, + 0, 0, 0, 0, 0, 9, 0, 0, + 0, 16, 0, 0, 7, 130, 0, 16, + 0, 0, 0, 0, 0, 70, 2, 16, + 0, 1, 0, 0, 0, 70, 2, 16, + 0, 1, 0, 0, 0, 0, 0, 0, + 8, 130, 0, 16, 0, 0, 0, 0, + 0, 58, 0, 16, 128, 65, 0, 0, + 0, 0, 0, 0, 0, 1, 64, 0, + 0, 0, 0, 128, 63, 52, 0, 0, + 7, 130, 0, 16, 0, 0, 0, 0, + 0, 58, 0, 16, 0, 0, 0, 0, + 0, 1, 64, 0, 0, 0, 0, 0, + 0, 16, 0, 0, 7, 18, 0, 16, + 0, 1, 0, 0, 0, 70, 18, 16, + 0, 2, 0, 0, 0, 70, 18, 16, + 0, 2, 0, 0, 0, 68, 0, 0, + 5, 18, 0, 16, 0, 1, 0, 0, + 0, 10, 0, 16, 0, 1, 0, 0, + 0, 56, 0, 0, 7, 114, 0, 16, + 0, 1, 0, 0, 0, 6, 0, 16, + 0, 1, 0, 0, 0, 70, 18, 16, + 0, 2, 0, 0, 0, 0, 0, 0, + 9, 114, 0, 16, 0, 2, 0, 0, + 0, 70, 130, 32, 0, 0, 0, 0, + 0, 6, 0, 0, 0, 70, 130, 32, + 0, 0, 0, 0, 0, 6, 0, 0, + 0, 16, 0, 0, 7, 130, 0, 16, 0, 1, 0, 0, 0, 70, 2, 16, 0, 2, 0, 0, 0, 70, 2, 16, -128, 65, 0, 0, 0, 1, 0, 0, - 0, 0, 0, 0, 10, 18, 0, 16, - 0, 2, 0, 0, 0, 10, 128, 32, - 0, 0, 0, 0, 0, 7, 0, 0, + 0, 2, 0, 0, 0, 68, 0, 0, + 5, 130, 0, 16, 0, 1, 0, 0, + 0, 58, 0, 16, 0, 1, 0, 0, + 0, 56, 0, 0, 7, 114, 0, 16, + 0, 2, 0, 0, 0, 246, 15, 16, + 0, 1, 0, 0, 0, 70, 2, 16, + 0, 2, 0, 0, 0, 16, 0, 0, + 8, 130, 0, 16, 0, 1, 0, 0, + 0, 70, 2, 16, 0, 2, 0, 0, + 0, 70, 2, 16, 128, 65, 0, 0, + 0, 1, 0, 0, 0, 0, 0, 0, + 10, 18, 0, 16, 0, 2, 0, 0, + 0, 10, 128, 32, 0, 0, 0, 0, + 0, 7, 0, 0, 0, 10, 128, 32, +128, 65, 0, 0, 0, 0, 0, 0, + 0, 8, 0, 0, 0, 0, 0, 0, + 9, 130, 0, 16, 0, 1, 0, 0, + 0, 58, 0, 16, 0, 1, 0, 0, 0, 10, 128, 32, 128, 65, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, - 0, 0, 0, 0, 9, 130, 0, 16, - 0, 1, 0, 0, 0, 58, 0, 16, - 0, 1, 0, 0, 0, 10, 128, 32, -128, 65, 0, 0, 0, 0, 0, 0, - 0, 8, 0, 0, 0, 14, 0, 0, - 10, 18, 0, 16, 0, 2, 0, 0, - 0, 2, 64, 0, 0, 0, 0, 128, + 0, 14, 0, 0, 10, 18, 0, 16, + 0, 2, 0, 0, 0, 2, 64, 0, + 0, 0, 0, 128, 63, 0, 0, 128, 63, 0, 0, 128, 63, 0, 0, 128, - 63, 0, 0, 128, 63, 10, 0, 16, - 0, 2, 0, 0, 0, 56, 32, 0, + 63, 10, 0, 16, 0, 2, 0, 0, + 0, 56, 32, 0, 7, 130, 0, 16, + 0, 1, 0, 0, 0, 58, 0, 16, + 0, 1, 0, 0, 0, 10, 0, 16, + 0, 2, 0, 0, 0, 50, 0, 0, + 9, 18, 0, 16, 0, 2, 0, 0, + 0, 58, 0, 16, 0, 1, 0, 0, + 0, 1, 64, 0, 0, 0, 0, 0, +192, 1, 64, 0, 0, 0, 0, 64, + 64, 56, 0, 0, 7, 130, 0, 16, + 0, 1, 0, 0, 0, 58, 0, 16, + 0, 1, 0, 0, 0, 58, 0, 16, + 0, 1, 0, 0, 0, 56, 0, 0, 7, 130, 0, 16, 0, 1, 0, 0, 0, 58, 0, 16, 0, 1, 0, 0, 0, 10, 0, 16, 0, 2, 0, 0, - 0, 50, 0, 0, 9, 18, 0, 16, - 0, 2, 0, 0, 0, 58, 0, 16, - 0, 1, 0, 0, 0, 1, 64, 0, - 0, 0, 0, 0, 192, 1, 64, 0, - 0, 0, 0, 64, 64, 56, 0, 0, - 7, 130, 0, 16, 0, 1, 0, 0, - 0, 58, 0, 16, 0, 1, 0, 0, - 0, 58, 0, 16, 0, 1, 0, 0, 0, 56, 0, 0, 7, 130, 0, 16, - 0, 1, 0, 0, 0, 58, 0, 16, - 0, 1, 0, 0, 0, 10, 0, 16, - 0, 2, 0, 0, 0, 56, 0, 0, + 0, 0, 0, 0, 0, 58, 0, 16, + 0, 0, 0, 0, 0, 58, 0, 16, + 0, 1, 0, 0, 0, 51, 0, 0, 7, 130, 0, 16, 0, 0, 0, 0, 0, 58, 0, 16, 0, 0, 0, 0, - 0, 58, 0, 16, 0, 1, 0, 0, - 0, 16, 0, 0, 7, 18, 0, 16, + 0, 1, 64, 0, 0, 0, 0, 128, + 63, 16, 0, 0, 7, 18, 0, 16, 0, 0, 0, 0, 0, 70, 2, 16, 0, 0, 0, 0, 0, 70, 2, 16, 0, 1, 0, 0, 0, 52, 0, 0, @@ -5015,9 +4581,9 @@ const unsigned char s_77D0755E06AA7AF59FAA6B003CA2363EDEB25C4C[] = { 0, 3, 0, 0, 0, 70, 14, 16, 0, 0, 0, 0, 0, 62, 0, 0, 1, 83, 84, 65, 84, 116, 0, 0, - 0, 75, 0, 0, 0, 4, 0, 0, + 0, 76, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, - 0, 47, 0, 0, 0, 6, 0, 0, + 0, 48, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -5825,6 +5391,1519 @@ const unsigned char s_77D0755E06AA7AF59FAA6B003CA2363EDEB25C4C[] = { 110, 0, 171, 171, 171, }; +const unsigned char s_67837675F2BB48C0E926316F505FC1538228E0FA[] = { + +166, 147, 0, 0, 142, 9, 2, 1, + 0, 128, 0, 0, 82, 139, 0, 0, + 10, 0, 0, 0, 97, 95, 112, 111, +115, 105, 116, 105, 111, 110, 1, 0, + 0, 0, 82, 139, 0, 0, 7, 0, + 0, 0, 97, 95, 99, 111, 108, 111, +114, 0, 0, 0, 0, 80, 139, 0, + 0, 10, 0, 0, 0, 97, 95, 116, +101, 120, 99, 111, 111, 114, 100, 2, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 255, 255, 255, 255, 0, + 0, 0, 0, 0, 0, 0, 0, 255, +255, 255, 255, 0, 0, 0, 0, 0, + 0, 0, 0, 255, 255, 255, 255, 0, + 0, 0, 0, 0, 0, 0, 0, 255, +255, 255, 255, 0, 0, 0, 0, 0, + 0, 0, 0, 255, 255, 255, 255, 0, + 0, 0, 0, 0, 0, 0, 0, 255, +255, 255, 255, 0, 0, 0, 0, 0, + 0, 0, 0, 255, 255, 255, 255, 0, + 0, 0, 0, 0, 0, 0, 0, 255, +255, 255, 255, 0, 0, 0, 0, 0, + 0, 0, 0, 255, 255, 255, 255, 0, + 0, 0, 0, 0, 0, 0, 0, 255, +255, 255, 255, 0, 0, 0, 0, 0, + 0, 0, 0, 255, 255, 255, 255, 0, + 0, 0, 0, 0, 0, 0, 0, 255, +255, 255, 255, 0, 0, 0, 0, 0, + 0, 0, 0, 255, 255, 255, 255, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 92, 139, 0, 0, +241, 141, 0, 0, 12, 0, 0, 0, + 67, 67, 95, 77, 86, 80, 77, 97, +116, 114, 105, 120, 0, 0, 0, 0, +255, 255, 255, 255, 0, 0, 0, 0, + 4, 0, 0, 0, 1, 0, 0, 0, + 12, 0, 0, 0, 67, 67, 95, 77, + 86, 80, 77, 97, 116, 114, 105, 120, + 0, 0, 0, 0, 0, 0, 0, 0, + 16, 4, 0, 0, 48, 5, 0, 0, + 0, 0, 0, 0, 183, 123, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 68, 88, 66, 67, +200, 75, 132, 243, 88, 73, 77, 96, +240, 254, 57, 54, 235, 98, 133, 154, + 1, 0, 0, 0, 16, 4, 0, 0, + 6, 0, 0, 0, 56, 0, 0, 0, + 28, 1, 0, 0, 116, 2, 0, 0, +240, 2, 0, 0, 72, 3, 0, 0, +148, 3, 0, 0, 65, 111, 110, 57, +220, 0, 0, 0, 220, 0, 0, 0, + 0, 2, 255, 255, 184, 0, 0, 0, + 36, 0, 0, 0, 0, 0, 36, 0, + 0, 0, 36, 0, 0, 0, 36, 0, + 0, 0, 36, 0, 0, 0, 36, 0, + 1, 2, 255, 255, 81, 0, 0, 5, + 0, 0, 15, 160, 0, 0, 0, 0, + 0, 0, 128, 63, 0, 0, 0, 0, + 0, 0, 0, 0, 31, 0, 0, 2, + 0, 0, 0, 128, 0, 0, 15, 176, + 31, 0, 0, 2, 0, 0, 0, 128, + 1, 0, 3, 176, 90, 0, 0, 4, + 0, 0, 8, 128, 1, 0, 228, 176, + 1, 0, 228, 176, 0, 0, 0, 160, + 7, 0, 0, 2, 0, 0, 1, 128, + 0, 0, 255, 128, 6, 0, 0, 2, + 0, 0, 1, 128, 0, 0, 0, 128, + 2, 0, 0, 3, 0, 0, 1, 128, + 0, 0, 0, 129, 0, 0, 85, 160, + 88, 0, 0, 4, 0, 0, 15, 128, + 0, 0, 0, 128, 0, 0, 228, 176, + 0, 0, 0, 160, 1, 0, 0, 2, + 0, 8, 15, 128, 0, 0, 228, 128, + 1, 0, 0, 2, 1, 8, 15, 128, + 0, 0, 228, 128, 1, 0, 0, 2, + 2, 8, 15, 128, 0, 0, 228, 128, + 1, 0, 0, 2, 3, 8, 15, 128, + 0, 0, 228, 128, 255, 255, 0, 0, + 83, 72, 68, 82, 80, 1, 0, 0, + 64, 0, 0, 0, 84, 0, 0, 0, + 98, 16, 0, 3, 242, 16, 16, 0, + 0, 0, 0, 0, 98, 16, 0, 3, + 50, 16, 16, 0, 1, 0, 0, 0, +101, 0, 0, 3, 242, 32, 16, 0, + 0, 0, 0, 0, 101, 0, 0, 3, +242, 32, 16, 0, 1, 0, 0, 0, +101, 0, 0, 3, 242, 32, 16, 0, + 2, 0, 0, 0, 101, 0, 0, 3, +242, 32, 16, 0, 3, 0, 0, 0, +104, 0, 0, 2, 1, 0, 0, 0, + 15, 0, 0, 7, 18, 0, 16, 0, + 0, 0, 0, 0, 70, 16, 16, 0, + 1, 0, 0, 0, 70, 16, 16, 0, + 1, 0, 0, 0, 75, 0, 0, 5, + 18, 0, 16, 0, 0, 0, 0, 0, + 10, 0, 16, 0, 0, 0, 0, 0, + 0, 0, 0, 8, 18, 0, 16, 0, + 0, 0, 0, 0, 10, 0, 16, 128, + 65, 0, 0, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, 128, 63, + 29, 0, 0, 7, 18, 0, 16, 0, + 0, 0, 0, 0, 10, 0, 16, 0, + 0, 0, 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 1, 0, 0, 7, + 18, 0, 16, 0, 0, 0, 0, 0, + 10, 0, 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, 128, 63, + 56, 0, 0, 7, 242, 0, 16, 0, + 0, 0, 0, 0, 6, 0, 16, 0, + 0, 0, 0, 0, 70, 30, 16, 0, + 0, 0, 0, 0, 54, 0, 0, 5, +242, 32, 16, 0, 0, 0, 0, 0, + 70, 14, 16, 0, 0, 0, 0, 0, + 54, 0, 0, 5, 242, 32, 16, 0, + 1, 0, 0, 0, 70, 14, 16, 0, + 0, 0, 0, 0, 54, 0, 0, 5, +242, 32, 16, 0, 2, 0, 0, 0, + 70, 14, 16, 0, 0, 0, 0, 0, + 54, 0, 0, 5, 242, 32, 16, 0, + 3, 0, 0, 0, 70, 14, 16, 0, + 0, 0, 0, 0, 62, 0, 0, 1, + 83, 84, 65, 84, 116, 0, 0, 0, + 11, 0, 0, 0, 1, 0, 0, 0, + 0, 0, 0, 0, 6, 0, 0, 0, + 5, 0, 0, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 1, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 4, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 82, 68, 69, 70, + 80, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 28, 0, 0, 0, 0, 4, 255, 255, + 0, 65, 0, 0, 28, 0, 0, 0, + 77, 105, 99, 114, 111, 115, 111, 102, +116, 32, 40, 82, 41, 32, 72, 76, + 83, 76, 32, 83, 104, 97, 100, 101, +114, 32, 67, 111, 109, 112, 105, 108, +101, 114, 32, 54, 46, 51, 46, 57, + 54, 48, 48, 46, 49, 55, 52, 49, + 53, 0, 171, 171, 73, 83, 71, 78, + 68, 0, 0, 0, 2, 0, 0, 0, + 8, 0, 0, 0, 56, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 3, 0, 0, 0, 0, 0, 0, 0, + 15, 15, 0, 0, 56, 0, 0, 0, + 1, 0, 0, 0, 0, 0, 0, 0, + 3, 0, 0, 0, 1, 0, 0, 0, + 3, 3, 0, 0, 84, 69, 88, 67, + 79, 79, 82, 68, 0, 171, 171, 171, + 79, 83, 71, 78, 116, 0, 0, 0, + 4, 0, 0, 0, 8, 0, 0, 0, +104, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 3, 0, 0, 0, + 0, 0, 0, 0, 15, 0, 0, 0, +104, 0, 0, 0, 1, 0, 0, 0, + 0, 0, 0, 0, 3, 0, 0, 0, + 1, 0, 0, 0, 15, 0, 0, 0, +104, 0, 0, 0, 2, 0, 0, 0, + 0, 0, 0, 0, 3, 0, 0, 0, + 2, 0, 0, 0, 15, 0, 0, 0, +104, 0, 0, 0, 3, 0, 0, 0, + 0, 0, 0, 0, 3, 0, 0, 0, + 3, 0, 0, 0, 15, 0, 0, 0, + 83, 86, 95, 84, 97, 114, 103, 101, +116, 0, 171, 171, 68, 88, 66, 67, +230, 254, 249, 163, 46, 134, 61, 224, + 16, 68, 114, 69, 103, 13, 78, 214, + 1, 0, 0, 0, 48, 5, 0, 0, + 6, 0, 0, 0, 56, 0, 0, 0, +108, 1, 0, 0, 12, 3, 0, 0, +136, 3, 0, 0, 92, 4, 0, 0, +192, 4, 0, 0, 65, 111, 110, 57, + 44, 1, 0, 0, 44, 1, 0, 0, + 0, 2, 254, 255, 248, 0, 0, 0, + 52, 0, 0, 0, 1, 0, 36, 0, + 0, 0, 48, 0, 0, 0, 48, 0, + 0, 0, 36, 0, 1, 0, 48, 0, + 0, 0, 0, 0, 4, 0, 1, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 1, 2, 254, 255, 81, 0, 0, 5, + 5, 0, 15, 160, 0, 0, 0, 63, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 31, 0, 0, 2, + 5, 0, 0, 128, 0, 0, 15, 144, + 31, 0, 0, 2, 5, 0, 1, 128, + 1, 0, 15, 144, 31, 0, 0, 2, + 5, 0, 2, 128, 2, 0, 15, 144, + 5, 0, 0, 3, 0, 0, 7, 224, + 0, 0, 255, 144, 0, 0, 228, 144, + 9, 0, 0, 3, 0, 0, 1, 128, + 3, 0, 228, 160, 1, 0, 228, 144, + 9, 0, 0, 3, 0, 0, 2, 128, + 4, 0, 228, 160, 1, 0, 228, 144, + 2, 0, 0, 3, 0, 0, 1, 128, + 0, 0, 85, 128, 0, 0, 0, 128, + 5, 0, 0, 3, 0, 0, 4, 192, + 0, 0, 0, 128, 5, 0, 0, 160, + 9, 0, 0, 3, 0, 0, 1, 128, + 2, 0, 228, 160, 1, 0, 228, 144, + 1, 0, 0, 2, 1, 0, 2, 128, + 0, 0, 0, 129, 9, 0, 0, 3, + 1, 0, 1, 128, 1, 0, 228, 160, + 1, 0, 228, 144, 4, 0, 0, 4, + 0, 0, 3, 192, 0, 0, 85, 128, + 0, 0, 228, 160, 1, 0, 228, 128, + 1, 0, 0, 2, 0, 0, 8, 192, + 0, 0, 85, 128, 1, 0, 0, 2, + 0, 0, 8, 224, 0, 0, 255, 144, + 1, 0, 0, 2, 1, 0, 3, 224, + 2, 0, 228, 144, 255, 255, 0, 0, + 83, 72, 68, 82, 152, 1, 0, 0, + 64, 0, 1, 0, 102, 0, 0, 0, + 89, 0, 0, 4, 70, 142, 32, 0, + 0, 0, 0, 0, 4, 0, 0, 0, + 95, 0, 0, 3, 242, 16, 16, 0, + 0, 0, 0, 0, 95, 0, 0, 3, +242, 16, 16, 0, 1, 0, 0, 0, + 95, 0, 0, 3, 50, 16, 16, 0, + 2, 0, 0, 0, 101, 0, 0, 3, +242, 32, 16, 0, 0, 0, 0, 0, +101, 0, 0, 3, 50, 32, 16, 0, + 1, 0, 0, 0, 103, 0, 0, 4, +242, 32, 16, 0, 2, 0, 0, 0, + 1, 0, 0, 0, 104, 0, 0, 2, + 1, 0, 0, 0, 56, 0, 0, 7, +114, 32, 16, 0, 0, 0, 0, 0, +246, 31, 16, 0, 0, 0, 0, 0, + 70, 18, 16, 0, 0, 0, 0, 0, + 54, 0, 0, 5, 130, 32, 16, 0, + 0, 0, 0, 0, 58, 16, 16, 0, + 0, 0, 0, 0, 54, 0, 0, 5, + 50, 32, 16, 0, 1, 0, 0, 0, + 70, 16, 16, 0, 2, 0, 0, 0, + 17, 0, 0, 8, 18, 0, 16, 0, + 0, 0, 0, 0, 70, 142, 32, 0, + 0, 0, 0, 0, 1, 0, 0, 0, + 70, 30, 16, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 34, 32, 16, 0, + 2, 0, 0, 0, 10, 0, 16, 128, + 65, 0, 0, 0, 0, 0, 0, 0, + 17, 0, 0, 8, 18, 0, 16, 0, + 0, 0, 0, 0, 70, 142, 32, 0, + 0, 0, 0, 0, 2, 0, 0, 0, + 70, 30, 16, 0, 1, 0, 0, 0, + 17, 0, 0, 8, 34, 0, 16, 0, + 0, 0, 0, 0, 70, 142, 32, 0, + 0, 0, 0, 0, 3, 0, 0, 0, + 70, 30, 16, 0, 1, 0, 0, 0, + 0, 0, 0, 7, 18, 0, 16, 0, + 0, 0, 0, 0, 26, 0, 16, 0, + 0, 0, 0, 0, 10, 0, 16, 0, + 0, 0, 0, 0, 54, 0, 0, 5, +130, 32, 16, 0, 2, 0, 0, 0, + 26, 0, 16, 0, 0, 0, 0, 0, + 56, 0, 0, 7, 66, 32, 16, 0, + 2, 0, 0, 0, 10, 0, 16, 0, + 0, 0, 0, 0, 1, 64, 0, 0, + 0, 0, 0, 63, 17, 0, 0, 8, + 18, 32, 16, 0, 2, 0, 0, 0, + 70, 142, 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 70, 30, 16, 0, + 1, 0, 0, 0, 62, 0, 0, 1, + 83, 84, 65, 84, 116, 0, 0, 0, + 12, 0, 0, 0, 1, 0, 0, 0, + 0, 0, 0, 0, 6, 0, 0, 0, + 8, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 3, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 82, 68, 69, 70, +204, 0, 0, 0, 1, 0, 0, 0, + 72, 0, 0, 0, 1, 0, 0, 0, + 28, 0, 0, 0, 0, 4, 254, 255, + 0, 65, 0, 0, 152, 0, 0, 0, + 60, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 0, 0, 0, 0, + 36, 71, 108, 111, 98, 97, 108, 115, + 0, 171, 171, 171, 60, 0, 0, 0, + 1, 0, 0, 0, 96, 0, 0, 0, + 64, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 120, 0, 0, 0, + 0, 0, 0, 0, 64, 0, 0, 0, + 2, 0, 0, 0, 136, 0, 0, 0, + 0, 0, 0, 0, 95, 67, 67, 95, + 77, 86, 80, 77, 97, 116, 114, 105, +120, 0, 171, 171, 3, 0, 3, 0, + 4, 0, 4, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 77, 105, 99, 114, +111, 115, 111, 102, 116, 32, 40, 82, + 41, 32, 72, 76, 83, 76, 32, 83, +104, 97, 100, 101, 114, 32, 67, 111, +109, 112, 105, 108, 101, 114, 32, 54, + 46, 51, 46, 57, 54, 48, 48, 46, + 49, 55, 52, 49, 53, 0, 171, 171, + 73, 83, 71, 78, 92, 0, 0, 0, + 3, 0, 0, 0, 8, 0, 0, 0, + 80, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 3, 0, 0, 0, + 0, 0, 0, 0, 15, 15, 0, 0, + 80, 0, 0, 0, 1, 0, 0, 0, + 0, 0, 0, 0, 3, 0, 0, 0, + 1, 0, 0, 0, 15, 15, 0, 0, + 80, 0, 0, 0, 2, 0, 0, 0, + 0, 0, 0, 0, 3, 0, 0, 0, + 2, 0, 0, 0, 3, 3, 0, 0, + 84, 69, 88, 67, 79, 79, 82, 68, + 0, 171, 171, 171, 79, 83, 71, 78, +104, 0, 0, 0, 3, 0, 0, 0, + 8, 0, 0, 0, 80, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 3, 0, 0, 0, 0, 0, 0, 0, + 15, 0, 0, 0, 80, 0, 0, 0, + 1, 0, 0, 0, 0, 0, 0, 0, + 3, 0, 0, 0, 1, 0, 0, 0, + 3, 12, 0, 0, 89, 0, 0, 0, + 0, 0, 0, 0, 1, 0, 0, 0, + 3, 0, 0, 0, 2, 0, 0, 0, + 15, 0, 0, 0, 84, 69, 88, 67, + 79, 79, 82, 68, 0, 83, 86, 95, + 80, 111, 115, 105, 116, 105, 111, 110, + 0, 171, 171, 171, +}; + +const unsigned char s_73FBE16FC32B47649A67B96B9006CBF56B6ED809[] = { + +166, 147, 0, 0, 142, 9, 2, 1, + 0, 128, 0, 0, 82, 139, 0, 0, + 10, 0, 0, 0, 97, 95, 112, 111, +115, 105, 116, 105, 111, 110, 1, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 255, 255, 255, 255, 80, 139, + 0, 0, 10, 0, 0, 0, 97, 95, +116, 101, 120, 67, 111, 111, 114, 100, + 2, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 255, 255, 255, 255, + 0, 0, 0, 0, 0, 0, 0, 0, +255, 255, 255, 255, 0, 0, 0, 0, + 0, 0, 0, 0, 255, 255, 255, 255, + 81, 139, 0, 0, 8, 0, 0, 0, + 97, 95, 110, 111, 114, 109, 97, 108, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 255, 255, 255, 255, + 0, 0, 0, 0, 0, 0, 0, 0, +255, 255, 255, 255, 0, 0, 0, 0, + 0, 0, 0, 0, 255, 255, 255, 255, + 0, 0, 0, 0, 0, 0, 0, 0, +255, 255, 255, 255, 0, 0, 0, 0, + 0, 0, 0, 0, 255, 255, 255, 255, + 0, 0, 0, 0, 0, 0, 0, 0, +255, 255, 255, 255, 0, 0, 0, 0, + 0, 0, 0, 0, 255, 255, 255, 255, + 0, 0, 0, 0, 0, 0, 0, 0, +255, 255, 255, 255, 0, 0, 0, 0, + 0, 0, 0, 0, 255, 255, 255, 255, + 1, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1, 0, 0, 0, + 0, 17, 0, 0, 0, 92, 139, 0, + 0, 241, 141, 0, 0, 11, 0, 0, + 0, 67, 67, 95, 77, 86, 77, 97, +116, 114, 105, 120, 0, 0, 0, 0, +255, 255, 255, 255, 0, 0, 0, 0, + 4, 0, 0, 0, 91, 139, 0, 0, +241, 141, 0, 0, 15, 0, 0, 0, + 67, 67, 95, 78, 111, 114, 109, 97, +108, 77, 97, 116, 114, 105, 120, 0, + 0, 0, 0, 255, 255, 255, 255, 4, + 0, 0, 0, 3, 0, 0, 0, 92, +139, 0, 0, 241, 141, 0, 0, 10, + 0, 0, 0, 67, 67, 95, 80, 77, + 97, 116, 114, 105, 120, 0, 0, 0, + 0, 255, 255, 255, 255, 7, 0, 0, + 0, 4, 0, 0, 0, 81, 139, 0, + 0, 241, 141, 0, 0, 26, 0, 0, + 0, 117, 95, 80, 111, 105, 110, 116, + 76, 105, 103, 104, 116, 83, 111, 117, +114, 99, 101, 80, 111, 115, 105, 116, +105, 111, 110, 1, 0, 0, 0, 255, +255, 255, 255, 11, 0, 0, 0, 1, + 0, 0, 0, 81, 139, 0, 0, 241, +141, 0, 0, 25, 0, 0, 0, 117, + 95, 83, 112, 111, 116, 76, 105, 103, +104, 116, 83, 111, 117, 114, 99, 101, + 80, 111, 115, 105, 116, 105, 111, 110, + 1, 0, 0, 0, 255, 255, 255, 255, + 12, 0, 0, 0, 1, 0, 0, 0, + 94, 139, 0, 0, 0, 0, 0, 0, + 11, 0, 0, 0, 67, 67, 95, 84, +101, 120, 116, 117, 114, 101, 48, 0, + 0, 0, 0, 0, 0, 0, 0, 255, +255, 255, 255, 1, 0, 0, 0, 81, +139, 0, 0, 241, 141, 0, 0, 25, + 0, 0, 0, 117, 95, 65, 109, 98, +105, 101, 110, 116, 76, 105, 103, 104, +116, 83, 111, 117, 114, 99, 101, 67, +111, 108, 111, 114, 0, 0, 0, 0, + 0, 0, 0, 0, 255, 255, 255, 255, + 1, 0, 0, 0, 81, 139, 0, 0, +241, 141, 0, 0, 21, 0, 0, 0, +117, 95, 68, 105, 114, 76, 105, 103, +104, 116, 83, 111, 117, 114, 99, 101, + 67, 111, 108, 111, 114, 1, 0, 0, + 0, 1, 0, 0, 0, 255, 255, 255, +255, 1, 0, 0, 0, 81, 139, 0, + 0, 241, 141, 0, 0, 25, 0, 0, + 0, 117, 95, 68, 105, 114, 76, 105, +103, 104, 116, 83, 111, 117, 114, 99, +101, 68, 105, 114, 101, 99, 116, 105, +111, 110, 1, 0, 0, 0, 2, 0, + 0, 0, 255, 255, 255, 255, 1, 0, + 0, 0, 81, 139, 0, 0, 241, 141, + 0, 0, 23, 0, 0, 0, 117, 95, + 80, 111, 105, 110, 116, 76, 105, 103, +104, 116, 83, 111, 117, 114, 99, 101, + 67, 111, 108, 111, 114, 1, 0, 0, + 0, 3, 0, 0, 0, 255, 255, 255, +255, 1, 0, 0, 0, 6, 20, 0, + 0, 241, 141, 0, 0, 30, 0, 0, + 0, 117, 95, 80, 111, 105, 110, 116, + 76, 105, 103, 104, 116, 83, 111, 117, +114, 99, 101, 82, 97, 110, 103, 101, + 73, 110, 118, 101, 114, 115, 101, 1, + 0, 0, 0, 4, 0, 0, 0, 255, +255, 255, 255, 1, 0, 0, 0, 81, +139, 0, 0, 241, 141, 0, 0, 22, + 0, 0, 0, 117, 95, 83, 112, 111, +116, 76, 105, 103, 104, 116, 83, 111, +117, 114, 99, 101, 67, 111, 108, 111, +114, 1, 0, 0, 0, 5, 0, 0, + 0, 255, 255, 255, 255, 1, 0, 0, + 0, 81, 139, 0, 0, 241, 141, 0, + 0, 26, 0, 0, 0, 117, 95, 83, +112, 111, 116, 76, 105, 103, 104, 116, + 83, 111, 117, 114, 99, 101, 68, 105, +114, 101, 99, 116, 105, 111, 110, 1, + 0, 0, 0, 6, 0, 0, 0, 255, +255, 255, 255, 1, 0, 0, 0, 6, + 20, 0, 0, 241, 141, 0, 0, 30, + 0, 0, 0, 117, 95, 83, 112, 111, +116, 76, 105, 103, 104, 116, 83, 111, +117, 114, 99, 101, 73, 110, 110, 101, +114, 65, 110, 103, 108, 101, 67, 111, +115, 1, 0, 0, 0, 7, 0, 0, + 0, 255, 255, 255, 255, 1, 0, 0, + 0, 6, 20, 0, 0, 241, 141, 0, + 0, 30, 0, 0, 0, 117, 95, 83, +112, 111, 116, 76, 105, 103, 104, 116, + 83, 111, 117, 114, 99, 101, 79, 117, +116, 101, 114, 65, 110, 103, 108, 101, + 67, 111, 115, 1, 0, 0, 0, 8, + 0, 0, 0, 255, 255, 255, 255, 1, + 0, 0, 0, 6, 20, 0, 0, 241, +141, 0, 0, 29, 0, 0, 0, 117, + 95, 83, 112, 111, 116, 76, 105, 103, +104, 116, 83, 111, 117, 114, 99, 101, + 82, 97, 110, 103, 101, 73, 110, 118, +101, 114, 115, 101, 1, 0, 0, 0, + 9, 0, 0, 0, 255, 255, 255, 255, + 1, 0, 0, 0, 82, 139, 0, 0, +241, 141, 0, 0, 7, 0, 0, 0, +117, 95, 99, 111, 108, 111, 114, 0, + 0, 0, 0, 10, 0, 0, 0, 255, +255, 255, 255, 1, 0, 0, 0, 17, + 0, 0, 0, 11, 0, 0, 0, 67, + 67, 95, 77, 86, 77, 97, 116, 114, +105, 120, 0, 0, 0, 0, 0, 0, + 0, 0, 15, 0, 0, 0, 67, 67, + 95, 78, 111, 114, 109, 97, 108, 77, + 97, 116, 114, 105, 120, 0, 0, 0, + 0, 1, 0, 0, 0, 10, 0, 0, + 0, 67, 67, 95, 80, 77, 97, 116, +114, 105, 120, 0, 0, 0, 0, 2, + 0, 0, 0, 26, 0, 0, 0, 117, + 95, 80, 111, 105, 110, 116, 76, 105, +103, 104, 116, 83, 111, 117, 114, 99, +101, 80, 111, 115, 105, 116, 105, 111, +110, 0, 0, 0, 0, 3, 0, 0, + 0, 25, 0, 0, 0, 117, 95, 83, +112, 111, 116, 76, 105, 103, 104, 116, + 83, 111, 117, 114, 99, 101, 80, 111, +115, 105, 116, 105, 111, 110, 0, 0, + 0, 0, 4, 0, 0, 0, 11, 0, + 0, 0, 67, 67, 95, 84, 101, 120, +116, 117, 114, 101, 48, 0, 0, 0, + 0, 5, 0, 0, 0, 25, 0, 0, + 0, 117, 95, 65, 109, 98, 105, 101, +110, 116, 76, 105, 103, 104, 116, 83, +111, 117, 114, 99, 101, 67, 111, 108, +111, 114, 0, 0, 0, 0, 6, 0, + 0, 0, 21, 0, 0, 0, 117, 95, + 68, 105, 114, 76, 105, 103, 104, 116, + 83, 111, 117, 114, 99, 101, 67, 111, +108, 111, 114, 0, 0, 0, 0, 7, + 0, 0, 0, 25, 0, 0, 0, 117, + 95, 68, 105, 114, 76, 105, 103, 104, +116, 83, 111, 117, 114, 99, 101, 68, +105, 114, 101, 99, 116, 105, 111, 110, + 0, 0, 0, 0, 8, 0, 0, 0, + 23, 0, 0, 0, 117, 95, 80, 111, +105, 110, 116, 76, 105, 103, 104, 116, + 83, 111, 117, 114, 99, 101, 67, 111, +108, 111, 114, 0, 0, 0, 0, 9, + 0, 0, 0, 30, 0, 0, 0, 117, + 95, 80, 111, 105, 110, 116, 76, 105, +103, 104, 116, 83, 111, 117, 114, 99, +101, 82, 97, 110, 103, 101, 73, 110, +118, 101, 114, 115, 101, 0, 0, 0, + 0, 10, 0, 0, 0, 22, 0, 0, + 0, 117, 95, 83, 112, 111, 116, 76, +105, 103, 104, 116, 83, 111, 117, 114, + 99, 101, 67, 111, 108, 111, 114, 0, + 0, 0, 0, 11, 0, 0, 0, 26, + 0, 0, 0, 117, 95, 83, 112, 111, +116, 76, 105, 103, 104, 116, 83, 111, +117, 114, 99, 101, 68, 105, 114, 101, + 99, 116, 105, 111, 110, 0, 0, 0, + 0, 12, 0, 0, 0, 30, 0, 0, + 0, 117, 95, 83, 112, 111, 116, 76, +105, 103, 104, 116, 83, 111, 117, 114, + 99, 101, 73, 110, 110, 101, 114, 65, +110, 103, 108, 101, 67, 111, 115, 0, + 0, 0, 0, 13, 0, 0, 0, 30, + 0, 0, 0, 117, 95, 83, 112, 111, +116, 76, 105, 103, 104, 116, 83, 111, +117, 114, 99, 101, 79, 117, 116, 101, +114, 65, 110, 103, 108, 101, 67, 111, +115, 0, 0, 0, 0, 14, 0, 0, + 0, 29, 0, 0, 0, 117, 95, 83, +112, 111, 116, 76, 105, 103, 104, 116, + 83, 111, 117, 114, 99, 101, 82, 97, +110, 103, 101, 73, 110, 118, 101, 114, +115, 101, 0, 0, 0, 0, 15, 0, + 0, 0, 7, 0, 0, 0, 117, 95, + 99, 111, 108, 111, 114, 0, 0, 0, + 0, 16, 0, 0, 0, 20, 17, 0, + 0, 124, 10, 0, 0, 0, 0, 0, + 0, 183, 123, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 68, 88, 66, 67, 50, 192, 176, +213, 184, 110, 232, 234, 13, 16, 67, +128, 54, 140, 124, 133, 1, 0, 0, + 0, 20, 17, 0, 0, 6, 0, 0, + 0, 56, 0, 0, 0, 152, 3, 0, + 0, 184, 11, 0, 0, 52, 12, 0, + 0, 28, 16, 0, 0, 152, 16, 0, + 0, 65, 111, 110, 57, 88, 3, 0, + 0, 88, 3, 0, 0, 0, 2, 255, +255, 36, 3, 0, 0, 52, 0, 0, + 0, 1, 0, 40, 0, 0, 0, 52, + 0, 0, 0, 52, 0, 1, 0, 36, + 0, 0, 0, 52, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 11, 0, 0, + 0, 0, 0, 0, 0, 1, 2, 255, +255, 81, 0, 0, 5, 11, 0, 15, +160, 0, 0, 0, 0, 0, 0, 128, + 63, 0, 0, 0, 192, 0, 0, 64, + 64, 31, 0, 0, 2, 0, 0, 0, +128, 0, 0, 7, 176, 31, 0, 0, + 2, 0, 0, 0, 128, 1, 0, 7, +176, 31, 0, 0, 2, 0, 0, 0, +128, 2, 0, 7, 176, 31, 0, 0, + 2, 0, 0, 0, 128, 3, 0, 3, +176, 31, 0, 0, 2, 0, 0, 0, +144, 0, 8, 15, 160, 5, 0, 0, + 3, 0, 0, 7, 128, 1, 0, 228, +176, 4, 0, 0, 160, 8, 0, 0, + 3, 0, 0, 1, 128, 0, 0, 228, +128, 0, 0, 228, 128, 2, 0, 0, + 3, 0, 0, 1, 128, 0, 0, 0, +129, 11, 0, 85, 160, 11, 0, 0, + 3, 1, 0, 8, 128, 0, 0, 0, +128, 11, 0, 0, 160, 2, 0, 0, + 3, 0, 0, 7, 128, 2, 0, 228, +160, 2, 0, 228, 160, 36, 0, 0, + 2, 1, 0, 7, 128, 0, 0, 228, +128, 36, 0, 0, 2, 0, 0, 7, +128, 0, 0, 228, 176, 8, 0, 0, + 3, 0, 0, 8, 128, 0, 0, 228, +128, 1, 0, 228, 129, 5, 0, 0, + 3, 1, 0, 7, 128, 0, 0, 255, +128, 1, 0, 228, 160, 88, 0, 0, + 4, 1, 0, 7, 128, 0, 0, 255, +128, 1, 0, 228, 128, 11, 0, 0, +160, 2, 0, 0, 3, 1, 0, 7, +128, 1, 0, 228, 128, 0, 0, 228, +160, 36, 0, 0, 2, 2, 0, 7, +128, 1, 0, 228, 176, 8, 0, 0, + 3, 0, 0, 8, 128, 0, 0, 228, +128, 2, 0, 228, 128, 5, 0, 0, + 3, 2, 0, 7, 128, 0, 0, 255, +128, 3, 0, 228, 160, 88, 0, 0, + 4, 2, 0, 7, 128, 0, 0, 255, +128, 2, 0, 228, 128, 11, 0, 0, +160, 4, 0, 0, 4, 1, 0, 7, +128, 2, 0, 228, 128, 1, 0, 255, +128, 1, 0, 228, 128, 2, 0, 0, + 3, 2, 0, 7, 128, 6, 0, 228, +160, 6, 0, 228, 160, 36, 0, 0, + 2, 3, 0, 7, 128, 2, 0, 228, +128, 36, 0, 0, 2, 2, 0, 7, +128, 2, 0, 228, 176, 8, 0, 0, + 3, 0, 0, 8, 128, 3, 0, 228, +128, 2, 0, 228, 129, 8, 0, 0, + 3, 1, 0, 8, 128, 0, 0, 228, +128, 2, 0, 228, 128, 2, 0, 0, + 3, 0, 0, 1, 128, 0, 0, 255, +128, 8, 0, 0, 161, 1, 0, 0, + 2, 2, 0, 1, 128, 8, 0, 0, +160, 2, 0, 0, 3, 0, 0, 2, +128, 2, 0, 0, 129, 7, 0, 0, +160, 6, 0, 0, 2, 0, 0, 2, +128, 0, 0, 85, 128, 5, 0, 0, + 3, 0, 0, 17, 128, 0, 0, 85, +128, 0, 0, 0, 128, 4, 0, 0, + 4, 0, 0, 2, 128, 0, 0, 0, +128, 11, 0, 170, 160, 11, 0, 255, +160, 5, 0, 0, 3, 0, 0, 1, +128, 0, 0, 0, 128, 0, 0, 0, +128, 5, 0, 0, 3, 0, 0, 1, +128, 0, 0, 0, 128, 0, 0, 85, +128, 5, 0, 0, 3, 0, 0, 14, +128, 2, 0, 144, 176, 9, 0, 0, +160, 8, 0, 0, 3, 0, 0, 2, +128, 0, 0, 249, 128, 0, 0, 249, +128, 2, 0, 0, 3, 0, 0, 2, +128, 0, 0, 85, 129, 11, 0, 85, +160, 5, 0, 0, 3, 0, 0, 17, +128, 0, 0, 0, 128, 0, 0, 85, +128, 88, 0, 0, 4, 0, 0, 1, +128, 0, 0, 85, 128, 0, 0, 0, +128, 11, 0, 0, 160, 5, 0, 0, + 3, 0, 0, 14, 128, 1, 0, 255, +128, 5, 0, 144, 160, 5, 0, 0, + 3, 0, 0, 7, 128, 0, 0, 0, +128, 0, 0, 249, 128, 88, 0, 0, + 4, 0, 0, 7, 128, 1, 0, 255, +128, 0, 0, 228, 128, 11, 0, 0, +160, 2, 0, 0, 3, 0, 0, 7, +128, 0, 0, 228, 128, 1, 0, 228, +128, 66, 0, 0, 3, 1, 0, 15, +128, 3, 0, 228, 176, 0, 8, 228, +160, 5, 0, 0, 3, 1, 0, 15, +128, 1, 0, 228, 128, 10, 0, 228, +160, 1, 0, 0, 2, 0, 0, 8, +128, 11, 0, 85, 160, 5, 0, 0, + 3, 0, 0, 15, 128, 0, 0, 228, +128, 1, 0, 228, 128, 1, 0, 0, + 2, 0, 8, 15, 128, 0, 0, 228, +128, 1, 0, 0, 2, 1, 8, 15, +128, 0, 0, 228, 128, 1, 0, 0, + 2, 2, 8, 15, 128, 0, 0, 228, +128, 1, 0, 0, 2, 3, 8, 15, +128, 0, 0, 228, 128, 255, 255, 0, + 0, 83, 72, 68, 82, 24, 8, 0, + 0, 64, 0, 0, 0, 6, 2, 0, + 0, 89, 0, 0, 4, 70, 142, 32, + 0, 0, 0, 0, 0, 11, 0, 0, + 0, 90, 0, 0, 3, 0, 96, 16, + 0, 0, 0, 0, 0, 88, 24, 0, + 4, 0, 112, 16, 0, 0, 0, 0, + 0, 85, 85, 0, 0, 98, 16, 0, + 3, 114, 16, 16, 0, 0, 0, 0, + 0, 98, 16, 0, 3, 114, 16, 16, + 0, 1, 0, 0, 0, 98, 16, 0, + 3, 114, 16, 16, 0, 2, 0, 0, + 0, 98, 16, 0, 3, 50, 16, 16, + 0, 3, 0, 0, 0, 101, 0, 0, + 3, 242, 32, 16, 0, 0, 0, 0, + 0, 101, 0, 0, 3, 242, 32, 16, + 0, 1, 0, 0, 0, 101, 0, 0, + 3, 242, 32, 16, 0, 2, 0, 0, + 0, 101, 0, 0, 3, 242, 32, 16, + 0, 3, 0, 0, 0, 104, 0, 0, + 2, 4, 0, 0, 0, 16, 0, 0, + 7, 18, 0, 16, 0, 0, 0, 0, + 0, 70, 18, 16, 0, 0, 0, 0, + 0, 70, 18, 16, 0, 0, 0, 0, + 0, 68, 0, 0, 5, 18, 0, 16, + 0, 0, 0, 0, 0, 10, 0, 16, + 0, 0, 0, 0, 0, 56, 0, 0, + 7, 114, 0, 16, 0, 0, 0, 0, + 0, 6, 0, 16, 0, 0, 0, 0, + 0, 70, 18, 16, 0, 0, 0, 0, + 0, 0, 0, 0, 9, 114, 0, 16, + 0, 1, 0, 0, 0, 70, 130, 32, + 0, 0, 0, 0, 0, 2, 0, 0, + 0, 70, 130, 32, 0, 0, 0, 0, + 0, 2, 0, 0, 0, 16, 0, 0, + 7, 130, 0, 16, 0, 0, 0, 0, + 0, 70, 2, 16, 0, 1, 0, 0, + 0, 70, 2, 16, 0, 1, 0, 0, + 0, 68, 0, 0, 5, 130, 0, 16, + 0, 0, 0, 0, 0, 58, 0, 16, + 0, 0, 0, 0, 0, 56, 0, 0, + 7, 114, 0, 16, 0, 1, 0, 0, + 0, 246, 15, 16, 0, 0, 0, 0, + 0, 70, 2, 16, 0, 1, 0, 0, + 0, 16, 0, 0, 8, 130, 0, 16, + 0, 0, 0, 0, 0, 70, 2, 16, + 0, 0, 0, 0, 0, 70, 2, 16, +128, 65, 0, 0, 0, 1, 0, 0, + 0, 52, 0, 0, 7, 130, 0, 16, + 0, 0, 0, 0, 0, 58, 0, 16, + 0, 0, 0, 0, 0, 1, 64, 0, + 0, 0, 0, 0, 0, 54, 0, 0, + 6, 114, 0, 16, 0, 1, 0, 0, + 0, 70, 130, 32, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 54, 0, 0, + 5, 130, 0, 16, 0, 1, 0, 0, + 0, 1, 64, 0, 0, 0, 0, 0, + 0, 48, 0, 0, 1, 33, 0, 0, + 7, 18, 0, 16, 0, 2, 0, 0, + 0, 58, 0, 16, 0, 1, 0, 0, + 0, 1, 64, 0, 0, 1, 0, 0, + 0, 3, 0, 4, 3, 10, 0, 16, + 0, 2, 0, 0, 0, 50, 0, 0, + 10, 114, 0, 16, 0, 1, 0, 0, + 0, 70, 130, 32, 0, 0, 0, 0, + 0, 1, 0, 0, 0, 246, 15, 16, + 0, 0, 0, 0, 0, 70, 2, 16, + 0, 1, 0, 0, 0, 30, 0, 0, + 7, 130, 0, 16, 0, 1, 0, 0, + 0, 58, 0, 16, 0, 1, 0, 0, + 0, 1, 64, 0, 0, 1, 0, 0, + 0, 22, 0, 0, 1, 56, 0, 0, + 8, 114, 0, 16, 0, 2, 0, 0, + 0, 70, 18, 16, 0, 1, 0, 0, + 0, 6, 128, 32, 0, 0, 0, 0, + 0, 4, 0, 0, 0, 16, 0, 0, + 7, 130, 0, 16, 0, 0, 0, 0, + 0, 70, 2, 16, 0, 2, 0, 0, + 0, 70, 2, 16, 0, 2, 0, 0, + 0, 0, 0, 0, 8, 130, 0, 16, + 0, 0, 0, 0, 0, 58, 0, 16, +128, 65, 0, 0, 0, 0, 0, 0, + 0, 1, 64, 0, 0, 0, 0, 128, + 63, 52, 0, 0, 7, 130, 0, 16, + 0, 0, 0, 0, 0, 58, 0, 16, + 0, 0, 0, 0, 0, 1, 64, 0, + 0, 0, 0, 0, 0, 16, 0, 0, + 7, 130, 0, 16, 0, 1, 0, 0, + 0, 70, 18, 16, 0, 1, 0, 0, + 0, 70, 18, 16, 0, 1, 0, 0, + 0, 68, 0, 0, 5, 130, 0, 16, + 0, 1, 0, 0, 0, 58, 0, 16, + 0, 1, 0, 0, 0, 56, 0, 0, + 7, 114, 0, 16, 0, 2, 0, 0, + 0, 246, 15, 16, 0, 1, 0, 0, + 0, 70, 18, 16, 0, 1, 0, 0, + 0, 16, 0, 0, 7, 130, 0, 16, + 0, 1, 0, 0, 0, 70, 2, 16, + 0, 0, 0, 0, 0, 70, 2, 16, + 0, 2, 0, 0, 0, 52, 0, 0, + 7, 130, 0, 16, 0, 1, 0, 0, + 0, 58, 0, 16, 0, 1, 0, 0, + 0, 1, 64, 0, 0, 0, 0, 0, + 0, 56, 0, 0, 8, 114, 0, 16, + 0, 2, 0, 0, 0, 246, 15, 16, + 0, 1, 0, 0, 0, 70, 130, 32, + 0, 0, 0, 0, 0, 3, 0, 0, + 0, 54, 0, 0, 5, 114, 0, 16, + 0, 3, 0, 0, 0, 70, 2, 16, + 0, 1, 0, 0, 0, 54, 0, 0, + 5, 130, 0, 16, 0, 1, 0, 0, + 0, 1, 64, 0, 0, 0, 0, 0, + 0, 48, 0, 0, 1, 33, 0, 0, + 7, 130, 0, 16, 0, 2, 0, 0, + 0, 58, 0, 16, 0, 1, 0, 0, + 0, 1, 64, 0, 0, 1, 0, 0, + 0, 3, 0, 4, 3, 58, 0, 16, + 0, 2, 0, 0, 0, 50, 0, 0, + 9, 114, 0, 16, 0, 3, 0, 0, + 0, 70, 2, 16, 0, 2, 0, 0, + 0, 246, 15, 16, 0, 0, 0, 0, + 0, 70, 2, 16, 0, 3, 0, 0, + 0, 30, 0, 0, 7, 130, 0, 16, + 0, 1, 0, 0, 0, 58, 0, 16, + 0, 1, 0, 0, 0, 1, 64, 0, + 0, 1, 0, 0, 0, 22, 0, 0, + 1, 56, 0, 0, 8, 114, 0, 16, + 0, 1, 0, 0, 0, 70, 18, 16, + 0, 2, 0, 0, 0, 6, 128, 32, + 0, 0, 0, 0, 0, 9, 0, 0, + 0, 16, 0, 0, 7, 130, 0, 16, + 0, 0, 0, 0, 0, 70, 2, 16, + 0, 1, 0, 0, 0, 70, 2, 16, + 0, 1, 0, 0, 0, 0, 0, 0, + 8, 130, 0, 16, 0, 0, 0, 0, + 0, 58, 0, 16, 128, 65, 0, 0, + 0, 0, 0, 0, 0, 1, 64, 0, + 0, 0, 0, 128, 63, 52, 0, 0, + 7, 130, 0, 16, 0, 0, 0, 0, + 0, 58, 0, 16, 0, 0, 0, 0, + 0, 1, 64, 0, 0, 0, 0, 0, + 0, 16, 0, 0, 7, 18, 0, 16, + 0, 1, 0, 0, 0, 70, 18, 16, + 0, 2, 0, 0, 0, 70, 18, 16, + 0, 2, 0, 0, 0, 68, 0, 0, + 5, 18, 0, 16, 0, 1, 0, 0, + 0, 10, 0, 16, 0, 1, 0, 0, + 0, 56, 0, 0, 7, 114, 0, 16, + 0, 1, 0, 0, 0, 6, 0, 16, + 0, 1, 0, 0, 0, 70, 18, 16, + 0, 2, 0, 0, 0, 0, 0, 0, + 9, 114, 0, 16, 0, 2, 0, 0, + 0, 70, 130, 32, 0, 0, 0, 0, + 0, 6, 0, 0, 0, 70, 130, 32, + 0, 0, 0, 0, 0, 6, 0, 0, + 0, 16, 0, 0, 7, 130, 0, 16, + 0, 1, 0, 0, 0, 70, 2, 16, + 0, 2, 0, 0, 0, 70, 2, 16, + 0, 2, 0, 0, 0, 68, 0, 0, + 5, 130, 0, 16, 0, 1, 0, 0, + 0, 58, 0, 16, 0, 1, 0, 0, + 0, 56, 0, 0, 7, 114, 0, 16, + 0, 2, 0, 0, 0, 246, 15, 16, + 0, 1, 0, 0, 0, 70, 2, 16, + 0, 2, 0, 0, 0, 16, 0, 0, + 8, 130, 0, 16, 0, 1, 0, 0, + 0, 70, 2, 16, 0, 2, 0, 0, + 0, 70, 2, 16, 128, 65, 0, 0, + 0, 1, 0, 0, 0, 0, 0, 0, + 10, 18, 0, 16, 0, 2, 0, 0, + 0, 10, 128, 32, 0, 0, 0, 0, + 0, 7, 0, 0, 0, 10, 128, 32, +128, 65, 0, 0, 0, 0, 0, 0, + 0, 8, 0, 0, 0, 0, 0, 0, + 9, 130, 0, 16, 0, 1, 0, 0, + 0, 58, 0, 16, 0, 1, 0, 0, + 0, 10, 128, 32, 128, 65, 0, 0, + 0, 0, 0, 0, 0, 8, 0, 0, + 0, 14, 0, 0, 10, 18, 0, 16, + 0, 2, 0, 0, 0, 2, 64, 0, + 0, 0, 0, 128, 63, 0, 0, 128, + 63, 0, 0, 128, 63, 0, 0, 128, + 63, 10, 0, 16, 0, 2, 0, 0, + 0, 56, 32, 0, 7, 130, 0, 16, + 0, 1, 0, 0, 0, 58, 0, 16, + 0, 1, 0, 0, 0, 10, 0, 16, + 0, 2, 0, 0, 0, 50, 0, 0, + 9, 18, 0, 16, 0, 2, 0, 0, + 0, 58, 0, 16, 0, 1, 0, 0, + 0, 1, 64, 0, 0, 0, 0, 0, +192, 1, 64, 0, 0, 0, 0, 64, + 64, 56, 0, 0, 7, 130, 0, 16, + 0, 1, 0, 0, 0, 58, 0, 16, + 0, 1, 0, 0, 0, 58, 0, 16, + 0, 1, 0, 0, 0, 56, 0, 0, + 7, 130, 0, 16, 0, 1, 0, 0, + 0, 58, 0, 16, 0, 1, 0, 0, + 0, 10, 0, 16, 0, 2, 0, 0, + 0, 56, 0, 0, 7, 130, 0, 16, + 0, 0, 0, 0, 0, 58, 0, 16, + 0, 0, 0, 0, 0, 58, 0, 16, + 0, 1, 0, 0, 0, 51, 0, 0, + 7, 130, 0, 16, 0, 0, 0, 0, + 0, 58, 0, 16, 0, 0, 0, 0, + 0, 1, 64, 0, 0, 0, 0, 128, + 63, 16, 0, 0, 7, 18, 0, 16, + 0, 0, 0, 0, 0, 70, 2, 16, + 0, 0, 0, 0, 0, 70, 2, 16, + 0, 1, 0, 0, 0, 52, 0, 0, + 7, 18, 0, 16, 0, 0, 0, 0, + 0, 10, 0, 16, 0, 0, 0, 0, + 0, 1, 64, 0, 0, 0, 0, 0, + 0, 56, 0, 0, 8, 114, 0, 16, + 0, 0, 0, 0, 0, 6, 0, 16, + 0, 0, 0, 0, 0, 70, 130, 32, + 0, 0, 0, 0, 0, 5, 0, 0, + 0, 54, 0, 0, 5, 114, 0, 16, + 0, 1, 0, 0, 0, 70, 2, 16, + 0, 3, 0, 0, 0, 54, 0, 0, + 5, 18, 0, 16, 0, 2, 0, 0, + 0, 1, 64, 0, 0, 0, 0, 0, + 0, 48, 0, 0, 1, 33, 0, 0, + 7, 34, 0, 16, 0, 2, 0, 0, + 0, 10, 0, 16, 0, 2, 0, 0, + 0, 1, 64, 0, 0, 1, 0, 0, + 0, 3, 0, 4, 3, 26, 0, 16, + 0, 2, 0, 0, 0, 50, 0, 0, + 9, 114, 0, 16, 0, 1, 0, 0, + 0, 70, 2, 16, 0, 0, 0, 0, + 0, 246, 15, 16, 0, 0, 0, 0, + 0, 70, 2, 16, 0, 1, 0, 0, + 0, 30, 0, 0, 7, 18, 0, 16, + 0, 2, 0, 0, 0, 10, 0, 16, + 0, 2, 0, 0, 0, 1, 64, 0, + 0, 1, 0, 0, 0, 22, 0, 0, + 1, 69, 0, 0, 9, 242, 0, 16, + 0, 0, 0, 0, 0, 70, 16, 16, + 0, 3, 0, 0, 0, 70, 126, 16, + 0, 0, 0, 0, 0, 0, 96, 16, + 0, 0, 0, 0, 0, 56, 0, 0, + 8, 242, 0, 16, 0, 0, 0, 0, + 0, 70, 14, 16, 0, 0, 0, 0, + 0, 70, 142, 32, 0, 0, 0, 0, + 0, 10, 0, 0, 0, 54, 0, 0, + 5, 130, 0, 16, 0, 1, 0, 0, + 0, 1, 64, 0, 0, 0, 0, 128, + 63, 56, 0, 0, 7, 242, 0, 16, + 0, 0, 0, 0, 0, 70, 14, 16, + 0, 0, 0, 0, 0, 70, 14, 16, + 0, 1, 0, 0, 0, 54, 0, 0, + 5, 242, 32, 16, 0, 0, 0, 0, + 0, 70, 14, 16, 0, 0, 0, 0, + 0, 54, 0, 0, 5, 242, 32, 16, + 0, 1, 0, 0, 0, 70, 14, 16, + 0, 0, 0, 0, 0, 54, 0, 0, + 5, 242, 32, 16, 0, 2, 0, 0, + 0, 70, 14, 16, 0, 0, 0, 0, + 0, 54, 0, 0, 5, 242, 32, 16, + 0, 3, 0, 0, 0, 70, 14, 16, + 0, 0, 0, 0, 0, 62, 0, 0, + 1, 83, 84, 65, 84, 116, 0, 0, + 0, 76, 0, 0, 0, 4, 0, 0, + 0, 0, 0, 0, 0, 8, 0, 0, + 0, 48, 0, 0, 0, 6, 0, 0, + 0, 0, 0, 0, 0, 1, 0, 0, + 0, 3, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 11, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 82, 68, 69, + 70, 224, 3, 0, 0, 1, 0, 0, + 0, 176, 0, 0, 0, 3, 0, 0, + 0, 28, 0, 0, 0, 0, 4, 255, +255, 0, 65, 0, 0, 172, 3, 0, + 0, 124, 0, 0, 0, 3, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1, 0, 0, 0, 1, 0, 0, + 0, 145, 0, 0, 0, 2, 0, 0, + 0, 5, 0, 0, 0, 4, 0, 0, + 0, 255, 255, 255, 255, 0, 0, 0, + 0, 1, 0, 0, 0, 13, 0, 0, + 0, 166, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1, 0, 0, 0, 0, 0, 0, + 0, 115, 97, 109, 112, 108, 101, 114, + 95, 95, 67, 67, 95, 84, 101, 120, +116, 117, 114, 101, 48, 0, 116, 101, +120, 116, 117, 114, 101, 95, 95, 67, + 67, 95, 84, 101, 120, 116, 117, 114, +101, 48, 0, 36, 71, 108, 111, 98, + 97, 108, 115, 0, 171, 166, 0, 0, + 0, 11, 0, 0, 0, 200, 0, 0, + 0, 176, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 208, 1, 0, + 0, 0, 0, 0, 0, 12, 0, 0, + 0, 2, 0, 0, 0, 236, 1, 0, + 0, 0, 0, 0, 0, 252, 1, 0, + 0, 16, 0, 0, 0, 12, 0, 0, + 0, 2, 0, 0, 0, 20, 2, 0, + 0, 0, 0, 0, 0, 36, 2, 0, + 0, 32, 0, 0, 0, 12, 0, 0, + 0, 2, 0, 0, 0, 64, 2, 0, + 0, 0, 0, 0, 0, 80, 2, 0, + 0, 48, 0, 0, 0, 12, 0, 0, + 0, 2, 0, 0, 0, 108, 2, 0, + 0, 0, 0, 0, 0, 124, 2, 0, + 0, 64, 0, 0, 0, 4, 0, 0, + 0, 2, 0, 0, 0, 156, 2, 0, + 0, 0, 0, 0, 0, 172, 2, 0, + 0, 80, 0, 0, 0, 12, 0, 0, + 0, 2, 0, 0, 0, 196, 2, 0, + 0, 0, 0, 0, 0, 212, 2, 0, + 0, 96, 0, 0, 0, 12, 0, 0, + 0, 2, 0, 0, 0, 240, 2, 0, + 0, 0, 0, 0, 0, 0, 3, 0, + 0, 112, 0, 0, 0, 4, 0, 0, + 0, 2, 0, 0, 0, 32, 3, 0, + 0, 0, 0, 0, 0, 48, 3, 0, + 0, 128, 0, 0, 0, 4, 0, 0, + 0, 2, 0, 0, 0, 80, 3, 0, + 0, 0, 0, 0, 0, 96, 3, 0, + 0, 144, 0, 0, 0, 4, 0, 0, + 0, 2, 0, 0, 0, 128, 3, 0, + 0, 0, 0, 0, 0, 144, 3, 0, + 0, 160, 0, 0, 0, 16, 0, 0, + 0, 2, 0, 0, 0, 156, 3, 0, + 0, 0, 0, 0, 0, 95, 117, 95, + 65, 109, 98, 105, 101, 110, 116, 76, +105, 103, 104, 116, 83, 111, 117, 114, + 99, 101, 67, 111, 108, 111, 114, 0, +171, 1, 0, 3, 0, 1, 0, 3, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 95, 117, 95, 68, 105, 114, 76, +105, 103, 104, 116, 83, 111, 117, 114, + 99, 101, 67, 111, 108, 111, 114, 0, +171, 1, 0, 3, 0, 1, 0, 3, + 0, 1, 0, 0, 0, 0, 0, 0, + 0, 95, 117, 95, 68, 105, 114, 76, +105, 103, 104, 116, 83, 111, 117, 114, + 99, 101, 68, 105, 114, 101, 99, 116, +105, 111, 110, 0, 171, 1, 0, 3, + 0, 1, 0, 3, 0, 1, 0, 0, + 0, 0, 0, 0, 0, 95, 117, 95, + 80, 111, 105, 110, 116, 76, 105, 103, +104, 116, 83, 111, 117, 114, 99, 101, + 67, 111, 108, 111, 114, 0, 171, 171, +171, 1, 0, 3, 0, 1, 0, 3, + 0, 1, 0, 0, 0, 0, 0, 0, + 0, 95, 117, 95, 80, 111, 105, 110, +116, 76, 105, 103, 104, 116, 83, 111, +117, 114, 99, 101, 82, 97, 110, 103, +101, 73, 110, 118, 101, 114, 115, 101, + 0, 0, 0, 3, 0, 1, 0, 1, + 0, 1, 0, 0, 0, 0, 0, 0, + 0, 95, 117, 95, 83, 112, 111, 116, + 76, 105, 103, 104, 116, 83, 111, 117, +114, 99, 101, 67, 111, 108, 111, 114, + 0, 1, 0, 3, 0, 1, 0, 3, + 0, 1, 0, 0, 0, 0, 0, 0, + 0, 95, 117, 95, 83, 112, 111, 116, + 76, 105, 103, 104, 116, 83, 111, 117, +114, 99, 101, 68, 105, 114, 101, 99, +116, 105, 111, 110, 0, 1, 0, 3, + 0, 1, 0, 3, 0, 1, 0, 0, + 0, 0, 0, 0, 0, 95, 117, 95, + 83, 112, 111, 116, 76, 105, 103, 104, +116, 83, 111, 117, 114, 99, 101, 73, +110, 110, 101, 114, 65, 110, 103, 108, +101, 67, 111, 115, 0, 0, 0, 3, + 0, 1, 0, 1, 0, 1, 0, 0, + 0, 0, 0, 0, 0, 95, 117, 95, + 83, 112, 111, 116, 76, 105, 103, 104, +116, 83, 111, 117, 114, 99, 101, 79, +117, 116, 101, 114, 65, 110, 103, 108, +101, 67, 111, 115, 0, 0, 0, 3, + 0, 1, 0, 1, 0, 1, 0, 0, + 0, 0, 0, 0, 0, 95, 117, 95, + 83, 112, 111, 116, 76, 105, 103, 104, +116, 83, 111, 117, 114, 99, 101, 82, + 97, 110, 103, 101, 73, 110, 118, 101, +114, 115, 101, 0, 171, 0, 0, 3, + 0, 1, 0, 1, 0, 1, 0, 0, + 0, 0, 0, 0, 0, 95, 117, 95, + 99, 111, 108, 111, 114, 0, 171, 171, +171, 1, 0, 3, 0, 1, 0, 4, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 77, 105, 99, 114, 111, 115, 111, +102, 116, 32, 40, 82, 41, 32, 72, + 76, 83, 76, 32, 83, 104, 97, 100, +101, 114, 32, 67, 111, 109, 112, 105, +108, 101, 114, 32, 54, 46, 51, 46, + 57, 54, 48, 48, 46, 49, 55, 52, + 49, 53, 0, 171, 171, 73, 83, 71, + 78, 116, 0, 0, 0, 4, 0, 0, + 0, 8, 0, 0, 0, 104, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 3, 0, 0, 0, 0, 0, 0, + 0, 7, 7, 0, 0, 104, 0, 0, + 0, 1, 0, 0, 0, 0, 0, 0, + 0, 3, 0, 0, 0, 1, 0, 0, + 0, 7, 7, 0, 0, 104, 0, 0, + 0, 2, 0, 0, 0, 0, 0, 0, + 0, 3, 0, 0, 0, 2, 0, 0, + 0, 7, 7, 0, 0, 104, 0, 0, + 0, 3, 0, 0, 0, 0, 0, 0, + 0, 3, 0, 0, 0, 3, 0, 0, + 0, 3, 3, 0, 0, 84, 69, 88, + 67, 79, 79, 82, 68, 0, 171, 171, +171, 79, 83, 71, 78, 116, 0, 0, + 0, 4, 0, 0, 0, 8, 0, 0, + 0, 104, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 3, 0, 0, + 0, 0, 0, 0, 0, 15, 0, 0, + 0, 104, 0, 0, 0, 1, 0, 0, + 0, 0, 0, 0, 0, 3, 0, 0, + 0, 1, 0, 0, 0, 15, 0, 0, + 0, 104, 0, 0, 0, 2, 0, 0, + 0, 0, 0, 0, 0, 3, 0, 0, + 0, 2, 0, 0, 0, 15, 0, 0, + 0, 104, 0, 0, 0, 3, 0, 0, + 0, 0, 0, 0, 0, 3, 0, 0, + 0, 3, 0, 0, 0, 15, 0, 0, + 0, 83, 86, 95, 84, 97, 114, 103, +101, 116, 0, 171, 171, 68, 88, 66, + 67, 83, 219, 12, 79, 109, 140, 127, +159, 214, 55, 101, 168, 193, 132, 87, + 74, 1, 0, 0, 0, 124, 10, 0, + 0, 6, 0, 0, 0, 56, 0, 0, + 0, 224, 2, 0, 0, 64, 7, 0, + 0, 188, 7, 0, 0, 120, 9, 0, + 0, 220, 9, 0, 0, 65, 111, 110, + 57, 160, 2, 0, 0, 160, 2, 0, + 0, 0, 2, 254, 255, 108, 2, 0, + 0, 52, 0, 0, 0, 1, 0, 36, + 0, 0, 0, 48, 0, 0, 0, 48, + 0, 0, 0, 36, 0, 1, 0, 48, + 0, 0, 0, 0, 0, 13, 0, 1, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1, 2, 254, 255, 81, 0, 0, + 5, 0, 0, 15, 160, 0, 0, 125, + 67, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 81, 0, 0, + 5, 14, 0, 15, 160, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 128, + 63, 0, 0, 0, 63, 81, 0, 0, + 5, 15, 0, 15, 160, 0, 0, 128, + 63, 0, 0, 128, 191, 0, 0, 0, + 0, 0, 0, 0, 0, 48, 0, 0, + 5, 0, 0, 15, 240, 253, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 31, 0, 0, + 2, 5, 0, 0, 128, 0, 0, 15, +144, 31, 0, 0, 2, 5, 0, 1, +128, 1, 0, 15, 144, 31, 0, 0, + 2, 5, 0, 2, 128, 2, 0, 15, +144, 9, 0, 0, 3, 0, 0, 1, +128, 1, 0, 228, 160, 1, 0, 228, +144, 9, 0, 0, 3, 0, 0, 2, +128, 2, 0, 228, 160, 1, 0, 228, +144, 9, 0, 0, 3, 0, 0, 4, +128, 3, 0, 228, 160, 1, 0, 228, +144, 9, 0, 0, 3, 0, 0, 8, +128, 4, 0, 228, 160, 1, 0, 228, +144, 2, 0, 0, 3, 1, 0, 7, +128, 0, 0, 228, 129, 12, 0, 228, +160, 1, 0, 0, 2, 2, 0, 7, +128, 14, 0, 85, 160, 1, 0, 0, + 2, 1, 0, 8, 128, 14, 0, 85, +160, 38, 0, 0, 1, 0, 0, 228, +240, 45, 0, 3, 2, 1, 0, 255, +128, 14, 0, 170, 160, 2, 0, 0, + 3, 1, 0, 8, 128, 1, 0, 255, +128, 14, 0, 170, 160, 1, 0, 0, + 2, 2, 0, 7, 128, 1, 0, 228, +128, 39, 0, 0, 0, 1, 0, 0, + 2, 1, 0, 7, 224, 2, 0, 228, +128, 2, 0, 0, 3, 1, 0, 7, +128, 0, 0, 228, 129, 13, 0, 228, +160, 1, 0, 0, 2, 2, 0, 7, +128, 14, 0, 85, 160, 1, 0, 0, + 2, 1, 0, 8, 128, 14, 0, 85, +160, 38, 0, 0, 1, 0, 0, 228, +240, 45, 0, 3, 2, 1, 0, 255, +128, 14, 0, 170, 160, 2, 0, 0, + 3, 1, 0, 8, 128, 1, 0, 255, +128, 14, 0, 170, 160, 1, 0, 0, + 2, 2, 0, 7, 128, 1, 0, 228, +128, 39, 0, 0, 0, 1, 0, 0, + 2, 2, 0, 7, 224, 2, 0, 228, +128, 8, 0, 0, 3, 0, 0, 1, +224, 5, 0, 228, 160, 0, 0, 228, +144, 8, 0, 0, 3, 0, 0, 2, +224, 6, 0, 228, 160, 0, 0, 228, +144, 8, 0, 0, 3, 0, 0, 4, +224, 7, 0, 228, 160, 0, 0, 228, +144, 9, 0, 0, 3, 1, 0, 1, +128, 8, 0, 228, 160, 0, 0, 228, +128, 9, 0, 0, 3, 1, 0, 4, +128, 9, 0, 228, 160, 0, 0, 228, +128, 9, 0, 0, 3, 1, 0, 8, +128, 10, 0, 228, 160, 0, 0, 228, +128, 9, 0, 0, 3, 0, 0, 1, +128, 11, 0, 228, 160, 0, 0, 228, +128, 1, 0, 0, 2, 1, 0, 2, +128, 1, 0, 170, 129, 2, 0, 0, + 3, 0, 0, 2, 128, 0, 0, 0, +128, 1, 0, 255, 128, 5, 0, 0, + 3, 0, 0, 4, 192, 0, 0, 85, +128, 14, 0, 255, 160, 4, 0, 0, + 4, 0, 0, 3, 192, 0, 0, 0, +128, 0, 0, 228, 160, 1, 0, 228, +128, 4, 0, 0, 4, 3, 0, 3, +224, 2, 0, 228, 144, 15, 0, 228, +160, 15, 0, 226, 160, 1, 0, 0, + 2, 0, 0, 8, 192, 0, 0, 0, +128, 255, 255, 0, 0, 83, 72, 68, + 82, 88, 4, 0, 0, 64, 0, 1, + 0, 22, 1, 0, 0, 89, 0, 0, + 4, 70, 142, 32, 0, 0, 0, 0, + 0, 13, 0, 0, 0, 95, 0, 0, + 3, 114, 16, 16, 0, 0, 0, 0, + 0, 95, 0, 0, 3, 242, 16, 16, + 0, 1, 0, 0, 0, 95, 0, 0, + 3, 50, 16, 16, 0, 2, 0, 0, + 0, 101, 0, 0, 3, 114, 32, 16, + 0, 0, 0, 0, 0, 101, 0, 0, + 3, 114, 32, 16, 0, 1, 0, 0, + 0, 101, 0, 0, 3, 114, 32, 16, + 0, 2, 0, 0, 0, 101, 0, 0, + 3, 50, 32, 16, 0, 3, 0, 0, + 0, 103, 0, 0, 4, 242, 32, 16, + 0, 4, 0, 0, 0, 1, 0, 0, + 0, 104, 0, 0, 2, 3, 0, 0, + 0, 105, 0, 0, 4, 0, 0, 0, + 0, 1, 0, 0, 0, 4, 0, 0, + 0, 105, 0, 0, 4, 1, 0, 0, + 0, 1, 0, 0, 0, 4, 0, 0, + 0, 54, 0, 0, 9, 114, 48, 32, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 2, 64, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 54, 0, 0, + 9, 114, 48, 32, 0, 1, 0, 0, + 0, 0, 0, 0, 0, 2, 64, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 17, 0, 0, 8, 18, 0, 16, + 0, 0, 0, 0, 0, 70, 142, 32, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 70, 30, 16, 0, 1, 0, 0, + 0, 17, 0, 0, 8, 34, 0, 16, + 0, 0, 0, 0, 0, 70, 142, 32, + 0, 0, 0, 0, 0, 1, 0, 0, + 0, 70, 30, 16, 0, 1, 0, 0, + 0, 17, 0, 0, 8, 66, 0, 16, + 0, 0, 0, 0, 0, 70, 142, 32, + 0, 0, 0, 0, 0, 2, 0, 0, + 0, 70, 30, 16, 0, 1, 0, 0, + 0, 17, 0, 0, 8, 130, 0, 16, + 0, 0, 0, 0, 0, 70, 142, 32, + 0, 0, 0, 0, 0, 3, 0, 0, + 0, 70, 30, 16, 0, 1, 0, 0, + 0, 0, 0, 0, 9, 114, 0, 16, + 0, 1, 0, 0, 0, 70, 2, 16, +128, 65, 0, 0, 0, 0, 0, 0, + 0, 70, 130, 32, 0, 0, 0, 0, + 0, 11, 0, 0, 0, 54, 0, 0, + 5, 130, 0, 16, 0, 1, 0, 0, + 0, 1, 64, 0, 0, 0, 0, 0, + 0, 48, 0, 0, 1, 33, 0, 0, + 7, 18, 0, 16, 0, 2, 0, 0, + 0, 58, 0, 16, 0, 1, 0, 0, + 0, 1, 64, 0, 0, 1, 0, 0, + 0, 3, 0, 4, 3, 10, 0, 16, + 0, 2, 0, 0, 0, 54, 0, 0, + 6, 114, 48, 32, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 70, 2, 16, + 0, 1, 0, 0, 0, 30, 0, 0, + 7, 130, 0, 16, 0, 1, 0, 0, + 0, 58, 0, 16, 0, 1, 0, 0, + 0, 1, 64, 0, 0, 1, 0, 0, + 0, 22, 0, 0, 1, 0, 0, 0, + 9, 114, 0, 16, 0, 1, 0, 0, + 0, 70, 2, 16, 128, 65, 0, 0, + 0, 0, 0, 0, 0, 70, 130, 32, + 0, 0, 0, 0, 0, 12, 0, 0, + 0, 54, 0, 0, 5, 130, 0, 16, + 0, 1, 0, 0, 0, 1, 64, 0, + 0, 0, 0, 0, 0, 48, 0, 0, + 1, 33, 0, 0, 7, 18, 0, 16, + 0, 2, 0, 0, 0, 58, 0, 16, + 0, 1, 0, 0, 0, 1, 64, 0, + 0, 1, 0, 0, 0, 3, 0, 4, + 3, 10, 0, 16, 0, 2, 0, 0, + 0, 54, 0, 0, 6, 114, 48, 32, + 0, 1, 0, 0, 0, 0, 0, 0, + 0, 70, 2, 16, 0, 1, 0, 0, + 0, 30, 0, 0, 7, 130, 0, 16, + 0, 1, 0, 0, 0, 58, 0, 16, + 0, 1, 0, 0, 0, 1, 64, 0, + 0, 1, 0, 0, 0, 22, 0, 0, + 1, 16, 0, 0, 8, 18, 32, 16, + 0, 0, 0, 0, 0, 70, 130, 32, + 0, 0, 0, 0, 0, 4, 0, 0, + 0, 70, 18, 16, 0, 0, 0, 0, + 0, 16, 0, 0, 8, 34, 32, 16, + 0, 0, 0, 0, 0, 70, 130, 32, + 0, 0, 0, 0, 0, 5, 0, 0, + 0, 70, 18, 16, 0, 0, 0, 0, + 0, 16, 0, 0, 8, 66, 32, 16, + 0, 0, 0, 0, 0, 70, 130, 32, + 0, 0, 0, 0, 0, 6, 0, 0, + 0, 70, 18, 16, 0, 0, 0, 0, + 0, 17, 0, 0, 8, 18, 32, 16, + 0, 4, 0, 0, 0, 70, 142, 32, + 0, 0, 0, 0, 0, 7, 0, 0, + 0, 70, 14, 16, 0, 0, 0, 0, + 0, 17, 0, 0, 8, 18, 0, 16, + 0, 1, 0, 0, 0, 70, 142, 32, + 0, 0, 0, 0, 0, 8, 0, 0, + 0, 70, 14, 16, 0, 0, 0, 0, + 0, 17, 0, 0, 8, 34, 0, 16, + 0, 1, 0, 0, 0, 70, 142, 32, + 0, 0, 0, 0, 0, 9, 0, 0, + 0, 70, 14, 16, 0, 0, 0, 0, + 0, 17, 0, 0, 8, 18, 0, 16, + 0, 0, 0, 0, 0, 70, 142, 32, + 0, 0, 0, 0, 0, 10, 0, 0, + 0, 70, 14, 16, 0, 0, 0, 0, + 0, 54, 0, 0, 6, 34, 32, 16, + 0, 4, 0, 0, 0, 10, 0, 16, +128, 65, 0, 0, 0, 1, 0, 0, + 0, 0, 0, 0, 7, 34, 0, 16, + 0, 0, 0, 0, 0, 10, 0, 16, + 0, 0, 0, 0, 0, 26, 0, 16, + 0, 1, 0, 0, 0, 56, 0, 0, + 7, 66, 32, 16, 0, 4, 0, 0, + 0, 26, 0, 16, 0, 0, 0, 0, + 0, 1, 64, 0, 0, 0, 0, 0, + 63, 54, 0, 0, 6, 114, 32, 16, + 0, 1, 0, 0, 0, 70, 50, 32, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 54, 0, 0, 6, 114, 32, 16, + 0, 2, 0, 0, 0, 70, 50, 32, + 0, 1, 0, 0, 0, 0, 0, 0, + 0, 54, 0, 0, 5, 130, 32, 16, + 0, 4, 0, 0, 0, 10, 0, 16, + 0, 0, 0, 0, 0, 50, 0, 0, + 15, 50, 32, 16, 0, 3, 0, 0, + 0, 70, 16, 16, 0, 2, 0, 0, + 0, 2, 64, 0, 0, 0, 0, 128, + 63, 0, 0, 128, 191, 0, 0, 0, + 0, 0, 0, 0, 0, 2, 64, 0, + 0, 0, 0, 0, 0, 0, 0, 128, + 63, 0, 0, 0, 0, 0, 0, 0, + 0, 62, 0, 0, 1, 83, 84, 65, + 84, 116, 0, 0, 0, 37, 0, 0, + 0, 3, 0, 0, 0, 0, 0, 0, + 0, 8, 0, 0, 0, 17, 0, 0, + 0, 4, 0, 0, 0, 0, 0, 0, + 0, 1, 0, 0, 0, 2, 0, 0, + 0, 0, 0, 0, 0, 2, 0, 0, + 0, 6, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 3, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 82, 68, 69, 70, 180, 1, 0, + 0, 1, 0, 0, 0, 72, 0, 0, + 0, 1, 0, 0, 0, 28, 0, 0, + 0, 0, 4, 254, 255, 0, 65, 0, + 0, 128, 1, 0, 0, 60, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 0, 0, + 0, 0, 0, 0, 0, 36, 71, 108, +111, 98, 97, 108, 115, 0, 171, 171, +171, 60, 0, 0, 0, 5, 0, 0, + 0, 96, 0, 0, 0, 208, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 216, 0, 0, 0, 0, 0, 0, + 0, 64, 0, 0, 0, 2, 0, 0, + 0, 232, 0, 0, 0, 0, 0, 0, + 0, 248, 0, 0, 0, 64, 0, 0, + 0, 44, 0, 0, 0, 2, 0, 0, + 0, 12, 1, 0, 0, 0, 0, 0, + 0, 28, 1, 0, 0, 112, 0, 0, + 0, 64, 0, 0, 0, 2, 0, 0, + 0, 232, 0, 0, 0, 0, 0, 0, + 0, 40, 1, 0, 0, 176, 0, 0, + 0, 12, 0, 0, 0, 2, 0, 0, + 0, 68, 1, 0, 0, 0, 0, 0, + 0, 84, 1, 0, 0, 192, 0, 0, + 0, 12, 0, 0, 0, 2, 0, 0, + 0, 112, 1, 0, 0, 0, 0, 0, + 0, 95, 67, 67, 95, 77, 86, 77, + 97, 116, 114, 105, 120, 0, 171, 171, +171, 3, 0, 3, 0, 4, 0, 4, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 95, 67, 67, 95, 78, 111, 114, +109, 97, 108, 77, 97, 116, 114, 105, +120, 0, 171, 171, 171, 3, 0, 3, + 0, 3, 0, 3, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 95, 67, 67, + 95, 80, 77, 97, 116, 114, 105, 120, + 0, 95, 117, 95, 80, 111, 105, 110, +116, 76, 105, 103, 104, 116, 83, 111, +117, 114, 99, 101, 80, 111, 115, 105, +116, 105, 111, 110, 0, 1, 0, 3, + 0, 1, 0, 3, 0, 1, 0, 0, + 0, 0, 0, 0, 0, 95, 117, 95, + 83, 112, 111, 116, 76, 105, 103, 104, +116, 83, 111, 117, 114, 99, 101, 80, +111, 115, 105, 116, 105, 111, 110, 0, +171, 1, 0, 3, 0, 1, 0, 3, + 0, 1, 0, 0, 0, 0, 0, 0, + 0, 77, 105, 99, 114, 111, 115, 111, +102, 116, 32, 40, 82, 41, 32, 72, + 76, 83, 76, 32, 83, 104, 97, 100, +101, 114, 32, 67, 111, 109, 112, 105, +108, 101, 114, 32, 54, 46, 51, 46, + 57, 54, 48, 48, 46, 49, 55, 52, + 49, 53, 0, 171, 171, 73, 83, 71, + 78, 92, 0, 0, 0, 3, 0, 0, + 0, 8, 0, 0, 0, 80, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 3, 0, 0, 0, 0, 0, 0, + 0, 7, 7, 0, 0, 80, 0, 0, + 0, 1, 0, 0, 0, 0, 0, 0, + 0, 3, 0, 0, 0, 1, 0, 0, + 0, 15, 15, 0, 0, 80, 0, 0, + 0, 2, 0, 0, 0, 0, 0, 0, + 0, 3, 0, 0, 0, 2, 0, 0, + 0, 3, 3, 0, 0, 84, 69, 88, + 67, 79, 79, 82, 68, 0, 171, 171, +171, 79, 83, 71, 78, 152, 0, 0, + 0, 5, 0, 0, 0, 8, 0, 0, + 0, 128, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 3, 0, 0, + 0, 0, 0, 0, 0, 7, 8, 0, + 0, 128, 0, 0, 0, 1, 0, 0, + 0, 0, 0, 0, 0, 3, 0, 0, + 0, 1, 0, 0, 0, 7, 8, 0, + 0, 128, 0, 0, 0, 2, 0, 0, + 0, 0, 0, 0, 0, 3, 0, 0, + 0, 2, 0, 0, 0, 7, 8, 0, + 0, 128, 0, 0, 0, 3, 0, 0, + 0, 0, 0, 0, 0, 3, 0, 0, + 0, 3, 0, 0, 0, 3, 12, 0, + 0, 137, 0, 0, 0, 0, 0, 0, + 0, 1, 0, 0, 0, 3, 0, 0, + 0, 4, 0, 0, 0, 15, 0, 0, + 0, 84, 69, 88, 67, 79, 79, 82, + 68, 0, 83, 86, 95, 80, 111, 115, +105, 116, 105, 111, 110, 0, 171, 171, +171, +}; + const unsigned char s_78250E25D1929D4A842050738140787BE42541C6[] = { 166, 147, 0, 0, 142, 9, 2, 1, @@ -8179,1070 +9258,6 @@ const unsigned char s_92BE325B516F887D2C928EDE20ADF428DB01C038[] = { 111, 110, 0, 171, 171, 171, }; -const unsigned char s_93D31E1668075AE4941C53441D7A9D0DE8F76331[] = { - -166, 147, 0, 0, 142, 9, 2, 1, - 0, 128, 0, 0, 82, 139, 0, 0, - 10, 0, 0, 0, 97, 95, 112, 111, -115, 105, 116, 105, 111, 110, 1, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 255, 255, 255, 255, 80, 139, - 0, 0, 10, 0, 0, 0, 97, 95, -116, 101, 120, 67, 111, 111, 114, 100, - 2, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 255, 255, 255, 255, - 0, 0, 0, 0, 0, 0, 0, 0, -255, 255, 255, 255, 0, 0, 0, 0, - 0, 0, 0, 0, 255, 255, 255, 255, - 81, 139, 0, 0, 8, 0, 0, 0, - 97, 95, 110, 111, 114, 109, 97, 108, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 255, 255, 255, 255, - 0, 0, 0, 0, 0, 0, 0, 0, -255, 255, 255, 255, 0, 0, 0, 0, - 0, 0, 0, 0, 255, 255, 255, 255, - 0, 0, 0, 0, 0, 0, 0, 0, -255, 255, 255, 255, 0, 0, 0, 0, - 0, 0, 0, 0, 255, 255, 255, 255, - 0, 0, 0, 0, 0, 0, 0, 0, -255, 255, 255, 255, 0, 0, 0, 0, - 0, 0, 0, 0, 255, 255, 255, 255, - 0, 0, 0, 0, 0, 0, 0, 0, -255, 255, 255, 255, 0, 0, 0, 0, - 0, 0, 0, 0, 255, 255, 255, 255, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 16, 0, 0, 0, 92, 139, 0, - 0, 241, 141, 0, 0, 11, 0, 0, - 0, 67, 67, 95, 77, 86, 77, 97, -116, 114, 105, 120, 0, 0, 0, 0, -255, 255, 255, 255, 0, 0, 0, 0, - 4, 0, 0, 0, 91, 139, 0, 0, -241, 141, 0, 0, 15, 0, 0, 0, - 67, 67, 95, 78, 111, 114, 109, 97, -108, 77, 97, 116, 114, 105, 120, 0, - 0, 0, 0, 255, 255, 255, 255, 4, - 0, 0, 0, 3, 0, 0, 0, 92, -139, 0, 0, 241, 141, 0, 0, 10, - 0, 0, 0, 67, 67, 95, 80, 77, - 97, 116, 114, 105, 120, 0, 0, 0, - 0, 255, 255, 255, 255, 7, 0, 0, - 0, 4, 0, 0, 0, 81, 139, 0, - 0, 241, 141, 0, 0, 26, 0, 0, - 0, 117, 95, 80, 111, 105, 110, 116, - 76, 105, 103, 104, 116, 83, 111, 117, -114, 99, 101, 80, 111, 115, 105, 116, -105, 111, 110, 1, 0, 0, 0, 255, -255, 255, 255, 11, 0, 0, 0, 1, - 0, 0, 0, 81, 139, 0, 0, 241, -141, 0, 0, 25, 0, 0, 0, 117, - 95, 83, 112, 111, 116, 76, 105, 103, -104, 116, 83, 111, 117, 114, 99, 101, - 80, 111, 115, 105, 116, 105, 111, 110, - 1, 0, 0, 0, 255, 255, 255, 255, - 12, 0, 0, 0, 1, 0, 0, 0, - 81, 139, 0, 0, 241, 141, 0, 0, - 25, 0, 0, 0, 117, 95, 65, 109, - 98, 105, 101, 110, 116, 76, 105, 103, -104, 116, 83, 111, 117, 114, 99, 101, - 67, 111, 108, 111, 114, 0, 0, 0, - 0, 0, 0, 0, 0, 255, 255, 255, -255, 1, 0, 0, 0, 81, 139, 0, - 0, 241, 141, 0, 0, 21, 0, 0, - 0, 117, 95, 68, 105, 114, 76, 105, -103, 104, 116, 83, 111, 117, 114, 99, -101, 67, 111, 108, 111, 114, 1, 0, - 0, 0, 1, 0, 0, 0, 255, 255, -255, 255, 1, 0, 0, 0, 81, 139, - 0, 0, 241, 141, 0, 0, 25, 0, - 0, 0, 117, 95, 68, 105, 114, 76, -105, 103, 104, 116, 83, 111, 117, 114, - 99, 101, 68, 105, 114, 101, 99, 116, -105, 111, 110, 1, 0, 0, 0, 2, - 0, 0, 0, 255, 255, 255, 255, 1, - 0, 0, 0, 81, 139, 0, 0, 241, -141, 0, 0, 23, 0, 0, 0, 117, - 95, 80, 111, 105, 110, 116, 76, 105, -103, 104, 116, 83, 111, 117, 114, 99, -101, 67, 111, 108, 111, 114, 1, 0, - 0, 0, 3, 0, 0, 0, 255, 255, -255, 255, 1, 0, 0, 0, 6, 20, - 0, 0, 241, 141, 0, 0, 30, 0, - 0, 0, 117, 95, 80, 111, 105, 110, -116, 76, 105, 103, 104, 116, 83, 111, -117, 114, 99, 101, 82, 97, 110, 103, -101, 73, 110, 118, 101, 114, 115, 101, - 1, 0, 0, 0, 4, 0, 0, 0, -255, 255, 255, 255, 1, 0, 0, 0, - 81, 139, 0, 0, 241, 141, 0, 0, - 22, 0, 0, 0, 117, 95, 83, 112, -111, 116, 76, 105, 103, 104, 116, 83, -111, 117, 114, 99, 101, 67, 111, 108, -111, 114, 1, 0, 0, 0, 5, 0, - 0, 0, 255, 255, 255, 255, 1, 0, - 0, 0, 81, 139, 0, 0, 241, 141, - 0, 0, 26, 0, 0, 0, 117, 95, - 83, 112, 111, 116, 76, 105, 103, 104, -116, 83, 111, 117, 114, 99, 101, 68, -105, 114, 101, 99, 116, 105, 111, 110, - 1, 0, 0, 0, 6, 0, 0, 0, -255, 255, 255, 255, 1, 0, 0, 0, - 6, 20, 0, 0, 241, 141, 0, 0, - 30, 0, 0, 0, 117, 95, 83, 112, -111, 116, 76, 105, 103, 104, 116, 83, -111, 117, 114, 99, 101, 73, 110, 110, -101, 114, 65, 110, 103, 108, 101, 67, -111, 115, 1, 0, 0, 0, 7, 0, - 0, 0, 255, 255, 255, 255, 1, 0, - 0, 0, 6, 20, 0, 0, 241, 141, - 0, 0, 30, 0, 0, 0, 117, 95, - 83, 112, 111, 116, 76, 105, 103, 104, -116, 83, 111, 117, 114, 99, 101, 79, -117, 116, 101, 114, 65, 110, 103, 108, -101, 67, 111, 115, 1, 0, 0, 0, - 8, 0, 0, 0, 255, 255, 255, 255, - 1, 0, 0, 0, 6, 20, 0, 0, -241, 141, 0, 0, 29, 0, 0, 0, -117, 95, 83, 112, 111, 116, 76, 105, -103, 104, 116, 83, 111, 117, 114, 99, -101, 82, 97, 110, 103, 101, 73, 110, -118, 101, 114, 115, 101, 1, 0, 0, - 0, 9, 0, 0, 0, 255, 255, 255, -255, 1, 0, 0, 0, 82, 139, 0, - 0, 241, 141, 0, 0, 7, 0, 0, - 0, 117, 95, 99, 111, 108, 111, 114, - 0, 0, 0, 0, 10, 0, 0, 0, -255, 255, 255, 255, 1, 0, 0, 0, - 16, 0, 0, 0, 11, 0, 0, 0, - 67, 67, 95, 77, 86, 77, 97, 116, -114, 105, 120, 0, 0, 0, 0, 0, - 0, 0, 0, 15, 0, 0, 0, 67, - 67, 95, 78, 111, 114, 109, 97, 108, - 77, 97, 116, 114, 105, 120, 0, 0, - 0, 0, 1, 0, 0, 0, 10, 0, - 0, 0, 67, 67, 95, 80, 77, 97, -116, 114, 105, 120, 0, 0, 0, 0, - 2, 0, 0, 0, 26, 0, 0, 0, -117, 95, 80, 111, 105, 110, 116, 76, -105, 103, 104, 116, 83, 111, 117, 114, - 99, 101, 80, 111, 115, 105, 116, 105, -111, 110, 0, 0, 0, 0, 3, 0, - 0, 0, 25, 0, 0, 0, 117, 95, - 83, 112, 111, 116, 76, 105, 103, 104, -116, 83, 111, 117, 114, 99, 101, 80, -111, 115, 105, 116, 105, 111, 110, 0, - 0, 0, 0, 4, 0, 0, 0, 25, - 0, 0, 0, 117, 95, 65, 109, 98, -105, 101, 110, 116, 76, 105, 103, 104, -116, 83, 111, 117, 114, 99, 101, 67, -111, 108, 111, 114, 0, 0, 0, 0, - 5, 0, 0, 0, 21, 0, 0, 0, -117, 95, 68, 105, 114, 76, 105, 103, -104, 116, 83, 111, 117, 114, 99, 101, - 67, 111, 108, 111, 114, 0, 0, 0, - 0, 6, 0, 0, 0, 25, 0, 0, - 0, 117, 95, 68, 105, 114, 76, 105, -103, 104, 116, 83, 111, 117, 114, 99, -101, 68, 105, 114, 101, 99, 116, 105, -111, 110, 0, 0, 0, 0, 7, 0, - 0, 0, 23, 0, 0, 0, 117, 95, - 80, 111, 105, 110, 116, 76, 105, 103, -104, 116, 83, 111, 117, 114, 99, 101, - 67, 111, 108, 111, 114, 0, 0, 0, - 0, 8, 0, 0, 0, 30, 0, 0, - 0, 117, 95, 80, 111, 105, 110, 116, - 76, 105, 103, 104, 116, 83, 111, 117, -114, 99, 101, 82, 97, 110, 103, 101, - 73, 110, 118, 101, 114, 115, 101, 0, - 0, 0, 0, 9, 0, 0, 0, 22, - 0, 0, 0, 117, 95, 83, 112, 111, -116, 76, 105, 103, 104, 116, 83, 111, -117, 114, 99, 101, 67, 111, 108, 111, -114, 0, 0, 0, 0, 10, 0, 0, - 0, 26, 0, 0, 0, 117, 95, 83, -112, 111, 116, 76, 105, 103, 104, 116, - 83, 111, 117, 114, 99, 101, 68, 105, -114, 101, 99, 116, 105, 111, 110, 0, - 0, 0, 0, 11, 0, 0, 0, 30, - 0, 0, 0, 117, 95, 83, 112, 111, -116, 76, 105, 103, 104, 116, 83, 111, -117, 114, 99, 101, 73, 110, 110, 101, -114, 65, 110, 103, 108, 101, 67, 111, -115, 0, 0, 0, 0, 12, 0, 0, - 0, 30, 0, 0, 0, 117, 95, 83, -112, 111, 116, 76, 105, 103, 104, 116, - 83, 111, 117, 114, 99, 101, 79, 117, -116, 101, 114, 65, 110, 103, 108, 101, - 67, 111, 115, 0, 0, 0, 0, 13, - 0, 0, 0, 29, 0, 0, 0, 117, - 95, 83, 112, 111, 116, 76, 105, 103, -104, 116, 83, 111, 117, 114, 99, 101, - 82, 97, 110, 103, 101, 73, 110, 118, -101, 114, 115, 101, 0, 0, 0, 0, - 14, 0, 0, 0, 7, 0, 0, 0, -117, 95, 99, 111, 108, 111, 114, 0, - 0, 0, 0, 15, 0, 0, 0, 200, - 15, 0, 0, 216, 9, 0, 0, 0, - 0, 0, 0, 183, 123, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 68, 88, 66, 67, 90, -212, 41, 73, 29, 78, 234, 182, 59, - 82, 222, 241, 233, 117, 182, 220, 1, - 0, 0, 0, 200, 15, 0, 0, 6, - 0, 0, 0, 56, 0, 0, 0, 80, - 3, 0, 0, 236, 10, 0, 0, 104, - 11, 0, 0, 232, 14, 0, 0, 76, - 15, 0, 0, 65, 111, 110, 57, 16, - 3, 0, 0, 16, 3, 0, 0, 0, - 2, 255, 255, 224, 2, 0, 0, 48, - 0, 0, 0, 1, 0, 36, 0, 0, - 0, 48, 0, 0, 0, 48, 0, 0, - 0, 36, 0, 0, 0, 48, 0, 0, - 0, 0, 0, 11, 0, 0, 0, 0, - 0, 0, 0, 1, 2, 255, 255, 81, - 0, 0, 5, 11, 0, 15, 160, 0, - 0, 0, 0, 0, 0, 128, 63, 0, - 0, 0, 192, 0, 0, 64, 64, 31, - 0, 0, 2, 0, 0, 0, 128, 0, - 0, 7, 176, 31, 0, 0, 2, 0, - 0, 0, 128, 1, 0, 7, 176, 31, - 0, 0, 2, 0, 0, 0, 128, 2, - 0, 7, 176, 5, 0, 0, 3, 0, - 0, 7, 128, 1, 0, 228, 176, 4, - 0, 0, 160, 8, 0, 0, 3, 0, - 0, 1, 128, 0, 0, 228, 128, 0, - 0, 228, 128, 2, 0, 0, 3, 0, - 0, 1, 128, 0, 0, 0, 129, 11, - 0, 85, 160, 11, 0, 0, 3, 1, - 0, 8, 128, 0, 0, 0, 128, 11, - 0, 0, 160, 2, 0, 0, 3, 0, - 0, 7, 128, 2, 0, 228, 160, 2, - 0, 228, 160, 36, 0, 0, 2, 1, - 0, 7, 128, 0, 0, 228, 128, 36, - 0, 0, 2, 0, 0, 7, 128, 0, - 0, 228, 176, 8, 0, 0, 3, 0, - 0, 8, 128, 0, 0, 228, 128, 1, - 0, 228, 129, 5, 0, 0, 3, 1, - 0, 7, 128, 0, 0, 255, 128, 1, - 0, 228, 160, 88, 0, 0, 4, 1, - 0, 7, 128, 0, 0, 255, 128, 1, - 0, 228, 128, 11, 0, 0, 160, 2, - 0, 0, 3, 1, 0, 7, 128, 1, - 0, 228, 128, 0, 0, 228, 160, 36, - 0, 0, 2, 2, 0, 7, 128, 1, - 0, 228, 176, 8, 0, 0, 3, 0, - 0, 8, 128, 0, 0, 228, 128, 2, - 0, 228, 128, 5, 0, 0, 3, 2, - 0, 7, 128, 0, 0, 255, 128, 3, - 0, 228, 160, 88, 0, 0, 4, 2, - 0, 7, 128, 0, 0, 255, 128, 2, - 0, 228, 128, 11, 0, 0, 160, 4, - 0, 0, 4, 1, 0, 7, 128, 2, - 0, 228, 128, 1, 0, 255, 128, 1, - 0, 228, 128, 2, 0, 0, 3, 2, - 0, 7, 128, 6, 0, 228, 160, 6, - 0, 228, 160, 36, 0, 0, 2, 3, - 0, 7, 128, 2, 0, 228, 128, 36, - 0, 0, 2, 2, 0, 7, 128, 2, - 0, 228, 176, 8, 0, 0, 3, 0, - 0, 8, 128, 3, 0, 228, 128, 2, - 0, 228, 129, 8, 0, 0, 3, 1, - 0, 8, 128, 0, 0, 228, 128, 2, - 0, 228, 128, 2, 0, 0, 3, 0, - 0, 1, 128, 0, 0, 255, 128, 8, - 0, 0, 161, 1, 0, 0, 2, 2, - 0, 1, 128, 8, 0, 0, 160, 2, - 0, 0, 3, 0, 0, 2, 128, 2, - 0, 0, 129, 7, 0, 0, 160, 6, - 0, 0, 2, 0, 0, 2, 128, 0, - 0, 85, 128, 5, 0, 0, 3, 0, - 0, 17, 128, 0, 0, 85, 128, 0, - 0, 0, 128, 4, 0, 0, 4, 0, - 0, 2, 128, 0, 0, 0, 128, 11, - 0, 170, 160, 11, 0, 255, 160, 5, - 0, 0, 3, 0, 0, 1, 128, 0, - 0, 0, 128, 0, 0, 0, 128, 5, - 0, 0, 3, 0, 0, 1, 128, 0, - 0, 0, 128, 0, 0, 85, 128, 5, - 0, 0, 3, 0, 0, 14, 128, 2, - 0, 144, 176, 9, 0, 0, 160, 8, - 0, 0, 3, 0, 0, 2, 128, 0, - 0, 249, 128, 0, 0, 249, 128, 2, - 0, 0, 3, 0, 0, 2, 128, 0, - 0, 85, 129, 11, 0, 85, 160, 5, - 0, 0, 3, 0, 0, 1, 128, 0, - 0, 0, 128, 0, 0, 85, 128, 88, - 0, 0, 4, 0, 0, 1, 128, 0, - 0, 85, 128, 0, 0, 0, 128, 11, - 0, 0, 160, 5, 0, 0, 3, 0, - 0, 14, 128, 1, 0, 255, 128, 5, - 0, 144, 160, 88, 0, 0, 4, 0, - 0, 14, 128, 1, 0, 255, 128, 0, - 0, 228, 128, 11, 0, 0, 160, 4, - 0, 0, 4, 0, 0, 7, 128, 0, - 0, 249, 128, 0, 0, 0, 128, 1, - 0, 228, 128, 1, 0, 0, 2, 0, - 0, 8, 128, 11, 0, 85, 160, 5, - 0, 0, 3, 0, 0, 15, 128, 0, - 0, 228, 128, 10, 0, 228, 160, 1, - 0, 0, 2, 0, 8, 15, 128, 0, - 0, 228, 128, 1, 0, 0, 2, 1, - 8, 15, 128, 0, 0, 228, 128, 1, - 0, 0, 2, 2, 8, 15, 128, 0, - 0, 228, 128, 1, 0, 0, 2, 3, - 8, 15, 128, 0, 0, 228, 128, 255, -255, 0, 0, 83, 72, 68, 82, 148, - 7, 0, 0, 64, 0, 0, 0, 229, - 1, 0, 0, 89, 0, 0, 4, 70, -142, 32, 0, 0, 0, 0, 0, 11, - 0, 0, 0, 98, 16, 0, 3, 114, - 16, 16, 0, 0, 0, 0, 0, 98, - 16, 0, 3, 114, 16, 16, 0, 1, - 0, 0, 0, 98, 16, 0, 3, 114, - 16, 16, 0, 2, 0, 0, 0, 101, - 0, 0, 3, 242, 32, 16, 0, 0, - 0, 0, 0, 101, 0, 0, 3, 242, - 32, 16, 0, 1, 0, 0, 0, 101, - 0, 0, 3, 242, 32, 16, 0, 2, - 0, 0, 0, 101, 0, 0, 3, 242, - 32, 16, 0, 3, 0, 0, 0, 104, - 0, 0, 2, 4, 0, 0, 0, 16, - 0, 0, 7, 18, 0, 16, 0, 0, - 0, 0, 0, 70, 18, 16, 0, 0, - 0, 0, 0, 70, 18, 16, 0, 0, - 0, 0, 0, 68, 0, 0, 5, 18, - 0, 16, 0, 0, 0, 0, 0, 10, - 0, 16, 0, 0, 0, 0, 0, 56, - 0, 0, 7, 114, 0, 16, 0, 0, - 0, 0, 0, 6, 0, 16, 0, 0, - 0, 0, 0, 70, 18, 16, 0, 0, - 0, 0, 0, 0, 0, 0, 9, 114, - 0, 16, 0, 1, 0, 0, 0, 70, -130, 32, 0, 0, 0, 0, 0, 2, - 0, 0, 0, 70, 130, 32, 0, 0, - 0, 0, 0, 2, 0, 0, 0, 16, - 0, 0, 7, 130, 0, 16, 0, 0, - 0, 0, 0, 70, 2, 16, 0, 1, - 0, 0, 0, 70, 2, 16, 0, 1, - 0, 0, 0, 68, 0, 0, 5, 130, - 0, 16, 0, 0, 0, 0, 0, 58, - 0, 16, 0, 0, 0, 0, 0, 56, - 0, 0, 7, 114, 0, 16, 0, 1, - 0, 0, 0, 246, 15, 16, 0, 0, - 0, 0, 0, 70, 2, 16, 0, 1, - 0, 0, 0, 16, 0, 0, 8, 130, - 0, 16, 0, 0, 0, 0, 0, 70, - 2, 16, 0, 0, 0, 0, 0, 70, - 2, 16, 128, 65, 0, 0, 0, 1, - 0, 0, 0, 52, 0, 0, 7, 130, - 0, 16, 0, 0, 0, 0, 0, 58, - 0, 16, 0, 0, 0, 0, 0, 1, - 64, 0, 0, 0, 0, 0, 0, 54, - 0, 0, 6, 114, 0, 16, 0, 1, - 0, 0, 0, 70, 130, 32, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 54, - 0, 0, 5, 130, 0, 16, 0, 1, - 0, 0, 0, 1, 64, 0, 0, 0, - 0, 0, 0, 48, 0, 0, 1, 33, - 0, 0, 7, 18, 0, 16, 0, 2, - 0, 0, 0, 58, 0, 16, 0, 1, - 0, 0, 0, 1, 64, 0, 0, 1, - 0, 0, 0, 3, 0, 4, 3, 10, - 0, 16, 0, 2, 0, 0, 0, 50, - 0, 0, 10, 114, 0, 16, 0, 1, - 0, 0, 0, 70, 130, 32, 0, 0, - 0, 0, 0, 1, 0, 0, 0, 246, - 15, 16, 0, 0, 0, 0, 0, 70, - 2, 16, 0, 1, 0, 0, 0, 30, - 0, 0, 7, 130, 0, 16, 0, 1, - 0, 0, 0, 58, 0, 16, 0, 1, - 0, 0, 0, 1, 64, 0, 0, 1, - 0, 0, 0, 22, 0, 0, 1, 56, - 0, 0, 8, 114, 0, 16, 0, 2, - 0, 0, 0, 70, 18, 16, 0, 1, - 0, 0, 0, 6, 128, 32, 0, 0, - 0, 0, 0, 4, 0, 0, 0, 16, - 0, 0, 7, 130, 0, 16, 0, 0, - 0, 0, 0, 70, 2, 16, 0, 2, - 0, 0, 0, 70, 2, 16, 0, 2, - 0, 0, 0, 0, 0, 0, 8, 130, - 0, 16, 0, 0, 0, 0, 0, 58, - 0, 16, 128, 65, 0, 0, 0, 0, - 0, 0, 0, 1, 64, 0, 0, 0, - 0, 128, 63, 52, 0, 0, 7, 130, - 0, 16, 0, 0, 0, 0, 0, 58, - 0, 16, 0, 0, 0, 0, 0, 1, - 64, 0, 0, 0, 0, 0, 0, 16, - 0, 0, 7, 130, 0, 16, 0, 1, - 0, 0, 0, 70, 18, 16, 0, 1, - 0, 0, 0, 70, 18, 16, 0, 1, - 0, 0, 0, 68, 0, 0, 5, 130, - 0, 16, 0, 1, 0, 0, 0, 58, - 0, 16, 0, 1, 0, 0, 0, 56, - 0, 0, 7, 114, 0, 16, 0, 2, - 0, 0, 0, 246, 15, 16, 0, 1, - 0, 0, 0, 70, 18, 16, 0, 1, - 0, 0, 0, 16, 0, 0, 7, 130, - 0, 16, 0, 1, 0, 0, 0, 70, - 2, 16, 0, 0, 0, 0, 0, 70, - 2, 16, 0, 2, 0, 0, 0, 52, - 0, 0, 7, 130, 0, 16, 0, 1, - 0, 0, 0, 58, 0, 16, 0, 1, - 0, 0, 0, 1, 64, 0, 0, 0, - 0, 0, 0, 56, 0, 0, 8, 114, - 0, 16, 0, 2, 0, 0, 0, 246, - 15, 16, 0, 1, 0, 0, 0, 70, -130, 32, 0, 0, 0, 0, 0, 3, - 0, 0, 0, 54, 0, 0, 5, 114, - 0, 16, 0, 3, 0, 0, 0, 70, - 2, 16, 0, 1, 0, 0, 0, 54, - 0, 0, 5, 130, 0, 16, 0, 1, - 0, 0, 0, 1, 64, 0, 0, 0, - 0, 0, 0, 48, 0, 0, 1, 33, - 0, 0, 7, 130, 0, 16, 0, 2, - 0, 0, 0, 58, 0, 16, 0, 1, - 0, 0, 0, 1, 64, 0, 0, 1, - 0, 0, 0, 3, 0, 4, 3, 58, - 0, 16, 0, 2, 0, 0, 0, 50, - 0, 0, 9, 114, 0, 16, 0, 3, - 0, 0, 0, 70, 2, 16, 0, 2, - 0, 0, 0, 246, 15, 16, 0, 0, - 0, 0, 0, 70, 2, 16, 0, 3, - 0, 0, 0, 30, 0, 0, 7, 130, - 0, 16, 0, 1, 0, 0, 0, 58, - 0, 16, 0, 1, 0, 0, 0, 1, - 64, 0, 0, 1, 0, 0, 0, 22, - 0, 0, 1, 56, 0, 0, 8, 114, - 0, 16, 0, 1, 0, 0, 0, 70, - 18, 16, 0, 2, 0, 0, 0, 6, -128, 32, 0, 0, 0, 0, 0, 9, - 0, 0, 0, 16, 0, 0, 7, 130, - 0, 16, 0, 0, 0, 0, 0, 70, - 2, 16, 0, 1, 0, 0, 0, 70, - 2, 16, 0, 1, 0, 0, 0, 0, - 0, 0, 8, 130, 0, 16, 0, 0, - 0, 0, 0, 58, 0, 16, 128, 65, - 0, 0, 0, 0, 0, 0, 0, 1, - 64, 0, 0, 0, 0, 128, 63, 52, - 0, 0, 7, 130, 0, 16, 0, 0, - 0, 0, 0, 58, 0, 16, 0, 0, - 0, 0, 0, 1, 64, 0, 0, 0, - 0, 0, 0, 16, 0, 0, 7, 18, - 0, 16, 0, 1, 0, 0, 0, 70, - 18, 16, 0, 2, 0, 0, 0, 70, - 18, 16, 0, 2, 0, 0, 0, 68, - 0, 0, 5, 18, 0, 16, 0, 1, - 0, 0, 0, 10, 0, 16, 0, 1, - 0, 0, 0, 56, 0, 0, 7, 114, - 0, 16, 0, 1, 0, 0, 0, 6, - 0, 16, 0, 1, 0, 0, 0, 70, - 18, 16, 0, 2, 0, 0, 0, 0, - 0, 0, 9, 114, 0, 16, 0, 2, - 0, 0, 0, 70, 130, 32, 0, 0, - 0, 0, 0, 6, 0, 0, 0, 70, -130, 32, 0, 0, 0, 0, 0, 6, - 0, 0, 0, 16, 0, 0, 7, 130, - 0, 16, 0, 1, 0, 0, 0, 70, - 2, 16, 0, 2, 0, 0, 0, 70, - 2, 16, 0, 2, 0, 0, 0, 68, - 0, 0, 5, 130, 0, 16, 0, 1, - 0, 0, 0, 58, 0, 16, 0, 1, - 0, 0, 0, 56, 0, 0, 7, 114, - 0, 16, 0, 2, 0, 0, 0, 246, - 15, 16, 0, 1, 0, 0, 0, 70, - 2, 16, 0, 2, 0, 0, 0, 16, - 0, 0, 8, 130, 0, 16, 0, 1, - 0, 0, 0, 70, 2, 16, 0, 2, - 0, 0, 0, 70, 2, 16, 128, 65, - 0, 0, 0, 1, 0, 0, 0, 0, - 0, 0, 10, 18, 0, 16, 0, 2, - 0, 0, 0, 10, 128, 32, 0, 0, - 0, 0, 0, 7, 0, 0, 0, 10, -128, 32, 128, 65, 0, 0, 0, 0, - 0, 0, 0, 8, 0, 0, 0, 0, - 0, 0, 9, 130, 0, 16, 0, 1, - 0, 0, 0, 58, 0, 16, 0, 1, - 0, 0, 0, 10, 128, 32, 128, 65, - 0, 0, 0, 0, 0, 0, 0, 8, - 0, 0, 0, 14, 0, 0, 10, 18, - 0, 16, 0, 2, 0, 0, 0, 2, - 64, 0, 0, 0, 0, 128, 63, 0, - 0, 128, 63, 0, 0, 128, 63, 0, - 0, 128, 63, 10, 0, 16, 0, 2, - 0, 0, 0, 56, 32, 0, 7, 130, - 0, 16, 0, 1, 0, 0, 0, 58, - 0, 16, 0, 1, 0, 0, 0, 10, - 0, 16, 0, 2, 0, 0, 0, 50, - 0, 0, 9, 18, 0, 16, 0, 2, - 0, 0, 0, 58, 0, 16, 0, 1, - 0, 0, 0, 1, 64, 0, 0, 0, - 0, 0, 192, 1, 64, 0, 0, 0, - 0, 64, 64, 56, 0, 0, 7, 130, - 0, 16, 0, 1, 0, 0, 0, 58, - 0, 16, 0, 1, 0, 0, 0, 58, - 0, 16, 0, 1, 0, 0, 0, 56, - 0, 0, 7, 130, 0, 16, 0, 1, - 0, 0, 0, 58, 0, 16, 0, 1, - 0, 0, 0, 10, 0, 16, 0, 2, - 0, 0, 0, 56, 0, 0, 7, 130, - 0, 16, 0, 0, 0, 0, 0, 58, - 0, 16, 0, 0, 0, 0, 0, 58, - 0, 16, 0, 1, 0, 0, 0, 16, - 0, 0, 7, 18, 0, 16, 0, 0, - 0, 0, 0, 70, 2, 16, 0, 0, - 0, 0, 0, 70, 2, 16, 0, 1, - 0, 0, 0, 52, 0, 0, 7, 18, - 0, 16, 0, 0, 0, 0, 0, 10, - 0, 16, 0, 0, 0, 0, 0, 1, - 64, 0, 0, 0, 0, 0, 0, 56, - 0, 0, 8, 114, 0, 16, 0, 0, - 0, 0, 0, 6, 0, 16, 0, 0, - 0, 0, 0, 70, 130, 32, 0, 0, - 0, 0, 0, 5, 0, 0, 0, 54, - 0, 0, 5, 114, 0, 16, 0, 1, - 0, 0, 0, 70, 2, 16, 0, 3, - 0, 0, 0, 54, 0, 0, 5, 18, - 0, 16, 0, 2, 0, 0, 0, 1, - 64, 0, 0, 0, 0, 0, 0, 48, - 0, 0, 1, 33, 0, 0, 7, 34, - 0, 16, 0, 2, 0, 0, 0, 10, - 0, 16, 0, 2, 0, 0, 0, 1, - 64, 0, 0, 1, 0, 0, 0, 3, - 0, 4, 3, 26, 0, 16, 0, 2, - 0, 0, 0, 50, 0, 0, 9, 114, - 0, 16, 0, 1, 0, 0, 0, 70, - 2, 16, 0, 0, 0, 0, 0, 246, - 15, 16, 0, 0, 0, 0, 0, 70, - 2, 16, 0, 1, 0, 0, 0, 30, - 0, 0, 7, 18, 0, 16, 0, 2, - 0, 0, 0, 10, 0, 16, 0, 2, - 0, 0, 0, 1, 64, 0, 0, 1, - 0, 0, 0, 22, 0, 0, 1, 54, - 0, 0, 5, 130, 0, 16, 0, 1, - 0, 0, 0, 1, 64, 0, 0, 0, - 0, 128, 63, 56, 0, 0, 8, 242, - 0, 16, 0, 0, 0, 0, 0, 70, - 14, 16, 0, 1, 0, 0, 0, 70, -142, 32, 0, 0, 0, 0, 0, 10, - 0, 0, 0, 54, 0, 0, 5, 242, - 32, 16, 0, 0, 0, 0, 0, 70, - 14, 16, 0, 0, 0, 0, 0, 54, - 0, 0, 5, 242, 32, 16, 0, 1, - 0, 0, 0, 70, 14, 16, 0, 0, - 0, 0, 0, 54, 0, 0, 5, 242, - 32, 16, 0, 2, 0, 0, 0, 70, - 14, 16, 0, 0, 0, 0, 0, 54, - 0, 0, 5, 242, 32, 16, 0, 3, - 0, 0, 0, 70, 14, 16, 0, 0, - 0, 0, 0, 62, 0, 0, 1, 83, - 84, 65, 84, 116, 0, 0, 0, 73, - 0, 0, 0, 4, 0, 0, 0, 0, - 0, 0, 0, 7, 0, 0, 0, 46, - 0, 0, 0, 6, 0, 0, 0, 0, - 0, 0, 0, 1, 0, 0, 0, 3, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 11, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 82, 68, 69, 70, 120, - 3, 0, 0, 1, 0, 0, 0, 72, - 0, 0, 0, 1, 0, 0, 0, 28, - 0, 0, 0, 0, 4, 255, 255, 0, - 65, 0, 0, 68, 3, 0, 0, 60, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1, - 0, 0, 0, 0, 0, 0, 0, 36, - 71, 108, 111, 98, 97, 108, 115, 0, -171, 171, 171, 60, 0, 0, 0, 11, - 0, 0, 0, 96, 0, 0, 0, 176, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 104, 1, 0, 0, 0, - 0, 0, 0, 12, 0, 0, 0, 2, - 0, 0, 0, 132, 1, 0, 0, 0, - 0, 0, 0, 148, 1, 0, 0, 16, - 0, 0, 0, 12, 0, 0, 0, 2, - 0, 0, 0, 172, 1, 0, 0, 0, - 0, 0, 0, 188, 1, 0, 0, 32, - 0, 0, 0, 12, 0, 0, 0, 2, - 0, 0, 0, 216, 1, 0, 0, 0, - 0, 0, 0, 232, 1, 0, 0, 48, - 0, 0, 0, 12, 0, 0, 0, 2, - 0, 0, 0, 4, 2, 0, 0, 0, - 0, 0, 0, 20, 2, 0, 0, 64, - 0, 0, 0, 4, 0, 0, 0, 2, - 0, 0, 0, 52, 2, 0, 0, 0, - 0, 0, 0, 68, 2, 0, 0, 80, - 0, 0, 0, 12, 0, 0, 0, 2, - 0, 0, 0, 92, 2, 0, 0, 0, - 0, 0, 0, 108, 2, 0, 0, 96, - 0, 0, 0, 12, 0, 0, 0, 2, - 0, 0, 0, 136, 2, 0, 0, 0, - 0, 0, 0, 152, 2, 0, 0, 112, - 0, 0, 0, 4, 0, 0, 0, 2, - 0, 0, 0, 184, 2, 0, 0, 0, - 0, 0, 0, 200, 2, 0, 0, 128, - 0, 0, 0, 4, 0, 0, 0, 2, - 0, 0, 0, 232, 2, 0, 0, 0, - 0, 0, 0, 248, 2, 0, 0, 144, - 0, 0, 0, 4, 0, 0, 0, 2, - 0, 0, 0, 24, 3, 0, 0, 0, - 0, 0, 0, 40, 3, 0, 0, 160, - 0, 0, 0, 16, 0, 0, 0, 2, - 0, 0, 0, 52, 3, 0, 0, 0, - 0, 0, 0, 95, 117, 95, 65, 109, - 98, 105, 101, 110, 116, 76, 105, 103, -104, 116, 83, 111, 117, 114, 99, 101, - 67, 111, 108, 111, 114, 0, 171, 1, - 0, 3, 0, 1, 0, 3, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 95, -117, 95, 68, 105, 114, 76, 105, 103, -104, 116, 83, 111, 117, 114, 99, 101, - 67, 111, 108, 111, 114, 0, 171, 1, - 0, 3, 0, 1, 0, 3, 0, 1, - 0, 0, 0, 0, 0, 0, 0, 95, -117, 95, 68, 105, 114, 76, 105, 103, -104, 116, 83, 111, 117, 114, 99, 101, - 68, 105, 114, 101, 99, 116, 105, 111, -110, 0, 171, 1, 0, 3, 0, 1, - 0, 3, 0, 1, 0, 0, 0, 0, - 0, 0, 0, 95, 117, 95, 80, 111, -105, 110, 116, 76, 105, 103, 104, 116, - 83, 111, 117, 114, 99, 101, 67, 111, -108, 111, 114, 0, 171, 171, 171, 1, - 0, 3, 0, 1, 0, 3, 0, 1, - 0, 0, 0, 0, 0, 0, 0, 95, -117, 95, 80, 111, 105, 110, 116, 76, -105, 103, 104, 116, 83, 111, 117, 114, - 99, 101, 82, 97, 110, 103, 101, 73, -110, 118, 101, 114, 115, 101, 0, 0, - 0, 3, 0, 1, 0, 1, 0, 1, - 0, 0, 0, 0, 0, 0, 0, 95, -117, 95, 83, 112, 111, 116, 76, 105, -103, 104, 116, 83, 111, 117, 114, 99, -101, 67, 111, 108, 111, 114, 0, 1, - 0, 3, 0, 1, 0, 3, 0, 1, - 0, 0, 0, 0, 0, 0, 0, 95, -117, 95, 83, 112, 111, 116, 76, 105, -103, 104, 116, 83, 111, 117, 114, 99, -101, 68, 105, 114, 101, 99, 116, 105, -111, 110, 0, 1, 0, 3, 0, 1, - 0, 3, 0, 1, 0, 0, 0, 0, - 0, 0, 0, 95, 117, 95, 83, 112, -111, 116, 76, 105, 103, 104, 116, 83, -111, 117, 114, 99, 101, 73, 110, 110, -101, 114, 65, 110, 103, 108, 101, 67, -111, 115, 0, 0, 0, 3, 0, 1, - 0, 1, 0, 1, 0, 0, 0, 0, - 0, 0, 0, 95, 117, 95, 83, 112, -111, 116, 76, 105, 103, 104, 116, 83, -111, 117, 114, 99, 101, 79, 117, 116, -101, 114, 65, 110, 103, 108, 101, 67, -111, 115, 0, 0, 0, 3, 0, 1, - 0, 1, 0, 1, 0, 0, 0, 0, - 0, 0, 0, 95, 117, 95, 83, 112, -111, 116, 76, 105, 103, 104, 116, 83, -111, 117, 114, 99, 101, 82, 97, 110, -103, 101, 73, 110, 118, 101, 114, 115, -101, 0, 171, 0, 0, 3, 0, 1, - 0, 1, 0, 1, 0, 0, 0, 0, - 0, 0, 0, 95, 117, 95, 99, 111, -108, 111, 114, 0, 171, 171, 171, 1, - 0, 3, 0, 1, 0, 4, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 77, -105, 99, 114, 111, 115, 111, 102, 116, - 32, 40, 82, 41, 32, 72, 76, 83, - 76, 32, 83, 104, 97, 100, 101, 114, - 32, 67, 111, 109, 112, 105, 108, 101, -114, 32, 54, 46, 51, 46, 57, 54, - 48, 48, 46, 49, 55, 52, 49, 53, - 0, 171, 171, 73, 83, 71, 78, 92, - 0, 0, 0, 3, 0, 0, 0, 8, - 0, 0, 0, 80, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 3, - 0, 0, 0, 0, 0, 0, 0, 7, - 7, 0, 0, 80, 0, 0, 0, 1, - 0, 0, 0, 0, 0, 0, 0, 3, - 0, 0, 0, 1, 0, 0, 0, 7, - 7, 0, 0, 80, 0, 0, 0, 2, - 0, 0, 0, 0, 0, 0, 0, 3, - 0, 0, 0, 2, 0, 0, 0, 7, - 7, 0, 0, 84, 69, 88, 67, 79, - 79, 82, 68, 0, 171, 171, 171, 79, - 83, 71, 78, 116, 0, 0, 0, 4, - 0, 0, 0, 8, 0, 0, 0, 104, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 3, 0, 0, 0, 0, - 0, 0, 0, 15, 0, 0, 0, 104, - 0, 0, 0, 1, 0, 0, 0, 0, - 0, 0, 0, 3, 0, 0, 0, 1, - 0, 0, 0, 15, 0, 0, 0, 104, - 0, 0, 0, 2, 0, 0, 0, 0, - 0, 0, 0, 3, 0, 0, 0, 2, - 0, 0, 0, 15, 0, 0, 0, 104, - 0, 0, 0, 3, 0, 0, 0, 0, - 0, 0, 0, 3, 0, 0, 0, 3, - 0, 0, 0, 15, 0, 0, 0, 83, - 86, 95, 84, 97, 114, 103, 101, 116, - 0, 171, 171, 68, 88, 66, 67, 69, - 54, 203, 176, 77, 203, 81, 224, 230, - 32, 196, 185, 127, 91, 250, 163, 1, - 0, 0, 0, 216, 9, 0, 0, 6, - 0, 0, 0, 56, 0, 0, 0, 168, - 2, 0, 0, 180, 6, 0, 0, 48, - 7, 0, 0, 236, 8, 0, 0, 80, - 9, 0, 0, 65, 111, 110, 57, 104, - 2, 0, 0, 104, 2, 0, 0, 0, - 2, 254, 255, 52, 2, 0, 0, 52, - 0, 0, 0, 1, 0, 36, 0, 0, - 0, 48, 0, 0, 0, 48, 0, 0, - 0, 36, 0, 1, 0, 48, 0, 0, - 0, 0, 0, 13, 0, 1, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1, - 2, 254, 255, 81, 0, 0, 5, 0, - 0, 15, 160, 0, 0, 125, 67, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 81, 0, 0, 5, 14, - 0, 15, 160, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 128, 63, 0, - 0, 0, 63, 48, 0, 0, 5, 0, - 0, 15, 240, 253, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 31, 0, 0, 2, 5, - 0, 0, 128, 0, 0, 15, 144, 31, - 0, 0, 2, 5, 0, 1, 128, 1, - 0, 15, 144, 9, 0, 0, 3, 0, - 0, 1, 128, 1, 0, 228, 160, 1, - 0, 228, 144, 9, 0, 0, 3, 0, - 0, 2, 128, 2, 0, 228, 160, 1, - 0, 228, 144, 9, 0, 0, 3, 0, - 0, 4, 128, 3, 0, 228, 160, 1, - 0, 228, 144, 9, 0, 0, 3, 0, - 0, 8, 128, 4, 0, 228, 160, 1, - 0, 228, 144, 2, 0, 0, 3, 1, - 0, 7, 128, 0, 0, 228, 129, 12, - 0, 228, 160, 1, 0, 0, 2, 2, - 0, 7, 128, 14, 0, 85, 160, 1, - 0, 0, 2, 1, 0, 8, 128, 14, - 0, 85, 160, 38, 0, 0, 1, 0, - 0, 228, 240, 45, 0, 3, 2, 1, - 0, 255, 128, 14, 0, 170, 160, 2, - 0, 0, 3, 1, 0, 8, 128, 1, - 0, 255, 128, 14, 0, 170, 160, 1, - 0, 0, 2, 2, 0, 7, 128, 1, - 0, 228, 128, 39, 0, 0, 0, 1, - 0, 0, 2, 1, 0, 7, 224, 2, - 0, 228, 128, 2, 0, 0, 3, 1, - 0, 7, 128, 0, 0, 228, 129, 13, - 0, 228, 160, 1, 0, 0, 2, 2, - 0, 7, 128, 14, 0, 85, 160, 1, - 0, 0, 2, 1, 0, 8, 128, 14, - 0, 85, 160, 38, 0, 0, 1, 0, - 0, 228, 240, 45, 0, 3, 2, 1, - 0, 255, 128, 14, 0, 170, 160, 2, - 0, 0, 3, 1, 0, 8, 128, 1, - 0, 255, 128, 14, 0, 170, 160, 1, - 0, 0, 2, 2, 0, 7, 128, 1, - 0, 228, 128, 39, 0, 0, 0, 1, - 0, 0, 2, 2, 0, 7, 224, 2, - 0, 228, 128, 8, 0, 0, 3, 0, - 0, 1, 224, 5, 0, 228, 160, 0, - 0, 228, 144, 8, 0, 0, 3, 0, - 0, 2, 224, 6, 0, 228, 160, 0, - 0, 228, 144, 8, 0, 0, 3, 0, - 0, 4, 224, 7, 0, 228, 160, 0, - 0, 228, 144, 9, 0, 0, 3, 1, - 0, 1, 128, 8, 0, 228, 160, 0, - 0, 228, 128, 9, 0, 0, 3, 1, - 0, 4, 128, 9, 0, 228, 160, 0, - 0, 228, 128, 9, 0, 0, 3, 1, - 0, 8, 128, 10, 0, 228, 160, 0, - 0, 228, 128, 9, 0, 0, 3, 0, - 0, 1, 128, 11, 0, 228, 160, 0, - 0, 228, 128, 1, 0, 0, 2, 1, - 0, 2, 128, 1, 0, 170, 129, 2, - 0, 0, 3, 0, 0, 2, 128, 0, - 0, 0, 128, 1, 0, 255, 128, 5, - 0, 0, 3, 0, 0, 4, 192, 0, - 0, 85, 128, 14, 0, 255, 160, 4, - 0, 0, 4, 0, 0, 3, 192, 0, - 0, 0, 128, 0, 0, 228, 160, 1, - 0, 228, 128, 1, 0, 0, 2, 0, - 0, 8, 192, 0, 0, 0, 128, 255, -255, 0, 0, 83, 72, 68, 82, 4, - 4, 0, 0, 64, 0, 1, 0, 1, - 1, 0, 0, 89, 0, 0, 4, 70, -142, 32, 0, 0, 0, 0, 0, 13, - 0, 0, 0, 95, 0, 0, 3, 114, - 16, 16, 0, 0, 0, 0, 0, 95, - 0, 0, 3, 242, 16, 16, 0, 1, - 0, 0, 0, 101, 0, 0, 3, 114, - 32, 16, 0, 0, 0, 0, 0, 101, - 0, 0, 3, 114, 32, 16, 0, 1, - 0, 0, 0, 101, 0, 0, 3, 114, - 32, 16, 0, 2, 0, 0, 0, 103, - 0, 0, 4, 242, 32, 16, 0, 3, - 0, 0, 0, 1, 0, 0, 0, 104, - 0, 0, 2, 3, 0, 0, 0, 105, - 0, 0, 4, 0, 0, 0, 0, 1, - 0, 0, 0, 4, 0, 0, 0, 105, - 0, 0, 4, 1, 0, 0, 0, 1, - 0, 0, 0, 4, 0, 0, 0, 54, - 0, 0, 9, 114, 48, 32, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2, - 64, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 54, 0, 0, 9, 114, - 48, 32, 0, 1, 0, 0, 0, 0, - 0, 0, 0, 2, 64, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 17, - 0, 0, 8, 18, 0, 16, 0, 0, - 0, 0, 0, 70, 142, 32, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 70, - 30, 16, 0, 1, 0, 0, 0, 17, - 0, 0, 8, 34, 0, 16, 0, 0, - 0, 0, 0, 70, 142, 32, 0, 0, - 0, 0, 0, 1, 0, 0, 0, 70, - 30, 16, 0, 1, 0, 0, 0, 17, - 0, 0, 8, 66, 0, 16, 0, 0, - 0, 0, 0, 70, 142, 32, 0, 0, - 0, 0, 0, 2, 0, 0, 0, 70, - 30, 16, 0, 1, 0, 0, 0, 17, - 0, 0, 8, 130, 0, 16, 0, 0, - 0, 0, 0, 70, 142, 32, 0, 0, - 0, 0, 0, 3, 0, 0, 0, 70, - 30, 16, 0, 1, 0, 0, 0, 0, - 0, 0, 9, 114, 0, 16, 0, 1, - 0, 0, 0, 70, 2, 16, 128, 65, - 0, 0, 0, 0, 0, 0, 0, 70, -130, 32, 0, 0, 0, 0, 0, 11, - 0, 0, 0, 54, 0, 0, 5, 130, - 0, 16, 0, 1, 0, 0, 0, 1, - 64, 0, 0, 0, 0, 0, 0, 48, - 0, 0, 1, 33, 0, 0, 7, 18, - 0, 16, 0, 2, 0, 0, 0, 58, - 0, 16, 0, 1, 0, 0, 0, 1, - 64, 0, 0, 1, 0, 0, 0, 3, - 0, 4, 3, 10, 0, 16, 0, 2, - 0, 0, 0, 54, 0, 0, 6, 114, - 48, 32, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 70, 2, 16, 0, 1, - 0, 0, 0, 30, 0, 0, 7, 130, - 0, 16, 0, 1, 0, 0, 0, 58, - 0, 16, 0, 1, 0, 0, 0, 1, - 64, 0, 0, 1, 0, 0, 0, 22, - 0, 0, 1, 0, 0, 0, 9, 114, - 0, 16, 0, 1, 0, 0, 0, 70, - 2, 16, 128, 65, 0, 0, 0, 0, - 0, 0, 0, 70, 130, 32, 0, 0, - 0, 0, 0, 12, 0, 0, 0, 54, - 0, 0, 5, 130, 0, 16, 0, 1, - 0, 0, 0, 1, 64, 0, 0, 0, - 0, 0, 0, 48, 0, 0, 1, 33, - 0, 0, 7, 18, 0, 16, 0, 2, - 0, 0, 0, 58, 0, 16, 0, 1, - 0, 0, 0, 1, 64, 0, 0, 1, - 0, 0, 0, 3, 0, 4, 3, 10, - 0, 16, 0, 2, 0, 0, 0, 54, - 0, 0, 6, 114, 48, 32, 0, 1, - 0, 0, 0, 0, 0, 0, 0, 70, - 2, 16, 0, 1, 0, 0, 0, 30, - 0, 0, 7, 130, 0, 16, 0, 1, - 0, 0, 0, 58, 0, 16, 0, 1, - 0, 0, 0, 1, 64, 0, 0, 1, - 0, 0, 0, 22, 0, 0, 1, 16, - 0, 0, 8, 18, 32, 16, 0, 0, - 0, 0, 0, 70, 130, 32, 0, 0, - 0, 0, 0, 4, 0, 0, 0, 70, - 18, 16, 0, 0, 0, 0, 0, 16, - 0, 0, 8, 34, 32, 16, 0, 0, - 0, 0, 0, 70, 130, 32, 0, 0, - 0, 0, 0, 5, 0, 0, 0, 70, - 18, 16, 0, 0, 0, 0, 0, 16, - 0, 0, 8, 66, 32, 16, 0, 0, - 0, 0, 0, 70, 130, 32, 0, 0, - 0, 0, 0, 6, 0, 0, 0, 70, - 18, 16, 0, 0, 0, 0, 0, 17, - 0, 0, 8, 18, 32, 16, 0, 3, - 0, 0, 0, 70, 142, 32, 0, 0, - 0, 0, 0, 7, 0, 0, 0, 70, - 14, 16, 0, 0, 0, 0, 0, 17, - 0, 0, 8, 18, 0, 16, 0, 1, - 0, 0, 0, 70, 142, 32, 0, 0, - 0, 0, 0, 8, 0, 0, 0, 70, - 14, 16, 0, 0, 0, 0, 0, 17, - 0, 0, 8, 34, 0, 16, 0, 1, - 0, 0, 0, 70, 142, 32, 0, 0, - 0, 0, 0, 9, 0, 0, 0, 70, - 14, 16, 0, 0, 0, 0, 0, 17, - 0, 0, 8, 18, 0, 16, 0, 0, - 0, 0, 0, 70, 142, 32, 0, 0, - 0, 0, 0, 10, 0, 0, 0, 70, - 14, 16, 0, 0, 0, 0, 0, 54, - 0, 0, 6, 34, 32, 16, 0, 3, - 0, 0, 0, 10, 0, 16, 128, 65, - 0, 0, 0, 1, 0, 0, 0, 0, - 0, 0, 7, 34, 0, 16, 0, 0, - 0, 0, 0, 10, 0, 16, 0, 0, - 0, 0, 0, 26, 0, 16, 0, 1, - 0, 0, 0, 56, 0, 0, 7, 66, - 32, 16, 0, 3, 0, 0, 0, 26, - 0, 16, 0, 0, 0, 0, 0, 1, - 64, 0, 0, 0, 0, 0, 63, 54, - 0, 0, 6, 114, 32, 16, 0, 1, - 0, 0, 0, 70, 50, 32, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 54, - 0, 0, 6, 114, 32, 16, 0, 2, - 0, 0, 0, 70, 50, 32, 0, 1, - 0, 0, 0, 0, 0, 0, 0, 54, - 0, 0, 5, 130, 32, 16, 0, 3, - 0, 0, 0, 10, 0, 16, 0, 0, - 0, 0, 0, 62, 0, 0, 1, 83, - 84, 65, 84, 116, 0, 0, 0, 36, - 0, 0, 0, 3, 0, 0, 0, 0, - 0, 0, 0, 6, 0, 0, 0, 16, - 0, 0, 0, 4, 0, 0, 0, 0, - 0, 0, 0, 1, 0, 0, 0, 2, - 0, 0, 0, 0, 0, 0, 0, 2, - 0, 0, 0, 6, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 3, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 82, 68, 69, 70, 180, - 1, 0, 0, 1, 0, 0, 0, 72, - 0, 0, 0, 1, 0, 0, 0, 28, - 0, 0, 0, 0, 4, 254, 255, 0, - 65, 0, 0, 128, 1, 0, 0, 60, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1, - 0, 0, 0, 0, 0, 0, 0, 36, - 71, 108, 111, 98, 97, 108, 115, 0, -171, 171, 171, 60, 0, 0, 0, 5, - 0, 0, 0, 96, 0, 0, 0, 208, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 216, 0, 0, 0, 0, - 0, 0, 0, 64, 0, 0, 0, 2, - 0, 0, 0, 232, 0, 0, 0, 0, - 0, 0, 0, 248, 0, 0, 0, 64, - 0, 0, 0, 44, 0, 0, 0, 2, - 0, 0, 0, 12, 1, 0, 0, 0, - 0, 0, 0, 28, 1, 0, 0, 112, - 0, 0, 0, 64, 0, 0, 0, 2, - 0, 0, 0, 232, 0, 0, 0, 0, - 0, 0, 0, 40, 1, 0, 0, 176, - 0, 0, 0, 12, 0, 0, 0, 2, - 0, 0, 0, 68, 1, 0, 0, 0, - 0, 0, 0, 84, 1, 0, 0, 192, - 0, 0, 0, 12, 0, 0, 0, 2, - 0, 0, 0, 112, 1, 0, 0, 0, - 0, 0, 0, 95, 67, 67, 95, 77, - 86, 77, 97, 116, 114, 105, 120, 0, -171, 171, 171, 3, 0, 3, 0, 4, - 0, 4, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 95, 67, 67, 95, 78, -111, 114, 109, 97, 108, 77, 97, 116, -114, 105, 120, 0, 171, 171, 171, 3, - 0, 3, 0, 3, 0, 3, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 95, - 67, 67, 95, 80, 77, 97, 116, 114, -105, 120, 0, 95, 117, 95, 80, 111, -105, 110, 116, 76, 105, 103, 104, 116, - 83, 111, 117, 114, 99, 101, 80, 111, -115, 105, 116, 105, 111, 110, 0, 1, - 0, 3, 0, 1, 0, 3, 0, 1, - 0, 0, 0, 0, 0, 0, 0, 95, -117, 95, 83, 112, 111, 116, 76, 105, -103, 104, 116, 83, 111, 117, 114, 99, -101, 80, 111, 115, 105, 116, 105, 111, -110, 0, 171, 1, 0, 3, 0, 1, - 0, 3, 0, 1, 0, 0, 0, 0, - 0, 0, 0, 77, 105, 99, 114, 111, -115, 111, 102, 116, 32, 40, 82, 41, - 32, 72, 76, 83, 76, 32, 83, 104, - 97, 100, 101, 114, 32, 67, 111, 109, -112, 105, 108, 101, 114, 32, 54, 46, - 51, 46, 57, 54, 48, 48, 46, 49, - 55, 52, 49, 53, 0, 171, 171, 73, - 83, 71, 78, 92, 0, 0, 0, 3, - 0, 0, 0, 8, 0, 0, 0, 80, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 3, 0, 0, 0, 0, - 0, 0, 0, 7, 7, 0, 0, 80, - 0, 0, 0, 1, 0, 0, 0, 0, - 0, 0, 0, 3, 0, 0, 0, 1, - 0, 0, 0, 15, 15, 0, 0, 80, - 0, 0, 0, 2, 0, 0, 0, 0, - 0, 0, 0, 3, 0, 0, 0, 2, - 0, 0, 0, 3, 0, 0, 0, 84, - 69, 88, 67, 79, 79, 82, 68, 0, -171, 171, 171, 79, 83, 71, 78, 128, - 0, 0, 0, 4, 0, 0, 0, 8, - 0, 0, 0, 104, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 3, - 0, 0, 0, 0, 0, 0, 0, 7, - 8, 0, 0, 104, 0, 0, 0, 1, - 0, 0, 0, 0, 0, 0, 0, 3, - 0, 0, 0, 1, 0, 0, 0, 7, - 8, 0, 0, 104, 0, 0, 0, 2, - 0, 0, 0, 0, 0, 0, 0, 3, - 0, 0, 0, 2, 0, 0, 0, 7, - 8, 0, 0, 113, 0, 0, 0, 0, - 0, 0, 0, 1, 0, 0, 0, 3, - 0, 0, 0, 3, 0, 0, 0, 15, - 0, 0, 0, 84, 69, 88, 67, 79, - 79, 82, 68, 0, 83, 86, 95, 80, -111, 115, 105, 116, 105, 111, 110, 0, -171, 171, 171, -}; - const unsigned char s_A130FCE93CA2E5D68468367D88D1D7BE357912E5[] = { 166, 147, 0, 0, 142, 9, 2, 1, @@ -13262,374 +13277,7 @@ const unsigned char s_F812412122445BDF4AF92FE1C5808FC9A5019DB2[] = { 116, 105, 111, 110, 0, 171, 171, 171, }; -const unsigned char s_FD391F5683B57320A7D2F98BFB3DE495DCF36DAD[] = { - -166, 147, 0, 0, 142, 9, 2, 1, - 0, 128, 0, 0, 82, 139, 0, 0, - 10, 0, 0, 0, 97, 95, 112, 111, -115, 105, 116, 105, 111, 110, 1, 0, - 0, 0, 82, 139, 0, 0, 7, 0, - 0, 0, 97, 95, 99, 111, 108, 111, -114, 0, 0, 0, 0, 80, 139, 0, - 0, 10, 0, 0, 0, 97, 95, 116, -101, 120, 67, 111, 111, 114, 100, 2, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 255, 255, 255, 255, 0, - 0, 0, 0, 0, 0, 0, 0, 255, -255, 255, 255, 0, 0, 0, 0, 0, - 0, 0, 0, 255, 255, 255, 255, 0, - 0, 0, 0, 0, 0, 0, 0, 255, -255, 255, 255, 0, 0, 0, 0, 0, - 0, 0, 0, 255, 255, 255, 255, 0, - 0, 0, 0, 0, 0, 0, 0, 255, -255, 255, 255, 0, 0, 0, 0, 0, - 0, 0, 0, 255, 255, 255, 255, 0, - 0, 0, 0, 0, 0, 0, 0, 255, -255, 255, 255, 0, 0, 0, 0, 0, - 0, 0, 0, 255, 255, 255, 255, 0, - 0, 0, 0, 0, 0, 0, 0, 255, -255, 255, 255, 0, 0, 0, 0, 0, - 0, 0, 0, 255, 255, 255, 255, 0, - 0, 0, 0, 0, 0, 0, 0, 255, -255, 255, 255, 0, 0, 0, 0, 0, - 0, 0, 0, 255, 255, 255, 255, 1, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1, 0, 0, 0, 0, - 2, 0, 0, 0, 92, 139, 0, 0, -241, 141, 0, 0, 10, 0, 0, 0, - 67, 67, 95, 80, 77, 97, 116, 114, -105, 120, 0, 0, 0, 0, 255, 255, -255, 255, 0, 0, 0, 0, 4, 0, - 0, 0, 94, 139, 0, 0, 0, 0, - 0, 0, 11, 0, 0, 0, 67, 67, - 95, 84, 101, 120, 116, 117, 114, 101, - 48, 0, 0, 0, 0, 0, 0, 0, - 0, 255, 255, 255, 255, 1, 0, 0, - 0, 2, 0, 0, 0, 10, 0, 0, - 0, 67, 67, 95, 80, 77, 97, 116, -114, 105, 120, 0, 0, 0, 0, 0, - 0, 0, 0, 11, 0, 0, 0, 67, - 67, 95, 84, 101, 120, 116, 117, 114, -101, 48, 0, 0, 0, 0, 1, 0, - 0, 0, 4, 4, 0, 0, 164, 4, - 0, 0, 0, 0, 0, 0, 183, 123, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 68, 88, - 66, 67, 194, 192, 156, 135, 173, 91, - 67, 243, 131, 158, 66, 90, 93, 165, - 31, 99, 1, 0, 0, 0, 4, 4, - 0, 0, 6, 0, 0, 0, 56, 0, - 0, 0, 8, 1, 0, 0, 24, 2, - 0, 0, 148, 2, 0, 0, 84, 3, - 0, 0, 136, 3, 0, 0, 65, 111, -110, 57, 200, 0, 0, 0, 200, 0, - 0, 0, 0, 2, 255, 255, 160, 0, - 0, 0, 40, 0, 0, 0, 0, 0, - 40, 0, 0, 0, 40, 0, 0, 0, - 40, 0, 1, 0, 36, 0, 0, 0, - 40, 0, 0, 0, 0, 0, 1, 2, -255, 255, 81, 0, 0, 5, 0, 0, - 15, 160, 208, 179, 89, 62, 89, 23, - 55, 63, 152, 221, 147, 61, 0, 0, - 0, 0, 31, 0, 0, 2, 0, 0, - 0, 128, 0, 0, 3, 176, 31, 0, - 0, 2, 0, 0, 0, 144, 0, 8, - 15, 160, 66, 0, 0, 3, 0, 0, - 15, 128, 0, 0, 228, 176, 0, 8, -228, 160, 8, 0, 0, 3, 0, 0, - 1, 128, 0, 0, 228, 128, 0, 0, -228, 160, 1, 0, 0, 2, 0, 0, - 2, 128, 0, 0, 255, 128, 1, 0, - 0, 2, 0, 0, 15, 128, 0, 0, - 64, 128, 1, 0, 0, 2, 0, 8, - 15, 128, 0, 0, 228, 128, 1, 0, - 0, 2, 1, 8, 15, 128, 0, 0, -228, 128, 1, 0, 0, 2, 2, 8, - 15, 128, 0, 0, 228, 128, 1, 0, - 0, 2, 3, 8, 15, 128, 0, 0, -228, 128, 255, 255, 0, 0, 83, 72, - 68, 82, 8, 1, 0, 0, 64, 0, - 0, 0, 66, 0, 0, 0, 90, 0, - 0, 3, 0, 96, 16, 0, 0, 0, - 0, 0, 88, 24, 0, 4, 0, 112, - 16, 0, 0, 0, 0, 0, 85, 85, - 0, 0, 98, 16, 0, 3, 50, 16, - 16, 0, 0, 0, 0, 0, 101, 0, - 0, 3, 242, 32, 16, 0, 0, 0, - 0, 0, 101, 0, 0, 3, 242, 32, - 16, 0, 1, 0, 0, 0, 101, 0, - 0, 3, 242, 32, 16, 0, 2, 0, - 0, 0, 101, 0, 0, 3, 242, 32, - 16, 0, 3, 0, 0, 0, 104, 0, - 0, 2, 1, 0, 0, 0, 69, 0, - 0, 9, 242, 0, 16, 0, 0, 0, - 0, 0, 70, 16, 16, 0, 0, 0, - 0, 0, 198, 121, 16, 0, 0, 0, - 0, 0, 0, 96, 16, 0, 0, 0, - 0, 0, 16, 0, 0, 10, 18, 0, - 16, 0, 0, 0, 0, 0, 134, 3, - 16, 0, 0, 0, 0, 0, 2, 64, - 0, 0, 208, 179, 89, 62, 89, 23, - 55, 63, 152, 221, 147, 61, 0, 0, - 0, 0, 54, 0, 0, 5, 242, 32, - 16, 0, 0, 0, 0, 0, 6, 4, - 16, 0, 0, 0, 0, 0, 54, 0, - 0, 5, 242, 32, 16, 0, 1, 0, - 0, 0, 6, 4, 16, 0, 0, 0, - 0, 0, 54, 0, 0, 5, 242, 32, - 16, 0, 2, 0, 0, 0, 6, 4, - 16, 0, 0, 0, 0, 0, 54, 0, - 0, 5, 242, 32, 16, 0, 3, 0, - 0, 0, 6, 4, 16, 0, 0, 0, - 0, 0, 62, 0, 0, 1, 83, 84, - 65, 84, 116, 0, 0, 0, 7, 0, - 0, 0, 1, 0, 0, 0, 0, 0, - 0, 0, 5, 0, 0, 0, 1, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 4, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 82, 68, 69, 70, 184, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 2, 0, 0, 0, 28, 0, - 0, 0, 0, 4, 255, 255, 0, 65, - 0, 0, 134, 0, 0, 0, 92, 0, - 0, 0, 3, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1, 0, - 0, 0, 1, 0, 0, 0, 113, 0, - 0, 0, 2, 0, 0, 0, 5, 0, - 0, 0, 4, 0, 0, 0, 255, 255, -255, 255, 0, 0, 0, 0, 1, 0, - 0, 0, 13, 0, 0, 0, 115, 97, -109, 112, 108, 101, 114, 95, 95, 67, - 67, 95, 84, 101, 120, 116, 117, 114, -101, 48, 0, 116, 101, 120, 116, 117, -114, 101, 95, 95, 67, 67, 95, 84, -101, 120, 116, 117, 114, 101, 48, 0, - 77, 105, 99, 114, 111, 115, 111, 102, -116, 32, 40, 82, 41, 32, 72, 76, - 83, 76, 32, 83, 104, 97, 100, 101, -114, 32, 67, 111, 109, 112, 105, 108, -101, 114, 32, 54, 46, 51, 46, 57, - 54, 48, 48, 46, 49, 55, 52, 49, - 53, 0, 73, 83, 71, 78, 44, 0, - 0, 0, 1, 0, 0, 0, 8, 0, - 0, 0, 32, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 3, 0, - 0, 0, 0, 0, 0, 0, 3, 3, - 0, 0, 84, 69, 88, 67, 79, 79, - 82, 68, 0, 171, 171, 171, 79, 83, - 71, 78, 116, 0, 0, 0, 4, 0, - 0, 0, 8, 0, 0, 0, 104, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 3, 0, 0, 0, 0, 0, - 0, 0, 15, 0, 0, 0, 104, 0, - 0, 0, 1, 0, 0, 0, 0, 0, - 0, 0, 3, 0, 0, 0, 1, 0, - 0, 0, 15, 0, 0, 0, 104, 0, - 0, 0, 2, 0, 0, 0, 0, 0, - 0, 0, 3, 0, 0, 0, 2, 0, - 0, 0, 15, 0, 0, 0, 104, 0, - 0, 0, 3, 0, 0, 0, 0, 0, - 0, 0, 3, 0, 0, 0, 3, 0, - 0, 0, 15, 0, 0, 0, 83, 86, - 95, 84, 97, 114, 103, 101, 116, 0, -171, 171, 68, 88, 66, 67, 109, 79, -217, 83, 143, 41, 197, 150, 196, 211, -154, 125, 233, 59, 159, 126, 1, 0, - 0, 0, 164, 4, 0, 0, 6, 0, - 0, 0, 56, 0, 0, 0, 68, 1, - 0, 0, 156, 2, 0, 0, 24, 3, - 0, 0, 232, 3, 0, 0, 76, 4, - 0, 0, 65, 111, 110, 57, 4, 1, - 0, 0, 4, 1, 0, 0, 0, 2, -254, 255, 208, 0, 0, 0, 52, 0, - 0, 0, 1, 0, 36, 0, 0, 0, - 48, 0, 0, 0, 48, 0, 0, 0, - 36, 0, 1, 0, 48, 0, 0, 0, - 0, 0, 4, 0, 1, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1, 2, -254, 255, 81, 0, 0, 5, 5, 0, - 15, 160, 0, 0, 0, 63, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 31, 0, 0, 2, 5, 0, - 1, 128, 1, 0, 15, 144, 31, 0, - 0, 2, 5, 0, 2, 128, 2, 0, - 15, 144, 9, 0, 0, 3, 0, 0, - 1, 128, 3, 0, 228, 160, 1, 0, -228, 144, 9, 0, 0, 3, 0, 0, - 2, 128, 4, 0, 228, 160, 1, 0, -228, 144, 2, 0, 0, 3, 0, 0, - 1, 128, 0, 0, 85, 128, 0, 0, - 0, 128, 5, 0, 0, 3, 0, 0, - 4, 192, 0, 0, 0, 128, 5, 0, - 0, 160, 9, 0, 0, 3, 0, 0, - 1, 128, 2, 0, 228, 160, 1, 0, -228, 144, 1, 0, 0, 2, 1, 0, - 2, 128, 0, 0, 0, 129, 9, 0, - 0, 3, 1, 0, 1, 128, 1, 0, -228, 160, 1, 0, 228, 144, 4, 0, - 0, 4, 0, 0, 3, 192, 0, 0, - 85, 128, 0, 0, 228, 160, 1, 0, -228, 128, 1, 0, 0, 2, 0, 0, - 8, 192, 0, 0, 85, 128, 1, 0, - 0, 2, 0, 0, 3, 224, 2, 0, -228, 144, 255, 255, 0, 0, 83, 72, - 68, 82, 80, 1, 0, 0, 64, 0, - 1, 0, 84, 0, 0, 0, 89, 0, - 0, 4, 70, 142, 32, 0, 0, 0, - 0, 0, 4, 0, 0, 0, 95, 0, - 0, 3, 242, 16, 16, 0, 1, 0, - 0, 0, 95, 0, 0, 3, 50, 16, - 16, 0, 2, 0, 0, 0, 101, 0, - 0, 3, 50, 32, 16, 0, 0, 0, - 0, 0, 103, 0, 0, 4, 242, 32, - 16, 0, 1, 0, 0, 0, 1, 0, - 0, 0, 104, 0, 0, 2, 1, 0, - 0, 0, 54, 0, 0, 5, 50, 32, - 16, 0, 0, 0, 0, 0, 70, 16, - 16, 0, 2, 0, 0, 0, 17, 0, - 0, 8, 18, 0, 16, 0, 0, 0, - 0, 0, 70, 142, 32, 0, 0, 0, - 0, 0, 1, 0, 0, 0, 70, 30, - 16, 0, 1, 0, 0, 0, 54, 0, - 0, 6, 34, 32, 16, 0, 1, 0, - 0, 0, 10, 0, 16, 128, 65, 0, - 0, 0, 0, 0, 0, 0, 17, 0, - 0, 8, 18, 0, 16, 0, 0, 0, - 0, 0, 70, 142, 32, 0, 0, 0, - 0, 0, 2, 0, 0, 0, 70, 30, - 16, 0, 1, 0, 0, 0, 17, 0, - 0, 8, 34, 0, 16, 0, 0, 0, - 0, 0, 70, 142, 32, 0, 0, 0, - 0, 0, 3, 0, 0, 0, 70, 30, - 16, 0, 1, 0, 0, 0, 0, 0, - 0, 7, 18, 0, 16, 0, 0, 0, - 0, 0, 26, 0, 16, 0, 0, 0, - 0, 0, 10, 0, 16, 0, 0, 0, - 0, 0, 54, 0, 0, 5, 130, 32, - 16, 0, 1, 0, 0, 0, 26, 0, - 16, 0, 0, 0, 0, 0, 56, 0, - 0, 7, 66, 32, 16, 0, 1, 0, - 0, 0, 10, 0, 16, 0, 0, 0, - 0, 0, 1, 64, 0, 0, 0, 0, - 0, 63, 17, 0, 0, 8, 18, 32, - 16, 0, 1, 0, 0, 0, 70, 142, - 32, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 70, 30, 16, 0, 1, 0, - 0, 0, 62, 0, 0, 1, 83, 84, - 65, 84, 116, 0, 0, 0, 10, 0, - 0, 0, 1, 0, 0, 0, 0, 0, - 0, 0, 4, 0, 0, 0, 7, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 2, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 82, 68, 69, 70, 200, 0, - 0, 0, 1, 0, 0, 0, 72, 0, - 0, 0, 1, 0, 0, 0, 28, 0, - 0, 0, 0, 4, 254, 255, 0, 65, - 0, 0, 148, 0, 0, 0, 60, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1, 0, - 0, 0, 0, 0, 0, 0, 36, 71, -108, 111, 98, 97, 108, 115, 0, 171, -171, 171, 60, 0, 0, 0, 1, 0, - 0, 0, 96, 0, 0, 0, 64, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 120, 0, 0, 0, 0, 0, - 0, 0, 64, 0, 0, 0, 2, 0, - 0, 0, 132, 0, 0, 0, 0, 0, - 0, 0, 95, 67, 67, 95, 80, 77, - 97, 116, 114, 105, 120, 0, 3, 0, - 3, 0, 4, 0, 4, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 77, 105, - 99, 114, 111, 115, 111, 102, 116, 32, - 40, 82, 41, 32, 72, 76, 83, 76, - 32, 83, 104, 97, 100, 101, 114, 32, - 67, 111, 109, 112, 105, 108, 101, 114, - 32, 54, 46, 51, 46, 57, 54, 48, - 48, 46, 49, 55, 52, 49, 53, 0, -171, 171, 73, 83, 71, 78, 92, 0, - 0, 0, 3, 0, 0, 0, 8, 0, - 0, 0, 80, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 3, 0, - 0, 0, 0, 0, 0, 0, 15, 0, - 0, 0, 80, 0, 0, 0, 1, 0, - 0, 0, 0, 0, 0, 0, 3, 0, - 0, 0, 1, 0, 0, 0, 15, 15, - 0, 0, 80, 0, 0, 0, 2, 0, - 0, 0, 0, 0, 0, 0, 3, 0, - 0, 0, 2, 0, 0, 0, 3, 3, - 0, 0, 84, 69, 88, 67, 79, 79, - 82, 68, 0, 171, 171, 171, 79, 83, - 71, 78, 80, 0, 0, 0, 2, 0, - 0, 0, 8, 0, 0, 0, 56, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 3, 0, 0, 0, 0, 0, - 0, 0, 3, 12, 0, 0, 65, 0, - 0, 0, 0, 0, 0, 0, 1, 0, - 0, 0, 3, 0, 0, 0, 1, 0, - 0, 0, 15, 0, 0, 0, 84, 69, - 88, 67, 79, 79, 82, 68, 0, 83, - 86, 95, 80, 111, 115, 105, 116, 105, -111, 110, 0, 171, 171, 171, -}; - -const int s_numPrograms = 25; -const int s_programLengths[] = {2990,2528,4102,2786,8993,2536,3022,2996,16333,3358,2982,3073,2559,3300,3350,8475,10305,3025,3556,2502,2675,3746,2775,3280,2902}; -const unsigned char* s_programs[] = {s_133478C5A874C1E6F59B418CE6C7C39F1AE0F873,s_13E33F532157A58EC77EDE3B3112560A89D272B2,s_1A69A7CC77C7C8FC62799B0513816EA41FBF3BFE,s_2540BD20098D2FB820A4897DEC619A8E4B8CD354,s_2CF9793879165058483EFB4AD6FA9746ECD7DD2A,s_502845049F68EB561266A6F565B06F642ADD3E53,s_53938AB67AD93ABA0DDB87F3C9889304284E011E,s_67837675F2BB48C0E926316F505FC1538228E0FA,s_77D0755E06AA7AF59FAA6B003CA2363EDEB25C4C,s_78250E25D1929D4A842050738140787BE42541C6,s_7B67DD242152D35ACC079265FAD9D03DC98182DE,s_7CE5EE84ACB6110F7FA29152ECE3344CB6D6620D,s_7E1EEF397305D0BC2DCDBA4F2DAFBCBA1534E45C,s_847DBFDDA6EC09C57E4ED43012AE2FB5CAC7D8D5,s_92BE325B516F887D2C928EDE20ADF428DB01C038,s_93D31E1668075AE4941C53441D7A9D0DE8F76331,s_A130FCE93CA2E5D68468367D88D1D7BE357912E5,s_A2377A827972A5466DA8637681045D32DA8A817D,s_B5E27B4F3CF7236633255B28CBA530D6EE5CED86,s_E2C7CE1244DE9C76688EFA9463B2A130B6A08893,s_E2D56227712263272BD5218FEA117CD06180F81B,s_F46558C274182079784898CF4968CF431593D5E2,s_F6BA4519AF2653A53D57FB5D5508F0D8617105D6,s_F812412122445BDF4AF92FE1C5808FC9A5019DB2,s_FD391F5683B57320A7D2F98BFB3DE495DCF36DAD}; -const char* s_programKeys[] = {"133478C5A874C1E6F59B418CE6C7C39F1AE0F873","13E33F532157A58EC77EDE3B3112560A89D272B2","1A69A7CC77C7C8FC62799B0513816EA41FBF3BFE","2540BD20098D2FB820A4897DEC619A8E4B8CD354","2CF9793879165058483EFB4AD6FA9746ECD7DD2A","502845049F68EB561266A6F565B06F642ADD3E53","53938AB67AD93ABA0DDB87F3C9889304284E011E","67837675F2BB48C0E926316F505FC1538228E0FA","77D0755E06AA7AF59FAA6B003CA2363EDEB25C4C","78250E25D1929D4A842050738140787BE42541C6","7B67DD242152D35ACC079265FAD9D03DC98182DE","7CE5EE84ACB6110F7FA29152ECE3344CB6D6620D","7E1EEF397305D0BC2DCDBA4F2DAFBCBA1534E45C","847DBFDDA6EC09C57E4ED43012AE2FB5CAC7D8D5","92BE325B516F887D2C928EDE20ADF428DB01C038","93D31E1668075AE4941C53441D7A9D0DE8F76331","A130FCE93CA2E5D68468367D88D1D7BE357912E5","A2377A827972A5466DA8637681045D32DA8A817D","B5E27B4F3CF7236633255B28CBA530D6EE5CED86","E2C7CE1244DE9C76688EFA9463B2A130B6A08893","E2D56227712263272BD5218FEA117CD06180F81B","F46558C274182079784898CF4968CF431593D5E2","F6BA4519AF2653A53D57FB5D5508F0D8617105D6","F812412122445BDF4AF92FE1C5808FC9A5019DB2","FD391F5683B57320A7D2F98BFB3DE495DCF36DAD"}; +const int s_numPrograms = 24; +const int s_programLengths[] = {2990,2528,4102,2786,2536,8515,3022,16373,2996,9033,3358,2982,3073,2559,3300,3350,10305,3025,3556,2502,2675,3746,2775,3280}; +const unsigned char* s_programs[] = {s_133478C5A874C1E6F59B418CE6C7C39F1AE0F873,s_13E33F532157A58EC77EDE3B3112560A89D272B2,s_1A69A7CC77C7C8FC62799B0513816EA41FBF3BFE,s_2540BD20098D2FB820A4897DEC619A8E4B8CD354,s_502845049F68EB561266A6F565B06F642ADD3E53,s_5189BFCE7D37638731DED2D9C2D0FCA7386CB8E5,s_53938AB67AD93ABA0DDB87F3C9889304284E011E,s_66FA8020CFC652F1DF0D33021BF25C03810D50BF,s_67837675F2BB48C0E926316F505FC1538228E0FA,s_73FBE16FC32B47649A67B96B9006CBF56B6ED809,s_78250E25D1929D4A842050738140787BE42541C6,s_7B67DD242152D35ACC079265FAD9D03DC98182DE,s_7CE5EE84ACB6110F7FA29152ECE3344CB6D6620D,s_7E1EEF397305D0BC2DCDBA4F2DAFBCBA1534E45C,s_847DBFDDA6EC09C57E4ED43012AE2FB5CAC7D8D5,s_92BE325B516F887D2C928EDE20ADF428DB01C038,s_A130FCE93CA2E5D68468367D88D1D7BE357912E5,s_A2377A827972A5466DA8637681045D32DA8A817D,s_B5E27B4F3CF7236633255B28CBA530D6EE5CED86,s_E2C7CE1244DE9C76688EFA9463B2A130B6A08893,s_E2D56227712263272BD5218FEA117CD06180F81B,s_F46558C274182079784898CF4968CF431593D5E2,s_F6BA4519AF2653A53D57FB5D5508F0D8617105D6,s_F812412122445BDF4AF92FE1C5808FC9A5019DB2}; +const char* s_programKeys[] = {"133478C5A874C1E6F59B418CE6C7C39F1AE0F873","13E33F532157A58EC77EDE3B3112560A89D272B2","1A69A7CC77C7C8FC62799B0513816EA41FBF3BFE","2540BD20098D2FB820A4897DEC619A8E4B8CD354","502845049F68EB561266A6F565B06F642ADD3E53","5189BFCE7D37638731DED2D9C2D0FCA7386CB8E5","53938AB67AD93ABA0DDB87F3C9889304284E011E","66FA8020CFC652F1DF0D33021BF25C03810D50BF","67837675F2BB48C0E926316F505FC1538228E0FA","73FBE16FC32B47649A67B96B9006CBF56B6ED809","78250E25D1929D4A842050738140787BE42541C6","7B67DD242152D35ACC079265FAD9D03DC98182DE","7CE5EE84ACB6110F7FA29152ECE3344CB6D6620D","7E1EEF397305D0BC2DCDBA4F2DAFBCBA1534E45C","847DBFDDA6EC09C57E4ED43012AE2FB5CAC7D8D5","92BE325B516F887D2C928EDE20ADF428DB01C038","A130FCE93CA2E5D68468367D88D1D7BE357912E5","A2377A827972A5466DA8637681045D32DA8A817D","B5E27B4F3CF7236633255B28CBA530D6EE5CED86","E2C7CE1244DE9C76688EFA9463B2A130B6A08893","E2D56227712263272BD5218FEA117CD06180F81B","F46558C274182079784898CF4968CF431593D5E2","F6BA4519AF2653A53D57FB5D5508F0D8617105D6","F812412122445BDF4AF92FE1C5808FC9A5019DB2"}; diff --git a/cocos/renderer/CCGLProgram.cpp b/cocos/renderer/CCGLProgram.cpp index 81cd2b0ec7..e2bfb583b9 100644 --- a/cocos/renderer/CCGLProgram.cpp +++ b/cocos/renderer/CCGLProgram.cpp @@ -52,9 +52,7 @@ const char* GLProgram::SHADER_NAME_POSITION_TEXTURE_ALPHA_TEST_NO_MV = "ShaderPo const char* GLProgram::SHADER_NAME_POSITION_COLOR = "ShaderPositionColor"; const char* GLProgram::SHADER_NAME_POSITION_COLOR_TEXASPOINTSIZE = "ShaderPositionColorTexAsPointsize"; const char* GLProgram::SHADER_NAME_POSITION_COLOR_NO_MVP = "ShaderPositionColor_noMVP"; -#if CC_TARGET_PLATFORM == CC_PLATFORM_WP8 || defined(WP8_SHADER_COMPILER) -const char* GLProgram::SHADER_NAME_POSITION_COLOR_NO_MVP_GRAYSCALE = "ShaderPositionColor_noMVP_GrayScale"; -#endif + const char* GLProgram::SHADER_NAME_POSITION_TEXTURE = "ShaderPositionTexture"; const char* GLProgram::SHADER_NAME_POSITION_TEXTURE_U_COLOR = "ShaderPositionTexture_uColor"; const char* GLProgram::SHADER_NAME_POSITION_TEXTURE_A8_COLOR = "ShaderPositionTextureA8Color"; diff --git a/cocos/renderer/CCGLProgramCache.cpp b/cocos/renderer/CCGLProgramCache.cpp index c10dd6d55b..2fcfce9608 100644 --- a/cocos/renderer/CCGLProgramCache.cpp +++ b/cocos/renderer/CCGLProgramCache.cpp @@ -245,13 +245,6 @@ void GLProgramCache::loadDefaultGLPrograms() p = new GLProgram(); loadDefaultGLProgram(p, kShaderType_3DParticleTex); _programs.insert(std::make_pair(GLProgram::SHADER_3D_PARTICLE_TEXTURE, p)); - -#if CC_TARGET_PLATFORM == CC_PLATFORM_WP8 || defined(WP8_SHADER_COMPILER) - p = new GLProgram(); - loadDefaultGLProgram(p, kShaderType_PositionColor_noMVP_GrayScale); - _programs.insert(std::make_pair(GLProgram::SHADER_NAME_POSITION_COLOR_NO_MVP_GRAYSCALE, p)); -#endif - } void GLProgramCache::reloadDefaultGLPrograms() diff --git a/cocos/renderer/CCMeshCommand.h b/cocos/renderer/CCMeshCommand.h index 35855b8992..6af1aab033 100644 --- a/cocos/renderer/CCMeshCommand.h +++ b/cocos/renderer/CCMeshCommand.h @@ -70,7 +70,7 @@ public: void execute(); - //used for bath + //used for batch void preBatchDraw(); void batchDraw(); void postBatchDraw(); diff --git a/cocos/renderer/CCVertexIndexBuffer.h b/cocos/renderer/CCVertexIndexBuffer.h index 0a615dc991..68a9e70a9a 100644 --- a/cocos/renderer/CCVertexIndexBuffer.h +++ b/cocos/renderer/CCVertexIndexBuffer.h @@ -36,6 +36,7 @@ class EventListenerCustom; /** VertexBuffer is an abstraction of low level openGL Vertex Buffer Object. It is used to save an array of vertices. +*@js NA */ class CC_DLL VertexBuffer : public Ref { @@ -133,6 +134,7 @@ public: /** IndexBuffer is an abstraction of low level openGL Buffer Object. It used to save an array of indices. +@js NA */ class CC_DLL IndexBuffer : public Ref { diff --git a/cocos/renderer/CCVertexIndexData.h b/cocos/renderer/CCVertexIndexData.h index 94f77320d4..4470f928b8 100644 --- a/cocos/renderer/CCVertexIndexData.h +++ b/cocos/renderer/CCVertexIndexData.h @@ -42,6 +42,7 @@ glVertexAttribPointer(GLuint indx, GLint size, GLenum type, GLboolean normalized _offset is used to compute the start offset in a interleaved array, take a V3F_C4B_T2F array, offset of vertex will be 0, offset of color would be 0 + sizeof(float) * 3 = 12, offset of texture coord would be 12 + sizeof(char) * 4 = 16. + @js NA */ struct CC_DLL VertexStreamAttribute { @@ -101,6 +102,7 @@ struct CC_DLL VertexStreamAttribute VertexData is a class used for specify input streams for GPU rendering pipeline, a VertexData will be composed by several streams, every stream will contain a VertexStreamAttribute and the binding VertexBuffer. Streams will be identified by semantic. +@js NA */ class CC_DLL VertexData : public Ref diff --git a/cocos/scripting/lua-bindings/auto/api/Action.lua b/cocos/scripting/lua-bindings/auto/api/Action.lua index 9f23ffb02a..761b2a149a 100644 --- a/cocos/scripting/lua-bindings/auto/api/Action.lua +++ b/cocos/scripting/lua-bindings/auto/api/Action.lua @@ -103,7 +103,8 @@ -------------------------------- -- Returns a new action that performs the exactly the reverse action.
--- return A new action that performs the exactly the reverse action. +-- return A new action that performs the exactly the reverse action.
+-- js NA -- @function [parent=#Action] reverse -- @param self -- @return Action#Action ret (return value: cc.Action) diff --git a/cocos/scripting/lua-bindings/auto/api/ActionManager.lua b/cocos/scripting/lua-bindings/auto/api/ActionManager.lua index 2cad557be4..60770f450f 100644 --- a/cocos/scripting/lua-bindings/auto/api/ActionManager.lua +++ b/cocos/scripting/lua-bindings/auto/api/ActionManager.lua @@ -76,7 +76,8 @@ -- - If you are running 1 Sequence of 7 actions, it will return 1.
-- - If you are running 7 Sequences of 2 actions, it will return 7.
-- param target A certain target.
--- return The numbers of actions that are running in a certain target. +-- return The numbers of actions that are running in a certain target.
+-- js NA -- @function [parent=#ActionManager] getNumberOfRunningActionsInTarget -- @param self -- @param #cc.Node target @@ -110,7 +111,8 @@ -------------------------------- -- Removes all actions given its tag and the target.
-- param tag The actions' tag.
--- param target A certain target. +-- param target A certain target.
+-- js NA -- @function [parent=#ActionManager] removeAllActionsByTag -- @param self -- @param #int tag diff --git a/cocos/scripting/lua-bindings/auto/api/AnimationCache.lua b/cocos/scripting/lua-bindings/auto/api/AnimationCache.lua index 5b072b9174..58d24175a6 100644 --- a/cocos/scripting/lua-bindings/auto/api/AnimationCache.lua +++ b/cocos/scripting/lua-bindings/auto/api/AnimationCache.lua @@ -35,7 +35,8 @@ -- Make sure that the frames were previously loaded in the SpriteFrameCache.
-- param dictionary An NSDictionary.
-- param plist The path of the relative file,it use to find the plist path for load SpriteFrames.
--- since v1.1 +-- since v1.1
+-- js NA -- @function [parent=#AnimationCache] addAnimationsWithDictionary -- @param self -- @param #map_table dictionary @@ -63,14 +64,15 @@ -- @return AnimationCache#AnimationCache self (return value: cc.AnimationCache) -------------------------------- --- Purges the cache. It releases all the Animation objects and the shared instance. +-- Purges the cache. It releases all the Animation objects and the shared instance.
+-- js NA -- @function [parent=#AnimationCache] destroyInstance -- @param self -- @return AnimationCache#AnimationCache self (return value: cc.AnimationCache) -------------------------------- --- Returns the shared instance of the Animation cache.
--- return The shared instance of the Animation cache. +-- Returns the shared instance of the Animation cache
+-- js NA -- @function [parent=#AnimationCache] getInstance -- @param self -- @return AnimationCache#AnimationCache ret (return value: cc.AnimationCache) diff --git a/cocos/scripting/lua-bindings/auto/api/AtlasNode.lua b/cocos/scripting/lua-bindings/auto/api/AtlasNode.lua index 57832b2f13..1fa3648524 100644 --- a/cocos/scripting/lua-bindings/auto/api/AtlasNode.lua +++ b/cocos/scripting/lua-bindings/auto/api/AtlasNode.lua @@ -43,7 +43,6 @@ -- @return TextureAtlas#TextureAtlas ret (return value: cc.TextureAtlas) -------------------------------- --- js NA
-- lua NA -- @function [parent=#AtlasNode] getBlendFunc -- @param self diff --git a/cocos/scripting/lua-bindings/auto/api/BaseLight.lua b/cocos/scripting/lua-bindings/auto/api/BaseLight.lua index 51873d3b24..aae76d9d48 100644 --- a/cocos/scripting/lua-bindings/auto/api/BaseLight.lua +++ b/cocos/scripting/lua-bindings/auto/api/BaseLight.lua @@ -24,7 +24,8 @@ -- @return bool#bool ret (return value: bool) -------------------------------- --- +-- Get the light type,light type MUST be one of LightType::DIRECTIONAL ,
+-- LightType::POINT, LightType::SPOT, LightType::AMBIENT. -- @function [parent=#BaseLight] getLightType -- @param self -- @return int#int ret (return value: int) diff --git a/cocos/scripting/lua-bindings/auto/api/Camera.lua b/cocos/scripting/lua-bindings/auto/api/Camera.lua index a3d8c8f30c..cdee2e6022 100644 --- a/cocos/scripting/lua-bindings/auto/api/Camera.lua +++ b/cocos/scripting/lua-bindings/auto/api/Camera.lua @@ -124,13 +124,13 @@ -- @return Camera#Camera ret (return value: cc.Camera) -------------------------------- --- +-- Get the default camera of the current running scene. -- @function [parent=#Camera] getDefaultCamera -- @param self -- @return Camera#Camera ret (return value: cc.Camera) -------------------------------- --- +-- Get the visiting camera , the visiting camera shall be set on Scene::render -- @function [parent=#Camera] getVisitingCamera -- @param self -- @return Camera#Camera ret (return value: cc.Camera) diff --git a/cocos/scripting/lua-bindings/auto/api/CardinalSplineTo.lua b/cocos/scripting/lua-bindings/auto/api/CardinalSplineTo.lua index 0745ae2830..4eb4f5afc5 100644 --- a/cocos/scripting/lua-bindings/auto/api/CardinalSplineTo.lua +++ b/cocos/scripting/lua-bindings/auto/api/CardinalSplineTo.lua @@ -58,7 +58,7 @@ -- @return CardinalSplineTo#CardinalSplineTo self (return value: cc.CardinalSplineTo) -------------------------------- --- js NA
+-- js ctor
-- lua NA -- @function [parent=#CardinalSplineTo] CardinalSplineTo -- @param self diff --git a/cocos/scripting/lua-bindings/auto/api/ClippingNode.lua b/cocos/scripting/lua-bindings/auto/api/ClippingNode.lua index 9c8b443cf8..85a2363f4a 100644 --- a/cocos/scripting/lua-bindings/auto/api/ClippingNode.lua +++ b/cocos/scripting/lua-bindings/auto/api/ClippingNode.lua @@ -8,20 +8,25 @@ -- If stencil has no childre it will not be drawn.
-- If you have custom stencil-based node with stencil drawing mechanics other then children-based,
-- then this method should return true every time you wish stencil to be visited.
+-- By default returns true if has any children attached.
+-- return If you have custom stencil-based node with stencil drawing mechanics other then children-based,
+-- then this method should return true every time you wish stencil to be visited.
-- By default returns true if has any children attached. -- @function [parent=#ClippingNode] hasContent -- @param self -- @return bool#bool ret (return value: bool) -------------------------------- --- +-- Set the ClippingNode whether or not invert.
+-- param inverted A bool Type,to set the ClippingNode whether or not invert. -- @function [parent=#ClippingNode] setInverted -- @param self -- @param #bool inverted -- @return ClippingNode#ClippingNode self (return value: cc.ClippingNode) -------------------------------- --- +-- Set the Node to use as a stencil to do the clipping.
+-- param stencil The Node to use as a stencil to do the clipping. -- @function [parent=#ClippingNode] setStencil -- @param self -- @param #cc.Node stencil @@ -31,7 +36,8 @@ -- The alpha threshold.
-- The content is drawn only where the stencil have pixel with alpha greater than the alphaThreshold.
-- Should be a float between 0 and 1.
--- This default to 1 (so alpha test is disabled). +-- This default to 1 (so alpha test is disabled).
+-- return The alpha threshold value,Should be a float between 0 and 1. -- @function [parent=#ClippingNode] getAlphaThreshold -- @param self -- @return float#float ret (return value: float) @@ -39,13 +45,15 @@ -------------------------------- -- The Node to use as a stencil to do the clipping.
-- The stencil node will be retained.
--- This default to nil. +-- This default to nil.
+-- return The stencil node. -- @function [parent=#ClippingNode] getStencil -- @param self -- @return Node#Node ret (return value: cc.Node) -------------------------------- --- +-- Set the alpha threshold.
+-- param alphaThreshold The alpha threshold. -- @function [parent=#ClippingNode] setAlphaThreshold -- @param self -- @param #float alphaThreshold @@ -54,7 +62,8 @@ -------------------------------- -- Inverted. If this is set to true,
-- the stencil is inverted, so the content is drawn where the stencil is NOT drawn.
--- This default to false. +-- This default to false.
+-- return If the clippingNode is Inverted, it will be return true. -- @function [parent=#ClippingNode] isInverted -- @param self -- @return bool#bool ret (return value: bool) diff --git a/cocos/scripting/lua-bindings/auto/api/ClippingRectangleNode.lua b/cocos/scripting/lua-bindings/auto/api/ClippingRectangleNode.lua index 8d1667b98f..7242da6b3b 100644 --- a/cocos/scripting/lua-bindings/auto/api/ClippingRectangleNode.lua +++ b/cocos/scripting/lua-bindings/auto/api/ClippingRectangleNode.lua @@ -5,26 +5,30 @@ -- @parent_module cc -------------------------------- --- +-- brief Get whether the clipping is enabled or not.
+-- return Whether the clipping is enabled or not. Default is true. -- @function [parent=#ClippingRectangleNode] isClippingEnabled -- @param self -- @return bool#bool ret (return value: bool) -------------------------------- --- +-- brief Enable/Disable the clipping.
+-- param Pass true to enable clipping. Pass false to disable clipping. -- @function [parent=#ClippingRectangleNode] setClippingEnabled -- @param self -- @param #bool enabled -- @return ClippingRectangleNode#ClippingRectangleNode self (return value: cc.ClippingRectangleNode) -------------------------------- --- +-- brief Get the clipping rectangle.
+-- return The clipping rectangle. -- @function [parent=#ClippingRectangleNode] getClippingRegion -- @param self -- @return rect_table#rect_table ret (return value: rect_table) -------------------------------- --- +-- brief Set the clipping rectangle.
+-- param Specify the clipping rectangle. -- @function [parent=#ClippingRectangleNode] setClippingRegion -- @param self -- @param #rect_table clippingRegion diff --git a/cocos/scripting/lua-bindings/auto/api/Director.lua b/cocos/scripting/lua-bindings/auto/api/Director.lua index f86976ca34..266c054060 100644 --- a/cocos/scripting/lua-bindings/auto/api/Director.lua +++ b/cocos/scripting/lua-bindings/auto/api/Director.lua @@ -13,7 +13,8 @@ -------------------------------- -- Sets the EventDispatcher associated with this director.
--- since v3.0 +-- since v3.0
+-- js NA -- @function [parent=#Director] setEventDispatcher -- @param self -- @param #cc.EventDispatcher dispatcher @@ -50,7 +51,8 @@ -------------------------------- -- Sets the OpenGL default values.
--- It will enable alpha blending, disable depth test. +-- It will enable alpha blending, disable depth test.
+-- js NA -- @function [parent=#Director] setGLDefaultValues -- @param self -- @return Director#Director self (return value: cc.Director) @@ -81,7 +83,8 @@ -------------------------------- -- Adds a matrix to the top of specified type of matrix stack.
-- param type Matrix type.
--- param mat The matrix that to be added. +-- param mat The matrix that to be added.
+-- js NA -- @function [parent=#Director] loadMatrix -- @param self -- @param #int type @@ -104,7 +107,7 @@ -- @return size_table#size_table ret (return value: size_table) -------------------------------- --- Gets singleton of TextureCache. +-- -- @function [parent=#Director] getTextureCache -- @param self -- @return TextureCache#TextureCache ret (return value: cc.TextureCache) @@ -138,7 +141,8 @@ -- @return Director#Director self (return value: cc.Director) -------------------------------- --- Gets Frame Rate. +-- Gets Frame Rate.
+-- js NA -- @function [parent=#Director] getFrameRate -- @param self -- @return float#float ret (return value: float) @@ -150,7 +154,8 @@ -- @return float#float ret (return value: float) -------------------------------- --- Cleras all types of matrix stack, and add indentity matrix to these matrix stacks. +-- Cleras all types of matrix stack, and add indentity matrix to these matrix stacks.
+-- js NA -- @function [parent=#Director] resetMatrixStack -- @param self -- @return Director#Director self (return value: cc.Director) @@ -164,7 +169,8 @@ -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- Clones a specified type matrix and put it to the top of specified type of matrix stack. +-- Clones a specified type matrix and put it to the top of specified type of matrix stack.
+-- js NA -- @function [parent=#Director] pushMatrix -- @param self -- @param #int type @@ -191,7 +197,8 @@ -- @return Director#Director self (return value: cc.Director) -------------------------------- --- Gets the top matrix of specified type of matrix stack. +-- Gets the top matrix of specified type of matrix stack.
+-- js NA -- @function [parent=#Director] getMatrix -- @param self -- @param #int type @@ -207,7 +214,6 @@ -------------------------------- -- Get the GLView.
--- js NA
-- lua NA -- @function [parent=#Director] getOpenGLView -- @param self @@ -257,7 +263,9 @@ -- @return bool#bool ret (return value: bool) -------------------------------- --- Sets clear values for the color buffers, value range of each element is [0.0, 1.0]. +-- Sets clear values for the color buffers,
+-- value range of each element is [0.0, 1.0].
+-- js NA -- @function [parent=#Director] setClearColor -- @param self -- @param #color4f_table clearColor @@ -272,8 +280,7 @@ -------------------------------- -- Sets the GLView.
--- lua NA
--- js NA +-- lua NA -- @function [parent=#Director] setOpenGLView -- @param self -- @param #cc.GLView openGLView @@ -305,7 +312,8 @@ -- Enters the Director's main loop with the given Scene.
-- Call it to run only your FIRST scene.
-- Don't call it if there is already a running scene.
--- It will call pushScene: and then it will call startAnimation +-- It will call pushScene: and then it will call startAnimation
+-- js NA -- @function [parent=#Director] runWithScene -- @param self -- @param #cc.Scene scene @@ -327,7 +335,7 @@ -- @return Director#Director self (return value: cc.Director) -------------------------------- --- Restart the director. +-- -- @function [parent=#Director] restart -- @param self -- @return Director#Director self (return value: cc.Director) @@ -342,7 +350,8 @@ -- @return Director#Director self (return value: cc.Director) -------------------------------- --- Adds an identity matrix to the top of specified type of matrxi stack. +-- Adds an identity matrix to the top of specified type of matrxi stack.
+-- js NA -- @function [parent=#Director] loadIdentityMatrix -- @param self -- @param #int type @@ -363,7 +372,8 @@ -------------------------------- -- Returns the Console associated with this director.
--- since v3.0 +-- since v3.0
+-- js NA -- @function [parent=#Director] getConsole -- @param self -- @return Console#Console ret (return value: cc.Console) @@ -371,7 +381,8 @@ -------------------------------- -- Multipies a matrix to the top of specified type of matrix stack.
-- param type Matrix type.
--- param mat The matrix that to be multipied. +-- param mat The matrix that to be multipied.
+-- js NA -- @function [parent=#Director] multiplyMatrix -- @param self -- @param #int type @@ -395,7 +406,8 @@ -- @return Director#Director self (return value: cc.Director) -------------------------------- --- Pops the top matrix of the specified type of matrix stack. +-- Pops the top matrix of the specified type of matrix stack.
+-- js NA -- @function [parent=#Director] popMatrix -- @param self -- @param #int type @@ -446,14 +458,16 @@ -------------------------------- -- Gets the EventDispatcher associated with this director.
--- since v3.0 +-- since v3.0
+-- js NA -- @function [parent=#Director] getEventDispatcher -- @param self -- @return EventDispatcher#EventDispatcher ret (return value: cc.EventDispatcher) -------------------------------- -- Replaces the running scene with a new one. The running scene is terminated.
--- ONLY call it if there is a running scene. +-- ONLY call it if there is a running scene.
+-- js NA -- @function [parent=#Director] replaceScene -- @param self -- @param #cc.Scene scene @@ -474,7 +488,8 @@ -- @return ActionManager#ActionManager ret (return value: cc.ActionManager) -------------------------------- --- Returns a shared instance of the director. +-- Returns a shared instance of the director.
+-- js _getInstance -- @function [parent=#Director] getInstance -- @param self -- @return Director#Director ret (return value: cc.Director) diff --git a/cocos/scripting/lua-bindings/auto/api/DrawNode.lua b/cocos/scripting/lua-bindings/auto/api/DrawNode.lua index 61ec9c1d77..78bdaae251 100644 --- a/cocos/scripting/lua-bindings/auto/api/DrawNode.lua +++ b/cocos/scripting/lua-bindings/auto/api/DrawNode.lua @@ -5,7 +5,10 @@ -- @parent_module cc -------------------------------- --- +-- Draw an line from origin to destination with color.
+-- param origin The line origin.
+-- param destination The line destination.
+-- param color The line color. -- @function [parent=#DrawNode] drawLine -- @param self -- @param #vec2_table origin @@ -48,7 +51,10 @@ -- @return DrawNode#DrawNode self (return value: cc.DrawNode) -------------------------------- --- draw a dot at a position, with a given radius and color +-- draw a dot at a position, with a given radius and color.
+-- param pos The dot center.
+-- param radius The dot radius.
+-- param color The dot color. -- @function [parent=#DrawNode] drawDot -- @param self -- @param #vec2_table pos @@ -57,7 +63,11 @@ -- @return DrawNode#DrawNode self (return value: cc.DrawNode) -------------------------------- --- draw a segment with a radius and color +-- draw a segment with a radius and color.
+-- param from The segment origin.
+-- param to The segment destination.
+-- param radius The segment radius.
+-- param color The segment color. -- @function [parent=#DrawNode] drawSegment -- @param self -- @param #vec2_table from @@ -67,6 +77,7 @@ -- @return DrawNode#DrawNode self (return value: cc.DrawNode) -------------------------------- +-- Get the color mixed mode.
-- js NA
-- lua NA -- @function [parent=#DrawNode] getBlendFunc @@ -97,7 +108,12 @@ -- @return DrawNode#DrawNode self (return value: cc.DrawNode) -------------------------------- --- +-- Draws a quad bezier path.
+-- param origin The origin of the bezier path.
+-- param control The control of the bezier path.
+-- param destination The destination of the bezier path.
+-- param segments The The number of segments.
+-- param color Set the quad bezier color. -- @function [parent=#DrawNode] drawQuadBezier -- @param self -- @param #vec2_table origin @@ -116,7 +132,11 @@ -- @return DrawNode#DrawNode self (return value: cc.DrawNode) -------------------------------- --- draw a triangle with color +-- draw a triangle with color.
+-- param p1 The triangle vertex point.
+-- param p2 The triangle vertex point.
+-- param p3 The triangle vertex point.
+-- param color The triangle color. -- @function [parent=#DrawNode] drawTriangle -- @param self -- @param #vec2_table p1 @@ -126,6 +146,7 @@ -- @return DrawNode#DrawNode self (return value: cc.DrawNode) -------------------------------- +-- Set the color mixed mode.
-- code
-- When this function bound into js or lua,the parameter will be changed
-- In js: var setBlendFunc(var src, var dst)
@@ -143,7 +164,11 @@ -- @return DrawNode#DrawNode self (return value: cc.DrawNode) -------------------------------- --- +-- Draws a solid rectangle given the origin and destination point measured in points.
+-- The origin and the destination can not have the same x and y coordinate.
+-- param origin The rectangle origin.
+-- param destination The rectangle destination.
+-- param color The rectangle color. -- @function [parent=#DrawNode] drawSolidRect -- @param self -- @param #vec2_table origin @@ -152,7 +177,10 @@ -- @return DrawNode#DrawNode self (return value: cc.DrawNode) -------------------------------- --- +-- Draw a point.
+-- param point A Vec2 used to point.
+-- param pointSize The point size.
+-- param color The point color. -- @function [parent=#DrawNode] drawPoint -- @param self -- @param #vec2_table point @@ -161,7 +189,13 @@ -- @return DrawNode#DrawNode self (return value: cc.DrawNode) -------------------------------- --- draw a cubic bezier curve with color and number of segments +-- Draw a cubic bezier curve with color and number of segments
+-- param origin The origin of the bezier path.
+-- param control1 The first control of the bezier path.
+-- param control2 The second control of the bezier path.
+-- param destination The destination of the bezier path.
+-- param segments The The number of segments.
+-- param color Set the cubic bezier color. -- @function [parent=#DrawNode] drawCubicBezier -- @param self -- @param #vec2_table origin @@ -173,7 +207,8 @@ -- @return DrawNode#DrawNode self (return value: cc.DrawNode) -------------------------------- --- creates and initialize a DrawNode node +-- creates and initialize a DrawNode node.
+-- return Return an autorelease object. -- @function [parent=#DrawNode] create -- @param self -- @return DrawNode#DrawNode ret (return value: cc.DrawNode) diff --git a/cocos/scripting/lua-bindings/auto/api/EventListenerPhysicsContact.lua b/cocos/scripting/lua-bindings/auto/api/EventListenerPhysicsContact.lua index 02039547f8..3b1272f80b 100644 --- a/cocos/scripting/lua-bindings/auto/api/EventListenerPhysicsContact.lua +++ b/cocos/scripting/lua-bindings/auto/api/EventListenerPhysicsContact.lua @@ -5,19 +5,20 @@ -- @parent_module cc -------------------------------- --- create the listener +-- Create the listener. -- @function [parent=#EventListenerPhysicsContact] create -- @param self -- @return EventListenerPhysicsContact#EventListenerPhysicsContact ret (return value: cc.EventListenerPhysicsContact) -------------------------------- --- +-- Clone an object from this listener. -- @function [parent=#EventListenerPhysicsContact] clone -- @param self -- @return EventListenerPhysicsContact#EventListenerPhysicsContact ret (return value: cc.EventListenerPhysicsContact) -------------------------------- --- +-- Check the listener is available.
+-- return Ture if there's one available callback function at least, false if there's no one. -- @function [parent=#EventListenerPhysicsContact] checkAvailable -- @param self -- @return bool#bool ret (return value: bool) diff --git a/cocos/scripting/lua-bindings/auto/api/EventListenerPhysicsContactWithBodies.lua b/cocos/scripting/lua-bindings/auto/api/EventListenerPhysicsContactWithBodies.lua index 02b608e263..816ab63165 100644 --- a/cocos/scripting/lua-bindings/auto/api/EventListenerPhysicsContactWithBodies.lua +++ b/cocos/scripting/lua-bindings/auto/api/EventListenerPhysicsContactWithBodies.lua @@ -13,7 +13,7 @@ -- @return bool#bool ret (return value: bool) -------------------------------- --- +-- Create the listener. -- @function [parent=#EventListenerPhysicsContactWithBodies] create -- @param self -- @param #cc.PhysicsBody bodyA diff --git a/cocos/scripting/lua-bindings/auto/api/EventListenerPhysicsContactWithGroup.lua b/cocos/scripting/lua-bindings/auto/api/EventListenerPhysicsContactWithGroup.lua index 0222b32314..b56b7f0d3a 100644 --- a/cocos/scripting/lua-bindings/auto/api/EventListenerPhysicsContactWithGroup.lua +++ b/cocos/scripting/lua-bindings/auto/api/EventListenerPhysicsContactWithGroup.lua @@ -13,7 +13,7 @@ -- @return bool#bool ret (return value: bool) -------------------------------- --- +-- Create the listener. -- @function [parent=#EventListenerPhysicsContactWithGroup] create -- @param self -- @param #int group diff --git a/cocos/scripting/lua-bindings/auto/api/EventListenerPhysicsContactWithShapes.lua b/cocos/scripting/lua-bindings/auto/api/EventListenerPhysicsContactWithShapes.lua index 96f49e33c7..d04998ceca 100644 --- a/cocos/scripting/lua-bindings/auto/api/EventListenerPhysicsContactWithShapes.lua +++ b/cocos/scripting/lua-bindings/auto/api/EventListenerPhysicsContactWithShapes.lua @@ -13,7 +13,7 @@ -- @return bool#bool ret (return value: bool) -------------------------------- --- +-- Create the listener. -- @function [parent=#EventListenerPhysicsContactWithShapes] create -- @param self -- @param #cc.PhysicsShape shapeA diff --git a/cocos/scripting/lua-bindings/auto/api/FadeIn.lua b/cocos/scripting/lua-bindings/auto/api/FadeIn.lua index 65d36ab3df..56fdad29d9 100644 --- a/cocos/scripting/lua-bindings/auto/api/FadeIn.lua +++ b/cocos/scripting/lua-bindings/auto/api/FadeIn.lua @@ -5,7 +5,7 @@ -- @parent_module cc -------------------------------- --- +-- js NA -- @function [parent=#FadeIn] setReverseAction -- @param self -- @param #cc.FadeTo ac diff --git a/cocos/scripting/lua-bindings/auto/api/FadeOut.lua b/cocos/scripting/lua-bindings/auto/api/FadeOut.lua index ee53f3037b..af0956e800 100644 --- a/cocos/scripting/lua-bindings/auto/api/FadeOut.lua +++ b/cocos/scripting/lua-bindings/auto/api/FadeOut.lua @@ -5,7 +5,7 @@ -- @parent_module cc -------------------------------- --- +-- js NA -- @function [parent=#FadeOut] setReverseAction -- @param self -- @param #cc.FadeTo ac diff --git a/cocos/scripting/lua-bindings/auto/api/Follow.lua b/cocos/scripting/lua-bindings/auto/api/Follow.lua index 2a733ad9ed..ed9916da57 100644 --- a/cocos/scripting/lua-bindings/auto/api/Follow.lua +++ b/cocos/scripting/lua-bindings/auto/api/Follow.lua @@ -29,7 +29,8 @@ -- @return Follow#Follow ret (return value: cc.Follow) -------------------------------- --- param dt in seconds. +-- param dt in seconds.
+-- js NA -- @function [parent=#Follow] step -- @param self -- @param #float dt diff --git a/cocos/scripting/lua-bindings/auto/api/GLProgram.lua b/cocos/scripting/lua-bindings/auto/api/GLProgram.lua index 39739b1c26..0ff98ec3bc 100644 --- a/cocos/scripting/lua-bindings/auto/api/GLProgram.lua +++ b/cocos/scripting/lua-bindings/auto/api/GLProgram.lua @@ -68,13 +68,14 @@ -- @return GLProgram#GLProgram self (return value: cc.GLProgram) -------------------------------- --- +-- Reload all shaders, this function is designed for android
+-- when opengl context lost, so don't call it. -- @function [parent=#GLProgram] reset -- @param self -- @return GLProgram#GLProgram self (return value: cc.GLProgram) -------------------------------- --- It will add a new attribute to the shader by calling glBindAttribLocation +-- It will add a new attribute to the shader by calling glBindAttribLocation. -- @function [parent=#GLProgram] bindAttribLocation -- @param self -- @param #string attributeName @@ -82,7 +83,7 @@ -- @return GLProgram#GLProgram self (return value: cc.GLProgram) -------------------------------- --- calls glGetAttribLocation +-- Calls glGetAttribLocation. -- @function [parent=#GLProgram] getAttribLocation -- @param self -- @param #string attributeName @@ -95,9 +96,10 @@ -- @return bool#bool ret (return value: bool) -------------------------------- --- Initializes the GLProgram with a vertex and fragment with bytes array
--- js initWithString
--- lua initWithString +-- @{
+-- Create or Initializes the GLProgram with a vertex and fragment with bytes array.
+-- js initWithString.
+-- lua initWithString. -- @function [parent=#GLProgram] createWithByteArrays -- @param self -- @param #char vShaderByteArray @@ -105,7 +107,9 @@ -- @return GLProgram#GLProgram ret (return value: cc.GLProgram) -------------------------------- --- Initializes the GLProgram with a vertex and fragment with contents of filenames
+-- }
+-- {
+-- Create or Initializes the GLProgram with a vertex and fragment with contents of filenames.
-- js init
-- lua init -- @function [parent=#GLProgram] createWithFilenames @@ -115,7 +119,7 @@ -- @return GLProgram#GLProgram ret (return value: cc.GLProgram) -------------------------------- --- +-- Constructor. -- @function [parent=#GLProgram] GLProgram -- @param self -- @return GLProgram#GLProgram self (return value: cc.GLProgram) diff --git a/cocos/scripting/lua-bindings/auto/api/GLProgramCache.lua b/cocos/scripting/lua-bindings/auto/api/GLProgramCache.lua index a40b255c4e..9d5ab2fdd4 100644 --- a/cocos/scripting/lua-bindings/auto/api/GLProgramCache.lua +++ b/cocos/scripting/lua-bindings/auto/api/GLProgramCache.lua @@ -44,6 +44,7 @@ -- @return GLProgramCache#GLProgramCache ret (return value: cc.GLProgramCache) -------------------------------- +-- Constructor.
-- js ctor -- @function [parent=#GLProgramCache] GLProgramCache -- @param self diff --git a/cocos/scripting/lua-bindings/auto/api/Layer.lua b/cocos/scripting/lua-bindings/auto/api/Layer.lua index cca3874464..8b1a51a55a 100644 --- a/cocos/scripting/lua-bindings/auto/api/Layer.lua +++ b/cocos/scripting/lua-bindings/auto/api/Layer.lua @@ -5,7 +5,8 @@ -- @parent_module cc -------------------------------- --- creates a fullscreen black layer +-- Creates a fullscreen black layer.
+-- return An autoreleased Layer object. -- @function [parent=#Layer] create -- @param self -- @return Layer#Layer ret (return value: cc.Layer) diff --git a/cocos/scripting/lua-bindings/auto/api/LayerColor.lua b/cocos/scripting/lua-bindings/auto/api/LayerColor.lua index 3a06c5c0eb..a9b096ecc8 100644 --- a/cocos/scripting/lua-bindings/auto/api/LayerColor.lua +++ b/cocos/scripting/lua-bindings/auto/api/LayerColor.lua @@ -5,7 +5,9 @@ -- @parent_module cc -------------------------------- --- change width and height in Points
+-- Change width and height in Points.
+-- param w The width of layer.
+-- param h The Height of layer.
-- since v0.8 -- @function [parent=#LayerColor] changeWidthAndHeight -- @param self @@ -15,14 +17,14 @@ -------------------------------- -- BlendFunction. Conforms to BlendProtocol protocol
--- js NA
-- lua NA -- @function [parent=#LayerColor] getBlendFunc -- @param self -- @return BlendFunc#BlendFunc ret (return value: cc.BlendFunc) -------------------------------- --- change height in Points +-- Change height in Points.
+-- param h The height of layer. -- @function [parent=#LayerColor] changeHeight -- @param self -- @param #float h @@ -40,7 +42,8 @@ -- @return LayerColor#LayerColor self (return value: cc.LayerColor) -------------------------------- --- change width in Points +-- Change width in Points.
+-- param w The width of layer. -- @function [parent=#LayerColor] changeWidth -- @param self -- @param #float w diff --git a/cocos/scripting/lua-bindings/auto/api/LayerGradient.lua b/cocos/scripting/lua-bindings/auto/api/LayerGradient.lua index a6c9b93db8..66b255c0c8 100644 --- a/cocos/scripting/lua-bindings/auto/api/LayerGradient.lua +++ b/cocos/scripting/lua-bindings/auto/api/LayerGradient.lua @@ -5,80 +5,92 @@ -- @parent_module cc -------------------------------- --- Returns the start color of the gradient +-- Returns the start color of the gradient.
+-- return The start color. -- @function [parent=#LayerGradient] getStartColor -- @param self -- @return color3b_table#color3b_table ret (return value: color3b_table) -------------------------------- --- +-- Get the compressedInterpolation
+-- return The interpolation will be compressed if true. -- @function [parent=#LayerGradient] isCompressedInterpolation -- @param self -- @return bool#bool ret (return value: bool) -------------------------------- --- Returns the start opacity of the gradient +-- Returns the start opacity of the gradient.
+-- return The start opacity. -- @function [parent=#LayerGradient] getStartOpacity -- @param self -- @return unsigned char#unsigned char ret (return value: unsigned char) -------------------------------- -- Sets the directional vector that will be used for the gradient.
--- The default value is vertical direction (0,-1). +-- The default value is vertical direction (0,-1).
+-- param alongVector The direction of gradient. -- @function [parent=#LayerGradient] setVector -- @param self -- @param #vec2_table alongVector -- @return LayerGradient#LayerGradient self (return value: cc.LayerGradient) -------------------------------- --- Returns the start opacity of the gradient +-- Returns the start opacity of the gradient.
+-- param startOpacity The start opacity, from 0 to 255. -- @function [parent=#LayerGradient] setStartOpacity -- @param self -- @param #unsigned char startOpacity -- @return LayerGradient#LayerGradient self (return value: cc.LayerGradient) -------------------------------- --- Whether or not the interpolation will be compressed in order to display all the colors of the gradient both in canonical and non canonical vectors
--- Default: true +-- Whether or not the interpolation will be compressed in order to display all the colors of the gradient both in canonical and non canonical vectors.
+-- Default: true.
+-- param compressedInterpolation The interpolation will be compressed if true. -- @function [parent=#LayerGradient] setCompressedInterpolation -- @param self -- @param #bool compressedInterpolation -- @return LayerGradient#LayerGradient self (return value: cc.LayerGradient) -------------------------------- --- Returns the end opacity of the gradient +-- Returns the end opacity of the gradient.
+-- param endOpacity The end opacity, from 0 to 255. -- @function [parent=#LayerGradient] setEndOpacity -- @param self -- @param #unsigned char endOpacity -- @return LayerGradient#LayerGradient self (return value: cc.LayerGradient) -------------------------------- --- Returns the directional vector used for the gradient +-- Returns the directional vector used for the gradient.
+-- return The direction of gradient. -- @function [parent=#LayerGradient] getVector -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- Sets the end color of the gradient +-- Sets the end color of the gradient.
+-- param endColor The end color. -- @function [parent=#LayerGradient] setEndColor -- @param self -- @param #color3b_table endColor -- @return LayerGradient#LayerGradient self (return value: cc.LayerGradient) -------------------------------- --- Returns the end color of the gradient +-- Returns the end color of the gradient.
+-- return The end color. -- @function [parent=#LayerGradient] getEndColor -- @param self -- @return color3b_table#color3b_table ret (return value: color3b_table) -------------------------------- --- Returns the end opacity of the gradient +-- Returns the end opacity of the gradient.
+-- return The end opacity. -- @function [parent=#LayerGradient] getEndOpacity -- @param self -- @return unsigned char#unsigned char ret (return value: unsigned char) -------------------------------- --- Sets the start color of the gradient +-- Sets the start color of the gradient.
+-- param startColor The start color. -- @function [parent=#LayerGradient] setStartColor -- @param self -- @param #color3b_table startColor diff --git a/cocos/scripting/lua-bindings/auto/api/LayerMultiplex.lua b/cocos/scripting/lua-bindings/auto/api/LayerMultiplex.lua index 2355c330ec..a1c8cd791d 100644 --- a/cocos/scripting/lua-bindings/auto/api/LayerMultiplex.lua +++ b/cocos/scripting/lua-bindings/auto/api/LayerMultiplex.lua @@ -6,22 +6,25 @@ -------------------------------- -- release the current layer and switches to another layer indexed by n.
--- The current (old) layer will be removed from it's parent with 'cleanup=true'. +-- The current (old) layer will be removed from it's parent with 'cleanup=true'.
+-- param n The layer indexed by n will display. -- @function [parent=#LayerMultiplex] switchToAndReleaseMe -- @param self -- @param #int n -- @return LayerMultiplex#LayerMultiplex self (return value: cc.LayerMultiplex) -------------------------------- --- +-- Add a certain layer to LayerMultiplex.
+-- param layer A layer need to be added to the LayerMultiplex. -- @function [parent=#LayerMultiplex] addLayer -- @param self -- @param #cc.Layer layer -- @return LayerMultiplex#LayerMultiplex self (return value: cc.LayerMultiplex) -------------------------------- --- switches to a certain layer indexed by n.
--- The current (old) layer will be removed from it's parent with 'cleanup=true'. +-- Switches to a certain layer indexed by n.
+-- The current (old) layer will be removed from it's parent with 'cleanup=true'.
+-- param n The layer indexed by n will display. -- @function [parent=#LayerMultiplex] switchTo -- @param self -- @param #int n diff --git a/cocos/scripting/lua-bindings/auto/api/MotionStreak.lua b/cocos/scripting/lua-bindings/auto/api/MotionStreak.lua index b81ff7f4d8..62252fb967 100644 --- a/cocos/scripting/lua-bindings/auto/api/MotionStreak.lua +++ b/cocos/scripting/lua-bindings/auto/api/MotionStreak.lua @@ -5,7 +5,7 @@ -- @parent_module cc -------------------------------- --- Remove all living segments of the ribbon +-- Remove all living segments of the ribbon. -- @function [parent=#MotionStreak] reset -- @param self -- @return MotionStreak#MotionStreak self (return value: cc.MotionStreak) @@ -24,7 +24,8 @@ -- @return Texture2D#Texture2D ret (return value: cc.Texture2D) -------------------------------- --- color used for the tint +-- Color used for the tint.
+-- param colors The color used for the tint. -- @function [parent=#MotionStreak] tintWithColor -- @param self -- @param #color3b_table colors @@ -39,7 +40,8 @@ -- @return MotionStreak#MotionStreak self (return value: cc.MotionStreak) -------------------------------- --- +-- Sets the starting position initialized or not.
+-- param bStartingPositionInitialized True if initialized the starting position. -- @function [parent=#MotionStreak] setStartingPositionInitialized -- @param self -- @param #bool bStartingPositionInitialized @@ -53,19 +55,22 @@ -- @return BlendFunc#BlendFunc ret (return value: cc.BlendFunc) -------------------------------- --- +-- Is the starting position initialized or not.
+-- return True if the starting position is initialized. -- @function [parent=#MotionStreak] isStartingPositionInitialized -- @param self -- @return bool#bool ret (return value: bool) -------------------------------- --- When fast mode is enabled, new points are added faster but with lower precision +-- When fast mode is enabled, new points are added faster but with lower precision.
+-- return True if fast mode is enabled. -- @function [parent=#MotionStreak] isFastMode -- @param self -- @return bool#bool ret (return value: bool) -------------------------------- --- +-- Sets fast mode or not.
+-- param bFastMode True if enabled fast mode. -- @function [parent=#MotionStreak] setFastMode -- @param self -- @param #bool bFastMode diff --git a/cocos/scripting/lua-bindings/auto/api/Node.lua b/cocos/scripting/lua-bindings/auto/api/Node.lua index 893bb3af02..70586d979f 100644 --- a/cocos/scripting/lua-bindings/auto/api/Node.lua +++ b/cocos/scripting/lua-bindings/auto/api/Node.lua @@ -35,12 +35,13 @@ -------------------------------- -- Sets the Y rotation (angle) of the node in degrees which performs a vertical rotational skew.
--- The difference between `setRotationalSkew()` and `setSkew()` is that the first one simulate Flash's skew functionality
+-- The difference between `setRotationalSkew()` and `setSkew()` is that the first one simulate Flash's skew functionality,
-- while the second one uses the real skew function.
-- 0 is the default rotation angle.
-- Positive values rotate node clockwise, and negative values for anti-clockwise.
-- param rotationY The Y rotation in degrees.
--- warning The physics body doesn't support this. +-- warning The physics body doesn't support this.
+-- js setRotationY -- @function [parent=#Node] setRotationSkewY -- @param self -- @param #float rotationY @@ -75,15 +76,17 @@ -- @return Node#Node self (return value: cc.Node) -------------------------------- --- Pauses all scheduled selectors, actions and event listeners..
--- This method is called internally by onExit +-- Pauses all scheduled selectors, actions and event listeners.
+-- This method is called internally by onExit. -- @function [parent=#Node] pause -- @param self -- @return Node#Node self (return value: cc.Node) -------------------------------- -- Converts a local Vec2 to world space coordinates.The result is in Points.
--- treating the returned/received node point as anchor relative. +-- treating the returned/received node point as anchor relative.
+-- param nodePoint A given coordinate.
+-- return A point in world space coordinates, anchor relative. -- @function [parent=#Node] convertToWorldSpaceAR -- @param self -- @param #vec2_table nodePoint @@ -98,9 +101,9 @@ -- @return bool#bool ret (return value: bool) -------------------------------- --- Gets a child from the container with its name
+-- Gets a child from the container with its name.
-- param name An identifier to find the child node.
--- return a Node object whose name equals to the input parameter
+-- return a Node object whose name equals to the input parameter.
-- since v3.2 -- @function [parent=#Node] getChildByName -- @param self @@ -133,7 +136,7 @@ -------------------------------- -- Changes the scale factor on Z axis of this node
-- The Default value is 1.0 if you haven't changed it before.
--- param scaleY The scale factor on Y axis.
+-- param scaleZ The scale factor on Z axis.
-- warning The physics body doesn't support this. -- @function [parent=#Node] setScaleZ -- @param self @@ -162,12 +165,13 @@ -------------------------------- -- Sets the X rotation (angle) of the node in degrees which performs a horizontal rotational skew.
--- The difference between `setRotationalSkew()` and `setSkew()` is that the first one simulate Flash's skew functionality
+-- The difference between `setRotationalSkew()` and `setSkew()` is that the first one simulate Flash's skew functionality,
-- while the second one uses the real skew function.
-- 0 is the default rotation angle.
-- Positive values rotate node clockwise, and negative values for anti-clockwise.
-- param rotationX The X rotation in degrees which performs a horizontal rotational skew.
--- warning The physics body doesn't support this. +-- warning The physics body doesn't support this.
+-- js setRotationX -- @function [parent=#Node] setRotationSkewX -- @param self -- @param #float rotationX @@ -181,7 +185,7 @@ -- @return Node#Node self (return value: cc.Node) -------------------------------- --- removes all components +-- Removes all components -- @function [parent=#Node] removeAllComponents -- @param self -- @return Node#Node self (return value: cc.Node) @@ -210,20 +214,23 @@ -------------------------------- -- / @{/ @name GLProgram
--- Return the GLProgram (shader) currently used for this node
--- return The GLProgram (shader) currently used for this node +-- Return the GLProgram (shader) currently used for this node.
+-- return The GLProgram (shader) currently used for this node. -- @function [parent=#Node] getGLProgram -- @param self -- @return GLProgram#GLProgram ret (return value: cc.GLProgram) -------------------------------- --- Returns the world affine transform matrix. The matrix is in Pixels. +-- Returns the world affine transform matrix. The matrix is in Pixels.
+-- return transformation matrix, in pixels. -- @function [parent=#Node] getNodeToWorldTransform -- @param self -- @return mat4_table#mat4_table ret (return value: mat4_table) -------------------------------- --- returns the position (X,Y,Z) in its parent's coordinate system +-- Returns the position (X,Y,Z) in its parent's coordinate system.
+-- return The position (X, Y, and Z) in its parent's coordinate system.
+-- js NA -- @function [parent=#Node] getPosition3D -- @param self -- @return vec3_table#vec3_table ret (return value: vec3_table) @@ -231,7 +238,7 @@ -------------------------------- -- Removes a child from the container. It will also cleanup all running actions depending on the cleanup parameter.
-- param child The child node which will be removed.
--- param cleanup true if all running actions and callbacks on the child node will be cleanup, false otherwise. +-- param cleanup True if all running actions and callbacks on the child node will be cleanup, false otherwise. -- @function [parent=#Node] removeChild -- @param self -- @param #cc.Node child @@ -239,7 +246,9 @@ -- @return Node#Node self (return value: cc.Node) -------------------------------- --- Converts a Vec2 to world space coordinates. The result is in Points. +-- Converts a Vec2 to world space coordinates. The result is in Points.
+-- param nodePoint A given coordinate.
+-- return A point in world space coordinates. -- @function [parent=#Node] convertToWorldSpace -- @param self -- @param #vec2_table nodePoint @@ -248,13 +257,15 @@ -------------------------------- -- Returns the Scene that contains the Node.
-- It returns `nullptr` if the node doesn't belong to any Scene.
--- This function recursively calls parent->getScene() until parent is a Scene object. The results are not cached. It is that the user caches the results in case this functions is being used inside a loop. +-- This function recursively calls parent->getScene() until parent is a Scene object. The results are not cached. It is that the user caches the results in case this functions is being used inside a loop.
+-- return The Scene that contains the node. -- @function [parent=#Node] getScene -- @param self -- @return Scene#Scene ret (return value: cc.Scene) -------------------------------- --- +-- Get the event dispatcher of scene.
+-- return The event dispatcher of scene. -- @function [parent=#Node] getEventDispatcher -- @param self -- @return EventDispatcher#EventDispatcher ret (return value: cc.EventDispatcher) @@ -274,7 +285,8 @@ -- @return Node#Node self (return value: cc.Node) -------------------------------- --- +-- Set the GLProgramState for this node.
+-- param glProgramState The GLProgramState for this node. -- @function [parent=#Node] setGLProgramState -- @param self -- @param #cc.GLProgramState glProgramState @@ -295,7 +307,8 @@ -- Size s = getParent()->getContentSize();
-- _position = pos * s;
-- }
--- endcode +-- endcode
+-- param position The normalized position (x,y) of the node, using value between 0 and 1. -- @function [parent=#Node] setNormalizedPosition -- @param self -- @param #vec2_table position @@ -309,7 +322,9 @@ -- @return Node#Node self (return value: cc.Node) -------------------------------- --- convenience methods which take a Touch instead of Vec2 +-- convenience methods which take a Touch instead of Vec2.
+-- param touch A given touch.
+-- return A point in world space coordinates. -- @function [parent=#Node] convertTouchToNodeSpace -- @param self -- @param #cc.Touch touch @@ -336,8 +351,8 @@ -- @return bool#bool ret (return value: bool) -------------------------------- --- Sets the parent node
--- param parent A pointer to the parent node +-- Sets the parent node.
+-- param parent A pointer to the parent node. -- @function [parent=#Node] setParent -- @param self -- @param #cc.Node parent @@ -353,33 +368,40 @@ -------------------------------- -- Resumes all scheduled selectors, actions and event listeners.
--- This method is called internally by onEnter +-- This method is called internally by onEnter. -- @function [parent=#Node] resume -- @param self -- @return Node#Node self (return value: cc.Node) -------------------------------- --- returns the rotation (X,Y,Z) in degrees. +-- Returns the rotation (X,Y,Z) in degrees.
+-- return The rotation of the node in 3d.
+-- js NA -- @function [parent=#Node] getRotation3D -- @param self -- @return vec3_table#vec3_table ret (return value: vec3_table) -------------------------------- -- Returns the matrix that transform the node's (local) space coordinates into the parent's space coordinates.
--- The matrix is in Pixels. +-- The matrix is in Pixels.
+-- return The transformation matrix. -- @function [parent=#Node] getNodeToParentTransform -- @param self -- @return mat4_table#mat4_table ret (return value: mat4_table) -------------------------------- --- converts a Touch (world coordinates) into a local coordinate. This method is AR (Anchor Relative). +-- converts a Touch (world coordinates) into a local coordinate. This method is AR (Anchor Relative).
+-- param touch A given touch.
+-- return A point in world space coordinates, anchor relative. -- @function [parent=#Node] convertTouchToNodeSpaceAR -- @param self -- @param #cc.Touch touch -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- Converts a Vec2 to node (local) space coordinates. The result is in Points. +-- Converts a Vec2 to node (local) space coordinates. The result is in Points.
+-- param worldPoint A given coordinate.
+-- return A point in node (local) space coordinates. -- @function [parent=#Node] convertToNodeSpace -- @param self -- @param #vec2_table worldPoint @@ -405,7 +427,7 @@ -------------------------------- -- Reorders a child according to a new z value.
-- param child An already added child node. It MUST be already added.
--- param localZOrder Z order for drawing priority. Please refer to setLocalZOrder(int) +-- param localZOrder Z order for drawing priority. Please refer to setLocalZOrder(int). -- @function [parent=#Node] reorderChild -- @param self -- @param #cc.Node child @@ -415,9 +437,9 @@ -------------------------------- -- Sets whether the anchor point will be (0,0) when you position this node.
-- This is an internal method, only used by Layer and Scene. Don't call it outside framework.
--- The default value is false, while in Layer and Scene are true
--- param ignore true if anchor point will be (0,0) when you position this node
--- todo This method should be renamed as setIgnoreAnchorPointForPosition(bool) or something with "set" +-- The default value is false, while in Layer and Scene are true.
+-- param ignore true if anchor point will be (0,0) when you position this node.
+-- todo This method should be renamed as setIgnoreAnchorPointForPosition(bool) or something with "set". -- @function [parent=#Node] ignoreAnchorPointForPosition -- @param self -- @param #bool ignore @@ -428,7 +450,7 @@ -- The difference between `setRotationalSkew()` and `setSkew()` is that the first one simulate Flash's skew functionality
-- while the second one uses the real skew function.
-- This angle describes the shear distortion in the Y direction.
--- Thus, it is the angle between the X coordinate and the bottom edge of the shape
+-- Thus, it is the angle between the X coordinate and the bottom edge of the shape.
-- The default skewY angle is 0. Positive values distort the node in a CCW direction.
-- param skewY The Y skew angle of the node in degrees.
-- warning The physics body doesn't support this. @@ -439,11 +461,12 @@ -------------------------------- -- Sets the 'z' coordinate in the position. It is the OpenGL Z vertex value.
--- The OpenGL depth buffer and depth testing are disabled by default. You need to turn them on
--- in order to use this property correctly.
+-- The OpenGL depth buffer and depth testing are disabled by default. You need to turn them on.
+-- In order to use this property correctly.
-- `setPositionZ()` also sets the `setGlobalZValue()` with the positionZ as value.
-- see `setGlobalZValue()`
--- param vertexZ OpenGL Z vertex of this node. +-- param positionZ OpenGL Z vertex of this node.
+-- js setVertexZ -- @function [parent=#Node] setPositionZ -- @param self -- @param #float positionZ @@ -451,8 +474,10 @@ -------------------------------- -- Sets the rotation (X,Y,Z) in degrees.
--- Useful for 3d rotations
--- warning The physics body doesn't support this. +-- Useful for 3d rotations.
+-- warning The physics body doesn't support this.
+-- param rotation The rotation of the node in 3d.
+-- js NA -- @function [parent=#Node] setRotation3D -- @param self -- @param #vec3_table rotation @@ -460,14 +485,17 @@ -------------------------------- -- Gets/Sets x or y coordinate individually for position.
--- These methods are used in Lua and Javascript Bindings +-- These methods are used in Lua and Javascript Bindings
+-- Sets the x coordinate of the node in its parent's coordinate system.
+-- param x The x coordinate of the node. -- @function [parent=#Node] setPositionX -- @param self -- @param #float x -- @return Node#Node self (return value: cc.Node) -------------------------------- --- Sets the Transformation matrix manually. +-- Sets the transformation matrix manually.
+-- param transform A given transformation matrix. -- @function [parent=#Node] setNodeToParentTransform -- @param self -- @param #mat4_table transform @@ -487,7 +515,7 @@ -- If you are running 1 Sequence of 7 actions, it will return 1.
-- If you are running 7 Sequences of 2 actions, it will return 7.
-- todo Rename to getNumberOfRunningActions()
--- return The number of actions that are running plus the ones that are schedule to run +-- return The number of actions that are running plus the ones that are schedule to run. -- @function [parent=#Node] getNumberOfRunningActions -- @param self -- @return long#long ret (return value: long) @@ -502,7 +530,7 @@ -- @return Node#Node self (return value: cc.Node) -------------------------------- --- Determines if the node is visible
+-- Determines if the node is visible.
-- see `setVisible(bool)`
-- return true if the node is visible, false if the node is hidden. -- @function [parent=#Node] isVisible @@ -510,7 +538,7 @@ -- @return bool#bool ret (return value: bool) -------------------------------- --- Returns the amount of children
+-- Returns the amount of children.
-- return The amount of children. -- @function [parent=#Node] getChildrenCount -- @param self @@ -518,14 +546,18 @@ -------------------------------- -- Converts a Vec2 to node (local) space coordinates. The result is in Points.
--- treating the returned/received node point as anchor relative. +-- treating the returned/received node point as anchor relative.
+-- param worldPoint A given coordinate.
+-- return A point in node (local) space coordinates, anchor relative. -- @function [parent=#Node] convertToNodeSpaceAR -- @param self -- @param #vec2_table worldPoint -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- adds a component +-- Adds a component.
+-- param component A given component.
+-- return True if added success. -- @function [parent=#Node] addComponent -- @param self -- @param #cc.Component component @@ -533,9 +565,9 @@ -------------------------------- -- Executes an action, and returns the action that is executed.
--- This node becomes the action's target. Refer to Action::getTarget()
+-- This node becomes the action's target. Refer to Action::getTarget().
-- warning Actions don't retain their target.
--- return An Action pointer +-- param An Action pointer -- @function [parent=#Node] runAction -- @param self -- @param #cc.Action action @@ -575,9 +607,9 @@ -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- Removes a child from the container by tag value. It will also cleanup all running actions depending on the cleanup parameter
--- param name A string that identifies a child node
--- param cleanup true if all running actions and callbacks on the child node will be cleanup, false otherwise. +-- Removes a child from the container by tag value. It will also cleanup all running actions depending on the cleanup parameter.
+-- param name A string that identifies a child node.
+-- param cleanup True if all running actions and callbacks on the child node will be cleanup, false otherwise. -- @function [parent=#Node] removeChildByName -- @param self -- @param #string name @@ -585,7 +617,8 @@ -- @return Node#Node self (return value: cc.Node) -------------------------------- --- +-- Return the GLProgramState currently used for this node.
+-- return The GLProgramState currently used for this node. -- @function [parent=#Node] getGLProgramState -- @param self -- @return GLProgramState#GLProgramState ret (return value: cc.GLProgramState) @@ -698,7 +731,7 @@ -------------------------------- -- Returns whether or not the node is "running".
--- If the node is running it will accept event callbacks like onEnter(), onExit(), update()
+-- If the node is running it will accept event callbacks like onEnter(), onExit(), update().
-- return Whether or not the node is running. -- @function [parent=#Node] isRunning -- @param self @@ -714,27 +747,30 @@ -------------------------------- -- Gets position Z coordinate of this node.
-- see setPositionZ(float)
--- return the position Z coordinate of this node. +-- return The position Z coordinate of this node.
+-- js getVertexZ -- @function [parent=#Node] getPositionZ -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Gets the y coordinate of the node in its parent's coordinate system.
+-- return The y coordinate of the node. -- @function [parent=#Node] getPositionY -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Gets the x coordinate of the node in its parent's coordinate system.
+-- return The x coordinate of the node. -- @function [parent=#Node] getPositionX -- @param self -- @return float#float ret (return value: float) -------------------------------- --- Removes a child from the container by tag value. It will also cleanup all running actions depending on the cleanup parameter
--- param tag An interger number that identifies a child node
--- param cleanup true if all running actions and callbacks on the child node will be cleanup, false otherwise.
+-- Removes a child from the container by tag value. It will also cleanup all running actions depending on the cleanup parameter.
+-- param tag An interger number that identifies a child node.
+-- param cleanup True if all running actions and callbacks on the child node will be cleanup, false otherwise.
-- Please use `removeChildByName` instead. -- @function [parent=#Node] removeChildByTag -- @param self @@ -743,7 +779,8 @@ -- @return Node#Node self (return value: cc.Node) -------------------------------- --- +-- Sets the y coordinate of the node in its parent's coordinate system.
+-- param y The y coordinate of the node. -- @function [parent=#Node] setPositionY -- @param self -- @param #float y @@ -763,8 +800,8 @@ -- @return Node#Node self (return value: cc.Node) -------------------------------- --- Sets whether the node is visible
--- The default value is true, a node is default to visible
+-- Sets whether the node is visible.
+-- The default value is true, a node is default to visible.
-- param visible true if the node is visible, false if the node is hidden. -- @function [parent=#Node] setVisible -- @param self @@ -773,7 +810,8 @@ -------------------------------- -- Returns the matrix that transform parent's space coordinates to the node's (local) space coordinates.
--- The matrix is in Pixels. +-- The matrix is in Pixels.
+-- return The transformation matrix. -- @function [parent=#Node] getParentToNodeTransform -- @param self -- @return mat4_table#mat4_table ret (return value: mat4_table) @@ -800,7 +838,8 @@ -- And if ClippingNode is one of the ancestors, then "global Z order" will be relative to the ClippingNode.
-- see `setLocalZOrder()`
-- see `setVertexZ()`
--- since v3.0 +-- since v3.0
+-- param globalZOrder The global Z order value. -- @function [parent=#Node] setGlobalZOrder -- @param self -- @param #float globalZOrder @@ -816,10 +855,10 @@ -- @return Node#Node self (return value: cc.Node) -------------------------------- --- Gets a child from the container with its tag
+-- Gets a child from the container with its tag.
-- param tag An identifier to find the child node.
--- return a Node object whose tag equals to the input parameter
--- Please use `getChildByName()` instead +-- return a Node object whose tag equals to the input parameter.
+-- Please use `getChildByName()` instead. -- @function [parent=#Node] getChildByTag -- @param self -- @param #int tag @@ -868,7 +907,8 @@ -- And Nodes that have LocalZOder values < 0 are the "left" subtree
-- While Nodes with LocalZOder >=0 are the "right" subtree.
-- see `setGlobalZOrder`
--- see `setVertexZ` +-- see `setVertexZ`
+-- param localZOrder The local Z order value. -- @function [parent=#Node] setLocalZOrder -- @param self -- @param #int localZOrder @@ -902,7 +942,9 @@ -------------------------------- -- / @{/ @name component functions
--- gets a component by its name +-- Gets a component by its name.
+-- param name A given name of component.
+-- return The Component by name. -- @function [parent=#Node] getComponent -- @param self -- @param #string name @@ -938,7 +980,8 @@ -- @return rect_table#rect_table ret (return value: rect_table) -------------------------------- --- +-- Set event dispatcher for scene.
+-- param dispatcher The event dispatcher of scene. -- @function [parent=#Node] setEventDispatcher -- @param self -- @param #cc.EventDispatcher dispatcher @@ -963,12 +1006,12 @@ -- @return Node#Node self (return value: cc.Node) -------------------------------- --- Returns a user assigned Object
+-- Returns a user assigned Object.
-- Similar to UserData, but instead of holding a void* it holds an object.
-- The UserObject will be retained once in this method,
-- and the previous UserObject (if existed) will be released.
-- The UserObject will be released in Node's destructor.
--- param userObject A user assigned Object +-- param userObject A user assigned Object. -- @function [parent=#Node] setUserObject -- @param self -- @param #cc.Ref userObject @@ -983,14 +1026,17 @@ -- @return Node#Node self (return value: cc.Node) -------------------------------- --- Sets the position (X, Y, and Z) in its parent's coordinate system +-- Sets the position (X, Y, and Z) in its parent's coordinate system.
+-- param position The position (X, Y, and Z) in its parent's coordinate system.
+-- js NA -- @function [parent=#Node] setPosition3D -- @param self -- @param #vec3_table position -- @return Node#Node self (return value: cc.Node) -------------------------------- --- +-- Update method will be called automatically every frame if "scheduleUpdate" is called, and the node is "live".
+-- param delta In seconds. -- @function [parent=#Node] update -- @param self -- @param #float delta @@ -999,13 +1045,14 @@ -------------------------------- -- Sorts the children array once before drawing, instead of every time when a child is added or reordered.
-- This appraoch can improves the performance massively.
--- note Don't call this manually unless a child added needs to be removed in the same frame +-- note Don't call this manually unless a child added needs to be removed in the same frame. -- @function [parent=#Node] sortAllChildren -- @param self -- @return Node#Node self (return value: cc.Node) -------------------------------- --- Returns the inverse world affine transform matrix. The matrix is in Pixels. +-- Returns the inverse world affine transform matrix. The matrix is in Pixels.
+-- return The transformation matrix. -- @function [parent=#Node] getWorldToNodeTransform -- @param self -- @return mat4_table#mat4_table ret (return value: mat4_table) @@ -1017,7 +1064,7 @@ -- code
-- node->setGLrProgram(GLProgramCache::getInstance()->getProgram(GLProgram::SHADER_NAME_POSITION_TEXTURE_COLOR));
-- endcode
--- param shaderProgram The shader program +-- param glprogram The shader program. -- @function [parent=#Node] setGLProgram -- @param self -- @param #cc.GLProgram glprogram @@ -1033,7 +1080,8 @@ -- @return float#float ret (return value: float) -------------------------------- --- returns the normalized position +-- Returns the normalized position.
+-- return The normalized position. -- @function [parent=#Node] getNormalizedPosition -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) @@ -1041,7 +1089,8 @@ -------------------------------- -- Gets the X rotation (angle) of the node in degrees which performs a horizontal rotation skew.
-- see `setRotationSkewX(float)`
--- return The X rotation in degrees. +-- return The X rotation in degrees.
+-- js getRotationX -- @function [parent=#Node] getRotationSkewX -- @param self -- @return float#float ret (return value: float) @@ -1049,7 +1098,8 @@ -------------------------------- -- Gets the Y rotation (angle) of the node in degrees which performs a vertical rotational skew.
-- see `setRotationSkewY(float)`
--- return The Y rotation in degrees. +-- return The Y rotation in degrees.
+-- js getRotationY -- @function [parent=#Node] getRotationSkewY -- @param self -- @return float#float ret (return value: float) diff --git a/cocos/scripting/lua-bindings/auto/api/NodeGrid.lua b/cocos/scripting/lua-bindings/auto/api/NodeGrid.lua index 329faf3ebb..f98aead2c5 100644 --- a/cocos/scripting/lua-bindings/auto/api/NodeGrid.lua +++ b/cocos/scripting/lua-bindings/auto/api/NodeGrid.lua @@ -5,7 +5,8 @@ -- @parent_module cc -------------------------------- --- +-- Set the Grid Target.
+-- param target A Node is used to set the Grid Target. -- @function [parent=#NodeGrid] setTarget -- @param self -- @param #cc.Node target @@ -19,15 +20,16 @@ -- @return GridBase#GridBase ret (return value: cc.GridBase) -------------------------------- --- Changes a grid object that is used when applying effects
--- param grid A Grid object that is used when applying effects +-- Changes a grid object that is used when applying effects.
+-- param grid A Grid object that is used when applying effects. -- @function [parent=#NodeGrid] setGrid -- @param self -- @param #cc.GridBase grid -- @return NodeGrid#NodeGrid self (return value: cc.NodeGrid) -------------------------------- --- +-- Create a Grid Node.
+-- return An autorelease Grid Node. -- @function [parent=#NodeGrid] create -- @param self -- @return NodeGrid#NodeGrid ret (return value: cc.NodeGrid) diff --git a/cocos/scripting/lua-bindings/auto/api/PageTurn3D.lua b/cocos/scripting/lua-bindings/auto/api/PageTurn3D.lua index 3825728c64..e4ba02454a 100644 --- a/cocos/scripting/lua-bindings/auto/api/PageTurn3D.lua +++ b/cocos/scripting/lua-bindings/auto/api/PageTurn3D.lua @@ -22,7 +22,7 @@ -- @return PageTurn3D#PageTurn3D ret (return value: cc.PageTurn3D) -------------------------------- --- +-- js NA -- @function [parent=#PageTurn3D] getGrid -- @param self -- @return GridBase#GridBase ret (return value: cc.GridBase) diff --git a/cocos/scripting/lua-bindings/auto/api/ParallaxNode.lua b/cocos/scripting/lua-bindings/auto/api/ParallaxNode.lua index 463477d9d9..164ddde815 100644 --- a/cocos/scripting/lua-bindings/auto/api/ParallaxNode.lua +++ b/cocos/scripting/lua-bindings/auto/api/ParallaxNode.lua @@ -5,7 +5,11 @@ -- @parent_module cc -------------------------------- --- +-- Adds a child to the container with a local z-order, parallax ratio and position offset.
+-- param child A child node.
+-- param z Z order for drawing priority.
+-- param parallaxRatio A given parallax ratio.
+-- param positionOffset A given position offset. -- @function [parent=#ParallaxNode] addChild -- @param self -- @param #cc.Node child @@ -22,7 +26,8 @@ -- @return ParallaxNode#ParallaxNode self (return value: cc.ParallaxNode) -------------------------------- --- +-- Create a Parallax node.
+-- return An autoreleased ParallaxNode object. -- @function [parent=#ParallaxNode] create -- @param self -- @return ParallaxNode#ParallaxNode ret (return value: cc.ParallaxNode) diff --git a/cocos/scripting/lua-bindings/auto/api/ParticleBatchNode.lua b/cocos/scripting/lua-bindings/auto/api/ParticleBatchNode.lua index a49cae6c5a..79d7d865a5 100644 --- a/cocos/scripting/lua-bindings/auto/api/ParticleBatchNode.lua +++ b/cocos/scripting/lua-bindings/auto/api/ParticleBatchNode.lua @@ -12,7 +12,8 @@ -- @return ParticleBatchNode#ParticleBatchNode self (return value: cc.ParticleBatchNode) -------------------------------- --- disables a particle by inserting a 0'd quad into the texture atlas +-- Disables a particle by inserting a 0'd quad into the texture atlas.
+-- param particleIndex The index of the particle. -- @function [parent=#ParticleBatchNode] disableParticle -- @param self -- @param #int particleIndex @@ -25,7 +26,8 @@ -- @return Texture2D#Texture2D ret (return value: cc.Texture2D) -------------------------------- --- Sets the texture atlas used for drawing the quads +-- Sets the texture atlas used for drawing the quads.
+-- param atlas The texture atlas used for drawing the quads. -- @function [parent=#ParticleBatchNode] setTextureAtlas -- @param self -- @param #cc.TextureAtlas atlas @@ -50,7 +52,8 @@ -- @return ParticleBatchNode#ParticleBatchNode self (return value: cc.ParticleBatchNode) -------------------------------- --- Gets the texture atlas used for drawing the quads +-- Gets the texture atlas used for drawing the quads.
+-- return The texture atlas used for drawing the quads. -- @function [parent=#ParticleBatchNode] getTextureAtlas -- @param self -- @return TextureAtlas#TextureAtlas ret (return value: cc.TextureAtlas) @@ -63,7 +66,9 @@ -- @return BlendFunc#BlendFunc ret (return value: cc.BlendFunc) -------------------------------- --- Inserts a child into the ParticleBatchNode +-- Inserts a child into the ParticleBatchNode.
+-- param system A given particle system.
+-- param index The insert index. -- @function [parent=#ParticleBatchNode] insertChild -- @param self -- @param #cc.ParticleSystem system @@ -71,7 +76,9 @@ -- @return ParticleBatchNode#ParticleBatchNode self (return value: cc.ParticleBatchNode) -------------------------------- --- +-- Remove a child of the ParticleBatchNode.
+-- param index The index of the child.
+-- param doCleanup True if all actions and callbacks on this node should be removed, false otherwise. -- @function [parent=#ParticleBatchNode] removeChildAtIndex -- @param self -- @param #int index @@ -79,7 +86,10 @@ -- @return ParticleBatchNode#ParticleBatchNode self (return value: cc.ParticleBatchNode) -------------------------------- --- initializes the particle system with the name of a file on disk (for a list of supported formats look at the Texture2D class), a capacity of particles +-- Create the particle system with the name of a file on disk (for a list of supported formats look at the Texture2D class), a capacity of particles.
+-- param fileImage A given file name.
+-- param capacity A capacity of particles.
+-- return An autoreleased ParticleBatchNode object. -- @function [parent=#ParticleBatchNode] create -- @param self -- @param #string fileImage @@ -87,7 +97,10 @@ -- @return ParticleBatchNode#ParticleBatchNode ret (return value: cc.ParticleBatchNode) -------------------------------- --- initializes the particle system with Texture2D, a capacity of particles, which particle system to use +-- Create the particle system with Texture2D, a capacity of particles, which particle system to use.
+-- param tex A given texture.
+-- param capacity A capacity of particles.
+-- return An autoreleased ParticleBatchNode object. -- @function [parent=#ParticleBatchNode] createWithTexture -- @param self -- @param #cc.Texture2D tex diff --git a/cocos/scripting/lua-bindings/auto/api/ParticleExplosion.lua b/cocos/scripting/lua-bindings/auto/api/ParticleExplosion.lua index 5fded9bb0f..02179d8e3a 100644 --- a/cocos/scripting/lua-bindings/auto/api/ParticleExplosion.lua +++ b/cocos/scripting/lua-bindings/auto/api/ParticleExplosion.lua @@ -5,13 +5,16 @@ -- @parent_module cc -------------------------------- --- +-- Create a explosion particle system.
+-- return An autoreleased ParticleExplosion object. -- @function [parent=#ParticleExplosion] create -- @param self -- @return ParticleExplosion#ParticleExplosion ret (return value: cc.ParticleExplosion) -------------------------------- --- +-- Create a explosion particle system withe a fixed number of particles.
+-- param numberOfParticles A given number of particles.
+-- return An autoreleased ParticleExplosion object. -- @function [parent=#ParticleExplosion] createWithTotalParticles -- @param self -- @param #int numberOfParticles diff --git a/cocos/scripting/lua-bindings/auto/api/ParticleFire.lua b/cocos/scripting/lua-bindings/auto/api/ParticleFire.lua index d26181214a..0f338c9a13 100644 --- a/cocos/scripting/lua-bindings/auto/api/ParticleFire.lua +++ b/cocos/scripting/lua-bindings/auto/api/ParticleFire.lua @@ -5,13 +5,16 @@ -- @parent_module cc -------------------------------- --- +-- Create a fire particle system.
+-- return An autoreleased ParticleFire object. -- @function [parent=#ParticleFire] create -- @param self -- @return ParticleFire#ParticleFire ret (return value: cc.ParticleFire) -------------------------------- --- +-- Create a fire particle system withe a fixed number of particles.
+-- param numberOfParticles A given number of particles.
+-- return An autoreleased ParticleFire object. -- @function [parent=#ParticleFire] createWithTotalParticles -- @param self -- @param #int numberOfParticles diff --git a/cocos/scripting/lua-bindings/auto/api/ParticleFireworks.lua b/cocos/scripting/lua-bindings/auto/api/ParticleFireworks.lua index cf8cc88409..94370f3c93 100644 --- a/cocos/scripting/lua-bindings/auto/api/ParticleFireworks.lua +++ b/cocos/scripting/lua-bindings/auto/api/ParticleFireworks.lua @@ -5,13 +5,16 @@ -- @parent_module cc -------------------------------- --- +-- Create a fireworks particle system.
+-- return An autoreleased ParticleFireworks object. -- @function [parent=#ParticleFireworks] create -- @param self -- @return ParticleFireworks#ParticleFireworks ret (return value: cc.ParticleFireworks) -------------------------------- --- +-- Create a fireworks particle system withe a fixed number of particles.
+-- param numberOfParticles A given number of particles.
+-- return An autoreleased ParticleFireworks object. -- @function [parent=#ParticleFireworks] createWithTotalParticles -- @param self -- @param #int numberOfParticles diff --git a/cocos/scripting/lua-bindings/auto/api/ParticleFlower.lua b/cocos/scripting/lua-bindings/auto/api/ParticleFlower.lua index 1d69ebf5ec..180885880a 100644 --- a/cocos/scripting/lua-bindings/auto/api/ParticleFlower.lua +++ b/cocos/scripting/lua-bindings/auto/api/ParticleFlower.lua @@ -5,13 +5,16 @@ -- @parent_module cc -------------------------------- --- +-- Create a flower particle system.
+-- return An autoreleased ParticleFlower object. -- @function [parent=#ParticleFlower] create -- @param self -- @return ParticleFlower#ParticleFlower ret (return value: cc.ParticleFlower) -------------------------------- --- +-- Create a flower particle system withe a fixed number of particles.
+-- param numberOfParticles A given number of particles.
+-- return An autoreleased ParticleFlower object. -- @function [parent=#ParticleFlower] createWithTotalParticles -- @param self -- @param #int numberOfParticles diff --git a/cocos/scripting/lua-bindings/auto/api/ParticleGalaxy.lua b/cocos/scripting/lua-bindings/auto/api/ParticleGalaxy.lua index 5ec68f2b85..1487b579c3 100644 --- a/cocos/scripting/lua-bindings/auto/api/ParticleGalaxy.lua +++ b/cocos/scripting/lua-bindings/auto/api/ParticleGalaxy.lua @@ -5,13 +5,16 @@ -- @parent_module cc -------------------------------- --- +-- Create a galaxy particle system.
+-- return An autoreleased ParticleGalaxy object. -- @function [parent=#ParticleGalaxy] create -- @param self -- @return ParticleGalaxy#ParticleGalaxy ret (return value: cc.ParticleGalaxy) -------------------------------- --- +-- Create a galaxy particle system withe a fixed number of particles.
+-- param numberOfParticles A given number of particles.
+-- return An autoreleased ParticleGalaxy object. -- @function [parent=#ParticleGalaxy] createWithTotalParticles -- @param self -- @param #int numberOfParticles diff --git a/cocos/scripting/lua-bindings/auto/api/ParticleMeteor.lua b/cocos/scripting/lua-bindings/auto/api/ParticleMeteor.lua index ed1c10d29f..48355435ef 100644 --- a/cocos/scripting/lua-bindings/auto/api/ParticleMeteor.lua +++ b/cocos/scripting/lua-bindings/auto/api/ParticleMeteor.lua @@ -5,13 +5,16 @@ -- @parent_module cc -------------------------------- --- +-- Create a meteor particle system.
+-- return An autoreleased ParticleMeteor object. -- @function [parent=#ParticleMeteor] create -- @param self -- @return ParticleMeteor#ParticleMeteor ret (return value: cc.ParticleMeteor) -------------------------------- --- +-- Create a meteor particle system withe a fixed number of particles.
+-- param numberOfParticles A given number of particles.
+-- return An autoreleased ParticleMeteor object. -- @function [parent=#ParticleMeteor] createWithTotalParticles -- @param self -- @param #int numberOfParticles diff --git a/cocos/scripting/lua-bindings/auto/api/ParticleRain.lua b/cocos/scripting/lua-bindings/auto/api/ParticleRain.lua index 602a43e5fc..9c2a2b778e 100644 --- a/cocos/scripting/lua-bindings/auto/api/ParticleRain.lua +++ b/cocos/scripting/lua-bindings/auto/api/ParticleRain.lua @@ -5,13 +5,16 @@ -- @parent_module cc -------------------------------- --- +-- Create a rain particle system.
+-- return An autoreleased ParticleRain object. -- @function [parent=#ParticleRain] create -- @param self -- @return ParticleRain#ParticleRain ret (return value: cc.ParticleRain) -------------------------------- --- +-- Create a rain particle system withe a fixed number of particles.
+-- param numberOfParticles A given number of particles.
+-- return An autoreleased ParticleRain object. -- @function [parent=#ParticleRain] createWithTotalParticles -- @param self -- @param #int numberOfParticles diff --git a/cocos/scripting/lua-bindings/auto/api/ParticleSmoke.lua b/cocos/scripting/lua-bindings/auto/api/ParticleSmoke.lua index 8ba9f90ca0..35c7ae3fad 100644 --- a/cocos/scripting/lua-bindings/auto/api/ParticleSmoke.lua +++ b/cocos/scripting/lua-bindings/auto/api/ParticleSmoke.lua @@ -5,13 +5,16 @@ -- @parent_module cc -------------------------------- --- +-- Create a smoke particle system.
+-- return An autoreleased ParticleSmoke object. -- @function [parent=#ParticleSmoke] create -- @param self -- @return ParticleSmoke#ParticleSmoke ret (return value: cc.ParticleSmoke) -------------------------------- --- +-- Create a smoke particle system withe a fixed number of particles.
+-- param numberOfParticles A given number of particles.
+-- return An autoreleased ParticleSmoke object. -- @function [parent=#ParticleSmoke] createWithTotalParticles -- @param self -- @param #int numberOfParticles diff --git a/cocos/scripting/lua-bindings/auto/api/ParticleSnow.lua b/cocos/scripting/lua-bindings/auto/api/ParticleSnow.lua index 4b872058bb..4b080bc82a 100644 --- a/cocos/scripting/lua-bindings/auto/api/ParticleSnow.lua +++ b/cocos/scripting/lua-bindings/auto/api/ParticleSnow.lua @@ -5,13 +5,16 @@ -- @parent_module cc -------------------------------- --- +-- Create a snow particle system.
+-- return An autoreleased ParticleSnow object. -- @function [parent=#ParticleSnow] create -- @param self -- @return ParticleSnow#ParticleSnow ret (return value: cc.ParticleSnow) -------------------------------- --- +-- Create a snow particle system withe a fixed number of particles.
+-- param numberOfParticles A given number of particles.
+-- return An autoreleased ParticleSnow object. -- @function [parent=#ParticleSnow] createWithTotalParticles -- @param self -- @param #int numberOfParticles diff --git a/cocos/scripting/lua-bindings/auto/api/ParticleSpiral.lua b/cocos/scripting/lua-bindings/auto/api/ParticleSpiral.lua index 6f653e601d..22d1ffa912 100644 --- a/cocos/scripting/lua-bindings/auto/api/ParticleSpiral.lua +++ b/cocos/scripting/lua-bindings/auto/api/ParticleSpiral.lua @@ -5,13 +5,16 @@ -- @parent_module cc -------------------------------- --- +-- Create a spiral particle system.
+-- return An autoreleased ParticleSpiral object. -- @function [parent=#ParticleSpiral] create -- @param self -- @return ParticleSpiral#ParticleSpiral ret (return value: cc.ParticleSpiral) -------------------------------- --- +-- Create a spiral particle system withe a fixed number of particles.
+-- param numberOfParticles A given number of particles.
+-- return An autoreleased ParticleSpiral object. -- @function [parent=#ParticleSpiral] createWithTotalParticles -- @param self -- @param #int numberOfParticles diff --git a/cocos/scripting/lua-bindings/auto/api/ParticleSun.lua b/cocos/scripting/lua-bindings/auto/api/ParticleSun.lua index d702a58839..a1aff8a107 100644 --- a/cocos/scripting/lua-bindings/auto/api/ParticleSun.lua +++ b/cocos/scripting/lua-bindings/auto/api/ParticleSun.lua @@ -5,13 +5,16 @@ -- @parent_module cc -------------------------------- --- +-- Create a sun particle system.
+-- return An autoreleased ParticleSun object. -- @function [parent=#ParticleSun] create -- @param self -- @return ParticleSun#ParticleSun ret (return value: cc.ParticleSun) -------------------------------- --- +-- Create a sun particle system withe a fixed number of particles.
+-- param numberOfParticles A given number of particles.
+-- return An autoreleased ParticleSun object. -- @function [parent=#ParticleSun] createWithTotalParticles -- @param self -- @param #int numberOfParticles diff --git a/cocos/scripting/lua-bindings/auto/api/ParticleSystem.lua b/cocos/scripting/lua-bindings/auto/api/ParticleSystem.lua index 86976cc031..71530c0aeb 100644 --- a/cocos/scripting/lua-bindings/auto/api/ParticleSystem.lua +++ b/cocos/scripting/lua-bindings/auto/api/ParticleSystem.lua @@ -5,7 +5,8 @@ -- @parent_module cc -------------------------------- --- size variance in pixels of each particle +-- Gets the start size variance in pixels of each particle.
+-- return The start size variance in pixels of each particle. -- @function [parent=#ParticleSystem] getStartSizeVar -- @param self -- @return float#float ret (return value: float) @@ -17,149 +18,172 @@ -- @return Texture2D#Texture2D ret (return value: cc.Texture2D) -------------------------------- --- whether or not the system is full +-- Whether or not the system is full.
+-- return True if the system is full. -- @function [parent=#ParticleSystem] isFull -- @param self -- @return bool#bool ret (return value: bool) -------------------------------- --- +-- Gets the batch node.
+-- return The batch node. -- @function [parent=#ParticleSystem] getBatchNode -- @param self -- @return ParticleBatchNode#ParticleBatchNode ret (return value: cc.ParticleBatchNode) -------------------------------- --- start color of each particle +-- Gets the start color of each particle.
+-- return The start color of each particle. -- @function [parent=#ParticleSystem] getStartColor -- @param self -- @return color4f_table#color4f_table ret (return value: color4f_table) -------------------------------- --- particles movement type: Free or Grouped
--- since v0.8 +-- Gets the particles movement type: Free or Grouped.
+-- since v0.8
+-- return The particles movement type. -- @function [parent=#ParticleSystem] getPositionType -- @param self -- @return int#int ret (return value: int) -------------------------------- --- +-- Sets the position variance of the emitter.
+-- param pos The position variance of the emitter. -- @function [parent=#ParticleSystem] setPosVar -- @param self -- @param #vec2_table pos -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Gets the end spin of each particle.
+-- return The end spin of each particle. -- @function [parent=#ParticleSystem] getEndSpin -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Sets the rotate per second variance.
+-- param degrees The rotate per second variance. -- @function [parent=#ParticleSystem] setRotatePerSecondVar -- @param self -- @param #float degrees -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Gets the start spin variance of each particle.
+-- return The start spin variance of each particle. -- @function [parent=#ParticleSystem] getStartSpinVar -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Gets the radial acceleration variance.
+-- return The radial acceleration variance. -- @function [parent=#ParticleSystem] getRadialAccelVar -- @param self -- @return float#float ret (return value: float) -------------------------------- --- end size variance in pixels of each particle +-- Gets the end size variance in pixels of each particle.
+-- return The end size variance in pixels of each particle. -- @function [parent=#ParticleSystem] getEndSizeVar -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Sets the tangential acceleration.
+-- param t The tangential acceleration. -- @function [parent=#ParticleSystem] setTangentialAccel -- @param self -- @param #float t -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Gets the radial acceleration.
+-- return The radial acceleration. -- @function [parent=#ParticleSystem] getRadialAccel -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Sets the start radius.
+-- param startRadius The start radius. -- @function [parent=#ParticleSystem] setStartRadius -- @param self -- @param #float startRadius -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Sets the number of degrees to rotate a particle around the source pos per second.
+-- param degrees The number of degrees to rotate a particle around the source pos per second. -- @function [parent=#ParticleSystem] setRotatePerSecond -- @param self -- @param #float degrees -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Sets the end size in pixels of each particle.
+-- param endSize The end size in pixels of each particle. -- @function [parent=#ParticleSystem] setEndSize -- @param self -- @param #float endSize -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Gets the garvity.
+-- return The gravity. -- @function [parent=#ParticleSystem] getGravity -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- +-- Gets the tangential acceleration.
+-- return The tangential acceleration. -- @function [parent=#ParticleSystem] getTangentialAccel -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Sets the end radius.
+-- param endRadius The end radius. -- @function [parent=#ParticleSystem] setEndRadius -- @param self -- @param #float endRadius -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Gets the speed.
+-- return The speed. -- @function [parent=#ParticleSystem] getSpeed -- @param self -- @return float#float ret (return value: float) -------------------------------- --- angle and angle variation of each particle +-- Gets the angle of each particle.
+-- return The angle of each particle. -- @function [parent=#ParticleSystem] getAngle -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Sets the end color and end color variation of each particle.
+-- param color The end color and end color variation of each particle. -- @function [parent=#ParticleSystem] setEndColor -- @param self -- @param #color4f_table color -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Sets the start spin of each particle.
+-- param spin The start spin of each particle. -- @function [parent=#ParticleSystem] setStartSpin -- @param self -- @param #float spin -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Sets how many seconds the emitter will run. -1 means 'forever'.
+-- param duration The seconds that the emitter will run. -1 means 'forever'. -- @function [parent=#ParticleSystem] setDuration -- @param self -- @param #float duration @@ -173,83 +197,95 @@ -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- Position variance of the emitter +-- Gets the position variance of the emitter.
+-- return The position variance of the emitter. -- @function [parent=#ParticleSystem] getPosVar -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- +-- Call the update mathod with no time.. -- @function [parent=#ParticleSystem] updateWithNoTime -- @param self -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Whether or not the particle system is blend additive.
+-- return True if the particle system is blend additive. -- @function [parent=#ParticleSystem] isBlendAdditive -- @param self -- @return bool#bool ret (return value: bool) -------------------------------- --- +-- Gets the speed variance.
+-- return The speed variance. -- @function [parent=#ParticleSystem] getSpeedVar -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Sets the particles movement type: Free or Grouped.
+-- since v0.8
+-- param type The particles movement type. -- @function [parent=#ParticleSystem] setPositionType -- @param self -- @param #int type -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- stop emitting particles. Running particles will continue to run until they die +-- Stop emitting particles. Running particles will continue to run until they die. -- @function [parent=#ParticleSystem] stopSystem -- @param self -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- sourcePosition of the emitter +-- Gets the source position of the emitter.
+-- return The source position of the emitter. -- @function [parent=#ParticleSystem] getSourcePosition -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- +-- Sets the life variance of each particle.
+-- param lifeVar The life variance of each particle. -- @function [parent=#ParticleSystem] setLifeVar -- @param self -- @param #float lifeVar -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Sets the maximum particles of the system.
+-- param totalParticles The maximum particles of the system. -- @function [parent=#ParticleSystem] setTotalParticles -- @param self -- @param #int totalParticles -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Sets the end color variance of each particle.
+-- param color The end color variance of each particle. -- @function [parent=#ParticleSystem] setEndColorVar -- @param self -- @param #color4f_table color -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Gets the index of system in batch node array.
+-- return The index of system in batch node array. -- @function [parent=#ParticleSystem] getAtlasIndex -- @param self -- @return int#int ret (return value: int) -------------------------------- --- start size in pixels of each particle +-- Gets the start size in pixels of each particle.
+-- return The start size in pixels of each particle. -- @function [parent=#ParticleSystem] getStartSize -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Sets the start spin variance of each particle.
+-- param pinVar The start spin variance of each particle. -- @function [parent=#ParticleSystem] setStartSpinVar -- @param self -- @param #float pinVar @@ -262,289 +298,333 @@ -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Sets the index of system in batch node array.
+-- param index The index of system in batch node array. -- @function [parent=#ParticleSystem] setAtlasIndex -- @param self -- @param #int index -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Sets the tangential acceleration variance.
+-- param t The tangential acceleration variance. -- @function [parent=#ParticleSystem] setTangentialAccelVar -- @param self -- @param #float t -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Sets the end radius variance.
+-- param endRadiusVar The end radius variance. -- @function [parent=#ParticleSystem] setEndRadiusVar -- @param self -- @param #float endRadiusVar -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Gets the end radius.
+-- return The end radius. -- @function [parent=#ParticleSystem] getEndRadius -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Whether or not the particle system is active.
+-- return True if the particle system is active. -- @function [parent=#ParticleSystem] isActive -- @param self -- @return bool#bool ret (return value: bool) -------------------------------- --- +-- Sets the radial acceleration variance.
+-- param t The radial acceleration variance. -- @function [parent=#ParticleSystem] setRadialAccelVar -- @param self -- @param #float t -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Sets the start size in pixels of each particle.
+-- param startSize The start size in pixels of each particle. -- @function [parent=#ParticleSystem] setStartSize -- @param self -- @param #float startSize -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Sets the speed.
+-- param speed The speed. -- @function [parent=#ParticleSystem] setSpeed -- @param self -- @param #float speed -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Gets the start spin of each particle.
+-- return The start spin of each particle. -- @function [parent=#ParticleSystem] getStartSpin -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Gets the number of degrees to rotate a particle around the source pos per second.
+-- return The number of degrees to rotate a particle around the source pos per second. -- @function [parent=#ParticleSystem] getRotatePerSecond -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Sets the mode of the emitter.
+-- param mode The mode of the emitter. -- @function [parent=#ParticleSystem] setEmitterMode -- @param self -- @param #int mode -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- How many seconds the emitter will run. -1 means 'forever' +-- Gets how many seconds the emitter will run. -1 means 'forever'.
+-- return The seconds that the emitter will run. -1 means 'forever'. -- @function [parent=#ParticleSystem] getDuration -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Sets the source position of the emitter.
+-- param The source position of the emitter. -- @function [parent=#ParticleSystem] setSourcePosition -- @param self -- @param #vec2_table pos -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Gets the end spin variance of each particle.
+-- return The end spin variance of each particle. -- @function [parent=#ParticleSystem] getEndSpinVar -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Sets the particle system blend additive.
+-- param value True if the particle system is blend additive. -- @function [parent=#ParticleSystem] setBlendAdditive -- @param self -- @param #bool value -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Sets the life of each particle.
+-- param life The life of each particle. -- @function [parent=#ParticleSystem] setLife -- @param self -- @param #float life -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Sets the angle variance of each particle.
+-- param angleVar The angle variance of each particle. -- @function [parent=#ParticleSystem] setAngleVar -- @param self -- @param #float angleVar -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Sets the rotation of each particle to its direction.
+-- param t True if the rotation is the direction. -- @function [parent=#ParticleSystem] setRotationIsDir -- @param self -- @param #bool t -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Sets the end size variance in pixels of each particle.
+-- param sizeVar The end size variance in pixels of each particle. -- @function [parent=#ParticleSystem] setEndSizeVar -- @param self -- @param #float sizeVar -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Sets the angle of each particle.
+-- param angle The angle of each particle. -- @function [parent=#ParticleSystem] setAngle -- @param self -- @param #float angle -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Sets the batch node.
+-- param batchNode The batch node. -- @function [parent=#ParticleSystem] setBatchNode -- @param self -- @param #cc.ParticleBatchNode batchNode -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Gets the tangential acceleration variance.
+-- return The tangential acceleration variance. -- @function [parent=#ParticleSystem] getTangentialAccelVar -- @param self -- @return float#float ret (return value: float) -------------------------------- -- Switch between different kind of emitter modes:
--- - kParticleModeGravity: uses gravity, speed, radial and tangential acceleration
--- - kParticleModeRadius: uses radius movement + rotation +-- - kParticleModeGravity: uses gravity, speed, radial and tangential acceleration.
+-- - kParticleModeRadius: uses radius movement + rotation.
+-- return The mode of the emitter. -- @function [parent=#ParticleSystem] getEmitterMode -- @param self -- @return int#int ret (return value: int) -------------------------------- --- +-- Sets the end spin variance of each particle.
+-- param endSpinVar The end spin variance of each particle. -- @function [parent=#ParticleSystem] setEndSpinVar -- @param self -- @param #float endSpinVar -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- angle variance of each particle +-- Gets the angle variance of each particle.
+-- return The angle variance of each particle. -- @function [parent=#ParticleSystem] getAngleVar -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Sets the start color of each particle.
+-- param color The start color of each particle. -- @function [parent=#ParticleSystem] setStartColor -- @param self -- @param #color4f_table color -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Gets the rotate per second variance.
+-- return The rotate per second variance. -- @function [parent=#ParticleSystem] getRotatePerSecondVar -- @param self -- @return float#float ret (return value: float) -------------------------------- --- end size in pixels of each particle +-- Gets the end size in pixels of each particle.
+-- return The end size in pixels of each particle. -- @function [parent=#ParticleSystem] getEndSize -- @param self -- @return float#float ret (return value: float) -------------------------------- --- life, and life variation of each particle +-- Gets the life of each particle.
+-- return The life of each particle. -- @function [parent=#ParticleSystem] getLife -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Sets the speed variance.
+-- param speed The speed variance. -- @function [parent=#ParticleSystem] setSpeedVar -- @param self -- @param #float speed -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Set the particle system auto removed it self on finish.
+-- param var True if the particle system removed self on finish. -- @function [parent=#ParticleSystem] setAutoRemoveOnFinish -- @param self -- @param #bool var -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Sets the gravity.
+-- param g The gravity. -- @function [parent=#ParticleSystem] setGravity -- @param self -- @param #vec2_table g -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- should be overridden by subclasses +-- Update the VBO verts buffer which does not use batch node,
+-- should be overridden by subclasses. -- @function [parent=#ParticleSystem] postStep -- @param self -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Sets the emission rate of the particles.
+-- param rate The emission rate of the particles. -- @function [parent=#ParticleSystem] setEmissionRate -- @param self -- @param #float rate -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- end color variance of each particle +-- Gets the end color variance of each particle.
+-- return The end color variance of each particle. -- @function [parent=#ParticleSystem] getEndColorVar -- @param self -- @return color4f_table#color4f_table ret (return value: color4f_table) -------------------------------- --- +-- Whether or not the rotation of each particle to its direction.
+-- return True if the rotation is the direction. -- @function [parent=#ParticleSystem] getRotationIsDir -- @param self -- @return bool#bool ret (return value: bool) -------------------------------- --- emission rate of the particles +-- Gets the emission rate of the particles.
+-- return The emission rate of the particles. -- @function [parent=#ParticleSystem] getEmissionRate -- @param self -- @return float#float ret (return value: float) -------------------------------- --- end color and end color variation of each particle +-- Gets the end color and end color variation of each particle.
+-- return The end color and end color variation of each particle. -- @function [parent=#ParticleSystem] getEndColor -- @param self -- @return color4f_table#color4f_table ret (return value: color4f_table) -------------------------------- --- life variance of each particle +-- Gets the life variance of each particle.
+-- return The life variance of each particle. -- @function [parent=#ParticleSystem] getLifeVar -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Sets the start size variance in pixels of each particle.
+-- param sizeVar The start size variance in pixels of each particle. -- @function [parent=#ParticleSystem] setStartSizeVar -- @param self -- @param #float sizeVar -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- Add a particle to the emitter +-- Add a particle to the emitter.
+-- return True if add success. -- @function [parent=#ParticleSystem] addParticle -- @param self -- @return bool#bool ret (return value: bool) -------------------------------- --- +-- Gets the start radius.
+-- return The start radius. -- @function [parent=#ParticleSystem] getStartRadius -- @param self -- @return float#float ret (return value: float) -------------------------------- --- Quantity of particles that are being simulated at the moment +-- Gets the Quantity of particles that are being simulated at the moment.
+-- return The Quantity of particles that are being simulated at the moment. -- @function [parent=#ParticleSystem] getParticleCount -- @param self -- @return unsigned int#unsigned int ret (return value: unsigned int) -------------------------------- --- +-- Gets the start radius variance.
+-- return The start radius variance. -- @function [parent=#ParticleSystem] getStartRadiusVar -- @param self -- @return float#float ret (return value: float) @@ -557,40 +637,46 @@ -- @return BlendFunc#BlendFunc ret (return value: cc.BlendFunc) -------------------------------- --- +-- Sets the start color variance of each particle.
+-- param color The start color variance of each particle. -- @function [parent=#ParticleSystem] setStartColorVar -- @param self -- @param #color4f_table color -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Sets the end spin of each particle.
+-- param endSpin The end spin of each particle. -- @function [parent=#ParticleSystem] setEndSpin -- @param self -- @param #float endSpin -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Sets the radial acceleration.
+-- param t The radial acceleration. -- @function [parent=#ParticleSystem] setRadialAccel -- @param self -- @param #float t -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Whether or not the particle system removed self on finish.
+-- return True if the particle system removed self on finish. -- @function [parent=#ParticleSystem] isAutoRemoveOnFinish -- @param self -- @return bool#bool ret (return value: bool) -------------------------------- --- maximum particles of the system +-- Gets the maximum particles of the system.
+-- return The maximum particles of the system. -- @function [parent=#ParticleSystem] getTotalParticles -- @param self -- @return int#int ret (return value: int) -------------------------------- --- +-- Sets the start radius variance.
+-- param startRadiusVar The start radius variance. -- @function [parent=#ParticleSystem] setStartRadiusVar -- @param self -- @param #float startRadiusVar @@ -608,29 +694,35 @@ -- @return ParticleSystem#ParticleSystem self (return value: cc.ParticleSystem) -------------------------------- --- +-- Gets the end radius variance.
+-- return The end radius variance. -- @function [parent=#ParticleSystem] getEndRadiusVar -- @param self -- @return float#float ret (return value: float) -------------------------------- --- start color variance of each particle +-- Gets the start color variance of each particle.
+-- return The start color variance of each particle. -- @function [parent=#ParticleSystem] getStartColorVar -- @param self -- @return color4f_table#color4f_table ret (return value: color4f_table) -------------------------------- --- creates an initializes a ParticleSystem from a plist file.
+-- Creates an initializes a ParticleSystem from a plist file.
-- This plist files can be created manually or with Particle Designer:
-- http:particledesigner.71squared.com/
--- since v2.0 +-- since v2.0
+-- param Particle plist file name.
+-- return An autoreleased ParticleSystem object. -- @function [parent=#ParticleSystem] create -- @param self -- @param #string plistFile -- @return ParticleSystem#ParticleSystem ret (return value: cc.ParticleSystem) -------------------------------- --- create a system with a fixed number of particles +-- Create a system with a fixed number of particles.
+-- param numberOfParticles A given number of particles.
+-- return An autoreleased ParticleSystemQuad object. -- @function [parent=#ParticleSystem] createWithTotalParticles -- @param self -- @param #int numberOfParticles diff --git a/cocos/scripting/lua-bindings/auto/api/ParticleSystemQuad.lua b/cocos/scripting/lua-bindings/auto/api/ParticleSystemQuad.lua index 191aae0381..df70bbb41b 100644 --- a/cocos/scripting/lua-bindings/auto/api/ParticleSystemQuad.lua +++ b/cocos/scripting/lua-bindings/auto/api/ParticleSystemQuad.lua @@ -7,6 +7,7 @@ -------------------------------- -- Sets a new SpriteFrame as particle.
-- WARNING: this method is experimental. Use setTextureWithRect instead.
+-- param spriteFrame A given sprite frame as particle texture.
-- since v0.99.4 -- @function [parent=#ParticleSystemQuad] setDisplayFrame -- @param self @@ -17,7 +18,9 @@ -- Sets a new texture with a rect. The rect is in Points.
-- since v0.99.4
-- js NA
--- lua NA +-- lua NA
+-- param texture A given texture.
+-- 8 @param rect A given rect, in points. -- @function [parent=#ParticleSystemQuad] setTextureWithRect -- @param self -- @param #cc.Texture2D texture @@ -25,9 +28,10 @@ -- @return ParticleSystemQuad#ParticleSystemQuad self (return value: cc.ParticleSystemQuad) -------------------------------- --- listen the event that renderer was recreated on Android/WP8
+-- Listen the event that renderer was recreated on Android/WP8.
-- js NA
--- lua NA +-- lua NA
+-- param event the event that renderer was recreated on Android/WP8. -- @function [parent=#ParticleSystemQuad] listenRendererRecreated -- @param self -- @param #cc.EventCustom event @@ -43,7 +47,9 @@ -- @return ParticleSystemQuad#ParticleSystemQuad ret (return value: cc.ParticleSystemQuad) -------------------------------- --- creates a Particle Emitter with a number of particles +-- Creates a Particle Emitter with a number of particles.
+-- param numberOfParticles A given number of particles.
+-- return An autoreleased ParticleSystemQuad object. -- @function [parent=#ParticleSystemQuad] createWithTotalParticles -- @param self -- @param #int numberOfParticles diff --git a/cocos/scripting/lua-bindings/auto/api/PhysicsBody.lua b/cocos/scripting/lua-bindings/auto/api/PhysicsBody.lua index 73770422f8..33414efc25 100644 --- a/cocos/scripting/lua-bindings/auto/api/PhysicsBody.lua +++ b/cocos/scripting/lua-bindings/auto/api/PhysicsBody.lua @@ -5,13 +5,13 @@ -- @parent_module cc -------------------------------- --- whether this physics body is affected by the physics world’s gravitational force. +-- Whether this physics body is affected by the physics world’s gravitational force. -- @function [parent=#PhysicsBody] isGravityEnabled -- @param self -- @return bool#bool ret (return value: bool) -------------------------------- --- reset all the force applied to body. +-- reset all the force applied to body. -- @function [parent=#PhysicsBody] resetForces -- @param self -- @return PhysicsBody#PhysicsBody self (return value: cc.PhysicsBody) @@ -23,22 +23,23 @@ -- @return float#float ret (return value: float) -------------------------------- --- set the group of body
--- Collision groups let you specify an integral group index. You can have all fixtures with the same group index always collide (positive index) or never collide (negative index)
--- it have high priority than bit masks +-- Set the group of body.
+-- Collision groups let you specify an integral group index. You can have all fixtures with the same group index always collide (positive index) or never collide (negative index).
+-- It have high priority than bit masks. -- @function [parent=#PhysicsBody] setGroup -- @param self -- @param #int group -- @return PhysicsBody#PhysicsBody self (return value: cc.PhysicsBody) -------------------------------- --- get the body mass. +-- Get the body mass. -- @function [parent=#PhysicsBody] getMass -- @param self -- @return float#float ret (return value: float) -------------------------------- --- Return bitmask of first shape, if there is no shape in body, return default value.(0xFFFFFFFF) +-- Return bitmask of first shape.
+-- return If there is no shape in body, return default value.(0xFFFFFFFF) -- @function [parent=#PhysicsBody] getCollisionBitmask -- @param self -- @return int#int ret (return value: int) @@ -56,7 +57,7 @@ -- @return float#float ret (return value: float) -------------------------------- --- get the body moment of inertia. +-- Get the body moment of inertia. -- @function [parent=#PhysicsBody] getMoment -- @param self -- @return float#float ret (return value: float) @@ -87,7 +88,10 @@ -- @return PhysicsBody#PhysicsBody self (return value: cc.PhysicsBody) -------------------------------- --- +-- brief Add a shape to body.
+-- param shape The shape to be added.
+-- param addMassAndMoment If this is true, the shape's mass and moment will be added to body. The default is true.
+-- return This shape's pointer if added success or nullptr if failed. -- @function [parent=#PhysicsBody] addShape -- @param self -- @param #cc.PhysicsShape shape @@ -95,7 +99,8 @@ -- @return PhysicsShape#PhysicsShape ret (return value: cc.PhysicsShape) -------------------------------- --- Applies a torque force to body. +-- Applies a torque force to body.
+-- param torque The torque is applies to this body. -- @function [parent=#PhysicsBody] applyTorque -- @param self -- @param #float torque @@ -115,7 +120,7 @@ -- @return PhysicsBody#PhysicsBody self (return value: cc.PhysicsBody) -------------------------------- --- get the velocity of a body +-- Get the velocity of a body. -- @function [parent=#PhysicsBody] getVelocity -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) @@ -127,15 +132,16 @@ -- @return float#float ret (return value: float) -------------------------------- --- +-- Remove all shapes.
+-- param reduceMassAndMoment If this is true, the body mass and moment will be reduced by shape. The default is true. -- @function [parent=#PhysicsBody] removeAllShapes -- @param self -- @return PhysicsBody#PhysicsBody self (return value: cc.PhysicsBody) -------------------------------- --- set angular damping.
--- it is used to simulate fluid or air friction forces on the body.
--- the value is 0.0f to 1.0f. +-- Set angular damping.
+-- It is used to simulate fluid or air friction forces on the body.
+-- param damping The value is 0.0f to 1.0f. -- @function [parent=#PhysicsBody] setAngularDamping -- @param self -- @param #float damping @@ -164,7 +170,7 @@ -------------------------------- -- A mask that defines which categories this physics body belongs to.
-- Every physics body in a scene can be assigned to up to 32 different categories, each corresponding to a bit in the bit mask. You define the mask values used in your game. In conjunction with the collisionBitMask and contactTestBitMask properties, you define which physics bodies interact with each other and when your game is notified of these interactions.
--- The default value is 0xFFFFFFFF (all bits set). +-- param bitmask An interger number, the default value is 0xFFFFFFFF (all bits set). -- @function [parent=#PhysicsBody] setCategoryBitmask -- @param self -- @param #int bitmask @@ -189,96 +195,102 @@ -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- set the enable value.
--- if the body it isn't enabled, it will not has simulation by world +-- Set the enable value.
+-- If the body it isn't enabled, it will not has simulation by world. -- @function [parent=#PhysicsBody] setEnable -- @param self -- @param #bool enable -- @return PhysicsBody#PhysicsBody self (return value: cc.PhysicsBody) -------------------------------- --- set the body is affected by the physics world's gravitational force or not. +-- Set the body is affected by the physics world's gravitational force or not. -- @function [parent=#PhysicsBody] setGravityEnable -- @param self -- @param #bool enable -- @return PhysicsBody#PhysicsBody self (return value: cc.PhysicsBody) -------------------------------- --- Return group of first shape, if there is no shape in body, return default value.(0) +-- Return group of first shape.
+-- return If there is no shape in body, return default value.(0) -- @function [parent=#PhysicsBody] getGroup -- @param self -- @return int#int ret (return value: int) -------------------------------- --- brief set the body moment of inertia.
--- note if you need add/subtract moment to body, don't use setMoment(getMoment() +/- moment), because the moment of body may be equal to PHYSICS_INFINITY, it will cause some unexpected result, please use addMoment() instead. +-- brief Set the body moment of inertia.
+-- note If you need add/subtract moment to body, don't use setMoment(getMoment() +/- moment), because the moment of body may be equal to PHYSICS_INFINITY, it will cause some unexpected result, please use addMoment() instead. -- @function [parent=#PhysicsBody] setMoment -- @param self -- @param #float moment -- @return PhysicsBody#PhysicsBody self (return value: cc.PhysicsBody) -------------------------------- --- get the body's tag +-- Get the body's tag. -- @function [parent=#PhysicsBody] getTag -- @param self -- @return int#int ret (return value: int) -------------------------------- --- convert the local point to world +-- Convert the local point to world. -- @function [parent=#PhysicsBody] local2World -- @param self -- @param #vec2_table point -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- Return bitmask of first shape, if there is no shape in body, return default value.(0xFFFFFFFF) +-- Return bitmask of first shape.
+-- return If there is no shape in body, return default value.(0xFFFFFFFF) -- @function [parent=#PhysicsBody] getCategoryBitmask -- @param self -- @return int#int ret (return value: int) -------------------------------- --- brief set dynamic to body.
--- a dynamic body will effect with gravity. +-- brief Set dynamic to body.
+-- A dynamic body will effect with gravity. -- @function [parent=#PhysicsBody] setDynamic -- @param self -- @param #bool dynamic -- @return PhysicsBody#PhysicsBody self (return value: cc.PhysicsBody) -------------------------------- --- +-- Get the first shape of the body shapes.
+-- return The first shape in this body. -- @function [parent=#PhysicsBody] getFirstShape -- @param self -- @return PhysicsShape#PhysicsShape ret (return value: cc.PhysicsShape) -------------------------------- --- +-- Get the body shapes.
+-- return A Vector object contains PhysicsShape pointer. -- @function [parent=#PhysicsBody] getShapes -- @param self -- @return array_table#array_table ret (return value: array_table) -------------------------------- --- Return bitmask of first shape, if there is no shape in body, return default value.(0x00000000) +-- Return bitmask of first shape.
+-- return If there is no shape in body, return default value.(0x00000000) -- @function [parent=#PhysicsBody] getContactTestBitmask -- @param self -- @return int#int ret (return value: int) -------------------------------- --- set the angular velocity of a body +-- Set the angular velocity of a body.
+-- param velocity The angular velocity is set to this body. -- @function [parent=#PhysicsBody] setAngularVelocity -- @param self -- @param #float velocity -- @return PhysicsBody#PhysicsBody self (return value: cc.PhysicsBody) -------------------------------- --- convert the world point to local +-- Convert the world point to local. -- @function [parent=#PhysicsBody] world2Local -- @param self -- @param #vec2_table point -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- whether the body is enabled
--- if the body it isn't enabled, it will not has simulation by world +-- Whether the body is enabled.
+-- If the body it isn't enabled, it will not has simulation by world. -- @function [parent=#PhysicsBody] isEnabled -- @param self -- @return bool#bool ret (return value: bool) @@ -293,16 +305,16 @@ -- @return PhysicsBody#PhysicsBody self (return value: cc.PhysicsBody) -------------------------------- --- brief set the body mass.
--- note if you need add/subtract mass to body, don't use setMass(getMass() +/- mass), because the mass of body may be equal to PHYSICS_INFINITY, it will cause some unexpected result, please use addMass() instead. +-- brief Set the body mass.
+-- attension If you need add/subtract mass to body, don't use setMass(getMass() +/- mass), because the mass of body may be equal to PHYSICS_INFINITY, it will cause some unexpected result, please use addMass() instead. -- @function [parent=#PhysicsBody] setMass -- @param self -- @param #float mass -- @return PhysicsBody#PhysicsBody self (return value: cc.PhysicsBody) -------------------------------- --- brief add moment of inertia to body.
--- if _moment(moment of the body) == PHYSICS_INFINITY, it remains.
+-- brief Add moment of inertia to body.
+-- param moment If _moment(moment of the body) == PHYSICS_INFINITY, it remains.
-- if moment == PHYSICS_INFINITY, _moment will be PHYSICS_INFINITY.
-- if moment == -PHYSICS_INFINITY, _moment will not change.
-- if moment + _moment <= 0, _moment will equal to MASS_DEFAULT(1.0)
@@ -313,16 +325,17 @@ -- @return PhysicsBody#PhysicsBody self (return value: cc.PhysicsBody) -------------------------------- --- set the velocity of a body +-- Set the velocity of a body.
+-- param velocity The velocity is set to this body. -- @function [parent=#PhysicsBody] setVelocity -- @param self -- @param #vec2_table velocity -- @return PhysicsBody#PhysicsBody self (return value: cc.PhysicsBody) -------------------------------- --- set linear damping.
--- it is used to simulate fluid or air friction forces on the body.
--- the value is 0.0f to 1.0f. +-- Set linear damping.
+-- it is used to simulate fluid or air friction forces on the body.
+-- param damping The value is 0.0f to 1.0f. -- @function [parent=#PhysicsBody] setLinearDamping -- @param self -- @param #float damping @@ -331,7 +344,7 @@ -------------------------------- -- A mask that defines which categories of physics bodies can collide with this physics body.
-- When two physics bodies contact each other, a collision may occur. This body’s collision mask is compared to the other body’s category mask by performing a logical AND operation. If the result is a non-zero value, then this body is affected by the collision. Each body independently chooses whether it wants to be affected by the other body. For example, you might use this to avoid collision calculations that would make negligible changes to a body’s velocity.
--- The default value is 0xFFFFFFFF (all bits set). +-- param bitmask An interger number, the default value is 0xFFFFFFFF (all bits set). -- @function [parent=#PhysicsBody] setCollisionBitmask -- @param self -- @param #int bitmask @@ -345,46 +358,46 @@ -- @return PhysicsBody#PhysicsBody self (return value: cc.PhysicsBody) -------------------------------- --- set the body is allow rotation or not +-- Set the body is allow rotation or not -- @function [parent=#PhysicsBody] setRotationEnable -- @param self -- @param #bool enable -- @return PhysicsBody#PhysicsBody self (return value: cc.PhysicsBody) -------------------------------- --- whether the body can rotation +-- Whether the body can rotation. -- @function [parent=#PhysicsBody] isRotationEnabled -- @param self -- @return bool#bool ret (return value: bool) -------------------------------- --- +-- Get the rigid body of chipmunk. -- @function [parent=#PhysicsBody] getCPBody -- @param self -- @return cpBody#cpBody ret (return value: cpBody) -------------------------------- --- get angular damping. +-- Get angular damping. -- @function [parent=#PhysicsBody] getAngularDamping -- @param self -- @return float#float ret (return value: float) -------------------------------- --- get the angular velocity of a body at a local point +-- Get the angular velocity of a body at a local point. -- @function [parent=#PhysicsBody] getVelocityAtLocalPoint -- @param self -- @param #vec2_table point -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- whether the body is at rest +-- Whether the body is at rest. -- @function [parent=#PhysicsBody] isResting -- @param self -- @return bool#bool ret (return value: bool) -------------------------------- --- brief add mass to body.
--- if _mass(mass of the body) == PHYSICS_INFINITY, it remains.
+-- brief Add mass to body.
+-- param mass If _mass(mass of the body) == PHYSICS_INFINITY, it remains.
-- if mass == PHYSICS_INFINITY, _mass will be PHYSICS_INFINITY.
-- if mass == -PHYSICS_INFINITY, _mass will not change.
-- if mass + _mass <= 0, _mass will equal to MASS_DEFAULT(1.0)
@@ -395,14 +408,16 @@ -- @return PhysicsBody#PhysicsBody self (return value: cc.PhysicsBody) -------------------------------- --- +-- get the shape of the body.
+-- param tag An interger number that identifies a PhysicsShape object.
+-- return A PhysicsShape object pointer or nullptr if no shapes were found. -- @function [parent=#PhysicsBody] getShape -- @param self -- @param #int tag -- @return PhysicsShape#PhysicsShape ret (return value: cc.PhysicsShape) -------------------------------- --- set the body's tag +-- set the body's tag. -- @function [parent=#PhysicsBody] setTag -- @param self -- @param #int tag @@ -418,7 +433,7 @@ -------------------------------- -- A mask that defines which categories of bodies cause intersection notifications with this physics body.
-- When two bodies share the same space, each body’s category mask is tested against the other body’s contact mask by performing a logical AND operation. If either comparison results in a non-zero value, an PhysicsContact object is created and passed to the physics world’s delegate. For best performance, only set bits in the contacts mask for interactions you are interested in.
--- The default value is 0x00000000 (all bits cleared). +-- param bitmask An interger number, the default value is 0x00000000 (all bits cleared). -- @function [parent=#PhysicsBody] setContactTestBitmask -- @param self -- @param #int bitmask @@ -431,8 +446,8 @@ -- @return PhysicsBody#PhysicsBody self (return value: cc.PhysicsBody) -------------------------------- --- brief test the body is dynamic or not.
--- a dynamic body will effect with gravity. +-- brief Test the body is dynamic or not.
+-- A dynamic body will effect with gravity. -- @function [parent=#PhysicsBody] isDynamic -- @param self -- @return bool#bool ret (return value: bool) @@ -444,7 +459,11 @@ -- @return Node#Node ret (return value: cc.Node) -------------------------------- --- Create a body contains a box shape. +-- Create a body contains a box shape.
+-- param size Size contains this box's width and height.
+-- param material A PhysicsMaterial object, the default value is PHYSICSSHAPE_MATERIAL_DEFAULT.
+-- param offset A Vec2 object, it is the offset from the body’s center of gravity in body local coordinates.
+-- return An autoreleased PhysicsBody object pointer. -- @function [parent=#PhysicsBody] createBox -- @param self -- @param #size_table size @@ -453,7 +472,12 @@ -- @return PhysicsBody#PhysicsBody ret (return value: cc.PhysicsBody) -------------------------------- --- Create a body contains a EdgeSegment shape. +-- Create a body contains a EdgeSegment shape.
+-- param a It's the edge's begin position.
+-- param b It's the edge's end position.
+-- param material A PhysicsMaterial object, the default value is PHYSICSSHAPE_MATERIAL_DEFAULT.
+-- param border It's a edge's border width.
+-- return An autoreleased PhysicsBody object pointer. -- @function [parent=#PhysicsBody] createEdgeSegment -- @param self -- @param #vec2_table a @@ -473,7 +497,12 @@ -- @return PhysicsBody#PhysicsBody ret (return value: cc.PhysicsBody) -------------------------------- --- Create a body contains a EdgeBox shape. +-- Create a body contains a EdgeBox shape.
+-- param size Size contains this box's width and height.
+-- param material A PhysicsMaterial object, the default value is PHYSICSSHAPE_MATERIAL_DEFAULT.
+-- param border It's a edge's border width.
+-- param offset A Vec2 object, it is the offset from the body’s center of gravity in body local coordinates.
+-- return An autoreleased PhysicsBody object pointer. -- @function [parent=#PhysicsBody] createEdgeBox -- @param self -- @param #size_table size @@ -483,7 +512,11 @@ -- @return PhysicsBody#PhysicsBody ret (return value: cc.PhysicsBody) -------------------------------- --- Create a body contains a circle shape. +-- Create a body contains a circle.
+-- param radius A float number, it is the circle's radius.
+-- param material A PhysicsMaterial object, the default value is PHYSICSSHAPE_MATERIAL_DEFAULT.
+-- param offset A Vec2 object, it is the offset from the body’s center of gravity in body local coordinates.
+-- return An autoreleased PhysicsBody object pointer. -- @function [parent=#PhysicsBody] createCircle -- @param self -- @param #float radius diff --git a/cocos/scripting/lua-bindings/auto/api/PhysicsContact.lua b/cocos/scripting/lua-bindings/auto/api/PhysicsContact.lua index c7fce04e0a..82734ec1e4 100644 --- a/cocos/scripting/lua-bindings/auto/api/PhysicsContact.lua +++ b/cocos/scripting/lua-bindings/auto/api/PhysicsContact.lua @@ -5,31 +5,31 @@ -- @parent_module cc -------------------------------- --- get contact data +-- Get contact data. -- @function [parent=#PhysicsContact] getContactData -- @param self -- @return PhysicsContactData#PhysicsContactData ret (return value: cc.PhysicsContactData) -------------------------------- --- get the event code +-- Get the event code -- @function [parent=#PhysicsContact] getEventCode -- @param self -- @return int#int ret (return value: int) -------------------------------- --- get previous contact data +-- Get previous contact data -- @function [parent=#PhysicsContact] getPreContactData -- @param self -- @return PhysicsContactData#PhysicsContactData ret (return value: cc.PhysicsContactData) -------------------------------- --- get contact shape A. +-- Get contact shape A. -- @function [parent=#PhysicsContact] getShapeA -- @param self -- @return PhysicsShape#PhysicsShape ret (return value: cc.PhysicsShape) -------------------------------- --- get contact shape B. +-- Get contact shape B. -- @function [parent=#PhysicsContact] getShapeB -- @param self -- @return PhysicsShape#PhysicsShape ret (return value: cc.PhysicsShape) diff --git a/cocos/scripting/lua-bindings/auto/api/PhysicsContactPostSolve.lua b/cocos/scripting/lua-bindings/auto/api/PhysicsContactPostSolve.lua index 15b4e7932a..e04959b41a 100644 --- a/cocos/scripting/lua-bindings/auto/api/PhysicsContactPostSolve.lua +++ b/cocos/scripting/lua-bindings/auto/api/PhysicsContactPostSolve.lua @@ -4,19 +4,19 @@ -- @parent_module cc -------------------------------- --- get friction between two bodies +-- Get friction between two bodies. -- @function [parent=#PhysicsContactPostSolve] getFriction -- @param self -- @return float#float ret (return value: float) -------------------------------- --- get surface velocity between two bodies +-- Get surface velocity between two bodies. -- @function [parent=#PhysicsContactPostSolve] getSurfaceVelocity -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- get restitution between two bodies +-- Get restitution between two bodies. -- @function [parent=#PhysicsContactPostSolve] getRestitution -- @param self -- @return float#float ret (return value: float) diff --git a/cocos/scripting/lua-bindings/auto/api/PhysicsContactPreSolve.lua b/cocos/scripting/lua-bindings/auto/api/PhysicsContactPreSolve.lua index 1561aad641..35e872add7 100644 --- a/cocos/scripting/lua-bindings/auto/api/PhysicsContactPreSolve.lua +++ b/cocos/scripting/lua-bindings/auto/api/PhysicsContactPreSolve.lua @@ -4,45 +4,45 @@ -- @parent_module cc -------------------------------- --- get friction between two bodies +-- Get friction between two bodies. -- @function [parent=#PhysicsContactPreSolve] getFriction -- @param self -- @return float#float ret (return value: float) -------------------------------- --- get restitution between two bodies +-- Get restitution between two bodies. -- @function [parent=#PhysicsContactPreSolve] getRestitution -- @param self -- @return float#float ret (return value: float) -------------------------------- --- set the friction +-- Set the friction. -- @function [parent=#PhysicsContactPreSolve] setFriction -- @param self -- @param #float friction -- @return PhysicsContactPreSolve#PhysicsContactPreSolve self (return value: cc.PhysicsContactPreSolve) -------------------------------- --- ignore the rest of the contact presolve and postsolve callbacks +-- Ignore the rest of the contact presolve and postsolve callbacks. -- @function [parent=#PhysicsContactPreSolve] ignore -- @param self -- @return PhysicsContactPreSolve#PhysicsContactPreSolve self (return value: cc.PhysicsContactPreSolve) -------------------------------- --- get surface velocity between two bodies +-- Get surface velocity between two bodies. -- @function [parent=#PhysicsContactPreSolve] getSurfaceVelocity -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- set the surface velocity +-- Set the surface velocity. -- @function [parent=#PhysicsContactPreSolve] setSurfaceVelocity -- @param self -- @param #vec2_table velocity -- @return PhysicsContactPreSolve#PhysicsContactPreSolve self (return value: cc.PhysicsContactPreSolve) -------------------------------- --- set the restitution +-- Set the restitution. -- @function [parent=#PhysicsContactPreSolve] setRestitution -- @param self -- @param #float restitution diff --git a/cocos/scripting/lua-bindings/auto/api/PhysicsJoint.lua b/cocos/scripting/lua-bindings/auto/api/PhysicsJoint.lua index 1ee2ced861..eadd291884 100644 --- a/cocos/scripting/lua-bindings/auto/api/PhysicsJoint.lua +++ b/cocos/scripting/lua-bindings/auto/api/PhysicsJoint.lua @@ -4,77 +4,79 @@ -- @parent_module cc -------------------------------- --- +-- Get physics body a connected to this joint. -- @function [parent=#PhysicsJoint] getBodyA -- @param self -- @return PhysicsBody#PhysicsBody ret (return value: cc.PhysicsBody) -------------------------------- --- +-- Get physics body b connected to this joint. -- @function [parent=#PhysicsJoint] getBodyB -- @param self -- @return PhysicsBody#PhysicsBody ret (return value: cc.PhysicsBody) -------------------------------- --- Get the max force setting +-- Get the max force setting. -- @function [parent=#PhysicsJoint] getMaxForce -- @param self -- @return float#float ret (return value: float) -------------------------------- --- Set the max force between two bodies +-- Set the max force between two bodies. -- @function [parent=#PhysicsJoint] setMaxForce -- @param self -- @param #float force -- @return PhysicsJoint#PhysicsJoint self (return value: cc.PhysicsJoint) -------------------------------- --- +-- Determines if the joint is enable. -- @function [parent=#PhysicsJoint] isEnabled -- @param self -- @return bool#bool ret (return value: bool) -------------------------------- --- Enable/Disable the joint +-- Enable/Disable the joint. -- @function [parent=#PhysicsJoint] setEnable -- @param self -- @param #bool enable -- @return PhysicsJoint#PhysicsJoint self (return value: cc.PhysicsJoint) -------------------------------- --- Enable/disable the collision between two bodies +-- Enable/disable the collision between two bodies. -- @function [parent=#PhysicsJoint] setCollisionEnable -- @param self -- @param #bool enable -- @return PhysicsJoint#PhysicsJoint self (return value: cc.PhysicsJoint) -------------------------------- --- +-- Get the physics world. -- @function [parent=#PhysicsJoint] getWorld -- @param self -- @return PhysicsWorld#PhysicsWorld ret (return value: cc.PhysicsWorld) -------------------------------- --- +-- Set this joint's tag.
+-- param tag An interger number that identifies a PhysicsJoint. -- @function [parent=#PhysicsJoint] setTag -- @param self -- @param #int tag -- @return PhysicsJoint#PhysicsJoint self (return value: cc.PhysicsJoint) -------------------------------- --- Remove the joint from the world +-- Remove the joint from the world. -- @function [parent=#PhysicsJoint] removeFormWorld -- @param self -- @return PhysicsJoint#PhysicsJoint self (return value: cc.PhysicsJoint) -------------------------------- --- +-- Determines if the collsion is enable. -- @function [parent=#PhysicsJoint] isCollisionEnabled -- @param self -- @return bool#bool ret (return value: bool) -------------------------------- --- +-- Get this joint's tag.
+-- return An interger number. -- @function [parent=#PhysicsJoint] getTag -- @param self -- @return int#int ret (return value: int) diff --git a/cocos/scripting/lua-bindings/auto/api/PhysicsJointDistance.lua b/cocos/scripting/lua-bindings/auto/api/PhysicsJointDistance.lua index 04589fb046..aedea2cfcd 100644 --- a/cocos/scripting/lua-bindings/auto/api/PhysicsJointDistance.lua +++ b/cocos/scripting/lua-bindings/auto/api/PhysicsJointDistance.lua @@ -11,20 +11,25 @@ -- @return bool#bool ret (return value: bool) -------------------------------- --- +-- Set the distance of the anchor points. -- @function [parent=#PhysicsJointDistance] setDistance -- @param self -- @param #float distance -- @return PhysicsJointDistance#PhysicsJointDistance self (return value: cc.PhysicsJointDistance) -------------------------------- --- +-- Get the distance of the anchor points. -- @function [parent=#PhysicsJointDistance] getDistance -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Create a fixed distance joint.
+-- param a A is the body to connect.
+-- param b B is the body to connect.
+-- param anchr1 Anchr1 is the anchor point on body a.
+-- param anchr2 Anchr2 is the anchor point on body b.
+-- return A object pointer. -- @function [parent=#PhysicsJointDistance] construct -- @param self -- @param #cc.PhysicsBody a diff --git a/cocos/scripting/lua-bindings/auto/api/PhysicsJointFixed.lua b/cocos/scripting/lua-bindings/auto/api/PhysicsJointFixed.lua index 92c16efe2f..2548c59ba5 100644 --- a/cocos/scripting/lua-bindings/auto/api/PhysicsJointFixed.lua +++ b/cocos/scripting/lua-bindings/auto/api/PhysicsJointFixed.lua @@ -11,7 +11,11 @@ -- @return bool#bool ret (return value: bool) -------------------------------- --- +-- Create a fixed joint.
+-- param a A is the body to connect.
+-- param b B is the body to connect.
+-- param anchr It's the pivot position.
+-- return A object pointer. -- @function [parent=#PhysicsJointFixed] construct -- @param self -- @param #cc.PhysicsBody a diff --git a/cocos/scripting/lua-bindings/auto/api/PhysicsJointGear.lua b/cocos/scripting/lua-bindings/auto/api/PhysicsJointGear.lua index 82456fd73d..c522547828 100644 --- a/cocos/scripting/lua-bindings/auto/api/PhysicsJointGear.lua +++ b/cocos/scripting/lua-bindings/auto/api/PhysicsJointGear.lua @@ -5,20 +5,20 @@ -- @parent_module cc -------------------------------- --- +-- Set the ratio. -- @function [parent=#PhysicsJointGear] setRatio -- @param self -- @param #float ratchet -- @return PhysicsJointGear#PhysicsJointGear self (return value: cc.PhysicsJointGear) -------------------------------- --- +-- Get the angular offset of the two bodies. -- @function [parent=#PhysicsJointGear] getPhase -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Set the angular offset of the two bodies. -- @function [parent=#PhysicsJointGear] setPhase -- @param self -- @param #float phase @@ -31,13 +31,18 @@ -- @return bool#bool ret (return value: bool) -------------------------------- --- +-- Get the ratio. -- @function [parent=#PhysicsJointGear] getRatio -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Create a gear joint.
+-- param a A is the body to connect.
+-- param b B is the body to connect.
+-- param phase Phase is the initial angular offset of the two bodies.
+-- param ratio Ratio is always measured in absolute terms.
+-- return A object pointer. -- @function [parent=#PhysicsJointGear] construct -- @param self -- @param #cc.PhysicsBody a diff --git a/cocos/scripting/lua-bindings/auto/api/PhysicsJointGroove.lua b/cocos/scripting/lua-bindings/auto/api/PhysicsJointGroove.lua index 1153069b2c..1dd43de1c7 100644 --- a/cocos/scripting/lua-bindings/auto/api/PhysicsJointGroove.lua +++ b/cocos/scripting/lua-bindings/auto/api/PhysicsJointGroove.lua @@ -5,40 +5,40 @@ -- @parent_module cc -------------------------------- --- +-- Set the anchor point on body b. -- @function [parent=#PhysicsJointGroove] setAnchr2 -- @param self -- @param #vec2_table anchr2 -- @return PhysicsJointGroove#PhysicsJointGroove self (return value: cc.PhysicsJointGroove) -------------------------------- --- +-- Set the line begin position -- @function [parent=#PhysicsJointGroove] setGrooveA -- @param self -- @param #vec2_table grooveA -- @return PhysicsJointGroove#PhysicsJointGroove self (return value: cc.PhysicsJointGroove) -------------------------------- --- +-- Set the line end position -- @function [parent=#PhysicsJointGroove] setGrooveB -- @param self -- @param #vec2_table grooveB -- @return PhysicsJointGroove#PhysicsJointGroove self (return value: cc.PhysicsJointGroove) -------------------------------- --- +-- Get the line begin position -- @function [parent=#PhysicsJointGroove] getGrooveA -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- +-- Get the line end position -- @function [parent=#PhysicsJointGroove] getGrooveB -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- +-- Get the anchor point on body b. -- @function [parent=#PhysicsJointGroove] getAnchr2 -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) @@ -50,7 +50,13 @@ -- @return bool#bool ret (return value: bool) -------------------------------- --- +-- Create a groove joint.
+-- param a A is the body to connect.
+-- param b B is the body to connect.
+-- param grooveA The line begin position.
+-- param grooveB The line end position.
+-- param anchr2 Anchr2 is the anchor point on body b.
+-- return A object pointer. -- @function [parent=#PhysicsJointGroove] construct -- @param self -- @param #cc.PhysicsBody a diff --git a/cocos/scripting/lua-bindings/auto/api/PhysicsJointLimit.lua b/cocos/scripting/lua-bindings/auto/api/PhysicsJointLimit.lua index 2d3d8d18c6..fc05eb8c98 100644 --- a/cocos/scripting/lua-bindings/auto/api/PhysicsJointLimit.lua +++ b/cocos/scripting/lua-bindings/auto/api/PhysicsJointLimit.lua @@ -5,34 +5,34 @@ -- @parent_module cc -------------------------------- --- +-- Set the anchor point on body b. -- @function [parent=#PhysicsJointLimit] setAnchr2 -- @param self -- @param #vec2_table anchr2 -- @return PhysicsJointLimit#PhysicsJointLimit self (return value: cc.PhysicsJointLimit) -------------------------------- --- +-- Set the anchor point on body a. -- @function [parent=#PhysicsJointLimit] setAnchr1 -- @param self -- @param #vec2_table anchr1 -- @return PhysicsJointLimit#PhysicsJointLimit self (return value: cc.PhysicsJointLimit) -------------------------------- --- +-- Set the max distance of the anchor points. -- @function [parent=#PhysicsJointLimit] setMax -- @param self -- @param #float max -- @return PhysicsJointLimit#PhysicsJointLimit self (return value: cc.PhysicsJointLimit) -------------------------------- --- +-- Get the anchor point on body b. -- @function [parent=#PhysicsJointLimit] getAnchr2 -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- +-- Get the anchor point on body a. -- @function [parent=#PhysicsJointLimit] getAnchr1 -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) @@ -44,19 +44,19 @@ -- @return bool#bool ret (return value: bool) -------------------------------- --- +-- Get the allowed min distance of the anchor points. -- @function [parent=#PhysicsJointLimit] getMin -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Get the allowed max distance of the anchor points. -- @function [parent=#PhysicsJointLimit] getMax -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Set the min distance of the anchor points. -- @function [parent=#PhysicsJointLimit] setMin -- @param self -- @param #float min diff --git a/cocos/scripting/lua-bindings/auto/api/PhysicsJointMotor.lua b/cocos/scripting/lua-bindings/auto/api/PhysicsJointMotor.lua index ccf94a56bf..d7407f31e9 100644 --- a/cocos/scripting/lua-bindings/auto/api/PhysicsJointMotor.lua +++ b/cocos/scripting/lua-bindings/auto/api/PhysicsJointMotor.lua @@ -5,14 +5,14 @@ -- @parent_module cc -------------------------------- --- +-- Set the relative angular velocity. -- @function [parent=#PhysicsJointMotor] setRate -- @param self -- @param #float rate -- @return PhysicsJointMotor#PhysicsJointMotor self (return value: cc.PhysicsJointMotor) -------------------------------- --- +-- Get the relative angular velocity. -- @function [parent=#PhysicsJointMotor] getRate -- @param self -- @return float#float ret (return value: float) @@ -24,7 +24,11 @@ -- @return bool#bool ret (return value: bool) -------------------------------- --- +-- Create a motor joint.
+-- param a A is the body to connect.
+-- param b B is the body to connect.
+-- param rate Rate is the desired relative angular velocity.
+-- return A object pointer. -- @function [parent=#PhysicsJointMotor] construct -- @param self -- @param #cc.PhysicsBody a diff --git a/cocos/scripting/lua-bindings/auto/api/PhysicsJointRatchet.lua b/cocos/scripting/lua-bindings/auto/api/PhysicsJointRatchet.lua index 8f28b6ec3b..9fd4eeeb2e 100644 --- a/cocos/scripting/lua-bindings/auto/api/PhysicsJointRatchet.lua +++ b/cocos/scripting/lua-bindings/auto/api/PhysicsJointRatchet.lua @@ -5,13 +5,13 @@ -- @parent_module cc -------------------------------- --- +-- Get the ratchet angle. -- @function [parent=#PhysicsJointRatchet] getAngle -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Set the ratchet angle. -- @function [parent=#PhysicsJointRatchet] setAngle -- @param self -- @param #float angle @@ -24,33 +24,38 @@ -- @return bool#bool ret (return value: bool) -------------------------------- --- +-- Set the initial offset. -- @function [parent=#PhysicsJointRatchet] setPhase -- @param self -- @param #float phase -- @return PhysicsJointRatchet#PhysicsJointRatchet self (return value: cc.PhysicsJointRatchet) -------------------------------- --- +-- Get the initial offset. -- @function [parent=#PhysicsJointRatchet] getPhase -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Set the distance between “clicks”. -- @function [parent=#PhysicsJointRatchet] setRatchet -- @param self -- @param #float ratchet -- @return PhysicsJointRatchet#PhysicsJointRatchet self (return value: cc.PhysicsJointRatchet) -------------------------------- --- +-- Get the distance between “clicks”. -- @function [parent=#PhysicsJointRatchet] getRatchet -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Create a ratchet joint.
+-- param a A is the body to connect.
+-- param b B is the body to connect.
+-- param phase Phase is the initial offset to use when deciding where the ratchet angles are.
+-- param ratchet Ratchet is the distance between “clicks”.
+-- return A object pointer. -- @function [parent=#PhysicsJointRatchet] construct -- @param self -- @param #cc.PhysicsBody a diff --git a/cocos/scripting/lua-bindings/auto/api/PhysicsJointRotaryLimit.lua b/cocos/scripting/lua-bindings/auto/api/PhysicsJointRotaryLimit.lua index ce59459a0c..64cdcd844c 100644 --- a/cocos/scripting/lua-bindings/auto/api/PhysicsJointRotaryLimit.lua +++ b/cocos/scripting/lua-bindings/auto/api/PhysicsJointRotaryLimit.lua @@ -5,7 +5,7 @@ -- @parent_module cc -------------------------------- --- +-- Get the max rotation limit. -- @function [parent=#PhysicsJointRotaryLimit] getMax -- @param self -- @return float#float ret (return value: float) @@ -17,21 +17,21 @@ -- @return bool#bool ret (return value: bool) -------------------------------- --- +-- Set the min rotation limit. -- @function [parent=#PhysicsJointRotaryLimit] setMin -- @param self -- @param #float min -- @return PhysicsJointRotaryLimit#PhysicsJointRotaryLimit self (return value: cc.PhysicsJointRotaryLimit) -------------------------------- --- +-- Set the max rotation limit. -- @function [parent=#PhysicsJointRotaryLimit] setMax -- @param self -- @param #float max -- @return PhysicsJointRotaryLimit#PhysicsJointRotaryLimit self (return value: cc.PhysicsJointRotaryLimit) -------------------------------- --- +-- Get the min rotation limit. -- @function [parent=#PhysicsJointRotaryLimit] getMin -- @param self -- @return float#float ret (return value: float) diff --git a/cocos/scripting/lua-bindings/auto/api/PhysicsJointRotarySpring.lua b/cocos/scripting/lua-bindings/auto/api/PhysicsJointRotarySpring.lua index 204e6ae836..5e49acdebb 100644 --- a/cocos/scripting/lua-bindings/auto/api/PhysicsJointRotarySpring.lua +++ b/cocos/scripting/lua-bindings/auto/api/PhysicsJointRotarySpring.lua @@ -5,20 +5,20 @@ -- @parent_module cc -------------------------------- --- +-- Get the spring soft constant. -- @function [parent=#PhysicsJointRotarySpring] getDamping -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Set the relative angle in radians from the body a to b. -- @function [parent=#PhysicsJointRotarySpring] setRestAngle -- @param self -- @param #float restAngle -- @return PhysicsJointRotarySpring#PhysicsJointRotarySpring self (return value: cc.PhysicsJointRotarySpring) -------------------------------- --- +-- Get the spring constant. -- @function [parent=#PhysicsJointRotarySpring] getStiffness -- @param self -- @return float#float ret (return value: float) @@ -30,27 +30,32 @@ -- @return bool#bool ret (return value: bool) -------------------------------- --- +-- Set the spring constant. -- @function [parent=#PhysicsJointRotarySpring] setStiffness -- @param self -- @param #float stiffness -- @return PhysicsJointRotarySpring#PhysicsJointRotarySpring self (return value: cc.PhysicsJointRotarySpring) -------------------------------- --- +-- Set the spring soft constant. -- @function [parent=#PhysicsJointRotarySpring] setDamping -- @param self -- @param #float damping -- @return PhysicsJointRotarySpring#PhysicsJointRotarySpring self (return value: cc.PhysicsJointRotarySpring) -------------------------------- --- +-- Get the relative angle in radians from the body a to b. -- @function [parent=#PhysicsJointRotarySpring] getRestAngle -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Create a damped rotary spring joint.
+-- param a A is the body to connect.
+-- param b B is the body to connect.
+-- param stiffness It's the spring constant.
+-- param damping It's how soft to make the damping of the spring.
+-- return A object pointer. -- @function [parent=#PhysicsJointRotarySpring] construct -- @param self -- @param #cc.PhysicsBody a diff --git a/cocos/scripting/lua-bindings/auto/api/PhysicsJointSpring.lua b/cocos/scripting/lua-bindings/auto/api/PhysicsJointSpring.lua index 0e8734eac1..32f7fc7ed0 100644 --- a/cocos/scripting/lua-bindings/auto/api/PhysicsJointSpring.lua +++ b/cocos/scripting/lua-bindings/auto/api/PhysicsJointSpring.lua @@ -5,52 +5,52 @@ -- @parent_module cc -------------------------------- --- +-- Set the anchor point on body b. -- @function [parent=#PhysicsJointSpring] setAnchr2 -- @param self -- @param #vec2_table anchr2 -- @return PhysicsJointSpring#PhysicsJointSpring self (return value: cc.PhysicsJointSpring) -------------------------------- --- +-- Set the anchor point on body a. -- @function [parent=#PhysicsJointSpring] setAnchr1 -- @param self -- @param #vec2_table anchr1 -- @return PhysicsJointSpring#PhysicsJointSpring self (return value: cc.PhysicsJointSpring) -------------------------------- --- +-- Get the spring soft constant. -- @function [parent=#PhysicsJointSpring] getDamping -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Set the spring constant. -- @function [parent=#PhysicsJointSpring] setStiffness -- @param self -- @param #float stiffness -- @return PhysicsJointSpring#PhysicsJointSpring self (return value: cc.PhysicsJointSpring) -------------------------------- --- +-- Get the distance of the anchor points. -- @function [parent=#PhysicsJointSpring] getRestLength -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Get the anchor point on body b. -- @function [parent=#PhysicsJointSpring] getAnchr2 -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- +-- Get the anchor point on body a. -- @function [parent=#PhysicsJointSpring] getAnchr1 -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- +-- Get the spring constant. -- @function [parent=#PhysicsJointSpring] getStiffness -- @param self -- @return float#float ret (return value: float) @@ -62,21 +62,28 @@ -- @return bool#bool ret (return value: bool) -------------------------------- --- +-- Set the distance of the anchor points. -- @function [parent=#PhysicsJointSpring] setRestLength -- @param self -- @param #float restLength -- @return PhysicsJointSpring#PhysicsJointSpring self (return value: cc.PhysicsJointSpring) -------------------------------- --- +-- Set the spring soft constant. -- @function [parent=#PhysicsJointSpring] setDamping -- @param self -- @param #float damping -- @return PhysicsJointSpring#PhysicsJointSpring self (return value: cc.PhysicsJointSpring) -------------------------------- --- +-- Create a fixed distance joint.
+-- param a A is the body to connect.
+-- param b B is the body to connect.
+-- param anchr1 Anchr1 is the anchor point on body a.
+-- param anchr2 Anchr2 is the anchor point on body b.
+-- param stiffness It's the spring constant.
+-- param damping It's how soft to make the damping of the spring.
+-- return A object pointer. -- @function [parent=#PhysicsJointSpring] construct -- @param self -- @param #cc.PhysicsBody a diff --git a/cocos/scripting/lua-bindings/auto/api/PhysicsShape.lua b/cocos/scripting/lua-bindings/auto/api/PhysicsShape.lua index e464acb094..0feca1f54f 100644 --- a/cocos/scripting/lua-bindings/auto/api/PhysicsShape.lua +++ b/cocos/scripting/lua-bindings/auto/api/PhysicsShape.lua @@ -5,125 +5,148 @@ -- @parent_module cc -------------------------------- --- +-- Get this shape's friction.
+-- return A float number. -- @function [parent=#PhysicsShape] getFriction -- @param self -- @return float#float ret (return value: float) -------------------------------- --- set the group of body
--- Collision groups let you specify an integral group index. You can have all fixtures with the same group index always collide (positive index) or never collide (negative index)
--- it have high priority than bit masks +-- Set the group of body.
+-- Collision groups let you specify an integral group index. You can have all fixtures with the same group index always collide (positive index) or never collide (negative index).
+-- param group An interger number, it have high priority than bit masks. -- @function [parent=#PhysicsShape] setGroup -- @param self -- @param #int group -- @return PhysicsShape#PhysicsShape self (return value: cc.PhysicsShape) -------------------------------- --- +-- Set this shape's density.
+-- It will change the body's mass this shape attaches.
+-- param density A float number. -- @function [parent=#PhysicsShape] setDensity -- @param self -- @param #float density -- @return PhysicsShape#PhysicsShape self (return value: cc.PhysicsShape) -------------------------------- --- get mass +-- Get the mass of this shape.
+-- return A float number. -- @function [parent=#PhysicsShape] getMass -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Get this shape's PhysicsMaterial object.
+-- return A PhysicsMaterial object reference. -- @function [parent=#PhysicsShape] getMaterial -- @param self -- @return PhysicsMaterial#PhysicsMaterial ret (return value: cc.PhysicsMaterial) -------------------------------- --- +-- Get a mask that defines which categories of physics bodies can collide with this physics body.
+-- return An interger number. -- @function [parent=#PhysicsShape] getCollisionBitmask -- @param self -- @return int#int ret (return value: int) -------------------------------- --- return the area of this shape +-- Return this shape's area.
+-- return A float number. -- @function [parent=#PhysicsShape] getArea -- @param self -- @return float#float ret (return value: float) -------------------------------- --- A mask that defines which categories this physics body belongs to.
+-- Set a mask that defines which categories this physics body belongs to.
-- Every physics body in a scene can be assigned to up to 32 different categories, each corresponding to a bit in the bit mask. You define the mask values used in your game. In conjunction with the collisionBitMask and contactTestBitMask properties, you define which physics bodies interact with each other and when your game is notified of these interactions.
--- The default value is 0xFFFFFFFF (all bits set). +-- param bitmask An interger number, the default value is 0xFFFFFFFF (all bits set). -- @function [parent=#PhysicsShape] setCategoryBitmask -- @param self -- @param #int bitmask -- @return PhysicsShape#PhysicsShape self (return value: cc.PhysicsShape) -------------------------------- --- +-- Get the group of body.
+-- return An interger number. -- @function [parent=#PhysicsShape] getGroup -- @param self -- @return int#int ret (return value: int) -------------------------------- --- Set moment, it will change the body's moment this shape attaches +-- Set this shape's moment.
+-- It will change the body's moment this shape attaches.
+-- param moment A float number. -- @function [parent=#PhysicsShape] setMoment -- @param self -- @param #float moment -- @return PhysicsShape#PhysicsShape self (return value: cc.PhysicsShape) -------------------------------- --- Test point is in shape or not +-- Test point is inside this shape or not.
+-- param point A Vec2 object.
+-- return A bool object. -- @function [parent=#PhysicsShape] containsPoint -- @param self -- @param #vec2_table point -- @return bool#bool ret (return value: bool) -------------------------------- --- +-- Get a mask that defines which categories this physics body belongs to.
+-- return An interger number. -- @function [parent=#PhysicsShape] getCategoryBitmask -- @param self -- @return int#int ret (return value: int) -------------------------------- --- Return the type of this shape +-- Return this shape's type.
+-- return A Type object. -- @function [parent=#PhysicsShape] getType -- @param self -- @return int#int ret (return value: int) -------------------------------- --- +-- Get a mask that defines which categories of bodies cause intersection notifications with this physics body.
+-- return An interger number. -- @function [parent=#PhysicsShape] getContactTestBitmask -- @param self -- @return int#int ret (return value: int) -------------------------------- --- Get center of this shape +-- Get this shape's center position.
+-- This function should be overrided in inherit classes.
+-- return A Vec2 object. -- @function [parent=#PhysicsShape] getCenter -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- +-- Get this shape's density.
+-- return A float number. -- @function [parent=#PhysicsShape] getDensity -- @param self -- @return float#float ret (return value: float) -------------------------------- --- Set mass, it will change the body's mass this shape attaches +-- Set this shape's mass.
+-- It will change the body's mass this shape attaches.
+-- param mass A float number. -- @function [parent=#PhysicsShape] setMass -- @param self -- @param #float mass -- @return PhysicsShape#PhysicsShape self (return value: cc.PhysicsShape) -------------------------------- --- +-- Get this shape's tag.
+-- return An interger number. -- @function [parent=#PhysicsShape] getTag -- @param self -- @return int#int ret (return value: int) -------------------------------- --- Calculate the default moment value +-- Calculate the default moment value.
+-- This function should be overrided in inherit classes.
+-- return A float number, equals 0.0. -- @function [parent=#PhysicsShape] calculateDefaultMoment -- @param self -- @return float#float ret (return value: float) @@ -131,46 +154,55 @@ -------------------------------- -- A mask that defines which categories of physics bodies can collide with this physics body.
-- When two physics bodies contact each other, a collision may occur. This body’s collision mask is compared to the other body’s category mask by performing a logical AND operation. If the result is a non-zero value, then this body is affected by the collision. Each body independently chooses whether it wants to be affected by the other body. For example, you might use this to avoid collision calculations that would make negligible changes to a body’s velocity.
--- The default value is 0xFFFFFFFF (all bits set). +-- param bitmask An interger number, the default value is 0xFFFFFFFF (all bits set). -- @function [parent=#PhysicsShape] setCollisionBitmask -- @param self -- @param #int bitmask -- @return PhysicsShape#PhysicsShape self (return value: cc.PhysicsShape) -------------------------------- --- get moment +-- Get this shape's moment.
+-- return A float number. -- @function [parent=#PhysicsShape] getMoment -- @param self -- @return float#float ret (return value: float) -------------------------------- --- Get offset +-- Get this shape's position offset.
+-- This function should be overrided in inherit classes.
+-- return A Vec2 object. -- @function [parent=#PhysicsShape] getOffset -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- +-- Get this shape's restitution.
+-- return A float number. -- @function [parent=#PhysicsShape] getRestitution -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Set this shape's friction.
+-- It will change the shape's friction.
+-- param friction A float number. -- @function [parent=#PhysicsShape] setFriction -- @param self -- @param #float friction -- @return PhysicsShape#PhysicsShape self (return value: cc.PhysicsShape) -------------------------------- --- +-- Set this shape's material.
+-- It will change the shape's mass, elasticity and friction.
+-- param material A PhysicsMaterial object. -- @function [parent=#PhysicsShape] setMaterial -- @param self -- @param #cc.PhysicsMaterial material -- @return PhysicsShape#PhysicsShape self (return value: cc.PhysicsShape) -------------------------------- --- +-- Set this shape's tag.
+-- param tag An interger number that identifies a shape object. -- @function [parent=#PhysicsShape] setTag -- @param self -- @param #int tag @@ -179,21 +211,24 @@ -------------------------------- -- A mask that defines which categories of bodies cause intersection notifications with this physics body.
-- When two bodies share the same space, each body’s category mask is tested against the other body’s contact mask by performing a logical AND operation. If either comparison results in a non-zero value, an PhysicsContact object is created and passed to the physics world’s delegate. For best performance, only set bits in the contacts mask for interactions you are interested in.
--- The default value is 0x00000000 (all bits cleared). +-- param bitmask An interger number, the default value is 0x00000000 (all bits cleared). -- @function [parent=#PhysicsShape] setContactTestBitmask -- @param self -- @param #int bitmask -- @return PhysicsShape#PhysicsShape self (return value: cc.PhysicsShape) -------------------------------- --- +-- Set this shape's restitution.
+-- It will change the shape's elasticity.
+-- param restitution A float number. -- @function [parent=#PhysicsShape] setRestitution -- @param self -- @param #float restitution -- @return PhysicsShape#PhysicsShape self (return value: cc.PhysicsShape) -------------------------------- --- Get the body that this shape attaches +-- Get the body that this shape attaches.
+-- return A PhysicsBody object pointer. -- @function [parent=#PhysicsShape] getBody -- @param self -- @return PhysicsBody#PhysicsBody ret (return value: cc.PhysicsBody) diff --git a/cocos/scripting/lua-bindings/auto/api/PhysicsShapeBox.lua b/cocos/scripting/lua-bindings/auto/api/PhysicsShapeBox.lua index a2a6c2a5ac..e0786795fb 100644 --- a/cocos/scripting/lua-bindings/auto/api/PhysicsShapeBox.lua +++ b/cocos/scripting/lua-bindings/auto/api/PhysicsShapeBox.lua @@ -5,13 +5,18 @@ -- @parent_module cc -------------------------------- --- +-- Get this box's width and height.
+-- preturn An Size object. -- @function [parent=#PhysicsShapeBox] getSize -- @param self -- @return size_table#size_table ret (return value: size_table) -------------------------------- --- +-- Creates a PhysicsShapeBox with specified value.
+-- param size Size contains this box's width and height.
+-- param material A PhysicsMaterial object, the default value is PHYSICSSHAPE_MATERIAL_DEFAULT.
+-- param offset A Vec2 object, it is the offset from the body’s center of gravity in body local coordinates.
+-- return An autoreleased PhysicsShapeBox object pointer. -- @function [parent=#PhysicsShapeBox] create -- @param self -- @param #size_table size @@ -20,7 +25,8 @@ -- @return PhysicsShapeBox#PhysicsShapeBox ret (return value: cc.PhysicsShapeBox) -------------------------------- --- +-- Get this box's position offset.
+-- return A Vec2 object. -- @function [parent=#PhysicsShapeBox] getOffset -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) diff --git a/cocos/scripting/lua-bindings/auto/api/PhysicsShapeCircle.lua b/cocos/scripting/lua-bindings/auto/api/PhysicsShapeCircle.lua index 324465d163..72b1cc2c2a 100644 --- a/cocos/scripting/lua-bindings/auto/api/PhysicsShapeCircle.lua +++ b/cocos/scripting/lua-bindings/auto/api/PhysicsShapeCircle.lua @@ -5,13 +5,18 @@ -- @parent_module cc -------------------------------- --- +-- Get the circle's radius.
+-- return A float number. -- @function [parent=#PhysicsShapeCircle] getRadius -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Creates a PhysicsShapeCircle with specified value.
+-- param radius A float number, it is the circle's radius.
+-- param material A PhysicsMaterial object, the default value is PHYSICSSHAPE_MATERIAL_DEFAULT.
+-- param offset A Vec2 object, it is the offset from the body’s center of gravity in body local coordinates.
+-- return An autoreleased PhysicsShapeCircle object pointer. -- @function [parent=#PhysicsShapeCircle] create -- @param self -- @param #float radius @@ -20,14 +25,20 @@ -- @return PhysicsShapeCircle#PhysicsShapeCircle ret (return value: cc.PhysicsShapeCircle) -------------------------------- --- +-- Calculate the area of a circle with specified radius.
+-- param radius A float number
+-- return A float number -- @function [parent=#PhysicsShapeCircle] calculateArea -- @param self -- @param #float radius -- @return float#float ret (return value: float) -------------------------------- --- +-- Calculate the moment of a circle with specified value.
+-- param mass A float number
+-- param radius A float number
+-- param offset A Vec2 object, it is the offset from the body’s center of gravity in body local coordinates.
+-- return A float number -- @function [parent=#PhysicsShapeCircle] calculateMoment -- @param self -- @param #float mass @@ -36,13 +47,15 @@ -- @return float#float ret (return value: float) -------------------------------- --- +-- Get this circle's position offset.
+-- return A Vec2 object. -- @function [parent=#PhysicsShapeCircle] getOffset -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- +-- Calculate the moment for a circle.
+-- return A float number. -- @function [parent=#PhysicsShapeCircle] calculateDefaultMoment -- @param self -- @return float#float ret (return value: float) diff --git a/cocos/scripting/lua-bindings/auto/api/PhysicsShapeEdgeBox.lua b/cocos/scripting/lua-bindings/auto/api/PhysicsShapeEdgeBox.lua index 14fe760243..668f136596 100644 --- a/cocos/scripting/lua-bindings/auto/api/PhysicsShapeEdgeBox.lua +++ b/cocos/scripting/lua-bindings/auto/api/PhysicsShapeEdgeBox.lua @@ -5,7 +5,12 @@ -- @parent_module cc -------------------------------- --- +-- Creates a PhysicsShapeEdgeBox with specified value.
+-- param size Size contains this box's width and height.
+-- param material A PhysicsMaterial object, the default value is PHYSICSSHAPE_MATERIAL_DEFAULT.
+-- param border It's a edge's border width.
+-- param offset A Vec2 object, it is the offset from the body’s center of gravity in body local coordinates.
+-- return An autoreleased PhysicsShapeEdgeBox object pointer. -- @function [parent=#PhysicsShapeEdgeBox] create -- @param self -- @param #size_table size @@ -15,7 +20,8 @@ -- @return PhysicsShapeEdgeBox#PhysicsShapeEdgeBox ret (return value: cc.PhysicsShapeEdgeBox) -------------------------------- --- +-- Get this box's position offset.
+-- return A Vec2 object. -- @function [parent=#PhysicsShapeEdgeBox] getOffset -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) diff --git a/cocos/scripting/lua-bindings/auto/api/PhysicsShapeEdgeChain.lua b/cocos/scripting/lua-bindings/auto/api/PhysicsShapeEdgeChain.lua index 40b42cf74a..14bc30f9fb 100644 --- a/cocos/scripting/lua-bindings/auto/api/PhysicsShapeEdgeChain.lua +++ b/cocos/scripting/lua-bindings/auto/api/PhysicsShapeEdgeChain.lua @@ -5,13 +5,15 @@ -- @parent_module cc -------------------------------- --- +-- Get this chain's points array count.
+-- preturn An interger number. -- @function [parent=#PhysicsShapeEdgeChain] getPointsCount -- @param self -- @return int#int ret (return value: int) -------------------------------- --- +-- Get this chain's center position.
+-- return A Vec2 object. -- @function [parent=#PhysicsShapeEdgeChain] getCenter -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) diff --git a/cocos/scripting/lua-bindings/auto/api/PhysicsShapeEdgePolygon.lua b/cocos/scripting/lua-bindings/auto/api/PhysicsShapeEdgePolygon.lua index de1165c4ae..8b8ec6b571 100644 --- a/cocos/scripting/lua-bindings/auto/api/PhysicsShapeEdgePolygon.lua +++ b/cocos/scripting/lua-bindings/auto/api/PhysicsShapeEdgePolygon.lua @@ -5,13 +5,15 @@ -- @parent_module cc -------------------------------- --- +-- Get this polygon's points array count.
+-- preturn An interger number. -- @function [parent=#PhysicsShapeEdgePolygon] getPointsCount -- @param self -- @return int#int ret (return value: int) -------------------------------- --- +-- Get this polygon's center position.
+-- return A Vec2 object. -- @function [parent=#PhysicsShapeEdgePolygon] getCenter -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) diff --git a/cocos/scripting/lua-bindings/auto/api/PhysicsShapeEdgeSegment.lua b/cocos/scripting/lua-bindings/auto/api/PhysicsShapeEdgeSegment.lua index 852c62a8af..d01b4b4af3 100644 --- a/cocos/scripting/lua-bindings/auto/api/PhysicsShapeEdgeSegment.lua +++ b/cocos/scripting/lua-bindings/auto/api/PhysicsShapeEdgeSegment.lua @@ -5,19 +5,26 @@ -- @parent_module cc -------------------------------- --- +-- Get this edge's end position.
+-- return A Vec2 object. -- @function [parent=#PhysicsShapeEdgeSegment] getPointB -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- +-- Get this edge's begin position.
+-- return A Vec2 object. -- @function [parent=#PhysicsShapeEdgeSegment] getPointA -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- +-- Creates a PhysicsShapeEdgeSegment with specified value.
+-- param a It's the edge's begin position.
+-- param b It's the edge's end position.
+-- param material A PhysicsMaterial object, the default value is PHYSICSSHAPE_MATERIAL_DEFAULT.
+-- param border It's a edge's border width.
+-- return An autoreleased PhysicsShapeEdgeSegment object pointer. -- @function [parent=#PhysicsShapeEdgeSegment] create -- @param self -- @param #vec2_table a @@ -27,7 +34,8 @@ -- @return PhysicsShapeEdgeSegment#PhysicsShapeEdgeSegment ret (return value: cc.PhysicsShapeEdgeSegment) -------------------------------- --- +-- Get this edge's center position.
+-- return A Vec2 object. -- @function [parent=#PhysicsShapeEdgeSegment] getCenter -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) diff --git a/cocos/scripting/lua-bindings/auto/api/PhysicsShapePolygon.lua b/cocos/scripting/lua-bindings/auto/api/PhysicsShapePolygon.lua index 81c6bf76c1..cdb96a9c74 100644 --- a/cocos/scripting/lua-bindings/auto/api/PhysicsShapePolygon.lua +++ b/cocos/scripting/lua-bindings/auto/api/PhysicsShapePolygon.lua @@ -5,26 +5,31 @@ -- @parent_module cc -------------------------------- --- +-- Get this polygon's points array count.
+-- preturn An interger number. -- @function [parent=#PhysicsShapePolygon] getPointsCount -- @param self -- @return int#int ret (return value: int) -------------------------------- --- +-- Get a point of this polygon's points array.
+-- param i A index of this polygon's points array.
+-- return A point value. -- @function [parent=#PhysicsShapePolygon] getPoint -- @param self -- @param #int i -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- +-- Calculate the moment for a polygon.
+-- return A float number. -- @function [parent=#PhysicsShapePolygon] calculateDefaultMoment -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Get this polygon's center position.
+-- return A Vec2 object. -- @function [parent=#PhysicsShapePolygon] getCenter -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) diff --git a/cocos/scripting/lua-bindings/auto/api/PhysicsWorld.lua b/cocos/scripting/lua-bindings/auto/api/PhysicsWorld.lua index fc96689e97..3d50201f82 100644 --- a/cocos/scripting/lua-bindings/auto/api/PhysicsWorld.lua +++ b/cocos/scripting/lua-bindings/auto/api/PhysicsWorld.lua @@ -4,20 +4,23 @@ -- @parent_module cc -------------------------------- --- set the gravity value +-- set the gravity value of this physics world.
+-- param gravity A gravity value of this physics world. -- @function [parent=#PhysicsWorld] setGravity -- @param self -- @param #vec2_table gravity -- @return PhysicsWorld#PhysicsWorld self (return value: cc.PhysicsWorld) -------------------------------- --- Get all the bodys that in the physics world. +-- Get all the bodys that in this physics world.
+-- return A Vector& object contains all bodies in this physics world. -- @function [parent=#PhysicsWorld] getAllBodies -- @param self -- @return array_table#array_table ret (return value: array_table) -------------------------------- --- get the bebug draw mask +-- Get the bebug draw mask.
+-- return An interger number. -- @function [parent=#PhysicsWorld] getDebugDrawMask -- @param self -- @return int#int ret (return value: int) @@ -25,36 +28,43 @@ -------------------------------- -- set the number of substeps in an update of the physics world.
-- One physics update will be divided into several substeps to increase its accuracy.
--- default value is 1 +-- param steps An interger number, default value is 1. -- @function [parent=#PhysicsWorld] setSubsteps -- @param self -- @param #int steps -- @return PhysicsWorld#PhysicsWorld self (return value: cc.PhysicsWorld) -------------------------------- --- To control the step of physics, if you want control it by yourself( fixed-timestep for example ), you can set this to false and call step by yourself.
--- Defaut value is true.
--- Note: if you set auto step to false, setSpeed setSubsteps and setUpdateRate won't work, you need to control the time step by yourself. +-- To control the step of physics.
+-- If you want control it by yourself( fixed-timestep for example ), you can set this to false and call step by yourself.
+-- attention If you set auto step to false, setSpeed setSubsteps and setUpdateRate won't work, you need to control the time step by yourself.
+-- param autoStep A bool object, defaut value is true. -- @function [parent=#PhysicsWorld] setAutoStep -- @param self -- @param #bool autoStep -- @return PhysicsWorld#PhysicsWorld self (return value: cc.PhysicsWorld) -------------------------------- --- Adds a joint to the physics world. +-- Adds a joint to this physics world.
+-- This joint will be added to this physics world at next frame.
+-- attention If this joint is already added to another physics world, it will be removed from that world first and then add to this world.
+-- param joint A pointer to an existing PhysicsJoint object. -- @function [parent=#PhysicsWorld] addJoint -- @param self -- @param #cc.PhysicsJoint joint -- @return PhysicsWorld#PhysicsWorld self (return value: cc.PhysicsWorld) -------------------------------- --- Remove all joints from physics world. +-- Remove all joints from this physics world.
+-- attention This function is invoked in the destructor of this physics world, you do not use this api in common.
+-- param destroy true all joints will be destroyed after remove from this world, false otherwise. -- @function [parent=#PhysicsWorld] removeAllJoints -- @param self -- @return PhysicsWorld#PhysicsWorld self (return value: cc.PhysicsWorld) -------------------------------- --- Get the auto step +-- Get the auto step of this physics world.
+-- return A bool object. -- @function [parent=#PhysicsWorld] isAutoStep -- @param self -- @return bool#bool ret (return value: bool) @@ -68,7 +78,11 @@ -- @return PhysicsWorld#PhysicsWorld self (return value: cc.PhysicsWorld) -------------------------------- --- Remove a joint from physics world. +-- Remove a joint from this physics world.
+-- If this world is not locked, the joint is removed immediately, otherwise at next frame.
+-- If this joint is connected with a body, it will be removed from the body also.
+-- param joint A pointer to an existing PhysicsJoint object.
+-- param destroy true this joint will be destroyed after remove from this world, false otherwise. -- @function [parent=#PhysicsWorld] removeJoint -- @param self -- @param #cc.PhysicsJoint joint @@ -76,84 +90,104 @@ -- @return PhysicsWorld#PhysicsWorld self (return value: cc.PhysicsWorld) -------------------------------- --- Get phsyics shapes that contains the point. +-- Get phsyics shapes that contains the point.
+-- All shapes contains the point will be pushed in a Vector object.
+-- attention The point must lie inside a shape.
+-- param point A Vec2 object contains the position of the point.
+-- return A Vector object contains all found PhysicsShape pointer. -- @function [parent=#PhysicsWorld] getShapes -- @param self -- @param #vec2_table point -- @return array_table#array_table ret (return value: array_table) -------------------------------- --- The step for physics world, The times passing for simulate the physics.
--- Note: you need to setAutoStep(false) first before it can work. +-- The step for physics world.
+-- The times passing for simulate the physics.
+-- attention You need to setAutoStep(false) first before it can work.
+-- param delta A float number. -- @function [parent=#PhysicsWorld] step -- @param self -- @param #float delta -- @return PhysicsWorld#PhysicsWorld self (return value: cc.PhysicsWorld) -------------------------------- --- set the debug draw mask +-- Set the debug draw mask of this physics world.
+-- This physics world will draw shapes and joints by DrawNode acoording to mask.
+-- param mask Mask has four value:DEBUGDRAW_NONE, DEBUGDRAW_SHAPE, DEBUGDRAW_JOINT, DEBUGDRAW_CONTACT and DEBUGDRAW_ALL, default is DEBUGDRAW_NONE -- @function [parent=#PhysicsWorld] setDebugDrawMask -- @param self -- @param #int mask -- @return PhysicsWorld#PhysicsWorld self (return value: cc.PhysicsWorld) -------------------------------- --- get the gravity value +-- Get the gravity value of this physics world.
+-- return A Vect object. -- @function [parent=#PhysicsWorld] getGravity -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- set the update rate of physics world, update rate is the value of EngineUpdateTimes/PhysicsWorldUpdateTimes.
--- set it higher can improve performance, set it lower can improve accuracy of physics world simulation.
--- default value is 1.0
--- Note: if you setAutoStep(false), this won't work. +-- Set the update rate of this physics world
+-- Update rate is the value of EngineUpdateTimes/PhysicsWorldUpdateTimes.
+-- Set it higher can improve performance, set it lower can improve accuracy of physics world simulation.
+-- attention if you setAutoStep(false), this won't work.
+-- param rate An interger number, default value is 1.0. -- @function [parent=#PhysicsWorld] setUpdateRate -- @param self -- @param #int rate -- @return PhysicsWorld#PhysicsWorld self (return value: cc.PhysicsWorld) -------------------------------- --- get the number of substeps +-- Get the number of substeps of this physics world.
+-- return An interger number. -- @function [parent=#PhysicsWorld] getSubsteps -- @param self -- @return int#int ret (return value: int) -------------------------------- --- get the speed of physics world +-- Get the speed of this physics world.
+-- return A float number. -- @function [parent=#PhysicsWorld] getSpeed -- @param self -- @return float#float ret (return value: float) -------------------------------- --- get the update rate +-- Get the update rate of this physics world.
+-- return An interger number. -- @function [parent=#PhysicsWorld] getUpdateRate -- @param self -- @return int#int ret (return value: int) -------------------------------- --- Remove all bodies from physics world. +-- Remove all bodies from physics world.
+-- If this world is not locked, those body are removed immediately, otherwise at next frame. -- @function [parent=#PhysicsWorld] removeAllBodies -- @param self -- @return PhysicsWorld#PhysicsWorld self (return value: cc.PhysicsWorld) -------------------------------- --- Set the speed of physics world, speed is the rate at which the simulation executes. default value is 1.0
--- Note: if you setAutoStep(false), this won't work. +-- Set the speed of this physics world.
+-- attention if you setAutoStep(false), this won't work.
+-- param speed A float number. Speed is the rate at which the simulation executes. default value is 1.0. -- @function [parent=#PhysicsWorld] setSpeed -- @param self -- @param #float speed -- @return PhysicsWorld#PhysicsWorld self (return value: cc.PhysicsWorld) -------------------------------- --- return physics shape that contains the point. +-- Get the nearest phsyics shape that contains the point.
+-- Query this physics world at point and return the closest shape.
+-- param point A Vec2 object contains the position of the point.
+-- return A PhysicsShape object pointer or nullptr if no shapes were found -- @function [parent=#PhysicsWorld] getShape -- @param self -- @param #vec2_table point -- @return PhysicsShape#PhysicsShape ret (return value: cc.PhysicsShape) -------------------------------- --- Get body by tag +-- Get a body by tag.
+-- param tag An interger number that identifies a PhysicsBody object.
+-- return A PhysicsBody object pointer or nullptr if no shapes were found. -- @function [parent=#PhysicsWorld] getBody -- @param self -- @param #int tag diff --git a/cocos/scripting/lua-bindings/auto/api/ProgressTimer.lua b/cocos/scripting/lua-bindings/auto/api/ProgressTimer.lua index 21f5a9a94b..2c03e3afe3 100644 --- a/cocos/scripting/lua-bindings/auto/api/ProgressTimer.lua +++ b/cocos/scripting/lua-bindings/auto/api/ProgressTimer.lua @@ -5,62 +5,70 @@ -- @parent_module cc -------------------------------- --- +-- Return the Reverse direction.
+-- return If the direction is Anti-clockwise,it will return true. -- @function [parent=#ProgressTimer] isReverseDirection -- @param self -- @return bool#bool ret (return value: bool) -------------------------------- --- This allows the bar type to move the component at a specific rate
+-- This allows the bar type to move the component at a specific rate.
-- Set the component to 0 to make sure it stays at 100%.
--- For example you want a left to right bar but not have the height stay 100%
--- Set the rate to be Vec2(0,1); and set the midpoint to = Vec2(0,.5f); +-- For example you want a left to right bar but not have the height stay 100%.
+-- Set the rate to be Vec2(0,1); and set the midpoint to = Vec2(0,.5f).
+-- param barChangeRate A Vec2. -- @function [parent=#ProgressTimer] setBarChangeRate -- @param self -- @param #vec2_table barChangeRate -- @return ProgressTimer#ProgressTimer self (return value: cc.ProgressTimer) -------------------------------- --- Percentages are from 0 to 100 +-- Percentages are from 0 to 100.
+-- return Percentages. -- @function [parent=#ProgressTimer] getPercentage -- @param self -- @return float#float ret (return value: float) -------------------------------- --- +-- Set the sprite as the shape.
+-- param sprite The sprite as the shape. -- @function [parent=#ProgressTimer] setSprite -- @param self -- @param #cc.Sprite sprite -- @return ProgressTimer#ProgressTimer self (return value: cc.ProgressTimer) -------------------------------- --- Change the percentage to change progress. +-- Change the percentage to change progress.
+-- return A Type -- @function [parent=#ProgressTimer] getType -- @param self -- @return int#int ret (return value: int) -------------------------------- --- The image to show the progress percentage, retain +-- The image to show the progress percentage, retain.
+-- return A sprite. -- @function [parent=#ProgressTimer] getSprite -- @param self -- @return Sprite#Sprite ret (return value: cc.Sprite) -------------------------------- -- Midpoint is used to modify the progress start position.
--- If you're using radials type then the midpoint changes the center point
--- If you're using bar type the the midpoint changes the bar growth
+-- If you're using radials type then the midpoint changes the center point.
+-- If you're using bar type the the midpoint changes the bar growth.
-- it expands from the center but clamps to the sprites edge so:
--- you want a left to right then set the midpoint all the way to Vec2(0,y)
--- you want a right to left then set the midpoint all the way to Vec2(1,y)
--- you want a bottom to top then set the midpoint all the way to Vec2(x,0)
--- you want a top to bottom then set the midpoint all the way to Vec2(x,1) +-- you want a left to right then set the midpoint all the way to Vec2(0,y).
+-- you want a right to left then set the midpoint all the way to Vec2(1,y).
+-- you want a bottom to top then set the midpoint all the way to Vec2(x,0).
+-- you want a top to bottom then set the midpoint all the way to Vec2(x,1).
+-- param point A Vec2 point. -- @function [parent=#ProgressTimer] setMidpoint -- @param self -- @param #vec2_table point -- @return ProgressTimer#ProgressTimer self (return value: cc.ProgressTimer) -------------------------------- --- Returns the BarChangeRate +-- Returns the BarChangeRate.
+-- return A barChangeRate. -- @function [parent=#ProgressTimer] getBarChangeRate -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) @@ -74,27 +82,32 @@ -- @return ProgressTimer#ProgressTimer self (return value: cc.ProgressTimer) -------------------------------- --- Returns the Midpoint +-- Returns the Midpoint.
+-- return A Vec2. -- @function [parent=#ProgressTimer] getMidpoint -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- +-- Set the initial percentage values.
+-- param percentage The initial percentage values. -- @function [parent=#ProgressTimer] setPercentage -- @param self -- @param #float percentage -- @return ProgressTimer#ProgressTimer self (return value: cc.ProgressTimer) -------------------------------- --- +-- Set the ProgressTimer type.
+-- param type Is an Type. -- @function [parent=#ProgressTimer] setType -- @param self -- @param #int type -- @return ProgressTimer#ProgressTimer self (return value: cc.ProgressTimer) -------------------------------- --- Creates a progress timer with the sprite as the shape the timer goes through +-- Creates a progress timer with the sprite as the shape the timer goes through.
+-- param sp The sprite as the shape the timer goes through.
+-- return A ProgressTimer. -- @function [parent=#ProgressTimer] create -- @param self -- @param #cc.Sprite sp diff --git a/cocos/scripting/lua-bindings/auto/api/RenderTexture.lua b/cocos/scripting/lua-bindings/auto/api/RenderTexture.lua index 289860a9ae..609b6d2bb2 100644 --- a/cocos/scripting/lua-bindings/auto/api/RenderTexture.lua +++ b/cocos/scripting/lua-bindings/auto/api/RenderTexture.lua @@ -5,7 +5,10 @@ -- @parent_module cc -------------------------------- --- Used for grab part of screen to a texture.rtBegin: the position of renderTexture on the fullRectfullRect: the total size of screenfullViewport: the total viewportSize +-- Used for grab part of screen to a texture.
+-- param rtBegin The position of renderTexture on the fullRect.
+-- param fullRect The total size of screen.
+-- param fullViewport The total viewportSize. -- @function [parent=#RenderTexture] setVirtualViewport -- @param self -- @param #vec2_table rtBegin @@ -14,73 +17,82 @@ -- @return RenderTexture#RenderTexture self (return value: cc.RenderTexture) -------------------------------- --- clears the texture with a specified stencil value +-- Clears the texture with a specified stencil value.
+-- param A specified stencil value. -- @function [parent=#RenderTexture] clearStencil -- @param self -- @param #int stencilValue -- @return RenderTexture#RenderTexture self (return value: cc.RenderTexture) -------------------------------- --- Value for clearDepth. Valid only when "autoDraw" is true. +-- Value for clearDepth. Valid only when "autoDraw" is true.
+-- return Value for clearDepth. -- @function [parent=#RenderTexture] getClearDepth -- @param self -- @return float#float ret (return value: float) -------------------------------- --- Value for clear Stencil. Valid only when "autoDraw" is true +-- Value for clear Stencil. Valid only when "autoDraw" is true.
+-- return Value for clear Stencil. -- @function [parent=#RenderTexture] getClearStencil -- @param self -- @return int#int ret (return value: int) -------------------------------- --- ends grabbing +-- Ends grabbing. -- @function [parent=#RenderTexture] end -- @param self -- @return RenderTexture#RenderTexture self (return value: cc.RenderTexture) -------------------------------- --- +-- Set Value for clear Stencil.
+-- param clearStencil Value for clear Stencil. -- @function [parent=#RenderTexture] setClearStencil -- @param self -- @param #int clearStencil -- @return RenderTexture#RenderTexture self (return value: cc.RenderTexture) -------------------------------- --- Sets the Sprite being used. +-- Sets the Sprite being used.
+-- param A Sprite. -- @function [parent=#RenderTexture] setSprite -- @param self -- @param #cc.Sprite sprite -- @return RenderTexture#RenderTexture self (return value: cc.RenderTexture) -------------------------------- --- Gets the Sprite being used. +-- Gets the Sprite being used.
+-- return A Sprite. -- @function [parent=#RenderTexture] getSprite -- @param self -- @return Sprite#Sprite ret (return value: cc.Sprite) -------------------------------- -- When enabled, it will render its children into the texture automatically. Disabled by default for compatiblity reasons.
--- Will be enabled in the future. +-- Will be enabled in the future.
+-- return Return the autoDraw value. -- @function [parent=#RenderTexture] isAutoDraw -- @param self -- @return bool#bool ret (return value: bool) -------------------------------- --- +-- Flag: Use stack matrix computed from scene hierarchy or generate new modelView and projection matrix.
+-- param keepMatrix Wether or not use stack matrix computed from scene hierarchy or generate new modelView and projection matrix. -- @function [parent=#RenderTexture] setKeepMatrix -- @param self -- @param #bool keepMatrix -- @return RenderTexture#RenderTexture self (return value: cc.RenderTexture) -------------------------------- --- +-- Set flags.
+-- param clearFlags Valid flags: GL_COLOR_BUFFER_BIT, GL_DEPTH_BUFFER_BIT, GL_STENCIL_BUFFER_BIT. -- @function [parent=#RenderTexture] setClearFlags -- @param self -- @param #unsigned int clearFlags -- @return RenderTexture#RenderTexture self (return value: cc.RenderTexture) -------------------------------- --- starts grabbing +-- Starts grabbing. -- @function [parent=#RenderTexture] begin -- @param self -- @return RenderTexture#RenderTexture self (return value: cc.RenderTexture) @@ -97,21 +109,23 @@ -- @return bool#bool ret (return value: bool) -------------------------------- --- +-- Set a valve to control whether or not render its children into the texture automatically.
+-- param isAutoDraw Whether or not render its children into the texture automatically. -- @function [parent=#RenderTexture] setAutoDraw -- @param self -- @param #bool isAutoDraw -- @return RenderTexture#RenderTexture self (return value: cc.RenderTexture) -------------------------------- --- +-- Set color value.
+-- param clearColor Color value. -- @function [parent=#RenderTexture] setClearColor -- @param self -- @param #color4f_table clearColor -- @return RenderTexture#RenderTexture self (return value: cc.RenderTexture) -------------------------------- --- end is key word of lua, use other name to export to lua. +-- End is key word of lua, use other name to export to lua. -- @function [parent=#RenderTexture] endToLua -- @param self -- @return RenderTexture#RenderTexture self (return value: cc.RenderTexture) @@ -131,20 +145,26 @@ -- @return RenderTexture#RenderTexture self (return value: cc.RenderTexture) -------------------------------- --- clears the texture with a specified depth value +-- Clears the texture with a specified depth value.
+-- param A specified depth value. -- @function [parent=#RenderTexture] clearDepth -- @param self -- @param #float depthValue -- @return RenderTexture#RenderTexture self (return value: cc.RenderTexture) -------------------------------- --- Clear color value. Valid only when "autoDraw" is true. +-- Clear color value. Valid only when "autoDraw" is true.
+-- return Color value. -- @function [parent=#RenderTexture] getClearColor -- @param self -- @return color4f_table#color4f_table ret (return value: color4f_table) -------------------------------- --- clears the texture with a color +-- Clears the texture with a color.
+-- param r Red.
+-- param g Green.
+-- param b Blue.
+-- param a Alpha. -- @function [parent=#RenderTexture] clear -- @param self -- @param #float r @@ -154,7 +174,8 @@ -- @return RenderTexture#RenderTexture self (return value: cc.RenderTexture) -------------------------------- --- Valid flags: GL_COLOR_BUFFER_BIT, GL_DEPTH_BUFFER_BIT, GL_STENCIL_BUFFER_BIT. They can be OR'ed. Valid when "autoDraw" is true. +-- Valid flags: GL_COLOR_BUFFER_BIT, GL_DEPTH_BUFFER_BIT, GL_STENCIL_BUFFER_BIT. They can be OR'ed. Valid when "autoDraw" is true.
+-- return Clear flags. -- @function [parent=#RenderTexture] getClearFlags -- @param self -- @return unsigned int#unsigned int ret (return value: unsigned int) @@ -166,7 +187,8 @@ -- @return Image#Image ret (return value: cc.Image) -------------------------------- --- +-- Set Value for clearDepth.
+-- param clearDepth Value for clearDepth. -- @function [parent=#RenderTexture] setClearDepth -- @param self -- @param #float clearDepth @@ -214,7 +236,9 @@ -- @return RenderTexture#RenderTexture self (return value: cc.RenderTexture) -------------------------------- --- +-- FIXME: should be procted.
+-- but due to a bug in PowerVR + Android,
+-- the constructor is public again. -- @function [parent=#RenderTexture] RenderTexture -- @param self -- @return RenderTexture#RenderTexture self (return value: cc.RenderTexture) diff --git a/cocos/scripting/lua-bindings/auto/api/Scene.lua b/cocos/scripting/lua-bindings/auto/api/Scene.lua index f9866d5072..feab746d08 100644 --- a/cocos/scripting/lua-bindings/auto/api/Scene.lua +++ b/cocos/scripting/lua-bindings/auto/api/Scene.lua @@ -6,7 +6,8 @@ -------------------------------- -- Render the scene.
--- param renderer The renderer use to render the scene. +-- param renderer The renderer use to render the scene.
+-- js NA -- @function [parent=#Scene] render -- @param self -- @param #cc.Renderer renderer @@ -14,6 +15,7 @@ -------------------------------- -- Get the default camera.
+-- js NA
-- return The default camera of scene. -- @function [parent=#Scene] getDefaultCamera -- @param self @@ -22,7 +24,8 @@ -------------------------------- -- Creates a new Scene object with a predefined Size.
-- param size The predefined size of scene.
--- return An autoreleased Scene object. +-- return An autoreleased Scene object.
+-- js NA -- @function [parent=#Scene] createWithSize -- @param self -- @param #size_table size diff --git a/cocos/scripting/lua-bindings/auto/api/SimpleAudioEngine.lua b/cocos/scripting/lua-bindings/auto/api/SimpleAudioEngine.lua index 3334fcef28..2e39eb2a6a 100644 --- a/cocos/scripting/lua-bindings/auto/api/SimpleAudioEngine.lua +++ b/cocos/scripting/lua-bindings/auto/api/SimpleAudioEngine.lua @@ -6,7 +6,7 @@ -------------------------------- -- Preload background music.
-- param filePath The path of the background music file.
--- js preloadMusic
+-- js NA
-- lua preloadMusic -- @function [parent=#SimpleAudioEngine] preloadBackgroundMusic -- @param self @@ -57,7 +57,8 @@ -------------------------------- -- Preload a compressed audio file.
-- The compressed audio will be decoded to wave, then written into an internal buffer in SimpleAudioEngine.
--- param filePath The path of the effect file. +-- param filePath The path of the effect file.
+-- js NA -- @function [parent=#SimpleAudioEngine] preloadEffect -- @param self -- @param #char filePath @@ -195,7 +196,8 @@ -- @return SimpleAudioEngine#SimpleAudioEngine self (return value: cc.SimpleAudioEngine) -------------------------------- --- Returns a shared instance of the SimpleAudioEngine. +-- Returns a shared instance of the SimpleAudioEngine.
+-- js NA -- @function [parent=#SimpleAudioEngine] getInstance -- @param self -- @return SimpleAudioEngine#SimpleAudioEngine ret (return value: cc.SimpleAudioEngine) diff --git a/cocos/scripting/lua-bindings/auto/api/Sprite3DCache.lua b/cocos/scripting/lua-bindings/auto/api/Sprite3DCache.lua index 677a5bd770..c79138d51a 100644 --- a/cocos/scripting/lua-bindings/auto/api/Sprite3DCache.lua +++ b/cocos/scripting/lua-bindings/auto/api/Sprite3DCache.lua @@ -4,14 +4,14 @@ -- @parent_module cc -------------------------------- --- +-- remove the SpriteData from Sprite3D by given the specified key -- @function [parent=#Sprite3DCache] removeSprite3DData -- @param self -- @param #string key -- @return Sprite3DCache#Sprite3DCache self (return value: cc.Sprite3DCache) -------------------------------- --- +-- remove all the SpriteData from Sprite3D -- @function [parent=#Sprite3DCache] removeAllSprite3DData -- @param self -- @return Sprite3DCache#Sprite3DCache self (return value: cc.Sprite3DCache) diff --git a/cocos/scripting/lua-bindings/auto/api/SpriteBatchNode.lua b/cocos/scripting/lua-bindings/auto/api/SpriteBatchNode.lua index 54113eaad4..6c5b2bad10 100644 --- a/cocos/scripting/lua-bindings/auto/api/SpriteBatchNode.lua +++ b/cocos/scripting/lua-bindings/auto/api/SpriteBatchNode.lua @@ -5,7 +5,8 @@ -- @parent_module cc -------------------------------- --- +-- Append the child.
+-- param sprite A Sprite. -- @function [parent=#SpriteBatchNode] appendChild -- @param self -- @param #cc.Sprite sprite @@ -42,14 +43,19 @@ -- @return BlendFunc#BlendFunc ret (return value: cc.BlendFunc) -------------------------------- --- +-- Get the Min image block index,in all child.
+-- param sprite The parent sprite.
+-- return Index. -- @function [parent=#SpriteBatchNode] lowestAtlasIndexInChild -- @param self -- @param #cc.Sprite sprite -- @return long#long ret (return value: long) -------------------------------- --- +-- Get the nearest index from the sprite in z.
+-- param sprite The parent sprite.
+-- param z Z order for drawing priority.
+-- return Index. -- @function [parent=#SpriteBatchNode] atlasIndexForChild -- @param self -- @param #cc.Sprite sprite @@ -57,7 +63,8 @@ -- @return long#long ret (return value: long) -------------------------------- --- sets the TextureAtlas object +-- Sets the TextureAtlas object.
+-- param textureAtlas The TextureAtlas object. -- @function [parent=#SpriteBatchNode] setTextureAtlas -- @param self -- @param #cc.TextureAtlas textureAtlas @@ -70,13 +77,14 @@ -- @return Texture2D#Texture2D ret (return value: cc.Texture2D) -------------------------------- --- +-- Increase the Atlas Capacity. -- @function [parent=#SpriteBatchNode] increaseAtlasCapacity -- @param self -- @return SpriteBatchNode#SpriteBatchNode self (return value: cc.SpriteBatchNode) -------------------------------- --- returns the TextureAtlas object +-- Returns the TextureAtlas object.
+-- return The TextureAtlas object. -- @function [parent=#SpriteBatchNode] getTextureAtlas -- @param self -- @return TextureAtlas#TextureAtlas ret (return value: cc.TextureAtlas) @@ -84,7 +92,7 @@ -------------------------------- -- Inserts a quad at a certain index into the texture atlas. The Sprite won't be added into the children array.
-- This method should be called only when you are dealing with very big AtlasSrite and when most of the Sprite won't be updated.
--- For example: a tile map (TMXMap) or a label with lots of characters (LabelBMFont) +-- For example: a tile map (TMXMap) or a label with lots of characters (LabelBMFont). -- @function [parent=#SpriteBatchNode] insertQuadFromSprite -- @param self -- @param #cc.Sprite sprite @@ -99,7 +107,10 @@ -- @return SpriteBatchNode#SpriteBatchNode self (return value: cc.SpriteBatchNode) -------------------------------- --- +-- Rebuild index with a sprite all child.
+-- param parent The parent sprite.
+-- param index The child index.
+-- return Index. -- @function [parent=#SpriteBatchNode] rebuildIndexInOrder -- @param self -- @param #cc.Sprite parent @@ -107,15 +118,19 @@ -- @return long#long ret (return value: long) -------------------------------- --- +-- Get the Max image block index,in all child.
+-- param sprite The parent sprite.
+-- return Index. -- @function [parent=#SpriteBatchNode] highestAtlasIndexInChild -- @param self -- @param #cc.Sprite sprite -- @return long#long ret (return value: long) -------------------------------- --- removes a child given a certain index. It will also cleanup the running actions depending on the cleanup parameter.
--- warning Removing a child from a SpriteBatchNode is very slow +-- Removes a child given a certain index. It will also cleanup the running actions depending on the cleanup parameter.
+-- param index A certain index.
+-- param doCleanup Whether or not to cleanup the running actions.
+-- warning Removing a child from a SpriteBatchNode is very slow. -- @function [parent=#SpriteBatchNode] removeChildAtIndex -- @param self -- @param #long index @@ -123,7 +138,8 @@ -- @return SpriteBatchNode#SpriteBatchNode self (return value: cc.SpriteBatchNode) -------------------------------- --- +-- Remove a sprite from Atlas.
+-- param sprite A Sprite. -- @function [parent=#SpriteBatchNode] removeSpriteFromAtlas -- @param self -- @param #cc.Sprite sprite @@ -131,8 +147,8 @@ -------------------------------- -- code
--- When this function bound into js or lua,the parameter will be changed
--- In js: var setBlendFunc(var src, var dst)
+-- When this function bound into js or lua,the parameter will be changed.
+-- In js: var setBlendFunc(var src, var dst).
-- endcode
-- lua NA -- @function [parent=#SpriteBatchNode] setBlendFunc @@ -141,9 +157,12 @@ -- @return SpriteBatchNode#SpriteBatchNode self (return value: cc.SpriteBatchNode) -------------------------------- --- creates a SpriteBatchNode with a file image (.png, .jpeg, .pvr, etc) and capacity of children.
+-- Creates a SpriteBatchNode with a file image (.png, .jpeg, .pvr, etc) and capacity of children.
-- The capacity will be increased in 33% in runtime if it runs out of space.
--- The file will be loaded using the TextureMgr. +-- The file will be loaded using the TextureMgr.
+-- param fileImage A file image (.png, .jpeg, .pvr, etc).
+-- param capacity The capacity of children.
+-- return Return an autorelease object. -- @function [parent=#SpriteBatchNode] create -- @param self -- @param #string fileImage @@ -151,8 +170,11 @@ -- @return SpriteBatchNode#SpriteBatchNode ret (return value: cc.SpriteBatchNode) -------------------------------- --- creates a SpriteBatchNode with a texture2d and capacity of children.
--- The capacity will be increased in 33% in runtime if it runs out of space. +-- Creates a SpriteBatchNode with a texture2d and capacity of children.
+-- The capacity will be increased in 33% in runtime if it runs out of space.
+-- param tex A texture2d.
+-- param capacity The capacity of children.
+-- return Return an autorelease object. -- @function [parent=#SpriteBatchNode] createWithTexture -- @param self -- @param #cc.Texture2D tex diff --git a/cocos/scripting/lua-bindings/auto/api/SpriteFrameCache.lua b/cocos/scripting/lua-bindings/auto/api/SpriteFrameCache.lua index c07ec82113..a7a511985f 100644 --- a/cocos/scripting/lua-bindings/auto/api/SpriteFrameCache.lua +++ b/cocos/scripting/lua-bindings/auto/api/SpriteFrameCache.lua @@ -6,7 +6,7 @@ -------------------------------- -- Adds multiple Sprite Frames from a plist file content. The texture will be associated with the created sprite frames.
--- js addSpriteFrames
+-- js NA
-- lua addSpriteFrames
-- param plist_content Plist file content string.
-- param texture Texture pointer. @@ -40,7 +40,8 @@ -------------------------------- -- Removes unused sprite frames.
-- Sprite Frames that have a retain count of 1 will be deleted.
--- It is convenient to call this method after when starting a new Scene. +-- It is convenient to call this method after when starting a new Scene.
+-- js NA -- @function [parent=#SpriteFrameCache] removeUnusedSpriteFrames -- @param self -- @return SpriteFrameCache#SpriteFrameCache self (return value: cc.SpriteFrameCache) @@ -100,7 +101,8 @@ -- Removes multiple Sprite Frames from a plist file content.
-- Sprite Frames stored in this file will be removed.
-- It is convenient to call this method when a specific texture needs to be removed.
--- param plist_content The string of the plist content that needs to removed. +-- param plist_content The string of the plist content that needs to removed.
+-- js NA -- @function [parent=#SpriteFrameCache] removeSpriteFramesFromFileContent -- @param self -- @param #string plist_content @@ -115,14 +117,16 @@ -- @return SpriteFrameCache#SpriteFrameCache self (return value: cc.SpriteFrameCache) -------------------------------- --- Destroys the cache. It releases all the Sprite Frames and the retained instance. +-- Destroys the cache. It releases all the Sprite Frames and the retained instance.
+-- js NA -- @function [parent=#SpriteFrameCache] destroyInstance -- @param self -- @return SpriteFrameCache#SpriteFrameCache self (return value: cc.SpriteFrameCache) -------------------------------- -- Returns the shared instance of the Sprite Frame cache.
--- return The instance of the Sprite Frame Cache. +-- return The instance of the Sprite Frame Cache.
+-- js NA -- @function [parent=#SpriteFrameCache] getInstance -- @param self -- @return SpriteFrameCache#SpriteFrameCache ret (return value: cc.SpriteFrameCache) diff --git a/cocos/scripting/lua-bindings/auto/api/TMXLayer.lua b/cocos/scripting/lua-bindings/auto/api/TMXLayer.lua index 7f4276a5e9..4cff6d60a6 100644 --- a/cocos/scripting/lua-bindings/auto/api/TMXLayer.lua +++ b/cocos/scripting/lua-bindings/auto/api/TMXLayer.lua @@ -5,54 +5,63 @@ -- @parent_module ccexp -------------------------------- --- returns the position in points of a given tile coordinate +-- Returns the position in points of a given tile coordinate.
+-- param tileCoordinate The tile Coordinate.
+-- return The position in points of a given tile coordinate. -- @function [parent=#TMXLayer] getPositionAt -- @param self -- @param #vec2_table tileCoordinate -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- +-- Set Layer orientation, which is the same as the map orientation.
+-- param orientation Layer orientation, which is the same as the map orientation. -- @function [parent=#TMXLayer] setLayerOrientation -- @param self -- @param #int orientation -- @return experimental::TMXLayer#experimental::TMXLayer self (return value: cc.experimental::TMXLayer) -------------------------------- --- size of the layer in tiles +-- Size of the layer in tiles.
+-- return Size of the layer in tiles. -- @function [parent=#TMXLayer] getLayerSize -- @param self -- @return size_table#size_table ret (return value: size_table) -------------------------------- --- +-- Set the size of the map's tile.
+-- param size The new size of the map's tile. -- @function [parent=#TMXLayer] setMapTileSize -- @param self -- @param #size_table size -- @return experimental::TMXLayer#experimental::TMXLayer self (return value: cc.experimental::TMXLayer) -------------------------------- --- Layer orientation, which is the same as the map orientation +-- Layer orientation, which is the same as the map orientation.
+-- return Layer orientation, which is the same as the map orientation. -- @function [parent=#TMXLayer] getLayerOrientation -- @param self -- @return int#int ret (return value: int) -------------------------------- --- +-- Set the properties to the layer.
+-- param properties The properties to the layer. -- @function [parent=#TMXLayer] setProperties -- @param self -- @param #map_table properties -- @return experimental::TMXLayer#experimental::TMXLayer self (return value: cc.experimental::TMXLayer) -------------------------------- --- +-- Set the tile layer name.
+-- param layerName The new layer name. -- @function [parent=#TMXLayer] setLayerName -- @param self -- @param #string layerName -- @return experimental::TMXLayer#experimental::TMXLayer self (return value: cc.experimental::TMXLayer) -------------------------------- --- removes a tile at given tile coordinate +-- Removes a tile at given tile coordinate.
+-- param tileCoordinate The tile Coordinate. -- @function [parent=#TMXLayer] removeTileAt -- @param self -- @param #vec2_table tileCoordinate @@ -66,13 +75,16 @@ -- @return map_table#map_table ret (return value: map_table) -------------------------------- --- Creates the tiles +-- Creates the tiles. -- @function [parent=#TMXLayer] setupTiles -- @param self -- @return experimental::TMXLayer#experimental::TMXLayer self (return value: cc.experimental::TMXLayer) -------------------------------- --- +-- Set an sprite to the tile,with the tile coordinate and gid.
+-- param sprite A Sprite.
+-- param pos The tile coordinate.
+-- param gid The tile gid. -- @function [parent=#TMXLayer] setupTileSprite -- @param self -- @param #cc.Sprite sprite @@ -91,57 +103,69 @@ -- @return experimental::TMXLayer#experimental::TMXLayer self (return value: cc.experimental::TMXLayer) -------------------------------- --- size of the map's tile (could be different from the tile's size) +-- Size of the map's tile (could be different from the tile's size).
+-- return Size of the map's tile (could be different from the tile's size). -- @function [parent=#TMXLayer] getMapTileSize -- @param self -- @return size_table#size_table ret (return value: size_table) -------------------------------- --- return the value for the specific property name +-- Return the value for the specific property name.
+-- param propertyName The value for the specific property name.
+-- return The value for the specific property name. -- @function [parent=#TMXLayer] getProperty -- @param self -- @param #string propertyName -- @return Value#Value ret (return value: cc.Value) -------------------------------- --- +-- Set the size of the layer in tiles.
+-- param size The new size of the layer in tiles. -- @function [parent=#TMXLayer] setLayerSize -- @param self -- @param #size_table size -- @return experimental::TMXLayer#experimental::TMXLayer self (return value: cc.experimental::TMXLayer) -------------------------------- --- +-- Get the tile layer name.
+-- return The tile layer name. -- @function [parent=#TMXLayer] getLayerName -- @param self -- @return string#string ret (return value: string) -------------------------------- --- +-- Set the tileset information for the layer.
+-- param info The new tileset information for the layer. -- @function [parent=#TMXLayer] setTileSet -- @param self -- @param #cc.TMXTilesetInfo info -- @return experimental::TMXLayer#experimental::TMXLayer self (return value: cc.experimental::TMXLayer) -------------------------------- --- Tileset information for the layer +-- Tileset information for the layer.
+-- return Tileset information for the layer. -- @function [parent=#TMXLayer] getTileSet -- @param self -- @return TMXTilesetInfo#TMXTilesetInfo ret (return value: cc.TMXTilesetInfo) -------------------------------- --- returns the tile (Sprite) at a given a tile coordinate.
+-- Returns the tile (Sprite) at a given a tile coordinate.
-- The returned Sprite will be already added to the TMXLayer. Don't add it again.
-- The Sprite can be treated like any other Sprite: rotated, scaled, translated, opacity, color, etc.
-- You can remove either by calling:
--- - layer->removeChild(sprite, cleanup); +-- - layer->removeChild(sprite, cleanup);
+-- return Returns the tile (Sprite) at a given a tile coordinate. -- @function [parent=#TMXLayer] getTileAt -- @param self -- @param #vec2_table tileCoordinate -- @return Sprite#Sprite ret (return value: cc.Sprite) -------------------------------- --- creates a FastTMXLayer with an tileset info, a layer info and a map info +-- Creates a FastTMXLayer with an tileset info, a layer info and a map info.
+-- param tilesetInfo An tileset info.
+-- param layerInfo A layer info.
+-- param mapInfo A map info.
+-- return Reruen an autorelease object. -- @function [parent=#TMXLayer] create -- @param self -- @param #cc.TMXTilesetInfo tilesetInfo diff --git a/cocos/scripting/lua-bindings/auto/api/TMXObjectGroup.lua b/cocos/scripting/lua-bindings/auto/api/TMXObjectGroup.lua index 04b4d01b98..d063e478af 100644 --- a/cocos/scripting/lua-bindings/auto/api/TMXObjectGroup.lua +++ b/cocos/scripting/lua-bindings/auto/api/TMXObjectGroup.lua @@ -5,28 +5,33 @@ -- @parent_module cc -------------------------------- --- Sets the offset position of child objects +-- Sets the offset position of child objects.
+-- param offset The offset position of child objects. -- @function [parent=#TMXObjectGroup] setPositionOffset -- @param self -- @param #vec2_table offset -- @return TMXObjectGroup#TMXObjectGroup self (return value: cc.TMXObjectGroup) -------------------------------- --- return the value for the specific property name +-- Return the value for the specific property name.
+-- param propertyName The specific property name.
+-- return Return the value for the specific property name. -- @function [parent=#TMXObjectGroup] getProperty -- @param self -- @param #string propertyName -- @return Value#Value ret (return value: cc.Value) -------------------------------- --- Gets the offset position of child objects +-- Gets the offset position of child objects.
+-- return The offset position of child objects. -- @function [parent=#TMXObjectGroup] getPositionOffset -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- return the dictionary for the specific object name.
--- It will return the 1st object found on the array for the given name. +-- Return the dictionary for the specific object name.
+-- It will return the 1st object found on the array for the given name.
+-- return Return the dictionary for the specific object name. -- @function [parent=#TMXObjectGroup] getObject -- @param self -- @param #string objectName @@ -40,7 +45,8 @@ -- @return array_table#array_table ret (return value: array_table) -------------------------------- --- +-- Set the group name.
+-- param groupname A string,it is used to set the group name. -- @function [parent=#TMXObjectGroup] setGroupName -- @param self -- @param #string groupName @@ -54,20 +60,23 @@ -- @return map_table#map_table ret (return value: map_table) -------------------------------- --- +-- Get the group name.
+-- return The group name. -- @function [parent=#TMXObjectGroup] getGroupName -- @param self -- @return string#string ret (return value: string) -------------------------------- --- Sets the list of properties +-- Sets the list of properties.
+-- param properties The list of properties. -- @function [parent=#TMXObjectGroup] setProperties -- @param self -- @param #map_table properties -- @return TMXObjectGroup#TMXObjectGroup self (return value: cc.TMXObjectGroup) -------------------------------- --- Sets the array of the objects +-- Sets the array of the objects.
+-- param objects The array of the objects. -- @function [parent=#TMXObjectGroup] setObjects -- @param self -- @param #array_table objects diff --git a/cocos/scripting/lua-bindings/auto/api/TMXTiledMap.lua b/cocos/scripting/lua-bindings/auto/api/TMXTiledMap.lua index a9fafd8f51..40b1305371 100644 --- a/cocos/scripting/lua-bindings/auto/api/TMXTiledMap.lua +++ b/cocos/scripting/lua-bindings/auto/api/TMXTiledMap.lua @@ -5,28 +5,32 @@ -- @parent_module ccexp -------------------------------- --- +-- Set object groups.
+-- param groups An object groups. -- @function [parent=#TMXTiledMap] setObjectGroups -- @param self -- @param #array_table groups -- @return experimental::TMXTiledMap#experimental::TMXTiledMap self (return value: cc.experimental::TMXTiledMap) -------------------------------- --- return the value for the specific property name +-- Return the value for the specific property name.
+-- return Return the value for the specific property name. -- @function [parent=#TMXTiledMap] getProperty -- @param self -- @param #string propertyName -- @return Value#Value ret (return value: cc.Value) -------------------------------- --- +-- Set the map's size property measured in tiles.
+-- param mapSize The map's size property measured in tiles. -- @function [parent=#TMXTiledMap] setMapSize -- @param self -- @param #size_table mapSize -- @return experimental::TMXTiledMap#experimental::TMXTiledMap self (return value: cc.experimental::TMXTiledMap) -------------------------------- --- return the TMXObjectGroup for the specific group +-- Return the TMXObjectGroup for the specific group.
+-- return Return the TMXObjectGroup for the specific group. -- @function [parent=#TMXTiledMap] getObjectGroup -- @param self -- @param #string groupName @@ -40,73 +44,86 @@ -- @return array_table#array_table ret (return value: array_table) -------------------------------- --- the tiles's size property measured in pixels +-- The tiles's size property measured in pixels.
+-- return The tiles's size property measured in pixels. -- @function [parent=#TMXTiledMap] getTileSize -- @param self -- @return size_table#size_table ret (return value: size_table) -------------------------------- --- the map's size property measured in tiles +-- The map's size property measured in tiles.
+-- return The map's size property measured in tiles. -- @function [parent=#TMXTiledMap] getMapSize -- @param self -- @return size_table#size_table ret (return value: size_table) -------------------------------- --- properties +-- Get properties.
+-- return Properties. -- @function [parent=#TMXTiledMap] getProperties -- @param self -- @return map_table#map_table ret (return value: map_table) -------------------------------- --- return properties dictionary for tile GID +-- Return properties dictionary for tile GID.
+-- return Return properties dictionary for tile GID. -- @function [parent=#TMXTiledMap] getPropertiesForGID -- @param self -- @param #int GID -- @return Value#Value ret (return value: cc.Value) -------------------------------- --- +-- Set the tiles's size property measured in pixels.
+-- param tileSize The tiles's size property measured in pixels. -- @function [parent=#TMXTiledMap] setTileSize -- @param self -- @param #size_table tileSize -- @return experimental::TMXTiledMap#experimental::TMXTiledMap self (return value: cc.experimental::TMXTiledMap) -------------------------------- --- +-- Set properties.
+-- param properties An ValueMap Properties. -- @function [parent=#TMXTiledMap] setProperties -- @param self -- @param #map_table properties -- @return experimental::TMXTiledMap#experimental::TMXTiledMap self (return value: cc.experimental::TMXTiledMap) -------------------------------- --- return the FastTMXLayer for the specific layer +-- Return the FastTMXLayer for the specific layer.
+-- return Return the FastTMXLayer for the specific layer. -- @function [parent=#TMXTiledMap] getLayer -- @param self -- @param #string layerName -- @return experimental::TMXLayer#experimental::TMXLayer ret (return value: cc.experimental::TMXLayer) -------------------------------- --- map orientation +-- Get map orientation.
+-- return The map orientation. -- @function [parent=#TMXTiledMap] getMapOrientation -- @param self -- @return int#int ret (return value: int) -------------------------------- --- +-- Set map orientation.
+-- param mapOrientation The map orientation. -- @function [parent=#TMXTiledMap] setMapOrientation -- @param self -- @param #int mapOrientation -- @return experimental::TMXTiledMap#experimental::TMXTiledMap self (return value: cc.experimental::TMXTiledMap) -------------------------------- --- creates a TMX Tiled Map with a TMX file. +-- Creates a TMX Tiled Map with a TMX file.
+-- return An autorelease object. -- @function [parent=#TMXTiledMap] create -- @param self -- @param #string tmxFile -- @return experimental::TMXTiledMap#experimental::TMXTiledMap ret (return value: cc.experimental::TMXTiledMap) -------------------------------- --- initializes a TMX Tiled Map with a TMX formatted XML string and a path to TMX resources +-- Initializes a TMX Tiled Map with a TMX formatted XML string and a path to TMX resources.
+-- param tmxString A TMX formatted XML string.
+-- param resourcePath A path to TMX resources.
+-- return An autorelease object. -- @function [parent=#TMXTiledMap] createWithXML -- @param self -- @param #string tmxString diff --git a/cocos/scripting/lua-bindings/auto/api/Touch.lua b/cocos/scripting/lua-bindings/auto/api/Touch.lua index c1891a80c1..e0098ee777 100644 --- a/cocos/scripting/lua-bindings/auto/api/Touch.lua +++ b/cocos/scripting/lua-bindings/auto/api/Touch.lua @@ -5,44 +5,54 @@ -- @parent_module cc -------------------------------- --- returns the previous touch location in screen coordinates +-- Returns the previous touch location in screen coordinates.
+-- return The previous touch location in screen coordinates. -- @function [parent=#Touch] getPreviousLocationInView -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- returns the current touch location in OpenGL coordinates +-- Returns the current touch location in OpenGL coordinates.
+-- return The current touch location in OpenGL coordinates. -- @function [parent=#Touch] getLocation -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- returns the delta of 2 current touches locations in screen coordinates +-- Returns the delta of 2 current touches locations in screen coordinates.
+-- return The delta of 2 current touches locations in screen coordinates. -- @function [parent=#Touch] getDelta -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- returns the start touch location in screen coordinates +-- Returns the start touch location in screen coordinates.
+-- return The start touch location in screen coordinates. -- @function [parent=#Touch] getStartLocationInView -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- returns the start touch location in OpenGL coordinates +-- Returns the start touch location in OpenGL coordinates.
+-- return The start touch location in OpenGL coordinates. -- @function [parent=#Touch] getStartLocation -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- +-- Get touch id.
-- js getId
--- lua getId +-- lua getId
+-- return The id of touch. -- @function [parent=#Touch] getID -- @param self -- @return int#int ret (return value: int) -------------------------------- --- +-- Set the touch infomation. It always used to monitor touch event.
+-- param id A given id
+-- param x A given x coordinate.
+-- param y A given y coordinate. -- @function [parent=#Touch] setTouchInfo -- @param self -- @param #int id @@ -51,19 +61,21 @@ -- @return Touch#Touch self (return value: cc.Touch) -------------------------------- --- returns the current touch location in screen coordinates +-- Returns the current touch location in screen coordinates.
+-- return The current touch location in screen coordinates. -- @function [parent=#Touch] getLocationInView -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- returns the previous touch location in OpenGL coordinates +-- Returns the previous touch location in OpenGL coordinates.
+-- return The previous touch location in OpenGL coordinates. -- @function [parent=#Touch] getPreviousLocation -- @param self -- @return vec2_table#vec2_table ret (return value: vec2_table) -------------------------------- --- +-- Constructor. -- @function [parent=#Touch] Touch -- @param self -- @return Touch#Touch self (return value: cc.Touch) diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionCrossFade.lua b/cocos/scripting/lua-bindings/auto/api/TransitionCrossFade.lua index 5c577d3460..83dcf46b53 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionCrossFade.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionCrossFade.lua @@ -5,7 +5,10 @@ -- @parent_module cc -------------------------------- --- +-- Creates a transition with duration and incoming scene.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- return A autoreleased TransitionCrossFade object. -- @function [parent=#TransitionCrossFade] create -- @param self -- @param #float t diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionEaseScene.lua b/cocos/scripting/lua-bindings/auto/api/TransitionEaseScene.lua index 2fe8fe717c..1f0fbff4ec 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionEaseScene.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionEaseScene.lua @@ -4,8 +4,10 @@ -- @parent_module cc -------------------------------- --- returns the Ease action that will be performed on a linear action.
--- since v0.8.2 +-- Returns the Ease action that will be performed on a linear action.
+-- since v0.8.2
+-- param action A given interval action.
+-- return The Ease action that will be performed on a linear action. -- @function [parent=#TransitionEaseScene] easeActionWithAction -- @param self -- @param #cc.ActionInterval action diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionFadeBL.lua b/cocos/scripting/lua-bindings/auto/api/TransitionFadeBL.lua index 6412b19e34..b8fbcd7922 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionFadeBL.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionFadeBL.lua @@ -5,7 +5,10 @@ -- @parent_module cc -------------------------------- --- +-- Creates a transition with duration and incoming scene.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- return A autoreleased TransitionFadeBL object. -- @function [parent=#TransitionFadeBL] create -- @param self -- @param #float t diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionFadeDown.lua b/cocos/scripting/lua-bindings/auto/api/TransitionFadeDown.lua index 435efe63a8..842e38ea04 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionFadeDown.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionFadeDown.lua @@ -5,7 +5,10 @@ -- @parent_module cc -------------------------------- --- +-- Creates a transition with duration and incoming scene.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- return A autoreleased TransitionFadeDown object. -- @function [parent=#TransitionFadeDown] create -- @param self -- @param #float t diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionFadeTR.lua b/cocos/scripting/lua-bindings/auto/api/TransitionFadeTR.lua index 3b673b4c82..7ce5e7e328 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionFadeTR.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionFadeTR.lua @@ -12,14 +12,19 @@ -- @return ActionInterval#ActionInterval ret (return value: cc.ActionInterval) -------------------------------- --- +-- Returns the action that will be performed with size.
+-- param size A given size.
+-- return The action that will be performed. -- @function [parent=#TransitionFadeTR] actionWithSize -- @param self -- @param #size_table size -- @return ActionInterval#ActionInterval ret (return value: cc.ActionInterval) -------------------------------- --- +-- Creates a transition with duration and incoming scene.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- return A autoreleased TransitionFadeTR object. -- @function [parent=#TransitionFadeTR] create -- @param self -- @param #float t diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionFadeUp.lua b/cocos/scripting/lua-bindings/auto/api/TransitionFadeUp.lua index 19c7b91167..2e68522826 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionFadeUp.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionFadeUp.lua @@ -5,7 +5,10 @@ -- @parent_module cc -------------------------------- --- +-- Creates a transition with duration and incoming scene.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- return A autoreleased TransitionFadeUp object. -- @function [parent=#TransitionFadeUp] create -- @param self -- @param #float t diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionJumpZoom.lua b/cocos/scripting/lua-bindings/auto/api/TransitionJumpZoom.lua index 3bb200c538..8e0c631296 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionJumpZoom.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionJumpZoom.lua @@ -5,7 +5,10 @@ -- @parent_module cc -------------------------------- --- +-- Creates a transition with duration and incoming scene.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- return A autoreleased TransitionJumpZoom object. -- @function [parent=#TransitionJumpZoom] create -- @param self -- @param #float t diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionMoveInB.lua b/cocos/scripting/lua-bindings/auto/api/TransitionMoveInB.lua index 7da02d0375..2eb59cd0a3 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionMoveInB.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionMoveInB.lua @@ -5,7 +5,10 @@ -- @parent_module cc -------------------------------- --- +-- Creates a transition with duration and incoming scene.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- return A autoreleased TransitionMoveInB object. -- @function [parent=#TransitionMoveInB] create -- @param self -- @param #float t diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionMoveInL.lua b/cocos/scripting/lua-bindings/auto/api/TransitionMoveInL.lua index 834ccdf1f2..157b769187 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionMoveInL.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionMoveInL.lua @@ -5,7 +5,8 @@ -- @parent_module cc -------------------------------- --- returns the action that will be performed +-- Returns the action that will be performed.
+-- return The action that will be performed. -- @function [parent=#TransitionMoveInL] action -- @param self -- @return ActionInterval#ActionInterval ret (return value: cc.ActionInterval) @@ -18,7 +19,10 @@ -- @return ActionInterval#ActionInterval ret (return value: cc.ActionInterval) -------------------------------- --- +-- Creates a transition with duration and incoming scene.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- return A autoreleased TransitionMoveInL object. -- @function [parent=#TransitionMoveInL] create -- @param self -- @param #float t diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionMoveInR.lua b/cocos/scripting/lua-bindings/auto/api/TransitionMoveInR.lua index adc3bd97a4..c9c7732e4a 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionMoveInR.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionMoveInR.lua @@ -5,7 +5,10 @@ -- @parent_module cc -------------------------------- --- +-- Creates a transition with duration and incoming scene.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- return A autoreleased TransitionMoveInR object. -- @function [parent=#TransitionMoveInR] create -- @param self -- @param #float t diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionMoveInT.lua b/cocos/scripting/lua-bindings/auto/api/TransitionMoveInT.lua index b71c1de3bb..b764ea1c7f 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionMoveInT.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionMoveInT.lua @@ -5,7 +5,10 @@ -- @parent_module cc -------------------------------- --- +-- Creates a transition with duration and incoming scene.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- return A autoreleased TransitionMoveInT object. -- @function [parent=#TransitionMoveInT] create -- @param self -- @param #float t diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionPageTurn.lua b/cocos/scripting/lua-bindings/auto/api/TransitionPageTurn.lua index de38c4840f..5677033f1b 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionPageTurn.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionPageTurn.lua @@ -5,7 +5,9 @@ -- @parent_module cc -------------------------------- --- +-- Returns the action that will be performed with size.
+-- param size A given size.
+-- return The action that will be performed. -- @function [parent=#TransitionPageTurn] actionWithSize -- @param self -- @param #size_table vector @@ -13,8 +15,12 @@ -------------------------------- -- Creates a base transition with duration and incoming scene.
--- If back is true then the effect is reversed to appear as if the incoming
--- scene is being turned from left over the outgoing scene. +-- If back is true then the effect is reversed to appear as if the incoming
+-- scene is being turned from left over the outgoing scene.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- param backwards If back is true then the effect is reversed to appear as if the incoming scene is being turned from left over the outgoing scene.
+-- return True if initialize success. -- @function [parent=#TransitionPageTurn] initWithDuration -- @param self -- @param #float t @@ -25,7 +31,11 @@ -------------------------------- -- Creates a base transition with duration and incoming scene.
-- If back is true then the effect is reversed to appear as if the incoming
--- scene is being turned from left over the outgoing scene. +-- scene is being turned from left over the outgoing scene.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- param backwards If back is true then the effect is reversed to appear as if the incoming scene is being turned from left over the outgoing scene.
+-- return An autoreleased TransitionPageTurn object. -- @function [parent=#TransitionPageTurn] create -- @param self -- @param #float t diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionProgress.lua b/cocos/scripting/lua-bindings/auto/api/TransitionProgress.lua index 6b4ee9c9b3..9631cabb31 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionProgress.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionProgress.lua @@ -5,7 +5,10 @@ -- @parent_module cc -------------------------------- --- +-- Creates a transition with duration and incoming scene.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- return An autoreleased TransitionProgress object. -- @function [parent=#TransitionProgress] create -- @param self -- @param #float t diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionProgressHorizontal.lua b/cocos/scripting/lua-bindings/auto/api/TransitionProgressHorizontal.lua index 2de10c764d..350e16dcfa 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionProgressHorizontal.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionProgressHorizontal.lua @@ -5,7 +5,10 @@ -- @parent_module cc -------------------------------- --- +-- Creates a transition with duration and incoming scene.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- return An autoreleased TransitionProgressHorizontal object. -- @function [parent=#TransitionProgressHorizontal] create -- @param self -- @param #float t diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionProgressInOut.lua b/cocos/scripting/lua-bindings/auto/api/TransitionProgressInOut.lua index 24a1e3ee1c..996a7764f1 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionProgressInOut.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionProgressInOut.lua @@ -5,7 +5,10 @@ -- @parent_module cc -------------------------------- --- +-- Creates a transition with duration and incoming scene.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- return An autoreleased TransitionProgressInOut object. -- @function [parent=#TransitionProgressInOut] create -- @param self -- @param #float t diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionProgressOutIn.lua b/cocos/scripting/lua-bindings/auto/api/TransitionProgressOutIn.lua index 5df3e5b9f1..2e80ab7bbe 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionProgressOutIn.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionProgressOutIn.lua @@ -5,7 +5,10 @@ -- @parent_module cc -------------------------------- --- +-- Creates a transition with duration and incoming scene.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- return An autoreleased TransitionProgressOutIn object. -- @function [parent=#TransitionProgressOutIn] create -- @param self -- @param #float t diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionProgressRadialCCW.lua b/cocos/scripting/lua-bindings/auto/api/TransitionProgressRadialCCW.lua index 9886d6ebfe..a0c249049d 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionProgressRadialCCW.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionProgressRadialCCW.lua @@ -5,7 +5,10 @@ -- @parent_module cc -------------------------------- --- +-- Creates a transition with duration and incoming scene.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- return An autoreleased TransitionProgressRadialCCW object. -- @function [parent=#TransitionProgressRadialCCW] create -- @param self -- @param #float t diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionProgressRadialCW.lua b/cocos/scripting/lua-bindings/auto/api/TransitionProgressRadialCW.lua index 795e2047ab..da01b2eb28 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionProgressRadialCW.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionProgressRadialCW.lua @@ -5,7 +5,10 @@ -- @parent_module cc -------------------------------- --- +-- Creates a transition with duration and incoming scene.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- return An autoreleased TransitionProgressRadialCW object. -- @function [parent=#TransitionProgressRadialCW] create -- @param self -- @param #float t diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionProgressVertical.lua b/cocos/scripting/lua-bindings/auto/api/TransitionProgressVertical.lua index b2d75100bf..eeef478e6c 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionProgressVertical.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionProgressVertical.lua @@ -5,7 +5,10 @@ -- @parent_module cc -------------------------------- --- +-- Creates a transition with duration and incoming scene.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- return An autoreleased TransitionProgressVertical object. -- @function [parent=#TransitionProgressVertical] create -- @param self -- @param #float t diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionRotoZoom.lua b/cocos/scripting/lua-bindings/auto/api/TransitionRotoZoom.lua index 388ff0b06f..e433ec274f 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionRotoZoom.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionRotoZoom.lua @@ -5,7 +5,10 @@ -- @parent_module cc -------------------------------- --- +-- Creates a transition with duration and incoming scene.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- return A autoreleased TransitionRotoZoom object. -- @function [parent=#TransitionRotoZoom] create -- @param self -- @param #float t diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionScene.lua b/cocos/scripting/lua-bindings/auto/api/TransitionScene.lua index e84848ae4c..d23f226b0c 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionScene.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionScene.lua @@ -5,19 +5,22 @@ -- @parent_module cc -------------------------------- --- called after the transition finishes +-- Called after the transition finishes. -- @function [parent=#TransitionScene] finish -- @param self -- @return TransitionScene#TransitionScene self (return value: cc.TransitionScene) -------------------------------- --- used by some transitions to hide the outer scene +-- Used by some transitions to hide the outer scene. -- @function [parent=#TransitionScene] hideOutShowIn -- @param self -- @return TransitionScene#TransitionScene self (return value: cc.TransitionScene) -------------------------------- --- creates a base transition with duration and incoming scene +-- Creates a base transition with duration and incoming scene.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- return A autoreleased TransitionScene object. -- @function [parent=#TransitionScene] create -- @param self -- @param #float t diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionSceneOriented.lua b/cocos/scripting/lua-bindings/auto/api/TransitionSceneOriented.lua index d34be6be7e..98634db682 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionSceneOriented.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionSceneOriented.lua @@ -5,7 +5,11 @@ -- @parent_module cc -------------------------------- --- creates a base transition with duration and incoming scene +-- Creates a transition with duration, incoming scene and orientation.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- param orientation A given orientation: LeftOver, RightOver, UpOver, DownOver.
+-- return A autoreleased TransitionSceneOriented object. -- @function [parent=#TransitionSceneOriented] create -- @param self -- @param #float t diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionShrinkGrow.lua b/cocos/scripting/lua-bindings/auto/api/TransitionShrinkGrow.lua index 2a9835a35e..d0c4b212b1 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionShrinkGrow.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionShrinkGrow.lua @@ -12,7 +12,10 @@ -- @return ActionInterval#ActionInterval ret (return value: cc.ActionInterval) -------------------------------- --- +-- Creates a transition with duration and incoming scene.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- return A autoreleased TransitionShrinkGrow object. -- @function [parent=#TransitionShrinkGrow] create -- @param self -- @param #float t diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionSlideInB.lua b/cocos/scripting/lua-bindings/auto/api/TransitionSlideInB.lua index 8fe5ea6e39..3a5b375953 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionSlideInB.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionSlideInB.lua @@ -5,7 +5,10 @@ -- @parent_module cc -------------------------------- --- +-- Creates a transition with duration and incoming scene.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- return A autoreleased TransitionSlideInB object. -- @function [parent=#TransitionSlideInB] create -- @param self -- @param #float t diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionSlideInL.lua b/cocos/scripting/lua-bindings/auto/api/TransitionSlideInL.lua index ab682254c8..9b1fe8e3bc 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionSlideInL.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionSlideInL.lua @@ -5,7 +5,8 @@ -- @parent_module cc -------------------------------- --- returns the action that will be performed by the incoming and outgoing scene +-- Returns the action that will be performed by the incoming and outgoing scene.
+-- return The action that will be performed by the incoming and outgoing scene. -- @function [parent=#TransitionSlideInL] action -- @param self -- @return ActionInterval#ActionInterval ret (return value: cc.ActionInterval) @@ -18,7 +19,10 @@ -- @return ActionInterval#ActionInterval ret (return value: cc.ActionInterval) -------------------------------- --- +-- Creates a transition with duration and incoming scene.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- return A autoreleased TransitionSlideInL object. -- @function [parent=#TransitionSlideInL] create -- @param self -- @param #float t diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionSlideInR.lua b/cocos/scripting/lua-bindings/auto/api/TransitionSlideInR.lua index bd4f2e8a33..17d6bf25f3 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionSlideInR.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionSlideInR.lua @@ -5,7 +5,10 @@ -- @parent_module cc -------------------------------- --- +-- Creates a transition with duration and incoming scene.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- return A autoreleased TransitionSlideInR object. -- @function [parent=#TransitionSlideInR] create -- @param self -- @param #float t @@ -13,7 +16,7 @@ -- @return TransitionSlideInR#TransitionSlideInR ret (return value: cc.TransitionSlideInR) -------------------------------- --- returns the action that will be performed by the incoming and outgoing scene +-- Returns the action that will be performed by the incoming and outgoing scene. -- @function [parent=#TransitionSlideInR] action -- @param self -- @return ActionInterval#ActionInterval ret (return value: cc.ActionInterval) diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionSlideInT.lua b/cocos/scripting/lua-bindings/auto/api/TransitionSlideInT.lua index 93f8fefc85..bbef1acaf7 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionSlideInT.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionSlideInT.lua @@ -5,7 +5,10 @@ -- @parent_module cc -------------------------------- --- +-- Creates a transition with duration and incoming scene.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- return A autoreleased TransitionSlideInT object. -- @function [parent=#TransitionSlideInT] create -- @param self -- @param #float t diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionSplitCols.lua b/cocos/scripting/lua-bindings/auto/api/TransitionSplitCols.lua index f1ec49541a..8dc30c0cd2 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionSplitCols.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionSplitCols.lua @@ -5,7 +5,8 @@ -- @parent_module cc -------------------------------- --- +-- Returns the action that will be performed.
+-- return The action that will be performed. -- @function [parent=#TransitionSplitCols] action -- @param self -- @return ActionInterval#ActionInterval ret (return value: cc.ActionInterval) @@ -18,7 +19,10 @@ -- @return ActionInterval#ActionInterval ret (return value: cc.ActionInterval) -------------------------------- --- +-- Creates a transition with duration and incoming scene.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- return A autoreleased TransitionSplitCols object. -- @function [parent=#TransitionSplitCols] create -- @param self -- @param #float t diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionSplitRows.lua b/cocos/scripting/lua-bindings/auto/api/TransitionSplitRows.lua index 0c9ccd61b1..7f69d0a016 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionSplitRows.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionSplitRows.lua @@ -5,7 +5,10 @@ -- @parent_module cc -------------------------------- --- +-- Creates a transition with duration and incoming scene.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- return A autoreleased TransitionSplitRows object. -- @function [parent=#TransitionSplitRows] create -- @param self -- @param #float t diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionTurnOffTiles.lua b/cocos/scripting/lua-bindings/auto/api/TransitionTurnOffTiles.lua index c44dcf0cd0..905feabb6d 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionTurnOffTiles.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionTurnOffTiles.lua @@ -12,7 +12,10 @@ -- @return ActionInterval#ActionInterval ret (return value: cc.ActionInterval) -------------------------------- --- +-- Creates a transition with duration and incoming scene.
+-- param t Duration time, in seconds.
+-- param scene A given scene.
+-- return A autoreleased TransitionTurnOffTiles object. -- @function [parent=#TransitionTurnOffTiles] create -- @param self -- @param #float t diff --git a/cocos/scripting/lua-bindings/manual/3d/lua_cocos2dx_3d_manual.h b/cocos/scripting/lua-bindings/manual/3d/lua_cocos2dx_3d_manual.h index abebac4974..edb7d3e126 100644 --- a/cocos/scripting/lua-bindings/manual/3d/lua_cocos2dx_3d_manual.h +++ b/cocos/scripting/lua-bindings/manual/3d/lua_cocos2dx_3d_manual.h @@ -32,6 +32,15 @@ extern "C" { } #endif +/** + * Call this function can import the lua bindings for the cocos3d module. + * After registering, we could call the related cocos3d code conveniently in the lua.eg,.cc.Sprite3D:create(modlepath). + * If you don't want to use the cocos3d module in the lua, you only don't call this registering function. + * If you don't register the cocos3d module, the package size would become smaller . + * The current mechanism,this function is called in the lua_module_register.h + * + * @lua NA + */ TOLUA_API int register_cocos3d_module(lua_State* L); diff --git a/cocos/scripting/lua-bindings/manual/CCLuaBridge.h b/cocos/scripting/lua-bindings/manual/CCLuaBridge.h index 0b5ba061c5..064281658d 100644 --- a/cocos/scripting/lua-bindings/manual/CCLuaBridge.h +++ b/cocos/scripting/lua-bindings/manual/CCLuaBridge.h @@ -36,27 +36,60 @@ extern "C" { using namespace std; NS_CC_BEGIN - +/** LuaBridge Error enum, with inline docs. */ typedef enum { - kLuaBridgeErrorOk = 0, - kLuaBridgeErrorInvalidParameters = -1, - kLuaBridgeErrorClassNotFound = -2, - kLuaBridgeErrorMethodNotFound = -3, - kLuaBridgeErrorExceptionOccurred = -4, - kLuaBridgeErrorMethodSignature = -5, - kLuaBridgeErrorJavaVMError = -6, + kLuaBridgeErrorOk = 0, /** < value 0 */ + kLuaBridgeErrorInvalidParameters = -1, /** < value -1 */ + kLuaBridgeErrorClassNotFound = -2, /** < value -2 */ + kLuaBridgeErrorMethodNotFound = -3, /** < value -3 */ + kLuaBridgeErrorExceptionOccurred = -4, /** < value -4 */ + kLuaBridgeErrorMethodSignature = -5, /** < value -5 */ + kLuaBridgeErrorJavaVMError = -6, /** < value -6 */ } LuaBridgeError; #define LUA_BRIDGE_REGISTRY_FUNCTION "lua_bridge_function_id" // table[function] = id #define LUA_BRIDGE_REGISTRY_RETAIN "lua_bridge_function_id_retain" // table[id] = retain count +/** + * Build bridge between ObjC and Lua. + * It makes Lua and ObjC can call each other conveniently. + * @lua NA + */ class LuaBridge { public: + /** + * Get the LuaStack of LuaEngine. + * @return the LuaStack object. + */ static LuaStack *getStack(void); + /** + * Push the function pointer corresponding to functionId on the top of lua stack by searching the `lua_bridge_function_id` table. + * If it don't find the function pointer corresponding to functionId, it will reset stack top index to the index before searching. + * + * @param functionId the value used to search the `lua_bridge_function_id` table. + */ static int pushLuaFunctionById(int functionId); - + + /** + * The retain count would be increase by 1 corresponding to functionId in the `lua_bridge_function_id_retain` table if it could be found. + * If `lua_bridge_function_id_retain` table is not existed or the type of lua_bridge_function_id_retain[functionId] isn't LUA_TNUMBER, It would return 0. + * The top index of lua stack the same as before calling this function. + * + * @param functionId the value used to search the `lua_bridge_function_id_retain` table. + * @return the retain count or 0. + */ static int retainLuaFunctionById(int functionId); + + /** + * + * The retain count woulde be reduced by 1 corresponding to functionId in the `lua_bridge_function_id_retain` table if it could be found. + * If `lua_bridge_function_id` table or `lua_bridge_function_id_retain` aren't found, it would return 0. + * If the vaule of retain count is 0 after reducing, it would update the `lua_bridge_function_id_retain` table and `lua_bridge_function_id_retain` table to remove the reference corresponding to this functionId + * + * @param functionId the value used to search the `lua_bridge_function_id` table and `lua_bridge_function_id` table. + * @return the retain count or 0 + */ static int releaseLuaFunctionById(int functionId); protected: diff --git a/cocos/scripting/lua-bindings/manual/CCLuaEngine.h b/cocos/scripting/lua-bindings/manual/CCLuaEngine.h index 4215e6525e..ac3b08f136 100644 --- a/cocos/scripting/lua-bindings/manual/CCLuaEngine.h +++ b/cocos/scripting/lua-bindings/manual/CCLuaEngine.h @@ -38,79 +38,120 @@ extern "C" { NS_CC_BEGIN -// Lua support for cocos2d-x +/** + * The Lua engine integrated into the cocos2d-x to process the interactive operation between lua and c++. + * + * @lua NA. + * @js NA. + */ class LuaEngine : public ScriptEngineProtocol { public: + /** + * Get instance of LuaEngine. + * + * @return the instance of LuaEngine. + */ static LuaEngine* getInstance(void); + /** + * Get defaultEngine of LuaEngine, it was deprecated. + * + * @return the instance of LuaEngine. + */ CC_DEPRECATED_ATTRIBUTE static LuaEngine* defaultEngine(void) { return LuaEngine::getInstance(); } + + /** Destrutor of LuaEngine. */ virtual ~LuaEngine(void); + /** + * Get ccScriptType of LuaEngine used, it is always kScriptTypeLua + * + * @return kScriptTypeLua. + */ virtual ccScriptType getScriptType() override { return kScriptTypeLua; }; - + + /** + * Get LuaStack of the LuaEngine. + * All the interactive operation are all base on the LuaStack. + * + * @return LuaStack object. + */ LuaStack *getLuaStack(void) { return _stack; } /** - @brief Add a path to find lua files in - @param path to be added to the Lua path + * Add a path to find lua files in + * @param path to be added to the Lua path */ virtual void addSearchPath(const char* path); /** - @brief Add lua loader, now it is used on android + * Add lua loader. + * @param func a function pointer point to the loader function. */ virtual void addLuaLoader(lua_CFunction func); /** - @brief reload script code contained in the given string. - @param moduleFileName String object holding the filename of the script file that is to be executed - @return 0 if the string is excuted correctly. - @return other if the string is excuted wrongly. + * Reload script code corresponding to moduleFileName. + * If value of package["loaded"][moduleFileName] is existed, it would set the vaule nil.Then,it calls executeString function. + * + * @param moduleFileName String object holding the filename of the script file that is to be executed. + * @return 0 if the string is excuted correctly or other if the string is excuted wrongly. */ virtual int reload(const char* moduleFileName); /** - @brief Remove Object from lua state - @param object to remove + * Remove the related reference about the Ref object stored in the Lua table by set the value of corresponding key nil: + * The related Lua tables are toluafix_refid_ptr_mapping,toluafix_refid_type_mapping,tolua_value_root and object_Metatable["tolua_ubox"] or tolua_ubox. + * Meanwhile set the corresponding userdata nullptr and remove the all the lua function refrence corresponding to this object. + * + * In current mechanism, this function is called in the destructor of Ref object, developer don't call this functions. + * + * @param object the key object to remove script object. */ virtual void removeScriptObjectByObject(Ref* object) override; /** - @brief Remove Lua function reference + * Remove Lua function reference by nHandler by setting toluafix_refid_function_mapping[nHandle] nil. + * + * @param nHandler the function refrence index to find the correspoinding Lua function pointer. */ virtual void removeScriptHandler(int nHandler) override; /** - @brief Reallocate Lua function reference + * Reallocate Lua function reference index to the Lua function pointer to add refrence. + * + * @param nHandler the function refrence index to find the correspoinding Lua function pointer. */ virtual int reallocateScriptHandler(int nHandler) override; /** - @brief Execute script code contained in the given string. - @param codes holding the valid script code that should be executed. - @return 0 if the string is excuted correctly. - @return other if the string is excuted wrongly. + * Execute script code contained in the given string. + * + * @param codes holding the valid script code that should be executed. + * @return 0 if the string is excuted correctly,other if the string is excuted wrongly. */ virtual int executeString(const char* codes) override; /** - @brief Execute a script file. - @param filename String object holding the filename of the script file that is to be executed + * Execute a script file. + * + * @param filename String object holding the filename of the script file that is to be executed. + * @return the return values by calling executeFunction. */ virtual int executeScriptFile(const char* filename) override; /** - @brief Execute a scripted global function. - @brief The function should not take any parameters and should return an integer. - @param functionName String object holding the name of the function, in the global script environment, that is to be executed. - @return The integer value returned from the script function. + * Execute a scripted global function. + * The function should not take any parameters and should return an integer. + * + * @param functionName String object holding the name of the function, in the global script environment, that is to be executed. + * @return The integer value returned from the script function. */ virtual int executeGlobalFunction(const char* functionName) override; - virtual int executeNodeEvent(Node* pNode, int nAction); virtual int executeMenuItemEvent(MenuItem* pMenuItem); virtual int executeNotificationEvent(__NotificationCenter* pNotificationCenter, const char* pszName); @@ -119,15 +160,49 @@ public: virtual int executeLayerTouchesEvent(Layer* pLayer, int eventType, __Set *pTouches); virtual int executeLayerTouchEvent(Layer* pLayer, int eventType, Touch *pTouch); virtual int executeLayerKeypadEvent(Layer* pLayer, int eventType); - /** execute a accelerometer event */ virtual int executeAccelerometerEvent(Layer* pLayer, Acceleration* pAccelerationValue); virtual int executeEvent(int nHandler, const char* pEventName, Ref* pEventSource = NULL, const char* pEventSourceClassName = NULL); - + /** + * Handle the assert message. + * + * @return return true if current _callFromLua of LuaStack is not equal to 0 otherwise return false. + */ virtual bool handleAssert(const char *msg) override; + /** + * Parse the config information data. + * + * @param type in current mechanism,it always ConfigType::COCOSTUDIO. + * @param str the information data. + * @return if __onParseConfig function exist in the Lua, it return the value that _stack->executeFunction returns otherwise return false. + */ virtual bool parseConfig(ConfigType type, const std::string& str) override; + + /** + * When some events triggered in the c++ also needs to pass on to lua to handle, we could call this function to send events. + * + * @param message the ScriptEvent object that has ScriptEventType and the pointer to information data. + * @return default return 0 otherwise return values the same as handleNodeEvent, handleMenuClickedEvent or handleCallFuncActionEvent,etc. + */ virtual int sendEvent(ScriptEvent* message) override; + + /** + * Pass on the events related with ScrollView,TableCell,AssertManager, Armature, Accelerometer, Keyboard, Touch, Touches ,Mouse and Custom event to lua to handle. + * + * @param type Different ScriptHandlerMgr::HandlerType means different processing for the data. + * @param data The pointer point to the information which should be pass on to lua, it would be parsed in the function to convert to the specific data according to the ScriptHandlerMgr::HandlerType,then pass to lua as function parameters. + * @return default return 0 otherwise return values according different ScriptHandlerMgr::HandlerType. + */ virtual int handleEvent(ScriptHandlerMgr::HandlerType type,void* data); + /** + * Pass on the events related with TableCell and TableView to lua to handle. + * + * @param type Different ScriptHandlerMgr::HandlerType means different processing for the data. + * @param data The pointer point to the information which should be pass on to lua, it would be parsed in the function to convert to the specific data according to the ScriptHandlerMgr::HandlerType,then pass to lua as function parameters. + * @param numResults The number of the return values. + * @param func The callback would be called when numResults is > 0. + * @return default return 0 otherwise return values according different ScriptHandlerMgr::HandlerType. + */ virtual int handleEvent(ScriptHandlerMgr::HandlerType type, void* data, int numResults, const std::function& func); private: LuaEngine(void) diff --git a/cocos/scripting/lua-bindings/manual/CCLuaStack.h b/cocos/scripting/lua-bindings/manual/CCLuaStack.h index 5bdb0330bc..a6438617f6 100644 --- a/cocos/scripting/lua-bindings/manual/CCLuaStack.h +++ b/cocos/scripting/lua-bindings/manual/CCLuaStack.h @@ -35,105 +35,299 @@ extern "C" { NS_CC_BEGIN +/** + * LuaStack is used to manager the operation on the lua_State,eg., push data onto the lua_State, execute the function depended on the lua_State. + * In the current mechanism, there is only one lua_State in one LuaStack object. + * + * @lua NA + * @js NA + */ class LuaStack : public Ref { public: + /** + * Create a LuaStack object, it will new a lua_State. + * + */ static LuaStack *create(void); + /** + * Create a LuaStack object with the existed lua_State + */ static LuaStack *attach(lua_State *L); + /** Destructor. */ virtual ~LuaStack(); /** - @brief Method used to get a pointer to the lua_State that the script module is attached to. - @return A pointer to the lua_State that the script module is attached to. + * Method used to get a pointer to the lua_State that the script module is attached to. + * @return A pointer to the lua_State that the script module is attached to. */ lua_State* getLuaState(void) { return _state; } /** - @brief Add a path to find lua files in - @param path to be added to the Lua path + * Add a path to find lua files in. + * @param path to be added to the Lua search path. */ virtual void addSearchPath(const char* path); /** - @brief Add lua loader, now it is used on android + * Add lua loader. + * + * @param func a function pointer point to the loader function. */ virtual void addLuaLoader(lua_CFunction func); /** - @brief reload script code contained in the given string. - @param moduleFileName String object holding the filename of the script file that is to be executed - @return 0 if the string is excuted correctly. - @return other if the string is excuted wrongly. + * Reload script code corresponding to moduleFileName. + * If value of package["loaded"][moduleFileName] is existed, it would set the vaule nil.Then,it calls executeString function. + * + * @param moduleFileName String object holding the filename of the script file that is to be executed. + * @return 0 if the string is excuted correctly or other if the string is excuted wrongly. */ virtual int reload(const char* moduleFileName); /** - @brief Remove Object from lua state - @param object The object to be removed. + * Remove the related reference about the Ref object stored in the Lua table by set the value of corresponding key nil: + * The related Lua tables are toluafix_refid_ptr_mapping,toluafix_refid_type_mapping,tolua_value_root and object_Metatable["tolua_ubox"] or tolua_ubox. + * Meanwhile set the corresponding userdata nullptr and remove the all the lua function refrence corresponding to this object. + * + * In current mechanism, this function is called in the destructor of Ref object, developer don't call this functions. + * + * @param object the key object to remove script object. */ virtual void removeScriptObjectByObject(Ref* object); /** - @brief Remove Lua function reference + * Remove Lua function reference by nHandler by setting toluafix_refid_function_mapping[nHandle] nil. + * + * @param nHandler the function refrence index to find the correspoinding Lua function pointer. */ virtual void removeScriptHandler(int nHandler); /** - @brief Remove Lua function reference + * Reallocate Lua function reference index to the Lua function pointer to add refrence. + * + * @param nHandler the function refrence index to find the correspoinding Lua function pointer. */ virtual int reallocateScriptHandler(int nHandler); /** - @brief Execute script code contained in the given string. - @param codes holding the valid script code that should be executed. - @return 0 if the string is excuted correctly. - @return other if the string is excuted wrongly. + * Execute script code contained in the given string. + * + * @param codes holding the valid script code that should be executed. + * @return 0 if the string is excuted correctly,other if the string is excuted wrongly */ virtual int executeString(const char* codes); /** - @brief Execute a script file. - @param filename String object holding the filename of the script file that is to be executed + * Execute a script file. + * + * @param filename String object holding the filename of the script file that is to be executed. + * @return the return values by calling executeFunction. */ virtual int executeScriptFile(const char* filename); /** - @brief Execute a scripted global function. - @brief The function should not take any parameters and should return an integer. - @param functionName String object holding the name of the function, in the global script environment, that is to be executed. - @return The integer value returned from the script function. + * Execute a scripted global function. + * The function should not take any parameters and should return an integer. + * + * @param functionName String object holding the name of the function, in the global script environment, that is to be executed. + * @return The integer value returned from the script function. */ virtual int executeGlobalFunction(const char* functionName); - + + /** + * Set the stack top index 0. + */ virtual void clean(void); + + /** + * Pushes a integer number with value intVaule onto the stack. + * + * @param intValue a integer number. + */ virtual void pushInt(int intValue); + + /** + * Pushes a float number with value floatValue onto the stack. + * + * @param floatValue a float number. + */ virtual void pushFloat(float floatValue); + + /** + * Pushes a long number with value longValue onto the stack. + * + * @param longValue a long number. + */ virtual void pushLong(long longValue); + + /** + * Pushes a bool value with boolValue onto the stack. + * + * @param boolValue a bool value. + */ virtual void pushBoolean(bool boolValue); + + /** + * Pushes the zero-terminated string pointed to by stringValue onto the stack. + * + * @param stringValue a pointer point to a zero-terminated string stringValue. + */ virtual void pushString(const char* stringValue); + + /** + * Pushes the string pointed to by stringValue with size length onto the stack. + * + * @param stringValue a pointer point to the string stringValue. + * @param length the size. + */ virtual void pushString(const char* stringValue, int length); + + /** + * Pushes a nil value onto the stack. + */ virtual void pushNil(void); + + /** + * Pushes a Ref object onto the stack. + * + * @see toluafix_pushusertype_ccobject. + */ virtual void pushObject(Ref* objectValue, const char* typeName); + + /** + * According to the type of LuaValue, it would called the other push function in the internal. + * type function + * LuaValueTypeInt pushInt + * LuaValueTypeFloat pushFloat + * LuaValueTypeBoolean pushBoolean + * LuaValueTypeString pushString + * LuaValueTypeDict pushLuaValueDict + * LuaValueTypeArray pushLuaValueArray + * LuaValueTypeObject pushObject + * + * @param value a LuaValue object. + */ virtual void pushLuaValue(const LuaValue& value); + + /** + * Pushes a lua table onto the stack. + * The key of table is the key of LuaValueDict which is std::map. + * The value of table is according to the the type of LuaValue of LuaValueDict by calling pushLuaValue,@see pushLuaValue. + * + * @param dict a LuaValueDict object + */ virtual void pushLuaValueDict(const LuaValueDict& dict); - virtual void pushLuaValueArray(const LuaValueArray& array); + + /** + * Pushes a lua array table onto the stack. + * The index of array table is begin at 1. + * The value of array table is according to the the type of LuaValue of LuaValueDict by calling pushLuaValue,@see pushLuaValue. + */ + virtual void pushLuaValueArray(const LuaValueArray& array); + + /** + * Get the lua function pointer from toluafix_refid_function_mapping table by giving nHanlder. + * If the lua function pointer corresponding to the nHanlder isn't found, it would push nil on the top index of stack, then it would output the error log in the debug model + * + * @return true if get the no-null function pointer otherwise false. + */ virtual bool pushFunctionByHandler(int nHandler); + + /** + * Execute the lua function on the -(numArgs + 1) index on the stack by the numArgs variables passed. + * + * @param numArgs the number of variables. + * @return 0 if it happen the error or it hasn't return value, otherwise it return the value by calling the lua function. + */ virtual int executeFunction(int numArgs); + /** + * Execute the lua function corresponding to the nHandler by the numArgs variables passed. + * + * @param nHandler the index count corresponding to the lua function. + * @param numArgs the number of variables. + * @return the return value is the same as executeFunction,please @see executeFunction + */ virtual int executeFunctionByHandler(int nHandler, int numArgs); + + /** + * Execute the lua function corresponding to the handler by the numArgs variables passed. + * By calling this function, the number of return value is numResults(may be > 1). + * All the return values are stored in the resultArray. + * + * @param nHandler the index count corresponding to the lua function. + * @param numArgs the number of variables. + * @param numResults the number of return value. + * @param resultArray a array used to store the return value. + * @return 0 if it happen error or it hasn't return value, otherwise return 1. + */ virtual int executeFunctionReturnArray(int handler,int numArgs,int numResults,__Array& resultArray); + + /** + * Execute the lua function corresponding to the handler by the numArgs variables passed. + * By calling this function, the number of return value is numResults(may be > 1). + * All the return values are used in the callback func. + * + * @param handler the index count corresponding to the lua function. + * @param numArgs the number of variables. + * @param numResults the number of return value. + * @param func callback function which is called if the numResults > 0. + * @return 0 if it happen error or it hasn't return value, otherwise return 1. + */ virtual int executeFunction(int handler, int numArgs, int numResults, const std::function& func); - + + /** + * Handle the assert message. + * + * @return return true if current _callFromLua of LuaStack is not equal to 0 otherwise return false. + */ virtual bool handleAssert(const char *msg); + /** + * Set the key and sign for xxtea encryption algorithm. + * + * @param key a string pointer + * @param keyLen the length of key + * @param sign a string sign + * @param signLen the length of sign + */ virtual void setXXTEAKeyAndSign(const char *key, int keyLen, const char *sign, int signLen); + + /** + * free the key and sign for xxtea encryption algorithm. + */ virtual void cleanupXXTEAKeyAndSign(); + /** + * Loads a buffer as a Lua chunk.This function uses lua_load to load the Lua chunk in the buffer pointed to by chunk with size chunkSize. + * If it supports xxtea encryption algorithm, the chunk and the chunkSize would be processed by calling xxtea_decrypt to the real buffer and buffer size. + * + * @param L the current lua_State. + * @param chunk the buffer pointer. + * @param chunSize the size of buffer. + * @param chunkName the name of chunk pointer. + * @return 0, LUA_ERRSYNTAX or LUA_ERRMEM:. + */ int luaLoadBuffer(lua_State *L, const char *chunk, int chunkSize, const char *chunkName); + + /** + * Load the Lua chunks from the zip file + * + * @param zipFilePath file path to zip file. + * @return 1 if load sucessfully otherwise 0. + */ int loadChunksFromZIP(const char *zipFilePath); + + /** + * Load the Lua chunks from current lua_State. + * + * @param l the current lua_State. + * @return 1 if load sucessfully otherwise 0. + */ int luaLoadChunksFromZIP(lua_State *L); protected: diff --git a/cocos/scripting/lua-bindings/manual/audioengine/lua_cocos2dx_audioengine_manual.h b/cocos/scripting/lua-bindings/manual/audioengine/lua_cocos2dx_audioengine_manual.h index 29e0b9a08d..6447de6c66 100644 --- a/cocos/scripting/lua-bindings/manual/audioengine/lua_cocos2dx_audioengine_manual.h +++ b/cocos/scripting/lua-bindings/manual/audioengine/lua_cocos2dx_audioengine_manual.h @@ -32,6 +32,16 @@ extern "C" { } #endif +/** + * Call this function can import the lua bindings for the audioengine module. + * After registering, we could call the related audioengine code conveniently in the lua.eg,.ccexp.AudioEngine:stop(audioID). + * If you don't want to use the audioengine module in the lua, you only don't call this registering function. + * If you don't register the audioengine module, the package size would become smaller . + * The current mechanism,this function is called in the lua_module_register.h + * + * @lua NA + */ + TOLUA_API int register_audioengine_module(lua_State* L); diff --git a/cocos/scripting/lua-bindings/manual/cocos2d/lua_cocos2dx_manual.cpp b/cocos/scripting/lua-bindings/manual/cocos2d/lua_cocos2dx_manual.cpp index f24d372f1b..14327c67c9 100644 --- a/cocos/scripting/lua-bindings/manual/cocos2d/lua_cocos2dx_manual.cpp +++ b/cocos/scripting/lua-bindings/manual/cocos2d/lua_cocos2dx_manual.cpp @@ -3812,7 +3812,7 @@ static int tolua_cocos2dx_GLProgram_setUniformLocationF32(lua_State* tolua_S) #endif f4 = (float) tolua_tonumber(tolua_S,6,0); - if (4 == argc) + if (5 == argc) { self->setUniformLocationWith4f(location, f1, f2, f3, f4); return 0; diff --git a/docs/Groups.h b/docs/Groups.h index 1039b03f22..10983e550f 100644 --- a/docs/Groups.h +++ b/docs/Groups.h @@ -1,25 +1,10 @@ /** @defgroup actions Actions -@defgroup data_structures Data Structures -@defgroup base_nodes Base Nodes -@defgroup effects Effects -@defgroup cocosbuilder CocosBuilder Support -@defgroup global Global -@defgroup input Human Machine Interation -@defgroup data_storage Data Storage -@defgroup layer Layer -@defgroup scene Scene -@defgroup transition Transition -@defgroup GUI GUI -@defgroup label Label -@defgroup menu Menu, MenuItem -@defgroup control_extension Control Exntension -@defgroup misc_nodes Misc Nodes -@defgroup particle_nodes Particle System -@defgroup platform Platform Adaptor -@defgroup script_support Script Support -@defgroup shaders Shaders -@defgroup sprite_nodes Sprite Nodes -@defgroup textures Textures -@defgroup tilemap_parallax_nodes TileMap, Parallax +@defgroup _2d 2D Nodes +@defgroup _3d 3D Nodes +@defgroup core Core +@defgroup base Base +@defgroup support Support +@defgroup ui UI Nodes +@defgroup lua Lua Binding */ diff --git a/docs/MainPage.h b/docs/MainPage.h index 42ebd6e4d7..50e1799c2a 100644 --- a/docs/MainPage.h +++ b/docs/MainPage.h @@ -1,4 +1,6 @@ -/*! +/*! +@cond GEN_REFERENCE_BOOK + @mainpage cocos2d-x @image html cocos2dx_portrait.png @@ -53,4 +55,5 @@ THE SOFTWARE. \n - Fork our repository on github, commit your changes, and send a "pull request" to us. We will merge your contribution to master - Suggestion, bug fixes, and improvements are highly appreciated. +@endcond */ diff --git a/docs/MainPageWhiteBook.h b/docs/MainPageWhiteBook.h new file mode 100644 index 0000000000..48e78ac16b --- /dev/null +++ b/docs/MainPageWhiteBook.h @@ -0,0 +1,16 @@ +/*! +@cond GEN_WRITE_BOOK + +@mainpage cocos2d-x + +@image html img-cocos.jpg + +@section sec1 About cocos2d-x +Cocos is a free and professional game development toolkit, that enables game developers to quickly create game content, and takes that tedious work and simplifies it with straightforward GUI editors. + +Cocos includes: Cocos Studio, Cocos IDE, and Cocos Shop. Developers can focus on their specific roles and enjoy better streamlined workflow. + +This enables game studios to collaborate with ease, and focus on what each does best in order to achieve better quality and faster turnaround time. This saves time and money. + +@endcond +*/ diff --git a/docs/RELEASE_NOTES.md b/docs/RELEASE_NOTES.md index 8e60f47410..ef57af755f 100644 --- a/docs/RELEASE_NOTES.md +++ b/docs/RELEASE_NOTES.md @@ -13,6 +13,7 @@ - [Windows](#windows) - [Linux](#linux) - [How to start a new game](#how-to-start-a-new-game) +- [v3.5](#v35) - [v3.5rc0](#v35rc0) - [Highlights of v3.5rc0](#highlights-of-v35rc0) - [Features in detail](#features-in-detail) @@ -113,6 +114,12 @@ Run ## How to start a new game Please refer to this document: [ReadMe](../README.md) +# v3.5 +There are only some minor changes and bug fixes in this verison. + +* EditBox: Color4B font color is supported +* Fix memory leak in AutoReleasePool +* Fix FileUtils:getWritablePath() return wrong path on Mac&Windows # v3.5rc0 ## Highlights of v3.5rc0 diff --git a/docs/doxygen.config b/docs/doxygen.config index bb7b723725..8b6d8d0080 100644 --- a/docs/doxygen.config +++ b/docs/doxygen.config @@ -38,7 +38,7 @@ PROJECT_NAME = cocos2d-x # could be handy for archiving the generated documentation or if some version # control system is used. -PROJECT_NUMBER = 3.0 +PROJECT_NUMBER = 3.5 # Using the PROJECT_BRIEF tag one can provide an optional one line description # for a project that appears at the top of each page and should give viewer a @@ -606,7 +606,7 @@ GENERATE_DEPRECATEDLIST= YES # sections, marked by \if ... \endif and \cond # ... \endcond blocks. -ENABLED_SECTIONS = +ENABLED_SECTIONS = GEN_REFERENCE_BOOK # The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the # initial value of a variable or macro / define can have for it to appear in the diff --git a/docs/doxygen_white_book.config b/docs/doxygen_white_book.config index dd4a54bb17..4d78ab8693 100644 --- a/docs/doxygen_white_book.config +++ b/docs/doxygen_white_book.config @@ -465,7 +465,7 @@ HIDE_UNDOC_MEMBERS = YES # no effect if EXTRACT_ALL is enabled. # The default value is: NO. -HIDE_UNDOC_CLASSES = NO +HIDE_UNDOC_CLASSES = YES # If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend # (class|struct|union) declarations. If set to NO these declarations will be @@ -606,7 +606,7 @@ GENERATE_DEPRECATEDLIST= YES # sections, marked by \if ... \endif and \cond # ... \endcond blocks. -ENABLED_SECTIONS = +ENABLED_SECTIONS = GEN_WRITE_BOOK # The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the # initial value of a variable or macro / define can have for it to appear in the @@ -1494,7 +1494,7 @@ MATHJAX_FORMAT = HTML-CSS # The default value is: http://cdn.mathjax.org/mathjax/latest. # This tag requires that the tag USE_MATHJAX is set to YES. -# MATHJAX_RELPATH = http://www.mathjax.org/mathjax +# MATHJAX_RELPATH = ../ # The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax # extension names that should be enabled during MathJax rendering. For example @@ -2023,7 +2023,12 @@ PREDEFINED = "CC_PROPERTY_READONLY(varType, varName, funName)=protec "CC_DEPRECATED_ATTRIBUTE" \ "CC_CONSTRUCTOR_ACCESS=protected" \ "protected=private" \ - + "CC_DLL=" \ + "_USRDLL=" \ + "_EXPORT_DLL_=" \ + "_USEGUIDLL=" \ + "_USREXDLL=" \ + "_USRSTUDIODLL=" \ # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this # tag can be used to specify a list of macro names that should be expanded. The diff --git a/docs/img-cocos.jpg b/docs/img-cocos.jpg new file mode 100644 index 0000000000..1895b9d30d Binary files /dev/null and b/docs/img-cocos.jpg differ diff --git a/plugin b/plugin index dc25546289..3a71e881f1 160000 --- a/plugin +++ b/plugin @@ -1 +1 @@ -Subproject commit dc25546289ab18dd273199124dada948638eb5e1 +Subproject commit 3a71e881f1b39b5b23ffcf32322e4139bf9350f7 diff --git a/templates/cocos2dx_files.json b/templates/cocos2dx_files.json index 4ee75a31d4..c5b67912d4 100644 --- a/templates/cocos2dx_files.json +++ b/templates/cocos2dx_files.json @@ -217,7 +217,6 @@ "cocos/2d/cocos2d.def", "cocos/2d/cocos2d_headers.props", "cocos/2d/cocos2dx.props", - "cocos/2d/doxygen_modules.h", "cocos/2d/libcocos2d.vcxproj", "cocos/2d/libcocos2d.vcxproj.filters", "cocos/2d/libcocos2d_8_1/libcocos2d_8_1.sln", @@ -495,7 +494,6 @@ "cocos/deprecated/CCString.cpp", "cocos/deprecated/CCString.h", "cocos/deprecated/CMakeLists.txt", - "cocos/doxygen_modules.h", "cocos/editor-support/cocosbuilder/Android.mk", "cocos/editor-support/cocosbuilder/CCBAnimationManager.cpp", "cocos/editor-support/cocosbuilder/CCBAnimationManager.h", @@ -1239,11 +1237,13 @@ "docs/CONTRIBUTE.md", "docs/Groups.h", "docs/MainPage.h", + "docs/MainPageWhiteBook.h", "docs/RELEASE_ENGINEERING.md", "docs/RELEASE_NOTES.md", "docs/cocos2dx_portrait.png", "docs/doxygen.config", "docs/doxygen_white_book.config", + "docs/img-cocos.jpg", "download-deps.py", "extensions/Android.mk", "extensions/CMakeLists.txt", diff --git a/tests/cpp-tests/CMakeLists.txt b/tests/cpp-tests/CMakeLists.txt index 03eddd91e7..7e5297f19e 100644 --- a/tests/cpp-tests/CMakeLists.txt +++ b/tests/cpp-tests/CMakeLists.txt @@ -155,6 +155,7 @@ set(TESTS_SRC Classes/PerformanceTest/PerformanceAllocTest.cpp Classes/PerformanceTest/PerformanceNodeChildrenTest.cpp Classes/PerformanceTest/PerformanceParticleTest.cpp + Classes/PerformanceTest/PerformanceParticle3DTest.cpp Classes/PerformanceTest/PerformanceSpriteTest.cpp Classes/PerformanceTest/PerformanceTest.cpp Classes/PerformanceTest/PerformanceTextureTest.cpp diff --git a/tests/cpp-tests/Classes/Camera3DTest/Camera3DTest.cpp b/tests/cpp-tests/Classes/Camera3DTest/Camera3DTest.cpp index 1cb25da673..2ebaa31641 100644 --- a/tests/cpp-tests/Classes/Camera3DTest/Camera3DTest.cpp +++ b/tests/cpp-tests/Classes/Camera3DTest/Camera3DTest.cpp @@ -882,8 +882,9 @@ void CameraCullingDemo::update(float dt) void CameraCullingDemo::reachEndCallBack() { _cameraFirst->stopActionByTag(100); - auto inverse = (MoveTo*)_moveAction->reverse(); + auto inverse = MoveTo::create(4.f, Vec2(-_cameraFirst->getPositionX(), 0)); inverse->retain(); + _moveAction->release(); _moveAction = inverse; auto rot = RotateBy::create(1.f, Vec3(0.f, 180.f, 0.f)); @@ -902,7 +903,7 @@ void CameraCullingDemo::switchViewCallback(Ref* sender) _cameraFirst->setCameraFlag(CameraFlag::USER8); _cameraFirst->setPosition3D(Vec3(-100,0,0)); _cameraFirst->lookAt(Vec3(1000,0,0)); - _moveAction = MoveTo::create(4.f, Vec2(100, 0)); + _moveAction = MoveTo::create(4.f, Vec2(-_cameraFirst->getPositionX(), 0)); _moveAction->retain(); auto seq = Sequence::create(_moveAction, CallFunc::create(CC_CALLBACK_0(CameraCullingDemo::reachEndCallBack, this)), nullptr); seq->setTag(100); diff --git a/tests/cpp-tests/Classes/PerformanceTest/PerformanceParticle3DTest.cpp b/tests/cpp-tests/Classes/PerformanceTest/PerformanceParticle3DTest.cpp new file mode 100644 index 0000000000..9f3522b962 --- /dev/null +++ b/tests/cpp-tests/Classes/PerformanceTest/PerformanceParticle3DTest.cpp @@ -0,0 +1,204 @@ +#include "PerformanceParticle3DTest.h" +#include "Particle3D/PU/CCPUParticleSystem3D.h" + +static int kTagInfoLayer = 1; +static int kTagMenuLayer = 1000; +static int kTagParticleSystem = 1001; +static int test_Count = 2; + +static int kMaxParticles = 14000; +static int kNodesIncrease = 1; + +static int s_parCurIdx = 0; + +//////////////////////////////////////////////////////// +// +// ParticleMenuLayer +// +//////////////////////////////////////////////////////// +Particle3DMenuLayer::Particle3DMenuLayer(bool isControlMenuVisible, int maxCases, int curCase) +: PerformBasicLayer(isControlMenuVisible, maxCases, curCase) +{ + +} + +void Particle3DMenuLayer::showCurrentTest() +{ + auto scene = (Particle3DMainScene*)getParent(); + int subTest = scene->getSubTestNum(); + int parNum = scene->getParticlesNum(); + + Particle3DMainScene* pNewScene = nullptr; + + switch (_curCase) + { + case 0: + pNewScene = new (std::nothrow) Particle3DPerformTest; + break; + } + + s_parCurIdx = _curCase; + if (pNewScene) + { + pNewScene->initWithSubTest(subTest, parNum); + + Director::getInstance()->replaceScene(pNewScene); + pNewScene->release(); + } +} + +//////////////////////////////////////////////////////// +// +// ParticleMainScene +// +//////////////////////////////////////////////////////// +void Particle3DMainScene::initWithSubTest(int asubtest, int particles) +{ + //srandom(0); + + _subtestNumber = asubtest; + auto s = Director::getInstance()->getWinSize(); + + _lastRenderedCount = 0; + _quantityParticles = 0; + + MenuItemFont::setFontSize(65); + auto decrease = MenuItemFont::create(" - ", [=](Ref *sender) { + _quantityParticles -= kNodesIncrease; + if( _quantityParticles < 0 ) + _quantityParticles = 0; + + updateQuantityLabel(); + removeChildByTag(kTagParticleSystem + _quantityParticles, true); + }); + decrease->setColor(Color3B(0,200,20)); + auto increase = MenuItemFont::create(" + ", [=](Ref *sender) { + _quantityParticles += kNodesIncrease; + if( _quantityParticles > kMaxParticles ) + _quantityParticles = kMaxParticles; + + updateQuantityLabel(); + createParticleSystem(_quantityParticles - 1); + }); + increase->setColor(Color3B(0,200,20)); + + auto menu = Menu::create(decrease, increase, nullptr); + menu->alignItemsHorizontally(); + menu->setPosition(Vec2(s.width/2, s.height/2+15)); + addChild(menu, 1); + + auto infoLabel = Label::createWithTTF("0 Particle Systems", "fonts/Marker Felt.ttf", 30); + infoLabel->setColor(Color3B(0,200,20)); + infoLabel->setPosition(Vec2(s.width/2, s.height - 90)); + addChild(infoLabel, 1, kTagInfoLayer); + + // Next Prev Test + auto menuLayer = new (std::nothrow) Particle3DMenuLayer(true, test_Count, s_parCurIdx); + addChild(menuLayer, 1, kTagMenuLayer); + menuLayer->release(); + + auto label = Label::createWithTTF(title().c_str(), "fonts/arial.ttf", 32); + addChild(label, 1); + label->setPosition(Vec2(s.width/2, s.height-50)); + + auto camera = Camera::createPerspective(30.0f, s.width / s.height, 1.0f, 1000.0f); + camera->setPosition3D(Vec3(0.0f, 0.0f, 150.0f)); + camera->lookAt(Vec3(0.0f, 0.0f, 0.0f), Vec3(0.0f, 1.0f, 0.0f)); + camera->setCameraFlag(CameraFlag::USER1); + this->addChild(camera); + + TTFConfig config("fonts/tahoma.ttf",10); + _particleLab = Label::createWithTTF(config,"Particle Count: 0",TextHAlignment::LEFT); + _particleLab->setPosition(Vec2(0.0f, s.height / 6.0f)); + _particleLab->setAnchorPoint(Vec2(0.0f, 0.0f)); + this->addChild(_particleLab); + _quantityParticles = 1; + updateQuantityLabel(); + createParticleSystem(_quantityParticles - 1); + + schedule(CC_SCHEDULE_SELECTOR(Particle3DMainScene::step)); +} + +std::string Particle3DMainScene::title() const +{ + return "No title"; +} + +void Particle3DMainScene::step(float dt) +{ + unsigned int count = 0; + for (int i = 0; i < _quantityParticles; i++) + { + ParticleSystem3D *ps = static_cast(this->getChildByTag(kTagParticleSystem + i)); + if (ps){ + auto children = ps->getChildren(); + for (auto iter : children){ + ParticleSystem3D *child = dynamic_cast(iter); + if (child){ + count += child->getAliveParticleCount(); + } + } + + char str[128]; + sprintf(str, "Particle Count: %d", count); + _particleLab->setString(str); + } + } +} + +void Particle3DMainScene::createParticleSystem(int idx) +{ + auto ps = PUParticleSystem3D::create("Particle3D/scripts/example_004.pu", "Particle3D/materials/pu_example.material"); + ps->setCameraMask((unsigned short)CameraFlag::USER1); + ps->setPosition(CCRANDOM_MINUS1_1() * 50.0f, CCRANDOM_MINUS1_1() * 20.0f); + ps->startParticleSystem(); + addChild(ps, 0, kTagParticleSystem + idx); +} + +void Particle3DMainScene::testNCallback(Ref* sender) +{ + _subtestNumber = static_cast(sender)->getTag(); + + auto menu = static_cast( getChildByTag(kTagMenuLayer) ); + menu->restartCallback(sender); +} + +void Particle3DMainScene::updateQuantityLabel() +{ + if( _quantityParticles != _lastRenderedCount ) + { + auto infoLabel = (Label *) getChildByTag(kTagInfoLayer); + char str[20] = {0}; + sprintf(str, "%u Particle Systems", _quantityParticles); + infoLabel->setString(str); + + _lastRenderedCount = _quantityParticles; + } +} + +//////////////////////////////////////////////////////// +// +// ParticlePerformTest1 +// +//////////////////////////////////////////////////////// +std::string Particle3DPerformTest::title() const +{ + char str[20] = {0}; + sprintf(str, "Particle3D Test"/*, subtestNumber*/); + std::string strRet = str; + return strRet; +} + +void Particle3DPerformTest::doTest() +{ + auto s = Director::getInstance()->getWinSize(); +} + +void runParticle3DTest() +{ + auto scene = new (std::nothrow) Particle3DPerformTest; + scene->initWithSubTest(1, kNodesIncrease); + + Director::getInstance()->replaceScene(scene); + scene->release(); +} diff --git a/tests/cpp-tests/Classes/PerformanceTest/PerformanceParticle3DTest.h b/tests/cpp-tests/Classes/PerformanceTest/PerformanceParticle3DTest.h new file mode 100644 index 0000000000..fc8f4395f3 --- /dev/null +++ b/tests/cpp-tests/Classes/PerformanceTest/PerformanceParticle3DTest.h @@ -0,0 +1,43 @@ +#ifndef __PERFORMANCE_PARTICLE_3D_TEST_H__ +#define __PERFORMANCE_PARTICLE_3D_TEST_H__ + +#include "PerformanceTest.h" + +class Particle3DMenuLayer : public PerformBasicLayer +{ +public: + Particle3DMenuLayer(bool isControlMenuVisible, int maxCases = 0, int curCase = 0); + virtual void showCurrentTest(); +}; + +class Particle3DMainScene : public Scene +{ +public: + virtual void initWithSubTest(int subtest, int particles); + virtual std::string title() const; + + void step(float dt); + void createParticleSystem(int idx); + void testNCallback(Ref* sender); + void updateQuantityLabel(); + int getSubTestNum() { return _subtestNumber; } + int getParticlesNum() { return _quantityParticles; } + virtual void doTest() = 0; + +protected: + int _lastRenderedCount; + int _quantityParticles; + int _subtestNumber; + cocos2d::Label *_particleLab; +}; + +class Particle3DPerformTest : public Particle3DMainScene +{ +public: + virtual std::string title() const override; + virtual void doTest(); +}; + +void runParticle3DTest(); + +#endif diff --git a/tests/cpp-tests/Classes/PerformanceTest/PerformanceTest.cpp b/tests/cpp-tests/Classes/PerformanceTest/PerformanceTest.cpp index 879ae302a5..aad3bb63f1 100644 --- a/tests/cpp-tests/Classes/PerformanceTest/PerformanceTest.cpp +++ b/tests/cpp-tests/Classes/PerformanceTest/PerformanceTest.cpp @@ -2,6 +2,7 @@ #include "../testResource.h" #include "PerformanceNodeChildrenTest.h" #include "PerformanceParticleTest.h" +#include "PerformanceParticle3DTest.h" #include "PerformanceSpriteTest.h" #include "PerformanceTextureTest.h" #include "PerformanceTouchesTest.h" @@ -28,6 +29,7 @@ struct { { "Alloc Test", [](Ref*sender){runAllocPerformanceTest(); } }, { "NodeChildren Test", [](Ref*sender){runNodeChildrenTest();} }, { "Particle Test",[](Ref*sender){runParticleTest();} }, + { "Particle3D Perf Test",[](Ref*sender){runParticle3DTest();} }, { "Sprite Perf Test",[](Ref*sender){runSpriteTest();} }, { "Texture Perf Test",[](Ref*sender){runTextureTest();} }, { "Touches Perf Test",[](Ref*sender){runTouchesTest();} }, diff --git a/tests/cpp-tests/Classes/RenderTextureTest/RenderTextureTest.cpp b/tests/cpp-tests/Classes/RenderTextureTest/RenderTextureTest.cpp index 8389cffb8e..4f3b51154c 100644 --- a/tests/cpp-tests/Classes/RenderTextureTest/RenderTextureTest.cpp +++ b/tests/cpp-tests/Classes/RenderTextureTest/RenderTextureTest.cpp @@ -146,7 +146,8 @@ void RenderTextureSave::saveImage(cocos2d::Ref *sender) }; _target->saveToFile(png, Image::Format::PNG, true, callback); - + //Add this function to avoid crash if we switch to a new scene. + Director::getInstance()->getRenderer()->render(); CCLOG("Image saved %s", png); counter++; diff --git a/tests/cpp-tests/Classes/Sprite3DTest/Sprite3DTest.cpp b/tests/cpp-tests/Classes/Sprite3DTest/Sprite3DTest.cpp index 8c8644cb8d..6e629b3dc0 100644 --- a/tests/cpp-tests/Classes/Sprite3DTest/Sprite3DTest.cpp +++ b/tests/cpp-tests/Classes/Sprite3DTest/Sprite3DTest.cpp @@ -368,6 +368,17 @@ Sprite3DUVAnimationTest::Sprite3DUVAnimationTest() glProgram->initWithFilenames("Sprite3DTest/cylinder.vert", "Sprite3DTest/cylinder.frag"); glProgram->link(); glProgram->updateUniforms(); + auto shining_texture = Director::getInstance()->getTextureCache()->addImage("Sprite3DTest/caustics.png"); + Texture2D::TexParams tRepeatParams;//set texture parameters + tRepeatParams.magFilter = GL_NEAREST; + tRepeatParams.minFilter = GL_NEAREST; + tRepeatParams.wrapS = GL_REPEAT; + tRepeatParams.wrapT = GL_REPEAT; + shining_texture->setTexParameters(tRepeatParams); + //pass the texture sampler to our custom shader + _state->setUniformTexture("caustics",shining_texture); + _state->setUniformFloat("offset",_cylinder_texture_offset); + _state->setUniformFloat("duration",_shining_duraion); } ); Director::getInstance()->getEventDispatcher()->addEventListenerWithFixedPriority(_backToForegroundListener, -1); diff --git a/tests/cpp-tests/Resources/ActionTimeline/Animation.csb b/tests/cpp-tests/Resources/ActionTimeline/Animation.csb old mode 100755 new mode 100644 index f64ece32db..cda36411b5 Binary files a/tests/cpp-tests/Resources/ActionTimeline/Animation.csb and b/tests/cpp-tests/Resources/ActionTimeline/Animation.csb differ diff --git a/tests/cpp-tests/Resources/ActionTimeline/TestAnimation.csb b/tests/cpp-tests/Resources/ActionTimeline/TestAnimation.csb old mode 100755 new mode 100644 index 4298c9039e..ac49f55af7 Binary files a/tests/cpp-tests/Resources/ActionTimeline/TestAnimation.csb and b/tests/cpp-tests/Resources/ActionTimeline/TestAnimation.csb differ diff --git a/tests/cpp-tests/Resources/ActionTimeline/TestAnimation.csd b/tests/cpp-tests/Resources/ActionTimeline/TestAnimation.csd index a349f0034a..fc2fdc696e 100755 --- a/tests/cpp-tests/Resources/ActionTimeline/TestAnimation.csd +++ b/tests/cpp-tests/Resources/ActionTimeline/TestAnimation.csd @@ -1,11 +1,23 @@ - + - - - - + + + + + + + + + + + + + + + + @@ -17,18 +29,20 @@ - - + + - + + + \ No newline at end of file diff --git a/tests/cpp-tests/Resources/Particle3D/scripts/example_004.pu b/tests/cpp-tests/Resources/Particle3D/scripts/example_004.pu new file mode 100644 index 0000000000..8004bafa0d --- /dev/null +++ b/tests/cpp-tests/Resources/Particle3D/scripts/example_004.pu @@ -0,0 +1,32 @@ +system example_004 +{ + category Examples_1_10 + technique + { + visual_particle_quota 100 + material ParticleUniverse/Star + default_particle_width 0.6 + default_particle_height 0.6 + renderer Billboard + { + } + emitter SphereSurface + { + emission_rate 60 + time_to_live 1.8 + velocity 0 + direction 0 0 0 + radius 3 + } + affector Colour + { + time_colour 0 1 1 0 1 + time_colour 1 1 0 0 0 + } + affector Gravity + { + mass_affector 0.03 + gravity 150 + } + } +} diff --git a/tests/cpp-tests/proj.android/jni/Android.mk b/tests/cpp-tests/proj.android/jni/Android.mk index bc30532323..d84f740630 100644 --- a/tests/cpp-tests/proj.android/jni/Android.mk +++ b/tests/cpp-tests/proj.android/jni/Android.mk @@ -158,6 +158,7 @@ LOCAL_SRC_FILES := main.cpp \ ../../Classes/PerformanceTest/PerformanceAllocTest.cpp \ ../../Classes/PerformanceTest/PerformanceNodeChildrenTest.cpp \ ../../Classes/PerformanceTest/PerformanceParticleTest.cpp \ +../../Classes/PerformanceTest/PerformanceParticle3DTest.cpp \ ../../Classes/PerformanceTest/PerformanceSpriteTest.cpp \ ../../Classes/PerformanceTest/PerformanceTest.cpp \ ../../Classes/PerformanceTest/PerformanceTextureTest.cpp \ diff --git a/tests/cpp-tests/proj.win32/cpp-tests.vcxproj b/tests/cpp-tests/proj.win32/cpp-tests.vcxproj index a682d1bfc3..fa6a0837f5 100644 --- a/tests/cpp-tests/proj.win32/cpp-tests.vcxproj +++ b/tests/cpp-tests/proj.win32/cpp-tests.vcxproj @@ -1,4 +1,4 @@ - + @@ -189,12 +189,13 @@ xcopy "$(OutDir)..\*.dll" "$(OutDir)" /D /Y - + + @@ -388,12 +389,13 @@ xcopy "$(OutDir)..\*.dll" "$(OutDir)" /D /Y - + + diff --git a/tests/cpp-tests/proj.win32/cpp-tests.vcxproj.filters b/tests/cpp-tests/proj.win32/cpp-tests.vcxproj.filters index e2eb2095b9..96321e51f7 100644 --- a/tests/cpp-tests/proj.win32/cpp-tests.vcxproj.filters +++ b/tests/cpp-tests/proj.win32/cpp-tests.vcxproj.filters @@ -1,4 +1,4 @@ - + @@ -345,7 +345,7 @@ {e4104916-24d0-49b8-a864-d273ea13a248} - + {65be3b70-58d6-47f4-bc67-fac9ee134c42} @@ -905,7 +905,7 @@ Classes\CocosStudio3DTest - + Classes\PerformanceTest @@ -921,6 +921,9 @@ Classes\AllocatorTest + + Classes\PerformanceTest + @@ -1672,7 +1675,7 @@ Classes\CocosStudio3DTest - + Classes\PerformanceTest @@ -1688,5 +1691,8 @@ Classes\AllocatorTest + + Classes\PerformanceTest + \ No newline at end of file diff --git a/tests/cpp-tests/proj.win8.1-universal/cpp-tests.Shared/cpp-tests.Shared.vcxitems b/tests/cpp-tests/proj.win8.1-universal/cpp-tests.Shared/cpp-tests.Shared.vcxitems index 5209f637f5..84eb9ac57a 100644 --- a/tests/cpp-tests/proj.win8.1-universal/cpp-tests.Shared/cpp-tests.Shared.vcxitems +++ b/tests/cpp-tests/proj.win8.1-universal/cpp-tests.Shared/cpp-tests.Shared.vcxitems @@ -115,7 +115,7 @@ - + @@ -124,6 +124,7 @@ + @@ -375,7 +376,7 @@ - + @@ -384,6 +385,7 @@ + diff --git a/tests/cpp-tests/proj.win8.1-universal/cpp-tests.Shared/cpp-tests.Shared.vcxitems.filters b/tests/cpp-tests/proj.win8.1-universal/cpp-tests.Shared/cpp-tests.Shared.vcxitems.filters index 748129c0e0..d44bae8c7e 100644 --- a/tests/cpp-tests/proj.win8.1-universal/cpp-tests.Shared/cpp-tests.Shared.vcxitems.filters +++ b/tests/cpp-tests/proj.win8.1-universal/cpp-tests.Shared/cpp-tests.Shared.vcxitems.filters @@ -771,7 +771,10 @@ Classes\CocosStudio3DTest - + + + Classes\PerformanceTest + @@ -1673,7 +1676,7 @@ {65d0104d-321a-41f7-99af-de609183f206} - + @@ -1700,6 +1703,9 @@ Classes\CocosStudio3DTest - + + + Classes\PerformanceTest + \ No newline at end of file diff --git a/tests/cpp-tests/proj.wp8-xaml/cpp-testsComponent/cpp-testsComponent.vcxproj b/tests/cpp-tests/proj.wp8-xaml/cpp-testsComponent/cpp-testsComponent.vcxproj index 29f9305c8f..6815dc2f31 100644 --- a/tests/cpp-tests/proj.wp8-xaml/cpp-testsComponent/cpp-testsComponent.vcxproj +++ b/tests/cpp-tests/proj.wp8-xaml/cpp-testsComponent/cpp-testsComponent.vcxproj @@ -247,6 +247,7 @@ + @@ -451,6 +452,7 @@ + diff --git a/tests/cpp-tests/proj.wp8-xaml/cpp-testsComponent/cpp-testsComponent.vcxproj.filters b/tests/cpp-tests/proj.wp8-xaml/cpp-testsComponent/cpp-testsComponent.vcxproj.filters index 2da7b9eaab..f05c7c4f31 100644 --- a/tests/cpp-tests/proj.wp8-xaml/cpp-testsComponent/cpp-testsComponent.vcxproj.filters +++ b/tests/cpp-tests/proj.wp8-xaml/cpp-testsComponent/cpp-testsComponent.vcxproj.filters @@ -348,7 +348,7 @@ {65f104c8-5b02-4c44-ab8b-a8e7289e5c7a} - + @@ -918,6 +918,9 @@ Classes\CocosStudio3DTest + + Classes\PerformanceTest + @@ -1685,7 +1688,10 @@ Classes\CocosStudio3DTest - + + + Classes\PerformanceTest + diff --git a/tools/cocos2d-console b/tools/cocos2d-console index e3a9c52c54..3c012eb35c 160000 --- a/tools/cocos2d-console +++ b/tools/cocos2d-console @@ -1 +1 @@ -Subproject commit e3a9c52c5452dc6a3287c9d340f74355842cc44c +Subproject commit 3c012eb35cde522d17985aab8e9bad1aa7818ff6 diff --git a/tools/jenkins-scripts/slave-scripts/win32-vs2012-build.bat b/tools/jenkins-scripts/slave-scripts/win32-vs2012-build.bat index 7aad687447..25c74c6276 100755 --- a/tools/jenkins-scripts/slave-scripts/win32-vs2012-build.bat +++ b/tools/jenkins-scripts/slave-scripts/win32-vs2012-build.bat @@ -1 +1,2 @@ -"%VS120COMNTOOLS%..\IDE\devenv.com" "build\cocos2d-win32.vc2012.sln" /Build "Debug|Win32" +call "%VS120COMNTOOLS%vsvars32.bat" +msbuild build\cocos2d-win32.vc2012.sln /t:Build /p:Platform="Win32" /p:Configuration="Debug" /m diff --git a/tools/jenkins-scripts/slave-scripts/win32-vs2013-build.bat b/tools/jenkins-scripts/slave-scripts/win32-vs2013-build.bat index 12a6247cf1..41df6423d1 100755 --- a/tools/jenkins-scripts/slave-scripts/win32-vs2013-build.bat +++ b/tools/jenkins-scripts/slave-scripts/win32-vs2013-build.bat @@ -1 +1,2 @@ -"%VS120COMNTOOLS%..\IDE\devenv.com" "build\cocos2d-win32.vc2013.sln" /Build "Debug|Win32" +call "%VS120COMNTOOLS%vsvars32.bat" +msbuild build\cocos2d-win32.vc2013.sln /t:Build /p:Platform="Win32" /p:Configuration="Debug" /m diff --git a/tools/jenkins-scripts/slave-scripts/windows-universal-v3.bat b/tools/jenkins-scripts/slave-scripts/windows-universal-v3.bat index 246cc1aca6..9eb1d5d1ed 100755 --- a/tools/jenkins-scripts/slave-scripts/windows-universal-v3.bat +++ b/tools/jenkins-scripts/slave-scripts/windows-universal-v3.bat @@ -1,2 +1,3 @@ -"%VS120COMNTOOLS%..\IDE\devenv.com" "build\cocos2d-wp8.sln" /Build "Debug|Win32" -"%VS120COMNTOOLS%..\IDE\devenv.com" "build\cocos2d-win8.1-universal.sln" /Build "Debug|Win32" +call "%VS120COMNTOOLS%vsvars32.bat" +msbuild build\cocos2d-wp8.sln /t:Build /p:Platform="Win32" /p:Configuration="Debug" /m +msbuild build\cocos2d-win8.1-universal.sln /t:Build /p:Platform="Win32" /p:Configuration="Debug" /m diff --git a/tools/jenkins-scripts/slave-scripts/windows-universal.bat b/tools/jenkins-scripts/slave-scripts/windows-universal.bat index 28949a5de3..5426a05611 100755 --- a/tools/jenkins-scripts/slave-scripts/windows-universal.bat +++ b/tools/jenkins-scripts/slave-scripts/windows-universal.bat @@ -1 +1,2 @@ -"%VS120COMNTOOLS%..\IDE\devenv.com" "build\cocos2d-win8.1-universal.sln" /Build "Debug|Win32" +call "%VS120COMNTOOLS%vsvars32.bat" +msbuild build\cocos2d-win8.1-universal.sln /t:Build /p:Platform="Win32" /p:Configuration="Debug" /m diff --git a/tools/release/generate_docs.sh b/tools/release/generate_docs.sh index 3b5753aa90..4647fbbce1 100755 --- a/tools/release/generate_docs.sh +++ b/tools/release/generate_docs.sh @@ -1,7 +1,5 @@ #!/bin/sh -#try to grab the doxygen version modified by me -#TODO: if the doxygen is not correct, we should install it manually CONFIG_NAME=doxygen if [ ! -z $1 ]; then @@ -9,22 +7,20 @@ if [ ! -z $1 ]; then fi sed -i .bak '/CC_DEPRECATED_ATTRIBUTE CC_DLL/,/NS_CC_END/d' ../../cocos/base/ccUTF8.h -# git diff > doc-patch.patch -# mv doc-patch.patch docs -#we need to generate the patch automatically and remove it after applying -# patch -fp1 < docs/doc-patch.patch - version=`grep -e 'return' ../../cocos/cocos2d.cpp | awk '{print substr($3,0,length($3)-2)}'` echo $version + cd ../../docs #we should read cocos2d.cpp and retrieve the version number sed -i .bak "s/3\.0/${version}/g" doxygen.config -rm doxygen.config.bak - doxygen ${CONFIG_NAME}.config -git checkout . ../cocos/base/ccUTF8.h +#restore the old doxygen.config +mv doxygen.config.bak doxygen.config + +#restore the old ccUTF8.h +mv ../cocos/base/ccUTF8.h.bak ../cocos/base/ccUTF8.h rm debug.txt