diff --git a/AUTHORS b/AUTHORS index aa9402cb1c..0db85c3f16 100644 --- a/AUTHORS +++ b/AUTHORS @@ -828,6 +828,7 @@ Developers: Added missing Text Font and Placeholder feature of EditBox for Mac platform HttpRequest uses std::function as callback EditBox: mac secure input + Fix a bug that can not get/set text in password mode on Mac OS X iSevenDays Fixed a bug that the result of 'malloc' is incompatible with type 'unsigned char *' in Image::saveImageToPNG @@ -896,7 +897,8 @@ Developers: kyokomi Fix the bug that UIButton doesn't support TTF font - Fix a but of TextReader + Fix a bug of TextReader + Fix a bug that UITextField doesn't support TTF font gin0606 Add a new line at the end of a file diff --git a/CHANGELOG b/CHANGELOG index ad5c3e1d42..673ca472de 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,6 +1,7 @@ cocos2d-x-3.2 ?? [FIX] Animation3D: getOrCreate is deprecated and replaced with Animation3D::create [FIX] Animate3D: setSpeed() accept negtive value, which means play reverse, getPlayback and setPlayBack are deprecated + [FIX] EditBox: can not set/get text in password mode on Mac OS X [FIX] GLView: cursor position is not correct if design resolution is different from device resolution [FIX] Label: color can not be set correctly if using system font [FIX] Lua-binding: support UIVideoPlayer @@ -10,10 +11,12 @@ cocos2d-x-3.2 ?? [FIX] SpriteBatchNode: opacity can not work [FIX] Sprite3D: may crash on Android if playing animation and replace Scene after come from background [FIX] UIdget: opacity is wrong when replace texture + [FIX] UIText: can not wrap words automatically [FIX] UITextField: keyboard can not hide if touching space outside of keyboard [FIX] Others: don't release singleton objects correctly that are needed in the whole game, which will be treated as memory leak when using VLD. + [FIX] Others: compiling error when building for iOS 64-bit devices with Xcode6 beta3 cocos2d-x-3.2rc0 Jul.7 2014 diff --git a/build/android-build.py b/build/android-build.py index 781a0a9779..675ff3ae56 100755 --- a/build/android-build.py +++ b/build/android-build.py @@ -8,7 +8,7 @@ import shutil from optparse import OptionParser CPP_SAMPLES = ['cpp-empty-test', 'cpp-tests', 'game-controller-test'] -LUA_SAMPLES = ['lua-empty-test', 'lua-tests'] +LUA_SAMPLES = ['lua-empty-test', 'lua-tests', 'lua-game-controller-test'] ALL_SAMPLES = CPP_SAMPLES + LUA_SAMPLES def get_num_of_cpu(): @@ -172,6 +172,10 @@ def copy_resources(target, app_android_root): resources_dir = os.path.join(app_android_root, "../../../cpp-tests/Resources") copy_files(resources_dir, assets_res_dir) + if target == "lua-game-controller-test": + print("coming generator game controller") + resources_dir = os.path.join(app_android_root, "../../../game-controller-test/Resources") + copy_files(resources_dir, assets_res_dir) def build_samples(target,ndk_build_param,android_platform,build_mode): @@ -203,7 +207,8 @@ def build_samples(target,ndk_build_param,android_platform,build_mode): "game-controller-test": "tests/game-controller-test/proj.android", "cpp-tests": "tests/cpp-tests/proj.android", "lua-empty-test": "tests/lua-empty-test/project/proj.android", - "lua-tests": "tests/lua-tests/project/proj.android" + "lua-tests": "tests/lua-tests/project/proj.android", + "lua-game-controller-test": "tests/lua-game-controller-test/project/proj.android" } for target in build_targets: diff --git a/build/cocos2d_libs.xcodeproj/project.pbxproj b/build/cocos2d_libs.xcodeproj/project.pbxproj index afffa6f339..08b4c96517 100644 --- a/build/cocos2d_libs.xcodeproj/project.pbxproj +++ b/build/cocos2d_libs.xcodeproj/project.pbxproj @@ -7475,15 +7475,6 @@ "\"$(SRCROOT)/../external/websockets/prebuilt/ios\"", "\"$(SRCROOT)/../external/curl/prebuilt/ios\"", ); - "OTHER_LDFLAGS[arch=arm64]" = ( - "-lcurl_arm64", - "-ljpeg_arm64", - "-lpng_arm64", - "-ltiff_arm64", - "-lwebp_arm64", - "-lwebsockets_arm64", - "-lfreetype_arm64", - ); SDKROOT = iphoneos; TARGETED_DEVICE_FAMILY = "1,2"; USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/../external/websockets/include/ios $(SRCROOT)/../external/freetype2/include/ios $(SRCROOT)/../external/curl/include/ios $(SRCROOT)/../external/webp/include/ios $(SRCROOT)/../external/tiff/include/ios $(SRCROOT)/../external/jpeg/include/ios $(SRCROOT)/../external/png/include/ios"; @@ -7515,15 +7506,6 @@ "\"$(SRCROOT)/../external/websockets/prebuilt/ios\"", "\"$(SRCROOT)/../external/curl/prebuilt/ios\"", ); - "OTHER_LDFLAGS[arch=arm64]" = ( - "-lcurl_arm64", - "-ljpeg_arm64", - "-lpng_arm64", - "-ltiff_arm64", - "-lwebp_arm64", - "-lwebsockets_arm64", - "-lfreetype_arm64", - ); SDKROOT = iphoneos; TARGETED_DEVICE_FAMILY = "1,2"; USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/../external/websockets/include/ios $(SRCROOT)/../external/freetype2/include/ios $(SRCROOT)/../external/curl/include/ios $(SRCROOT)/../external/webp/include/ios $(SRCROOT)/../external/tiff/include/ios $(SRCROOT)/../external/jpeg/include/ios $(SRCROOT)/../external/png/include/ios"; diff --git a/build/cocos2d_tests.xcodeproj/project.pbxproj b/build/cocos2d_tests.xcodeproj/project.pbxproj index 4ccecae7a2..22be96797e 100644 --- a/build/cocos2d_tests.xcodeproj/project.pbxproj +++ b/build/cocos2d_tests.xcodeproj/project.pbxproj @@ -58,6 +58,8 @@ 1503FAC418DA8B6C00F6518C /* tp.lua in Resources */ = {isa = PBXBuildFile; fileRef = 1503FAB118DA8B6C00F6518C /* tp.lua */; }; 1503FAC518DA8B6C00F6518C /* url.lua in Resources */ = {isa = PBXBuildFile; fileRef = 1503FAB218DA8B6C00F6518C /* url.lua */; }; 1503FAC618DA8B6C00F6518C /* url.lua in Resources */ = {isa = PBXBuildFile; fileRef = 1503FAB218DA8B6C00F6518C /* url.lua */; }; + 156229331973D400009C9067 /* bitExtend.lua in Resources */ = {isa = PBXBuildFile; fileRef = 156229321973D400009C9067 /* bitExtend.lua */; }; + 156229341973D400009C9067 /* bitExtend.lua in Resources */ = {isa = PBXBuildFile; fileRef = 156229321973D400009C9067 /* bitExtend.lua */; }; 15AECE0B195C0F8A00907DB0 /* MediaPlayer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3EA0FB65191B933000B170C8 /* MediaPlayer.framework */; }; 15AECE0F195C1FDD00907DB0 /* cocosvideo.mp4 in Resources */ = {isa = PBXBuildFile; fileRef = 3EA0FB5D191B92F100B170C8 /* cocosvideo.mp4 */; }; 15AECE1F195D0EC500907DB0 /* experimentalConstants.lua in Resources */ = {isa = PBXBuildFile; fileRef = 15AECE1E195D0EC500907DB0 /* experimentalConstants.lua */; }; @@ -93,6 +95,42 @@ 15C90B4A18E66C2B00D69802 /* tp.lua in Resources */ = {isa = PBXBuildFile; fileRef = 1503FAB118DA8B6C00F6518C /* tp.lua */; }; 15C90B4B18E66C2F00D69802 /* url.lua in Resources */ = {isa = PBXBuildFile; fileRef = 1503FAB218DA8B6C00F6518C /* url.lua */; }; 15C90B4C18E66C3100D69802 /* url.lua in Resources */ = {isa = PBXBuildFile; fileRef = 1503FAB218DA8B6C00F6518C /* url.lua */; }; + 15CBA9A9196EE7FA005877BB /* Cocos2d.lua in Resources */ = {isa = PBXBuildFile; fileRef = 1ABCA36818CD9E180087CE3A /* Cocos2d.lua */; }; + 15CBA9AA196EE7FA005877BB /* Cocos2dConstants.lua in Resources */ = {isa = PBXBuildFile; fileRef = 1ABCA36918CD9E180087CE3A /* Cocos2dConstants.lua */; }; + 15CBA9AB196EE7FA005877BB /* CocoStudio.lua in Resources */ = {isa = PBXBuildFile; fileRef = 1ABCA36A18CD9E180087CE3A /* CocoStudio.lua */; }; + 15CBA9AC196EE7FA005877BB /* Deprecated.lua in Resources */ = {isa = PBXBuildFile; fileRef = 1ABCA36B18CD9E180087CE3A /* Deprecated.lua */; }; + 15CBA9AD196EE7FA005877BB /* DeprecatedClass.lua in Resources */ = {isa = PBXBuildFile; fileRef = 1ABCA36C18CD9E180087CE3A /* DeprecatedClass.lua */; }; + 15CBA9AE196EE7FA005877BB /* DeprecatedEnum.lua in Resources */ = {isa = PBXBuildFile; fileRef = 1ABCA36D18CD9E180087CE3A /* DeprecatedEnum.lua */; }; + 15CBA9AF196EE80B005877BB /* fonts in Resources */ = {isa = PBXBuildFile; fileRef = 3E6177F01960FEFE00DE83F5 /* fonts */; }; + 15CBA9B0196EE80B005877BB /* ipad in Resources */ = {isa = PBXBuildFile; fileRef = 3E6177F11960FEFE00DE83F5 /* ipad */; }; + 15CBA9B1196EE80B005877BB /* ipadhd in Resources */ = {isa = PBXBuildFile; fileRef = 3E6177F21960FEFE00DE83F5 /* ipadhd */; }; + 15CBA9B2196EE80B005877BB /* iphone in Resources */ = {isa = PBXBuildFile; fileRef = 3E6177F31960FEFE00DE83F5 /* iphone */; }; + 15CBA9B3196EE824005877BB /* src in Resources */ = {isa = PBXBuildFile; fileRef = 15CBA9A4196EE6B1005877BB /* src */; }; + 15CBA9B4196EE8A0005877BB /* AppDelegate.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 15CBA08B196EE66D005877BB /* AppDelegate.cpp */; }; + 15CBA9B7196EE8D9005877BB /* AppController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 15CBA53F196EE671005877BB /* AppController.mm */; }; + 15CBA9B8196EE8D9005877BB /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 15CBA54C196EE671005877BB /* main.m */; }; + 15CBA9B9196EE8D9005877BB /* RootViewController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 15CBA54E196EE671005877BB /* RootViewController.mm */; }; + 15CBA9BB196EE910005877BB /* libchipmunk iOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 46A15FC21807A4F9005B8026 /* libchipmunk iOS.a */; }; + 15CBA9BD196EE910005877BB /* libcocos2dx-extensions iOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 46A15FC01807A4F9005B8026 /* libcocos2dx-extensions iOS.a */; }; + 15CBA9BE196EE910005877BB /* libCocosDenshion iOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 46A15FC61807A4F9005B8026 /* libCocosDenshion iOS.a */; }; + 15CBA9BF196EE910005877BB /* libluabindings iOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1ABCA28018CD90A50087CE3A /* libluabindings iOS.a */; }; + 15CBA9CF196EE9FB005877BB /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 15CBA9C2196EE951005877BB /* AVFoundation.framework */; }; + 15CBA9D0196EEA05005877BB /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 15CBA9C4196EE962005877BB /* UIKit.framework */; }; + 15CBA9D1196EEA1D005877BB /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 15CBA9C0196EE943005877BB /* Foundation.framework */; }; + 15CBA9D2196EEA33005877BB /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 15CBA9C6196EE971005877BB /* OpenGLES.framework */; }; + 15CBA9D4196EEA33005877BB /* OpenAL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 15CBA9D3196EEA33005877BB /* OpenAL.framework */; }; + 15CBA9D5196EEA43005877BB /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 15CBA9C8196EE97F005877BB /* CoreGraphics.framework */; }; + 15CBA9D7196EEA63005877BB /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 15CBA9D6196EEA63005877BB /* AudioToolbox.framework */; }; + 15CBA9D9196EEA7D005877BB /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 15CBA9D8196EEA7D005877BB /* QuartzCore.framework */; }; + 15CBA9DB196EEA90005877BB /* CoreMotion.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 15CBA9DA196EEA90005877BB /* CoreMotion.framework */; }; + 15CBA9DD196EEAA6005877BB /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 15CBA9DC196EEAA6005877BB /* libz.dylib */; }; + 15CBA9DE196EEAF8005877BB /* GameController.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3E61773C1960FBD100DE83F5 /* GameController.framework */; }; + 15CBA9DF196EEBB3005877BB /* libcocos2dx iOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 46A15FBE1807A4F9005B8026 /* libcocos2dx iOS.a */; }; + 15CBA9E0196EEBD4005877BB /* MediaPlayer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3EA0FB65191B933000B170C8 /* MediaPlayer.framework */; }; + 15CBA9ED196F7BD8005877BB /* lua_cocos2dx_controller_auto.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 15CBA9EB196F7BD8005877BB /* lua_cocos2dx_controller_auto.cpp */; }; + 15CBA9F0196F7BEC005877BB /* lua_cocos2dx_controller_manual.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 15CBA9EE196F7BEC005877BB /* lua_cocos2dx_controller_manual.cpp */; }; + 15CBA9F1196F865C005877BB /* json.lua in Resources */ = {isa = PBXBuildFile; fileRef = 1ABCA37218CD9E180087CE3A /* json.lua */; }; + 15CBA9F2196F8718005877BB /* extern.lua in Resources */ = {isa = PBXBuildFile; fileRef = 1ABCA37018CD9E180087CE3A /* extern.lua */; }; 15E66FC8192D957100C20A52 /* Sprite3DTest in Resources */ = {isa = PBXBuildFile; fileRef = 3E92EA841921A7720094CD21 /* Sprite3DTest */; }; 15E66FD6192DC8C700C20A52 /* Sprite3DTest in Resources */ = {isa = PBXBuildFile; fileRef = 3E92EA841921A7720094CD21 /* Sprite3DTest */; }; 1A0EE2A118CDF6DA004CD58F /* libchipmunk Mac.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 46A15FB41807A4F9005B8026 /* libchipmunk Mac.a */; }; @@ -812,6 +850,10 @@ 29080DE4191B595E0066F8DF /* UIWidgetAddNodeTest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 29080D89191B595E0066F8DF /* UIWidgetAddNodeTest.cpp */; }; 29080DE5191B595E0066F8DF /* UIWidgetAddNodeTest_Editor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 29080D8B191B595E0066F8DF /* UIWidgetAddNodeTest_Editor.cpp */; }; 29080DE6191B595E0066F8DF /* UIWidgetAddNodeTest_Editor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 29080D8B191B595E0066F8DF /* UIWidgetAddNodeTest_Editor.cpp */; }; + 290E94B5196FC16900694919 /* CocostudioParserTest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 290E94B3196FC16900694919 /* CocostudioParserTest.cpp */; }; + 290E94B6196FC16900694919 /* CocostudioParserTest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 290E94B3196FC16900694919 /* CocostudioParserTest.cpp */; }; + 29FBBBFE196A9ECD00E65826 /* CocostudioParserJsonTest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 29FBBBFC196A9ECD00E65826 /* CocostudioParserJsonTest.cpp */; }; + 29FBBBFF196A9ECD00E65826 /* CocostudioParserJsonTest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 29FBBBFC196A9ECD00E65826 /* CocostudioParserJsonTest.cpp */; }; 38FA2E73194AEBE100FF2BE4 /* ActionTimelineTestScene.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 38FA2E71194AEBE100FF2BE4 /* ActionTimelineTestScene.cpp */; }; 38FA2E74194AEBE100FF2BE4 /* ActionTimelineTestScene.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 38FA2E71194AEBE100FF2BE4 /* ActionTimelineTestScene.cpp */; }; 38FA2E76194AECF800FF2BE4 /* ActionTimeline in Resources */ = {isa = PBXBuildFile; fileRef = 38FA2E75194AECF800FF2BE4 /* ActionTimeline */; }; @@ -885,6 +927,41 @@ /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ + 15CBA017196EE56C005877BB /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 46A15F9C1807A4F8005B8026 /* cocos2d_libs.xcodeproj */; + proxyType = 1; + remoteGlobalIDString = A07A4C241783777C0073F6A7; + remoteInfo = "cocos2dx iOS"; + }; + 15CBA019196EE56C005877BB /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 46A15F9C1807A4F8005B8026 /* cocos2d_libs.xcodeproj */; + proxyType = 1; + remoteGlobalIDString = A07A4E111783867C0073F6A7; + remoteInfo = "cocos2dx-extensions iOS"; + }; + 15CBA01B196EE56C005877BB /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 46A15F9C1807A4F8005B8026 /* cocos2d_libs.xcodeproj */; + proxyType = 1; + remoteGlobalIDString = A07A4EFD178387670073F6A7; + remoteInfo = "chipmunk iOS"; + }; + 15CBA01D196EE56C005877BB /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 46A15F9C1807A4F8005B8026 /* cocos2d_libs.xcodeproj */; + proxyType = 1; + remoteGlobalIDString = A07A4F9F178387730073F6A7; + remoteInfo = "CocosDenshion iOS"; + }; + 15CBA01F196EE56C005877BB /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 1ABCA27618CD90A40087CE3A /* cocos2d_lua_bindings.xcodeproj */; + proxyType = 1; + remoteGlobalIDString = 1A119716178526AA00D62A44; + remoteInfo = "luabindings iOS"; + }; 1A0EE1C818CDF6DA004CD58F /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 46A15F9C1807A4F8005B8026 /* cocos2d_libs.xcodeproj */; @@ -1318,6 +1395,7 @@ 1503FAB018DA8B6C00F6518C /* socket.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = socket.lua; path = ../external/lua/luasocket/socket.lua; sourceTree = ""; }; 1503FAB118DA8B6C00F6518C /* tp.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = tp.lua; path = ../external/lua/luasocket/tp.lua; sourceTree = ""; }; 1503FAB218DA8B6C00F6518C /* url.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = url.lua; path = ../external/lua/luasocket/url.lua; sourceTree = ""; }; + 156229321973D400009C9067 /* bitExtend.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = bitExtend.lua; path = "../cocos/scripting/lua-bindings/script/bitExtend.lua"; sourceTree = ""; }; 15AECE1E195D0EC500907DB0 /* experimentalConstants.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = experimentalConstants.lua; path = "../cocos/scripting/lua-bindings/script/experimentalConstants.lua"; sourceTree = ""; }; 15C64822165F391E007D4F18 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks/Cocoa.framework; sourceTree = DEVELOPER_DIR; }; 15C64824165F3934007D4F18 /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks/OpenGL.framework; sourceTree = DEVELOPER_DIR; }; @@ -1327,6 +1405,1123 @@ 15C6482C165F3988007D4F18 /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks/AudioToolbox.framework; sourceTree = DEVELOPER_DIR; }; 15C6482E165F399D007D4F18 /* libz.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.dylib; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/usr/lib/libz.dylib; sourceTree = DEVELOPER_DIR; }; 15C64832165F3AFD007D4F18 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; + 15CBA063196EE56C005877BB /* lua-game-controller-test iOS.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "lua-game-controller-test iOS.app"; sourceTree = BUILT_PRODUCTS_DIR; }; + 15CBA08B196EE66D005877BB /* AppDelegate.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AppDelegate.cpp; sourceTree = ""; }; + 15CBA08C196EE66D005877BB /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; + 15CBA08F196EE66D005877BB /* .classpath */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = .classpath; sourceTree = ""; }; + 15CBA090196EE66D005877BB /* .project */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = .project; sourceTree = ""; }; + 15CBA091196EE66D005877BB /* AndroidManifest.xml */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = AndroidManifest.xml; sourceTree = ""; }; + 15CBA092196EE66D005877BB /* ant.properties */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = ant.properties; sourceTree = ""; }; + 15CBA094196EE66D005877BB /* AudioEngine.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = AudioEngine.lua; sourceTree = ""; }; + 15CBA095196EE66D005877BB /* CCBReaderLoad.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = CCBReaderLoad.lua; sourceTree = ""; }; + 15CBA096196EE66D005877BB /* Cocos2d.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Cocos2d.lua; sourceTree = ""; }; + 15CBA097196EE66D005877BB /* Cocos2dConstants.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Cocos2dConstants.lua; sourceTree = ""; }; + 15CBA098196EE66D005877BB /* CocoStudio.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = CocoStudio.lua; sourceTree = ""; }; + 15CBA099196EE66D005877BB /* Deprecated.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Deprecated.lua; sourceTree = ""; }; + 15CBA09A196EE66D005877BB /* DeprecatedClass.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = DeprecatedClass.lua; sourceTree = ""; }; + 15CBA09B196EE66D005877BB /* DeprecatedEnum.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = DeprecatedEnum.lua; sourceTree = ""; }; + 15CBA09C196EE66D005877BB /* DeprecatedOpenglEnum.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = DeprecatedOpenglEnum.lua; sourceTree = ""; }; + 15CBA09D196EE66D005877BB /* DrawPrimitives.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = DrawPrimitives.lua; sourceTree = ""; }; + 15CBA09E196EE66D005877BB /* extern.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = extern.lua; sourceTree = ""; }; + 15CBA09F196EE66D005877BB /* ftp.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = ftp.lua; sourceTree = ""; }; + 15CBA0A0196EE66D005877BB /* GuiConstants.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = GuiConstants.lua; sourceTree = ""; }; + 15CBA0A1196EE66D005877BB /* headers.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = headers.lua; sourceTree = ""; }; + 15CBA0A2196EE66D005877BB /* http.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = http.lua; sourceTree = ""; }; + 15CBA0A3196EE66D005877BB /* json.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = json.lua; sourceTree = ""; }; + 15CBA0A4196EE66D005877BB /* ltn12.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = ltn12.lua; sourceTree = ""; }; + 15CBA0A5196EE66D005877BB /* luaj.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = luaj.lua; sourceTree = ""; }; + 15CBA0A6196EE66D005877BB /* luaoc.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = luaoc.lua; sourceTree = ""; }; + 15CBA0A7196EE66D005877BB /* mbox.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = mbox.lua; sourceTree = ""; }; + 15CBA0A8196EE66D005877BB /* mime.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = mime.lua; sourceTree = ""; }; + 15CBA0A9196EE66D005877BB /* Opengl.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Opengl.lua; sourceTree = ""; }; + 15CBA0AA196EE66D005877BB /* OpenglConstants.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = OpenglConstants.lua; sourceTree = ""; }; + 15CBA0AD196EE66D005877BB /* Marker Felt.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "Marker Felt.ttf"; sourceTree = ""; }; + 15CBA0AF196EE66D005877BB /* A.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = A.png; sourceTree = ""; }; + 15CBA0B0196EE66D005877BB /* B.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = B.png; sourceTree = ""; }; + 15CBA0B1196EE66D005877BB /* CloseNormal.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = CloseNormal.png; sourceTree = ""; }; + 15CBA0B2196EE66D005877BB /* CloseSelected.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = CloseSelected.png; sourceTree = ""; }; + 15CBA0B3196EE66D005877BB /* controller-1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "controller-1.png"; sourceTree = ""; }; + 15CBA0B4196EE66D005877BB /* controller-2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "controller-2.png"; sourceTree = ""; }; + 15CBA0B5196EE66D005877BB /* dpad-key.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "dpad-key.png"; sourceTree = ""; }; + 15CBA0B6196EE66D005877BB /* dPad.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = dPad.png; sourceTree = ""; }; + 15CBA0B7196EE66D005877BB /* joystick.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = joystick.png; sourceTree = ""; }; + 15CBA0B8196EE66D005877BB /* L1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = L1.png; sourceTree = ""; }; + 15CBA0B9196EE66D005877BB /* L2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = L2.png; sourceTree = ""; }; + 15CBA0BA196EE66D005877BB /* R1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = R1.png; sourceTree = ""; }; + 15CBA0BB196EE66D005877BB /* R2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = R2.png; sourceTree = ""; }; + 15CBA0BC196EE66D005877BB /* X.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = X.png; sourceTree = ""; }; + 15CBA0BD196EE66D005877BB /* Y.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Y.png; sourceTree = ""; }; + 15CBA0BF196EE66D005877BB /* A.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = A.png; sourceTree = ""; }; + 15CBA0C0196EE66D005877BB /* B.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = B.png; sourceTree = ""; }; + 15CBA0C1196EE66D005877BB /* CloseNormal.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = CloseNormal.png; sourceTree = ""; }; + 15CBA0C2196EE66D005877BB /* CloseSelected.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = CloseSelected.png; sourceTree = ""; }; + 15CBA0C3196EE66D005877BB /* controller-1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "controller-1.png"; sourceTree = ""; }; + 15CBA0C4196EE66D005877BB /* controller-2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "controller-2.png"; sourceTree = ""; }; + 15CBA0C5196EE66D005877BB /* dPad.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = dPad.png; sourceTree = ""; }; + 15CBA0C6196EE66D005877BB /* joystick.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = joystick.png; sourceTree = ""; }; + 15CBA0C7196EE66D005877BB /* L1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = L1.png; sourceTree = ""; }; + 15CBA0C8196EE66D005877BB /* L2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = L2.png; sourceTree = ""; }; + 15CBA0C9196EE66D005877BB /* R1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = R1.png; sourceTree = ""; }; + 15CBA0CA196EE66D005877BB /* R2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = R2.png; sourceTree = ""; }; + 15CBA0CB196EE66D005877BB /* X.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = X.png; sourceTree = ""; }; + 15CBA0CC196EE66D005877BB /* Y.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Y.png; sourceTree = ""; }; + 15CBA0CE196EE66D005877BB /* CloseNormal.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = CloseNormal.png; sourceTree = ""; }; + 15CBA0CF196EE66D005877BB /* CloseSelected.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = CloseSelected.png; sourceTree = ""; }; + 15CBA0D0196EE66D005877BB /* smtp.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = smtp.lua; sourceTree = ""; }; + 15CBA0D1196EE66D005877BB /* socket.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = socket.lua; sourceTree = ""; }; + 15CBA0D3196EE66D005877BB /* GameControllerTest.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = GameControllerTest.lua; sourceTree = ""; }; + 15CBA0D4196EE66D005877BB /* main.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = main.lua; sourceTree = ""; }; + 15CBA0D5196EE66D005877BB /* StudioConstants.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = StudioConstants.lua; sourceTree = ""; }; + 15CBA0D6196EE66D005877BB /* tp.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = tp.lua; sourceTree = ""; }; + 15CBA0D7196EE66D005877BB /* url.lua */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = url.lua; sourceTree = ""; }; + 15CBA0D9196EE66D005877BB /* AndroidManifest.xml */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = AndroidManifest.xml; sourceTree = ""; }; + 15CBA0DA196EE66D005877BB /* AndroidManifest.xml.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = AndroidManifest.xml.d; sourceTree = ""; }; + 15CBA0DB196EE66D005877BB /* build.prop */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = build.prop; sourceTree = ""; }; + 15CBA0E0196EE66D005877BB /* R$drawable.class */ = {isa = PBXFileReference; lastKnownFileType = compiled.javaclass; path = R$drawable.class; sourceTree = ""; }; + 15CBA0E1196EE66D005877BB /* R$string.class */ = {isa = PBXFileReference; lastKnownFileType = compiled.javaclass; path = R$string.class; sourceTree = ""; }; + 15CBA0E2196EE66D005877BB /* R.class */ = {isa = PBXFileReference; lastKnownFileType = compiled.javaclass; path = R.class; sourceTree = ""; }; + 15CBA0E4196EE66D005877BB /* AppActivity.class */ = {isa = PBXFileReference; lastKnownFileType = compiled.javaclass; path = AppActivity.class; sourceTree = ""; }; + 15CBA0E5196EE66D005877BB /* BuildConfig.class */ = {isa = PBXFileReference; lastKnownFileType = compiled.javaclass; path = BuildConfig.class; sourceTree = ""; }; + 15CBA0E6196EE66D005877BB /* R$attr.class */ = {isa = PBXFileReference; lastKnownFileType = compiled.javaclass; path = R$attr.class; sourceTree = ""; }; + 15CBA0E7196EE66D005877BB /* R$drawable.class */ = {isa = PBXFileReference; lastKnownFileType = compiled.javaclass; path = R$drawable.class; sourceTree = ""; }; + 15CBA0E8196EE66D005877BB /* R$string.class */ = {isa = PBXFileReference; lastKnownFileType = compiled.javaclass; path = R$string.class; sourceTree = ""; }; + 15CBA0E9196EE66D005877BB /* R.class */ = {isa = PBXFileReference; lastKnownFileType = compiled.javaclass; path = R.class; sourceTree = ""; }; + 15CBA0EA196EE66D005877BB /* R.java.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = R.java.d; sourceTree = ""; }; + 15CBA0EB196EE66D005877BB /* classes.dex */ = {isa = PBXFileReference; lastKnownFileType = file; path = classes.dex; sourceTree = ""; }; + 15CBA0EC196EE66D005877BB /* classes.dex.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = classes.dex.d; sourceTree = ""; }; + 15CBA0EE196EE66D005877BB /* com.bda.controller-2a2221a1ab7454168b1de77b0fcb60b5.jar */ = {isa = PBXFileReference; lastKnownFileType = archive.jar; path = "com.bda.controller-2a2221a1ab7454168b1de77b0fcb60b5.jar"; sourceTree = ""; }; + 15CBA0EF196EE66D005877BB /* libcocos2dx-6607f245d91af6aef71b17fa98444a4b.jar */ = {isa = PBXFileReference; lastKnownFileType = archive.jar; path = "libcocos2dx-6607f245d91af6aef71b17fa98444a4b.jar"; sourceTree = ""; }; + 15CBA0F0196EE66E005877BB /* libcontrollermanualadapter-e17761caab08972308a4bbfa589d7d02.jar */ = {isa = PBXFileReference; lastKnownFileType = archive.jar; path = "libcontrollermanualadapter-e17761caab08972308a4bbfa589d7d02.jar"; sourceTree = ""; }; + 15CBA0F1196EE66E005877BB /* nibiru_lib_2_1_7-67e12061a63fd16ecf47bdef1767938c.jar */ = {isa = PBXFileReference; lastKnownFileType = archive.jar; path = "nibiru_lib_2_1_7-67e12061a63fd16ecf47bdef1767938c.jar"; sourceTree = ""; }; + 15CBA0F2196EE66E005877BB /* ouya-sdk-f5c122a155623a2270a639db2ebe8685.jar */ = {isa = PBXFileReference; lastKnownFileType = archive.jar; path = "ouya-sdk-f5c122a155623a2270a639db2ebe8685.jar"; sourceTree = ""; }; + 15CBA0F3196EE66E005877BB /* jarlist.cache */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = jarlist.cache; sourceTree = ""; }; + 15CBA0F4196EE66E005877BB /* LuaGameControllerTest-debug-unaligned.apk */ = {isa = PBXFileReference; lastKnownFileType = file; path = "LuaGameControllerTest-debug-unaligned.apk"; sourceTree = ""; }; + 15CBA0F5196EE66E005877BB /* LuaGameControllerTest-debug-unaligned.apk.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = "LuaGameControllerTest-debug-unaligned.apk.d"; sourceTree = ""; }; + 15CBA0F6196EE66E005877BB /* LuaGameControllerTest-debug.apk */ = {isa = PBXFileReference; lastKnownFileType = file; path = "LuaGameControllerTest-debug.apk"; sourceTree = ""; }; + 15CBA0F7196EE66E005877BB /* LuaGameControllerTest.ap_ */ = {isa = PBXFileReference; lastKnownFileType = file; path = LuaGameControllerTest.ap_; sourceTree = ""; }; + 15CBA0F8196EE66E005877BB /* LuaGameControllerTest.ap_.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = LuaGameControllerTest.ap_.d; sourceTree = ""; }; + 15CBA0F9196EE66E005877BB /* LuaGameControllerTest.apk */ = {isa = PBXFileReference; lastKnownFileType = file; path = LuaGameControllerTest.apk; sourceTree = ""; }; + 15CBA0FA196EE66E005877BB /* proguard.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = proguard.txt; sourceTree = ""; }; + 15CBA0FB196EE66E005877BB /* R.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = R.txt; sourceTree = ""; }; + 15CBA0FE196EE66E005877BB /* icon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = icon.png; sourceTree = ""; }; + 15CBA100196EE66E005877BB /* icon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = icon.png; sourceTree = ""; }; + 15CBA102196EE66E005877BB /* icon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = icon.png; sourceTree = ""; }; + 15CBA103196EE66E005877BB /* resources.ap_ */ = {isa = PBXFileReference; lastKnownFileType = file; path = resources.ap_; sourceTree = ""; }; + 15CBA104196EE66E005877BB /* build-cfg.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = "build-cfg.json"; sourceTree = ""; }; + 15CBA105196EE66E005877BB /* build.xml */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = build.xml; sourceTree = ""; }; + 15CBA10A196EE66E005877BB /* R.java */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.java; path = R.java; sourceTree = ""; }; + 15CBA10C196EE66E005877BB /* BuildConfig.java */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.java; path = BuildConfig.java; sourceTree = ""; }; + 15CBA10D196EE66E005877BB /* R.java */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.java; path = R.java; sourceTree = ""; }; + 15CBA10E196EE66E005877BB /* R.java.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = R.java.d; sourceTree = ""; }; + 15CBA110196EE66E005877BB /* Android.mk */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Android.mk; sourceTree = ""; }; + 15CBA111196EE66E005877BB /* Application.mk */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Application.mk; sourceTree = ""; }; + 15CBA112196EE66E005877BB /* main.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = main.cpp; sourceTree = ""; }; + 15CBA115196EE66E005877BB /* liblua_game_controller.so */ = {isa = PBXFileReference; lastKnownFileType = file; path = liblua_game_controller.so; sourceTree = ""; }; + 15CBA116196EE66E005877BB /* local.properties */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = local.properties; sourceTree = ""; }; + 15CBA11A196EE66E005877BB /* libbox2d.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libbox2d.a; sourceTree = ""; }; + 15CBA11B196EE66E005877BB /* libchipmunk.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libchipmunk.a; sourceTree = ""; }; + 15CBA11C196EE66E005877BB /* libcocos2d.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libcocos2d.a; sourceTree = ""; }; + 15CBA11D196EE66E005877BB /* libcocos2dandroid.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libcocos2dandroid.a; sourceTree = ""; }; + 15CBA11E196EE66E005877BB /* libcocosbuilder.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libcocosbuilder.a; sourceTree = ""; }; + 15CBA11F196EE66E005877BB /* libcocosdenshion.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libcocosdenshion.a; sourceTree = ""; }; + 15CBA120196EE66E005877BB /* libcocostudio.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libcocostudio.a; sourceTree = ""; }; + 15CBA121196EE66E005877BB /* libcpufeatures.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libcpufeatures.a; sourceTree = ""; }; + 15CBA122196EE66E005877BB /* libextension.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libextension.a; sourceTree = ""; }; + 15CBA123196EE66E005877BB /* liblua.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = liblua.a; sourceTree = ""; }; + 15CBA124196EE66E005877BB /* liblua_game_controller.so */ = {isa = PBXFileReference; lastKnownFileType = file; path = liblua_game_controller.so; sourceTree = ""; }; + 15CBA125196EE66E005877BB /* libnetwork.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libnetwork.a; sourceTree = ""; }; + 15CBA126196EE66E005877BB /* libspine.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libspine.a; sourceTree = ""; }; + 15CBA127196EE66E005877BB /* libui.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libui.a; sourceTree = ""; }; + 15CBA12B196EE66E005877BB /* b2BroadPhase.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2BroadPhase.o; sourceTree = ""; }; + 15CBA12C196EE66E005877BB /* b2BroadPhase.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2BroadPhase.o.d; sourceTree = ""; }; + 15CBA12D196EE66E005877BB /* b2CollideCircle.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2CollideCircle.o; sourceTree = ""; }; + 15CBA12E196EE66E005877BB /* b2CollideCircle.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2CollideCircle.o.d; sourceTree = ""; }; + 15CBA12F196EE66E005877BB /* b2CollideEdge.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2CollideEdge.o; sourceTree = ""; }; + 15CBA130196EE66E005877BB /* b2CollideEdge.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2CollideEdge.o.d; sourceTree = ""; }; + 15CBA131196EE66E005877BB /* b2CollidePolygon.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2CollidePolygon.o; sourceTree = ""; }; + 15CBA132196EE66E005877BB /* b2CollidePolygon.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2CollidePolygon.o.d; sourceTree = ""; }; + 15CBA133196EE66E005877BB /* b2Collision.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2Collision.o; sourceTree = ""; }; + 15CBA134196EE66E005877BB /* b2Collision.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2Collision.o.d; sourceTree = ""; }; + 15CBA135196EE66E005877BB /* b2Distance.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2Distance.o; sourceTree = ""; }; + 15CBA136196EE66E005877BB /* b2Distance.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2Distance.o.d; sourceTree = ""; }; + 15CBA137196EE66E005877BB /* b2DynamicTree.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2DynamicTree.o; sourceTree = ""; }; + 15CBA138196EE66E005877BB /* b2DynamicTree.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2DynamicTree.o.d; sourceTree = ""; }; + 15CBA139196EE66E005877BB /* b2TimeOfImpact.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2TimeOfImpact.o; sourceTree = ""; }; + 15CBA13A196EE66E005877BB /* b2TimeOfImpact.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2TimeOfImpact.o.d; sourceTree = ""; }; + 15CBA13C196EE66E005877BB /* b2ChainShape.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2ChainShape.o; sourceTree = ""; }; + 15CBA13D196EE66E005877BB /* b2ChainShape.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2ChainShape.o.d; sourceTree = ""; }; + 15CBA13E196EE66E005877BB /* b2CircleShape.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2CircleShape.o; sourceTree = ""; }; + 15CBA13F196EE66E005877BB /* b2CircleShape.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2CircleShape.o.d; sourceTree = ""; }; + 15CBA140196EE66E005877BB /* b2EdgeShape.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2EdgeShape.o; sourceTree = ""; }; + 15CBA141196EE66E005877BB /* b2EdgeShape.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2EdgeShape.o.d; sourceTree = ""; }; + 15CBA142196EE66E005877BB /* b2PolygonShape.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2PolygonShape.o; sourceTree = ""; }; + 15CBA143196EE66E005877BB /* b2PolygonShape.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2PolygonShape.o.d; sourceTree = ""; }; + 15CBA145196EE66E005877BB /* b2BlockAllocator.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2BlockAllocator.o; sourceTree = ""; }; + 15CBA146196EE66E005877BB /* b2BlockAllocator.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2BlockAllocator.o.d; sourceTree = ""; }; + 15CBA147196EE66E005877BB /* b2Draw.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2Draw.o; sourceTree = ""; }; + 15CBA148196EE66E005877BB /* b2Draw.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2Draw.o.d; sourceTree = ""; }; + 15CBA149196EE66E005877BB /* b2Math.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2Math.o; sourceTree = ""; }; + 15CBA14A196EE66E005877BB /* b2Math.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2Math.o.d; sourceTree = ""; }; + 15CBA14B196EE66E005877BB /* b2Settings.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2Settings.o; sourceTree = ""; }; + 15CBA14C196EE66E005877BB /* b2Settings.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2Settings.o.d; sourceTree = ""; }; + 15CBA14D196EE66E005877BB /* b2StackAllocator.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2StackAllocator.o; sourceTree = ""; }; + 15CBA14E196EE66E005877BB /* b2StackAllocator.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2StackAllocator.o.d; sourceTree = ""; }; + 15CBA14F196EE66E005877BB /* b2Timer.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2Timer.o; sourceTree = ""; }; + 15CBA150196EE66E005877BB /* b2Timer.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2Timer.o.d; sourceTree = ""; }; + 15CBA152196EE66E005877BB /* b2Body.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2Body.o; sourceTree = ""; }; + 15CBA153196EE66E005877BB /* b2Body.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2Body.o.d; sourceTree = ""; }; + 15CBA154196EE66E005877BB /* b2ContactManager.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2ContactManager.o; sourceTree = ""; }; + 15CBA155196EE66E005877BB /* b2ContactManager.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2ContactManager.o.d; sourceTree = ""; }; + 15CBA156196EE66E005877BB /* b2Fixture.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2Fixture.o; sourceTree = ""; }; + 15CBA157196EE66E005877BB /* b2Fixture.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2Fixture.o.d; sourceTree = ""; }; + 15CBA158196EE66E005877BB /* b2Island.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2Island.o; sourceTree = ""; }; + 15CBA159196EE66E005877BB /* b2Island.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2Island.o.d; sourceTree = ""; }; + 15CBA15A196EE66E005877BB /* b2World.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2World.o; sourceTree = ""; }; + 15CBA15B196EE66E005877BB /* b2World.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2World.o.d; sourceTree = ""; }; + 15CBA15C196EE66E005877BB /* b2WorldCallbacks.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2WorldCallbacks.o; sourceTree = ""; }; + 15CBA15D196EE66E005877BB /* b2WorldCallbacks.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2WorldCallbacks.o.d; sourceTree = ""; }; + 15CBA15F196EE66E005877BB /* b2ChainAndCircleContact.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2ChainAndCircleContact.o; sourceTree = ""; }; + 15CBA160196EE66E005877BB /* b2ChainAndCircleContact.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2ChainAndCircleContact.o.d; sourceTree = ""; }; + 15CBA161196EE66E005877BB /* b2ChainAndPolygonContact.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2ChainAndPolygonContact.o; sourceTree = ""; }; + 15CBA162196EE66E005877BB /* b2ChainAndPolygonContact.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2ChainAndPolygonContact.o.d; sourceTree = ""; }; + 15CBA163196EE66E005877BB /* b2CircleContact.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2CircleContact.o; sourceTree = ""; }; + 15CBA164196EE66E005877BB /* b2CircleContact.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2CircleContact.o.d; sourceTree = ""; }; + 15CBA165196EE66E005877BB /* b2Contact.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2Contact.o; sourceTree = ""; }; + 15CBA166196EE66E005877BB /* b2Contact.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2Contact.o.d; sourceTree = ""; }; + 15CBA167196EE66E005877BB /* b2ContactSolver.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2ContactSolver.o; sourceTree = ""; }; + 15CBA168196EE66E005877BB /* b2ContactSolver.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2ContactSolver.o.d; sourceTree = ""; }; + 15CBA169196EE66E005877BB /* b2EdgeAndCircleContact.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2EdgeAndCircleContact.o; sourceTree = ""; }; + 15CBA16A196EE66E005877BB /* b2EdgeAndCircleContact.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2EdgeAndCircleContact.o.d; sourceTree = ""; }; + 15CBA16B196EE66E005877BB /* b2EdgeAndPolygonContact.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2EdgeAndPolygonContact.o; sourceTree = ""; }; + 15CBA16C196EE66E005877BB /* b2EdgeAndPolygonContact.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2EdgeAndPolygonContact.o.d; sourceTree = ""; }; + 15CBA16D196EE66E005877BB /* b2PolygonAndCircleContact.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2PolygonAndCircleContact.o; sourceTree = ""; }; + 15CBA16E196EE66E005877BB /* b2PolygonAndCircleContact.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2PolygonAndCircleContact.o.d; sourceTree = ""; }; + 15CBA16F196EE66E005877BB /* b2PolygonContact.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2PolygonContact.o; sourceTree = ""; }; + 15CBA170196EE66E005877BB /* b2PolygonContact.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2PolygonContact.o.d; sourceTree = ""; }; + 15CBA172196EE66E005877BB /* b2DistanceJoint.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2DistanceJoint.o; sourceTree = ""; }; + 15CBA173196EE66E005877BB /* b2DistanceJoint.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2DistanceJoint.o.d; sourceTree = ""; }; + 15CBA174196EE66E005877BB /* b2FrictionJoint.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2FrictionJoint.o; sourceTree = ""; }; + 15CBA175196EE66E005877BB /* b2FrictionJoint.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2FrictionJoint.o.d; sourceTree = ""; }; + 15CBA176196EE66E005877BB /* b2GearJoint.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2GearJoint.o; sourceTree = ""; }; + 15CBA177196EE66E005877BB /* b2GearJoint.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2GearJoint.o.d; sourceTree = ""; }; + 15CBA178196EE66E005877BB /* b2Joint.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2Joint.o; sourceTree = ""; }; + 15CBA179196EE66E005877BB /* b2Joint.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2Joint.o.d; sourceTree = ""; }; + 15CBA17A196EE66E005877BB /* b2MotorJoint.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2MotorJoint.o; sourceTree = ""; }; + 15CBA17B196EE66E005877BB /* b2MotorJoint.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2MotorJoint.o.d; sourceTree = ""; }; + 15CBA17C196EE66E005877BB /* b2MouseJoint.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2MouseJoint.o; sourceTree = ""; }; + 15CBA17D196EE66E005877BB /* b2MouseJoint.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2MouseJoint.o.d; sourceTree = ""; }; + 15CBA17E196EE66E005877BB /* b2PrismaticJoint.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2PrismaticJoint.o; sourceTree = ""; }; + 15CBA17F196EE66E005877BB /* b2PrismaticJoint.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2PrismaticJoint.o.d; sourceTree = ""; }; + 15CBA180196EE66E005877BB /* b2PulleyJoint.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2PulleyJoint.o; sourceTree = ""; }; + 15CBA181196EE66E005877BB /* b2PulleyJoint.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2PulleyJoint.o.d; sourceTree = ""; }; + 15CBA182196EE66E005877BB /* b2RevoluteJoint.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2RevoluteJoint.o; sourceTree = ""; }; + 15CBA183196EE66E005877BB /* b2RevoluteJoint.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2RevoluteJoint.o.d; sourceTree = ""; }; + 15CBA184196EE66E005877BB /* b2RopeJoint.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2RopeJoint.o; sourceTree = ""; }; + 15CBA185196EE66E005877BB /* b2RopeJoint.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2RopeJoint.o.d; sourceTree = ""; }; + 15CBA186196EE66E005877BB /* b2WeldJoint.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2WeldJoint.o; sourceTree = ""; }; + 15CBA187196EE66E005877BB /* b2WeldJoint.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2WeldJoint.o.d; sourceTree = ""; }; + 15CBA188196EE66E005877BB /* b2WheelJoint.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2WheelJoint.o; sourceTree = ""; }; + 15CBA189196EE66E005877BB /* b2WheelJoint.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2WheelJoint.o.d; sourceTree = ""; }; + 15CBA18B196EE66E005877BB /* b2Rope.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = b2Rope.o; sourceTree = ""; }; + 15CBA18C196EE66E005877BB /* b2Rope.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = b2Rope.o.d; sourceTree = ""; }; + 15CBA18F196EE66E005877BB /* chipmunk.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = chipmunk.o; sourceTree = ""; }; + 15CBA190196EE66E005877BB /* chipmunk.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = chipmunk.o.d; sourceTree = ""; }; + 15CBA192196EE66E005877BB /* cpConstraint.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cpConstraint.o; sourceTree = ""; }; + 15CBA193196EE66E005877BB /* cpConstraint.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cpConstraint.o.d; sourceTree = ""; }; + 15CBA194196EE66E005877BB /* cpDampedRotarySpring.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cpDampedRotarySpring.o; sourceTree = ""; }; + 15CBA195196EE66E005877BB /* cpDampedRotarySpring.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cpDampedRotarySpring.o.d; sourceTree = ""; }; + 15CBA196196EE66E005877BB /* cpDampedSpring.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cpDampedSpring.o; sourceTree = ""; }; + 15CBA197196EE66E005877BB /* cpDampedSpring.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cpDampedSpring.o.d; sourceTree = ""; }; + 15CBA198196EE66E005877BB /* cpGearJoint.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cpGearJoint.o; sourceTree = ""; }; + 15CBA199196EE66E005877BB /* cpGearJoint.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cpGearJoint.o.d; sourceTree = ""; }; + 15CBA19A196EE66E005877BB /* cpGrooveJoint.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cpGrooveJoint.o; sourceTree = ""; }; + 15CBA19B196EE66E005877BB /* cpGrooveJoint.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cpGrooveJoint.o.d; sourceTree = ""; }; + 15CBA19C196EE66E005877BB /* cpPinJoint.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cpPinJoint.o; sourceTree = ""; }; + 15CBA19D196EE66E005877BB /* cpPinJoint.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cpPinJoint.o.d; sourceTree = ""; }; + 15CBA19E196EE66E005877BB /* cpPivotJoint.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cpPivotJoint.o; sourceTree = ""; }; + 15CBA19F196EE66E005877BB /* cpPivotJoint.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cpPivotJoint.o.d; sourceTree = ""; }; + 15CBA1A0196EE66E005877BB /* cpRatchetJoint.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cpRatchetJoint.o; sourceTree = ""; }; + 15CBA1A1196EE66E005877BB /* cpRatchetJoint.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cpRatchetJoint.o.d; sourceTree = ""; }; + 15CBA1A2196EE66E005877BB /* cpRotaryLimitJoint.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cpRotaryLimitJoint.o; sourceTree = ""; }; + 15CBA1A3196EE66E005877BB /* cpRotaryLimitJoint.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cpRotaryLimitJoint.o.d; sourceTree = ""; }; + 15CBA1A4196EE66E005877BB /* cpSimpleMotor.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cpSimpleMotor.o; sourceTree = ""; }; + 15CBA1A5196EE66E005877BB /* cpSimpleMotor.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cpSimpleMotor.o.d; sourceTree = ""; }; + 15CBA1A6196EE66E005877BB /* cpSlideJoint.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cpSlideJoint.o; sourceTree = ""; }; + 15CBA1A7196EE66E005877BB /* cpSlideJoint.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cpSlideJoint.o.d; sourceTree = ""; }; + 15CBA1A8196EE66E005877BB /* cpArbiter.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cpArbiter.o; sourceTree = ""; }; + 15CBA1A9196EE66E005877BB /* cpArbiter.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cpArbiter.o.d; sourceTree = ""; }; + 15CBA1AA196EE66E005877BB /* cpArray.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cpArray.o; sourceTree = ""; }; + 15CBA1AB196EE66E005877BB /* cpArray.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cpArray.o.d; sourceTree = ""; }; + 15CBA1AC196EE66E005877BB /* cpBB.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cpBB.o; sourceTree = ""; }; + 15CBA1AD196EE66E005877BB /* cpBB.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cpBB.o.d; sourceTree = ""; }; + 15CBA1AE196EE66E005877BB /* cpBBTree.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cpBBTree.o; sourceTree = ""; }; + 15CBA1AF196EE66E005877BB /* cpBBTree.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cpBBTree.o.d; sourceTree = ""; }; + 15CBA1B0196EE66E005877BB /* cpBody.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cpBody.o; sourceTree = ""; }; + 15CBA1B1196EE66E005877BB /* cpBody.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cpBody.o.d; sourceTree = ""; }; + 15CBA1B2196EE66E005877BB /* cpCollision.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cpCollision.o; sourceTree = ""; }; + 15CBA1B3196EE66E005877BB /* cpCollision.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cpCollision.o.d; sourceTree = ""; }; + 15CBA1B4196EE66E005877BB /* cpHashSet.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cpHashSet.o; sourceTree = ""; }; + 15CBA1B5196EE66E005877BB /* cpHashSet.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cpHashSet.o.d; sourceTree = ""; }; + 15CBA1B6196EE66E005877BB /* cpPolyShape.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cpPolyShape.o; sourceTree = ""; }; + 15CBA1B7196EE66E005877BB /* cpPolyShape.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cpPolyShape.o.d; sourceTree = ""; }; + 15CBA1B8196EE66E005877BB /* cpShape.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cpShape.o; sourceTree = ""; }; + 15CBA1B9196EE66E005877BB /* cpShape.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cpShape.o.d; sourceTree = ""; }; + 15CBA1BA196EE66E005877BB /* cpSpace.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cpSpace.o; sourceTree = ""; }; + 15CBA1BB196EE66E005877BB /* cpSpace.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cpSpace.o.d; sourceTree = ""; }; + 15CBA1BC196EE66E005877BB /* cpSpaceComponent.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cpSpaceComponent.o; sourceTree = ""; }; + 15CBA1BD196EE66E005877BB /* cpSpaceComponent.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cpSpaceComponent.o.d; sourceTree = ""; }; + 15CBA1BE196EE66E005877BB /* cpSpaceHash.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cpSpaceHash.o; sourceTree = ""; }; + 15CBA1BF196EE66E005877BB /* cpSpaceHash.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cpSpaceHash.o.d; sourceTree = ""; }; + 15CBA1C0196EE66E005877BB /* cpSpaceQuery.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cpSpaceQuery.o; sourceTree = ""; }; + 15CBA1C1196EE66E005877BB /* cpSpaceQuery.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cpSpaceQuery.o.d; sourceTree = ""; }; + 15CBA1C2196EE66E005877BB /* cpSpaceStep.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cpSpaceStep.o; sourceTree = ""; }; + 15CBA1C3196EE66E005877BB /* cpSpaceStep.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cpSpaceStep.o.d; sourceTree = ""; }; + 15CBA1C4196EE66E005877BB /* cpSpatialIndex.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cpSpatialIndex.o; sourceTree = ""; }; + 15CBA1C5196EE66E005877BB /* cpSpatialIndex.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cpSpatialIndex.o.d; sourceTree = ""; }; + 15CBA1C6196EE66E005877BB /* cpSweep1D.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cpSweep1D.o; sourceTree = ""; }; + 15CBA1C7196EE66E005877BB /* cpSweep1D.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cpSweep1D.o.d; sourceTree = ""; }; + 15CBA1C8196EE66E005877BB /* cpVect.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cpVect.o; sourceTree = ""; }; + 15CBA1C9196EE66E005877BB /* cpVect.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cpVect.o.d; sourceTree = ""; }; + 15CBA1CC196EE66E005877BB /* CCAction.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCAction.o; sourceTree = ""; }; + 15CBA1CD196EE66E005877BB /* CCAction.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCAction.o.d; sourceTree = ""; }; + 15CBA1CE196EE66E005877BB /* CCActionCamera.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCActionCamera.o; sourceTree = ""; }; + 15CBA1CF196EE66E005877BB /* CCActionCamera.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCActionCamera.o.d; sourceTree = ""; }; + 15CBA1D0196EE66E005877BB /* CCActionCatmullRom.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCActionCatmullRom.o; sourceTree = ""; }; + 15CBA1D1196EE66E005877BB /* CCActionCatmullRom.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCActionCatmullRom.o.d; sourceTree = ""; }; + 15CBA1D2196EE66E005877BB /* CCActionEase.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCActionEase.o; sourceTree = ""; }; + 15CBA1D3196EE66E005877BB /* CCActionEase.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCActionEase.o.d; sourceTree = ""; }; + 15CBA1D4196EE66E005877BB /* CCActionGrid.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCActionGrid.o; sourceTree = ""; }; + 15CBA1D5196EE66E005877BB /* CCActionGrid.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCActionGrid.o.d; sourceTree = ""; }; + 15CBA1D6196EE66E005877BB /* CCActionGrid3D.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCActionGrid3D.o; sourceTree = ""; }; + 15CBA1D7196EE66E005877BB /* CCActionGrid3D.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCActionGrid3D.o.d; sourceTree = ""; }; + 15CBA1D8196EE66E005877BB /* CCActionInstant.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCActionInstant.o; sourceTree = ""; }; + 15CBA1D9196EE66E005877BB /* CCActionInstant.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCActionInstant.o.d; sourceTree = ""; }; + 15CBA1DA196EE66E005877BB /* CCActionInterval.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCActionInterval.o; sourceTree = ""; }; + 15CBA1DB196EE66E005877BB /* CCActionInterval.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCActionInterval.o.d; sourceTree = ""; }; + 15CBA1DC196EE66E005877BB /* CCActionManager.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCActionManager.o; sourceTree = ""; }; + 15CBA1DD196EE66E005877BB /* CCActionManager.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCActionManager.o.d; sourceTree = ""; }; + 15CBA1DE196EE66E005877BB /* CCActionPageTurn3D.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCActionPageTurn3D.o; sourceTree = ""; }; + 15CBA1DF196EE66E005877BB /* CCActionPageTurn3D.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCActionPageTurn3D.o.d; sourceTree = ""; }; + 15CBA1E0196EE66E005877BB /* CCActionProgressTimer.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCActionProgressTimer.o; sourceTree = ""; }; + 15CBA1E1196EE66E005877BB /* CCActionProgressTimer.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCActionProgressTimer.o.d; sourceTree = ""; }; + 15CBA1E2196EE66E005877BB /* CCActionTiledGrid.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCActionTiledGrid.o; sourceTree = ""; }; + 15CBA1E3196EE66E005877BB /* CCActionTiledGrid.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCActionTiledGrid.o.d; sourceTree = ""; }; + 15CBA1E4196EE66E005877BB /* CCActionTween.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCActionTween.o; sourceTree = ""; }; + 15CBA1E5196EE66E005877BB /* CCActionTween.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCActionTween.o.d; sourceTree = ""; }; + 15CBA1E6196EE66E005877BB /* CCAnimation.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCAnimation.o; sourceTree = ""; }; + 15CBA1E7196EE66E005877BB /* CCAnimation.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCAnimation.o.d; sourceTree = ""; }; + 15CBA1E8196EE66E005877BB /* CCAnimationCache.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCAnimationCache.o; sourceTree = ""; }; + 15CBA1E9196EE66E005877BB /* CCAnimationCache.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCAnimationCache.o.d; sourceTree = ""; }; + 15CBA1EA196EE66E005877BB /* CCAtlasNode.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCAtlasNode.o; sourceTree = ""; }; + 15CBA1EB196EE66E005877BB /* CCAtlasNode.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCAtlasNode.o.d; sourceTree = ""; }; + 15CBA1EC196EE66E005877BB /* CCClippingNode.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCClippingNode.o; sourceTree = ""; }; + 15CBA1ED196EE66E005877BB /* CCClippingNode.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCClippingNode.o.d; sourceTree = ""; }; + 15CBA1EE196EE66E005877BB /* CCComponent.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCComponent.o; sourceTree = ""; }; + 15CBA1EF196EE66E005877BB /* CCComponent.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCComponent.o.d; sourceTree = ""; }; + 15CBA1F0196EE66E005877BB /* CCComponentContainer.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCComponentContainer.o; sourceTree = ""; }; + 15CBA1F1196EE66E005877BB /* CCComponentContainer.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCComponentContainer.o.d; sourceTree = ""; }; + 15CBA1F2196EE66E005877BB /* CCDrawingPrimitives.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCDrawingPrimitives.o; sourceTree = ""; }; + 15CBA1F3196EE66E005877BB /* CCDrawingPrimitives.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCDrawingPrimitives.o.d; sourceTree = ""; }; + 15CBA1F4196EE66E005877BB /* CCDrawNode.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCDrawNode.o; sourceTree = ""; }; + 15CBA1F5196EE66E005877BB /* CCDrawNode.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCDrawNode.o.d; sourceTree = ""; }; + 15CBA1F6196EE66E005877BB /* CCFastTMXLayer.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCFastTMXLayer.o; sourceTree = ""; }; + 15CBA1F7196EE66E005877BB /* CCFastTMXLayer.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCFastTMXLayer.o.d; sourceTree = ""; }; + 15CBA1F8196EE66E005877BB /* CCFastTMXTiledMap.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCFastTMXTiledMap.o; sourceTree = ""; }; + 15CBA1F9196EE66E005877BB /* CCFastTMXTiledMap.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCFastTMXTiledMap.o.d; sourceTree = ""; }; + 15CBA1FA196EE66E005877BB /* CCFont.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCFont.o; sourceTree = ""; }; + 15CBA1FB196EE66E005877BB /* CCFont.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCFont.o.d; sourceTree = ""; }; + 15CBA1FC196EE66E005877BB /* CCFontAtlas.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCFontAtlas.o; sourceTree = ""; }; + 15CBA1FD196EE66E005877BB /* CCFontAtlas.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCFontAtlas.o.d; sourceTree = ""; }; + 15CBA1FE196EE66E005877BB /* CCFontAtlasCache.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCFontAtlasCache.o; sourceTree = ""; }; + 15CBA1FF196EE66E005877BB /* CCFontAtlasCache.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCFontAtlasCache.o.d; sourceTree = ""; }; + 15CBA200196EE66E005877BB /* CCFontCharMap.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCFontCharMap.o; sourceTree = ""; }; + 15CBA201196EE66E005877BB /* CCFontCharMap.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCFontCharMap.o.d; sourceTree = ""; }; + 15CBA202196EE66E005877BB /* CCFontFNT.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCFontFNT.o; sourceTree = ""; }; + 15CBA203196EE66E005877BB /* CCFontFNT.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCFontFNT.o.d; sourceTree = ""; }; + 15CBA204196EE66E005877BB /* CCFontFreeType.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCFontFreeType.o; sourceTree = ""; }; + 15CBA205196EE66E005877BB /* CCFontFreeType.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCFontFreeType.o.d; sourceTree = ""; }; + 15CBA206196EE66E005877BB /* CCGLBufferedNode.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCGLBufferedNode.o; sourceTree = ""; }; + 15CBA207196EE66E005877BB /* CCGLBufferedNode.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCGLBufferedNode.o.d; sourceTree = ""; }; + 15CBA208196EE66E005877BB /* CCGrabber.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCGrabber.o; sourceTree = ""; }; + 15CBA209196EE66E005877BB /* CCGrabber.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCGrabber.o.d; sourceTree = ""; }; + 15CBA20A196EE66E005877BB /* CCGrid.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCGrid.o; sourceTree = ""; }; + 15CBA20B196EE66E005877BB /* CCGrid.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCGrid.o.d; sourceTree = ""; }; + 15CBA20C196EE66E005877BB /* CCLabel.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCLabel.o; sourceTree = ""; }; + 15CBA20D196EE66E005877BB /* CCLabel.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCLabel.o.d; sourceTree = ""; }; + 15CBA20E196EE66E005877BB /* CCLabelAtlas.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCLabelAtlas.o; sourceTree = ""; }; + 15CBA20F196EE66E005877BB /* CCLabelAtlas.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCLabelAtlas.o.d; sourceTree = ""; }; + 15CBA210196EE66E005877BB /* CCLabelBMFont.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCLabelBMFont.o; sourceTree = ""; }; + 15CBA211196EE66E005877BB /* CCLabelBMFont.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCLabelBMFont.o.d; sourceTree = ""; }; + 15CBA212196EE66E005877BB /* CCLabelTextFormatter.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCLabelTextFormatter.o; sourceTree = ""; }; + 15CBA213196EE66E005877BB /* CCLabelTextFormatter.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCLabelTextFormatter.o.d; sourceTree = ""; }; + 15CBA214196EE66E005877BB /* CCLabelTTF.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCLabelTTF.o; sourceTree = ""; }; + 15CBA215196EE66E005877BB /* CCLabelTTF.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCLabelTTF.o.d; sourceTree = ""; }; + 15CBA216196EE66E005877BB /* CCLayer.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCLayer.o; sourceTree = ""; }; + 15CBA217196EE66E005877BB /* CCLayer.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCLayer.o.d; sourceTree = ""; }; + 15CBA218196EE66E005877BB /* CCMenu.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCMenu.o; sourceTree = ""; }; + 15CBA219196EE66E005877BB /* CCMenu.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCMenu.o.d; sourceTree = ""; }; + 15CBA21A196EE66E005877BB /* CCMenuItem.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCMenuItem.o; sourceTree = ""; }; + 15CBA21B196EE66E005877BB /* CCMenuItem.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCMenuItem.o.d; sourceTree = ""; }; + 15CBA21C196EE66E005877BB /* CCMotionStreak.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCMotionStreak.o; sourceTree = ""; }; + 15CBA21D196EE66E005877BB /* CCMotionStreak.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCMotionStreak.o.d; sourceTree = ""; }; + 15CBA21E196EE66E005877BB /* CCNode.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCNode.o; sourceTree = ""; }; + 15CBA21F196EE66E005877BB /* CCNode.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCNode.o.d; sourceTree = ""; }; + 15CBA220196EE66E005877BB /* CCNodeGrid.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCNodeGrid.o; sourceTree = ""; }; + 15CBA221196EE66E005877BB /* CCNodeGrid.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCNodeGrid.o.d; sourceTree = ""; }; + 15CBA222196EE66E005877BB /* CCParallaxNode.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCParallaxNode.o; sourceTree = ""; }; + 15CBA223196EE66E005877BB /* CCParallaxNode.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCParallaxNode.o.d; sourceTree = ""; }; + 15CBA224196EE66E005877BB /* CCParticleBatchNode.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCParticleBatchNode.o; sourceTree = ""; }; + 15CBA225196EE66E005877BB /* CCParticleBatchNode.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCParticleBatchNode.o.d; sourceTree = ""; }; + 15CBA226196EE66E005877BB /* CCParticleExamples.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCParticleExamples.o; sourceTree = ""; }; + 15CBA227196EE66E005877BB /* CCParticleExamples.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCParticleExamples.o.d; sourceTree = ""; }; + 15CBA228196EE66E005877BB /* CCParticleSystem.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCParticleSystem.o; sourceTree = ""; }; + 15CBA229196EE66E005877BB /* CCParticleSystem.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCParticleSystem.o.d; sourceTree = ""; }; + 15CBA22A196EE66E005877BB /* CCParticleSystemQuad.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCParticleSystemQuad.o; sourceTree = ""; }; + 15CBA22B196EE66E005877BB /* CCParticleSystemQuad.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCParticleSystemQuad.o.d; sourceTree = ""; }; + 15CBA22C196EE66E005877BB /* CCProgressTimer.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCProgressTimer.o; sourceTree = ""; }; + 15CBA22D196EE66E005877BB /* CCProgressTimer.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCProgressTimer.o.d; sourceTree = ""; }; + 15CBA22E196EE66E005877BB /* CCRenderTexture.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCRenderTexture.o; sourceTree = ""; }; + 15CBA22F196EE66E005877BB /* CCRenderTexture.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCRenderTexture.o.d; sourceTree = ""; }; + 15CBA230196EE66E005877BB /* CCScene.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCScene.o; sourceTree = ""; }; + 15CBA231196EE66E005877BB /* CCScene.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCScene.o.d; sourceTree = ""; }; + 15CBA232196EE66E005877BB /* CCSprite.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCSprite.o; sourceTree = ""; }; + 15CBA233196EE66E005877BB /* CCSprite.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCSprite.o.d; sourceTree = ""; }; + 15CBA234196EE66E005877BB /* CCSpriteBatchNode.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCSpriteBatchNode.o; sourceTree = ""; }; + 15CBA235196EE66E005877BB /* CCSpriteBatchNode.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCSpriteBatchNode.o.d; sourceTree = ""; }; + 15CBA236196EE66E005877BB /* CCSpriteFrame.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCSpriteFrame.o; sourceTree = ""; }; + 15CBA237196EE66E005877BB /* CCSpriteFrame.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCSpriteFrame.o.d; sourceTree = ""; }; + 15CBA238196EE66E005877BB /* CCSpriteFrameCache.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCSpriteFrameCache.o; sourceTree = ""; }; + 15CBA239196EE66E005877BB /* CCSpriteFrameCache.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCSpriteFrameCache.o.d; sourceTree = ""; }; + 15CBA23A196EE66E005877BB /* CCTextFieldTTF.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCTextFieldTTF.o; sourceTree = ""; }; + 15CBA23B196EE66E005877BB /* CCTextFieldTTF.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCTextFieldTTF.o.d; sourceTree = ""; }; + 15CBA23C196EE66E005877BB /* CCTileMapAtlas.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCTileMapAtlas.o; sourceTree = ""; }; + 15CBA23D196EE66E005877BB /* CCTileMapAtlas.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCTileMapAtlas.o.d; sourceTree = ""; }; + 15CBA23E196EE66E005877BB /* CCTMXLayer.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCTMXLayer.o; sourceTree = ""; }; + 15CBA23F196EE66E005877BB /* CCTMXLayer.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCTMXLayer.o.d; sourceTree = ""; }; + 15CBA240196EE66E005877BB /* CCTMXObjectGroup.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCTMXObjectGroup.o; sourceTree = ""; }; + 15CBA241196EE66E005877BB /* CCTMXObjectGroup.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCTMXObjectGroup.o.d; sourceTree = ""; }; + 15CBA242196EE66E005877BB /* CCTMXTiledMap.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCTMXTiledMap.o; sourceTree = ""; }; + 15CBA243196EE66E005877BB /* CCTMXTiledMap.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCTMXTiledMap.o.d; sourceTree = ""; }; + 15CBA244196EE66E005877BB /* CCTMXXMLParser.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCTMXXMLParser.o; sourceTree = ""; }; + 15CBA245196EE66E005877BB /* CCTMXXMLParser.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCTMXXMLParser.o.d; sourceTree = ""; }; + 15CBA246196EE66E005877BB /* CCTransition.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCTransition.o; sourceTree = ""; }; + 15CBA247196EE66E005877BB /* CCTransition.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCTransition.o.d; sourceTree = ""; }; + 15CBA248196EE66E005877BB /* CCTransitionPageTurn.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCTransitionPageTurn.o; sourceTree = ""; }; + 15CBA249196EE66E005877BB /* CCTransitionPageTurn.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCTransitionPageTurn.o.d; sourceTree = ""; }; + 15CBA24A196EE66E005877BB /* CCTransitionProgress.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCTransitionProgress.o; sourceTree = ""; }; + 15CBA24B196EE66E005877BB /* CCTransitionProgress.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCTransitionProgress.o.d; sourceTree = ""; }; + 15CBA24C196EE66F005877BB /* CCTweenFunction.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCTweenFunction.o; sourceTree = ""; }; + 15CBA24D196EE66F005877BB /* CCTweenFunction.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCTweenFunction.o.d; sourceTree = ""; }; + 15CBA24F196EE66F005877BB /* CCAnimate3D.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCAnimate3D.o; sourceTree = ""; }; + 15CBA250196EE66F005877BB /* CCAnimate3D.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCAnimate3D.o.d; sourceTree = ""; }; + 15CBA251196EE66F005877BB /* CCAnimation3D.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCAnimation3D.o; sourceTree = ""; }; + 15CBA252196EE66F005877BB /* CCAnimation3D.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCAnimation3D.o.d; sourceTree = ""; }; + 15CBA253196EE66F005877BB /* CCBundle3D.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCBundle3D.o; sourceTree = ""; }; + 15CBA254196EE66F005877BB /* CCBundle3D.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCBundle3D.o.d; sourceTree = ""; }; + 15CBA255196EE66F005877BB /* CCBundleReader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCBundleReader.o; sourceTree = ""; }; + 15CBA256196EE66F005877BB /* CCBundleReader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCBundleReader.o.d; sourceTree = ""; }; + 15CBA257196EE66F005877BB /* CCMesh.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCMesh.o; sourceTree = ""; }; + 15CBA258196EE66F005877BB /* CCMesh.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCMesh.o.d; sourceTree = ""; }; + 15CBA259196EE66F005877BB /* CCMeshSkin.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCMeshSkin.o; sourceTree = ""; }; + 15CBA25A196EE66F005877BB /* CCMeshSkin.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCMeshSkin.o.d; sourceTree = ""; }; + 15CBA25B196EE66F005877BB /* CCObjLoader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCObjLoader.o; sourceTree = ""; }; + 15CBA25C196EE66F005877BB /* CCObjLoader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCObjLoader.o.d; sourceTree = ""; }; + 15CBA25D196EE66F005877BB /* CCSprite3D.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCSprite3D.o; sourceTree = ""; }; + 15CBA25E196EE66F005877BB /* CCSprite3D.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCSprite3D.o.d; sourceTree = ""; }; + 15CBA25F196EE66F005877BB /* CCSprite3DMaterial.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCSprite3DMaterial.o; sourceTree = ""; }; + 15CBA260196EE66F005877BB /* CCSprite3DMaterial.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCSprite3DMaterial.o.d; sourceTree = ""; }; + 15CBA264196EE66F005877BB /* ConvertUTF.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = ConvertUTF.o; sourceTree = ""; }; + 15CBA265196EE66F005877BB /* ConvertUTF.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = ConvertUTF.o.d; sourceTree = ""; }; + 15CBA266196EE66F005877BB /* ConvertUTFWrapper.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = ConvertUTFWrapper.o; sourceTree = ""; }; + 15CBA267196EE66F005877BB /* ConvertUTFWrapper.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = ConvertUTFWrapper.o.d; sourceTree = ""; }; + 15CBA269196EE66F005877BB /* edtaa3func.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = edtaa3func.o; sourceTree = ""; }; + 15CBA26A196EE66F005877BB /* edtaa3func.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = edtaa3func.o.d; sourceTree = ""; }; + 15CBA26C196EE66F005877BB /* tinyxml2.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = tinyxml2.o; sourceTree = ""; }; + 15CBA26D196EE66F005877BB /* tinyxml2.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = tinyxml2.o.d; sourceTree = ""; }; + 15CBA26F196EE66F005877BB /* ioapi.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = ioapi.o; sourceTree = ""; }; + 15CBA270196EE66F005877BB /* ioapi.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = ioapi.o.d; sourceTree = ""; }; + 15CBA271196EE66F005877BB /* unzip.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = unzip.o; sourceTree = ""; }; + 15CBA272196EE66F005877BB /* unzip.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = unzip.o.d; sourceTree = ""; }; + 15CBA274196EE66F005877BB /* xxhash.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = xxhash.o; sourceTree = ""; }; + 15CBA275196EE66F005877BB /* xxhash.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = xxhash.o.d; sourceTree = ""; }; + 15CBA277196EE66F005877BB /* atitc.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = atitc.o; sourceTree = ""; }; + 15CBA278196EE66F005877BB /* atitc.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = atitc.o.d; sourceTree = ""; }; + 15CBA279196EE66F005877BB /* base64.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = base64.o; sourceTree = ""; }; + 15CBA27A196EE66F005877BB /* base64.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = base64.o.d; sourceTree = ""; }; + 15CBA27B196EE66F005877BB /* CCAutoreleasePool.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCAutoreleasePool.o; sourceTree = ""; }; + 15CBA27C196EE66F005877BB /* CCAutoreleasePool.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCAutoreleasePool.o.d; sourceTree = ""; }; + 15CBA27D196EE66F005877BB /* ccCArray.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = ccCArray.o; sourceTree = ""; }; + 15CBA27E196EE66F005877BB /* ccCArray.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = ccCArray.o.d; sourceTree = ""; }; + 15CBA27F196EE66F005877BB /* CCConfiguration.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCConfiguration.o; sourceTree = ""; }; + 15CBA280196EE66F005877BB /* CCConfiguration.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCConfiguration.o.d; sourceTree = ""; }; + 15CBA281196EE66F005877BB /* CCConsole.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCConsole.o; sourceTree = ""; }; + 15CBA282196EE66F005877BB /* CCConsole.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCConsole.o.d; sourceTree = ""; }; + 15CBA283196EE66F005877BB /* CCController-android.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = "CCController-android.o"; sourceTree = ""; }; + 15CBA284196EE66F005877BB /* CCController-android.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = "CCController-android.o.d"; sourceTree = ""; }; + 15CBA285196EE66F005877BB /* CCController.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCController.o; sourceTree = ""; }; + 15CBA286196EE66F005877BB /* CCController.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCController.o.d; sourceTree = ""; }; + 15CBA287196EE66F005877BB /* CCData.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCData.o; sourceTree = ""; }; + 15CBA288196EE66F005877BB /* CCData.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCData.o.d; sourceTree = ""; }; + 15CBA289196EE66F005877BB /* CCDataVisitor.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCDataVisitor.o; sourceTree = ""; }; + 15CBA28A196EE66F005877BB /* CCDataVisitor.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCDataVisitor.o.d; sourceTree = ""; }; + 15CBA28B196EE66F005877BB /* CCDirector.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCDirector.o; sourceTree = ""; }; + 15CBA28C196EE66F005877BB /* CCDirector.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCDirector.o.d; sourceTree = ""; }; + 15CBA28D196EE66F005877BB /* CCEvent.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCEvent.o; sourceTree = ""; }; + 15CBA28E196EE66F005877BB /* CCEvent.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCEvent.o.d; sourceTree = ""; }; + 15CBA28F196EE66F005877BB /* CCEventAcceleration.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCEventAcceleration.o; sourceTree = ""; }; + 15CBA290196EE66F005877BB /* CCEventAcceleration.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCEventAcceleration.o.d; sourceTree = ""; }; + 15CBA291196EE66F005877BB /* CCEventController.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCEventController.o; sourceTree = ""; }; + 15CBA292196EE66F005877BB /* CCEventController.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCEventController.o.d; sourceTree = ""; }; + 15CBA293196EE66F005877BB /* CCEventCustom.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCEventCustom.o; sourceTree = ""; }; + 15CBA294196EE66F005877BB /* CCEventCustom.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCEventCustom.o.d; sourceTree = ""; }; + 15CBA295196EE66F005877BB /* CCEventDispatcher.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCEventDispatcher.o; sourceTree = ""; }; + 15CBA296196EE66F005877BB /* CCEventDispatcher.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCEventDispatcher.o.d; sourceTree = ""; }; + 15CBA297196EE66F005877BB /* CCEventFocus.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCEventFocus.o; sourceTree = ""; }; + 15CBA298196EE66F005877BB /* CCEventFocus.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCEventFocus.o.d; sourceTree = ""; }; + 15CBA299196EE66F005877BB /* CCEventKeyboard.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCEventKeyboard.o; sourceTree = ""; }; + 15CBA29A196EE66F005877BB /* CCEventKeyboard.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCEventKeyboard.o.d; sourceTree = ""; }; + 15CBA29B196EE66F005877BB /* CCEventListener.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCEventListener.o; sourceTree = ""; }; + 15CBA29C196EE66F005877BB /* CCEventListener.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCEventListener.o.d; sourceTree = ""; }; + 15CBA29D196EE66F005877BB /* CCEventListenerAcceleration.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCEventListenerAcceleration.o; sourceTree = ""; }; + 15CBA29E196EE66F005877BB /* CCEventListenerAcceleration.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCEventListenerAcceleration.o.d; sourceTree = ""; }; + 15CBA29F196EE66F005877BB /* CCEventListenerController.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCEventListenerController.o; sourceTree = ""; }; + 15CBA2A0196EE66F005877BB /* CCEventListenerController.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCEventListenerController.o.d; sourceTree = ""; }; + 15CBA2A1196EE66F005877BB /* CCEventListenerCustom.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCEventListenerCustom.o; sourceTree = ""; }; + 15CBA2A2196EE66F005877BB /* CCEventListenerCustom.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCEventListenerCustom.o.d; sourceTree = ""; }; + 15CBA2A3196EE66F005877BB /* CCEventListenerFocus.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCEventListenerFocus.o; sourceTree = ""; }; + 15CBA2A4196EE66F005877BB /* CCEventListenerFocus.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCEventListenerFocus.o.d; sourceTree = ""; }; + 15CBA2A5196EE66F005877BB /* CCEventListenerKeyboard.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCEventListenerKeyboard.o; sourceTree = ""; }; + 15CBA2A6196EE66F005877BB /* CCEventListenerKeyboard.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCEventListenerKeyboard.o.d; sourceTree = ""; }; + 15CBA2A7196EE66F005877BB /* CCEventListenerMouse.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCEventListenerMouse.o; sourceTree = ""; }; + 15CBA2A8196EE66F005877BB /* CCEventListenerMouse.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCEventListenerMouse.o.d; sourceTree = ""; }; + 15CBA2A9196EE66F005877BB /* CCEventListenerTouch.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCEventListenerTouch.o; sourceTree = ""; }; + 15CBA2AA196EE66F005877BB /* CCEventListenerTouch.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCEventListenerTouch.o.d; sourceTree = ""; }; + 15CBA2AB196EE66F005877BB /* CCEventMouse.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCEventMouse.o; sourceTree = ""; }; + 15CBA2AC196EE66F005877BB /* CCEventMouse.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCEventMouse.o.d; sourceTree = ""; }; + 15CBA2AD196EE66F005877BB /* CCEventTouch.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCEventTouch.o; sourceTree = ""; }; + 15CBA2AE196EE66F005877BB /* CCEventTouch.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCEventTouch.o.d; sourceTree = ""; }; + 15CBA2AF196EE66F005877BB /* ccFPSImages.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = ccFPSImages.o; sourceTree = ""; }; + 15CBA2B0196EE66F005877BB /* ccFPSImages.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = ccFPSImages.o.d; sourceTree = ""; }; + 15CBA2B1196EE66F005877BB /* CCIMEDispatcher.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCIMEDispatcher.o; sourceTree = ""; }; + 15CBA2B2196EE66F005877BB /* CCIMEDispatcher.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCIMEDispatcher.o.d; sourceTree = ""; }; + 15CBA2B3196EE66F005877BB /* CCNS.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCNS.o; sourceTree = ""; }; + 15CBA2B4196EE66F005877BB /* CCNS.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCNS.o.d; sourceTree = ""; }; + 15CBA2B5196EE66F005877BB /* CCProfiling.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCProfiling.o; sourceTree = ""; }; + 15CBA2B6196EE66F005877BB /* CCProfiling.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCProfiling.o.d; sourceTree = ""; }; + 15CBA2B7196EE66F005877BB /* CCRef.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCRef.o; sourceTree = ""; }; + 15CBA2B8196EE66F005877BB /* CCRef.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCRef.o.d; sourceTree = ""; }; + 15CBA2B9196EE66F005877BB /* CCScheduler.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCScheduler.o; sourceTree = ""; }; + 15CBA2BA196EE66F005877BB /* CCScheduler.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCScheduler.o.d; sourceTree = ""; }; + 15CBA2BB196EE66F005877BB /* CCScriptSupport.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCScriptSupport.o; sourceTree = ""; }; + 15CBA2BC196EE66F005877BB /* CCScriptSupport.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCScriptSupport.o.d; sourceTree = ""; }; + 15CBA2BD196EE66F005877BB /* CCTouch.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCTouch.o; sourceTree = ""; }; + 15CBA2BE196EE66F005877BB /* CCTouch.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCTouch.o.d; sourceTree = ""; }; + 15CBA2BF196EE66F005877BB /* ccTypes.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = ccTypes.o; sourceTree = ""; }; + 15CBA2C0196EE66F005877BB /* ccTypes.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = ccTypes.o.d; sourceTree = ""; }; + 15CBA2C1196EE66F005877BB /* CCUserDefault.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCUserDefault.o; sourceTree = ""; }; + 15CBA2C2196EE66F005877BB /* CCUserDefault.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCUserDefault.o.d; sourceTree = ""; }; + 15CBA2C3196EE66F005877BB /* CCUserDefaultAndroid.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCUserDefaultAndroid.o; sourceTree = ""; }; + 15CBA2C4196EE66F005877BB /* CCUserDefaultAndroid.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCUserDefaultAndroid.o.d; sourceTree = ""; }; + 15CBA2C5196EE66F005877BB /* ccUTF8.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = ccUTF8.o; sourceTree = ""; }; + 15CBA2C6196EE66F005877BB /* ccUTF8.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = ccUTF8.o.d; sourceTree = ""; }; + 15CBA2C7196EE66F005877BB /* ccUtils.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = ccUtils.o; sourceTree = ""; }; + 15CBA2C8196EE66F005877BB /* ccUtils.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = ccUtils.o.d; sourceTree = ""; }; + 15CBA2C9196EE66F005877BB /* CCValue.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCValue.o; sourceTree = ""; }; + 15CBA2CA196EE66F005877BB /* CCValue.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCValue.o.d; sourceTree = ""; }; + 15CBA2CB196EE66F005877BB /* etc1.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = etc1.o; sourceTree = ""; }; + 15CBA2CC196EE66F005877BB /* etc1.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = etc1.o.d; sourceTree = ""; }; + 15CBA2CD196EE66F005877BB /* ObjectFactory.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = ObjectFactory.o; sourceTree = ""; }; + 15CBA2CE196EE66F005877BB /* ObjectFactory.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = ObjectFactory.o.d; sourceTree = ""; }; + 15CBA2CF196EE66F005877BB /* s3tc.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = s3tc.o; sourceTree = ""; }; + 15CBA2D0196EE66F005877BB /* s3tc.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = s3tc.o.d; sourceTree = ""; }; + 15CBA2D1196EE66F005877BB /* TGAlib.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = TGAlib.o; sourceTree = ""; }; + 15CBA2D2196EE66F005877BB /* TGAlib.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = TGAlib.o.d; sourceTree = ""; }; + 15CBA2D3196EE66F005877BB /* ZipUtils.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = ZipUtils.o; sourceTree = ""; }; + 15CBA2D4196EE66F005877BB /* ZipUtils.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = ZipUtils.o.d; sourceTree = ""; }; + 15CBA2D5196EE66F005877BB /* cocos2d.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cocos2d.o; sourceTree = ""; }; + 15CBA2D6196EE66F005877BB /* cocos2d.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cocos2d.o.d; sourceTree = ""; }; + 15CBA2D8196EE66F005877BB /* CCArray.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCArray.o; sourceTree = ""; }; + 15CBA2D9196EE66F005877BB /* CCArray.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCArray.o.d; sourceTree = ""; }; + 15CBA2DA196EE66F005877BB /* CCDeprecated.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCDeprecated.o; sourceTree = ""; }; + 15CBA2DB196EE66F005877BB /* CCDeprecated.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCDeprecated.o.d; sourceTree = ""; }; + 15CBA2DC196EE66F005877BB /* CCDictionary.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCDictionary.o; sourceTree = ""; }; + 15CBA2DD196EE66F005877BB /* CCDictionary.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCDictionary.o.d; sourceTree = ""; }; + 15CBA2DE196EE66F005877BB /* CCNotificationCenter.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCNotificationCenter.o; sourceTree = ""; }; + 15CBA2DF196EE66F005877BB /* CCNotificationCenter.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCNotificationCenter.o.d; sourceTree = ""; }; + 15CBA2E0196EE66F005877BB /* CCSet.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCSet.o; sourceTree = ""; }; + 15CBA2E1196EE66F005877BB /* CCSet.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCSet.o.d; sourceTree = ""; }; + 15CBA2E2196EE66F005877BB /* CCString.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCString.o; sourceTree = ""; }; + 15CBA2E3196EE66F005877BB /* CCString.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCString.o.d; sourceTree = ""; }; + 15CBA2E5196EE66F005877BB /* CCAffineTransform.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCAffineTransform.o; sourceTree = ""; }; + 15CBA2E6196EE66F005877BB /* CCAffineTransform.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCAffineTransform.o.d; sourceTree = ""; }; + 15CBA2E7196EE66F005877BB /* CCGeometry.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCGeometry.o; sourceTree = ""; }; + 15CBA2E8196EE66F005877BB /* CCGeometry.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCGeometry.o.d; sourceTree = ""; }; + 15CBA2E9196EE66F005877BB /* CCVertex.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCVertex.o; sourceTree = ""; }; + 15CBA2EA196EE66F005877BB /* CCVertex.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCVertex.o.d; sourceTree = ""; }; + 15CBA2EB196EE66F005877BB /* Mat4.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = Mat4.o; sourceTree = ""; }; + 15CBA2EC196EE66F005877BB /* Mat4.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = Mat4.o.d; sourceTree = ""; }; + 15CBA2ED196EE66F005877BB /* MathUtil.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = MathUtil.o; sourceTree = ""; }; + 15CBA2EE196EE66F005877BB /* MathUtil.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = MathUtil.o.d; sourceTree = ""; }; + 15CBA2EF196EE66F005877BB /* Quaternion.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = Quaternion.o; sourceTree = ""; }; + 15CBA2F0196EE66F005877BB /* Quaternion.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = Quaternion.o.d; sourceTree = ""; }; + 15CBA2F1196EE66F005877BB /* TransformUtils.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = TransformUtils.o; sourceTree = ""; }; + 15CBA2F2196EE66F005877BB /* TransformUtils.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = TransformUtils.o.d; sourceTree = ""; }; + 15CBA2F3196EE66F005877BB /* Vec2.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = Vec2.o; sourceTree = ""; }; + 15CBA2F4196EE66F005877BB /* Vec2.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = Vec2.o.d; sourceTree = ""; }; + 15CBA2F5196EE66F005877BB /* Vec3.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = Vec3.o; sourceTree = ""; }; + 15CBA2F6196EE66F005877BB /* Vec3.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = Vec3.o.d; sourceTree = ""; }; + 15CBA2F7196EE66F005877BB /* Vec4.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = Vec4.o; sourceTree = ""; }; + 15CBA2F8196EE66F005877BB /* Vec4.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = Vec4.o.d; sourceTree = ""; }; + 15CBA2FA196EE66F005877BB /* CCPhysicsBody.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCPhysicsBody.o; sourceTree = ""; }; + 15CBA2FB196EE66F005877BB /* CCPhysicsBody.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCPhysicsBody.o.d; sourceTree = ""; }; + 15CBA2FC196EE66F005877BB /* CCPhysicsContact.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCPhysicsContact.o; sourceTree = ""; }; + 15CBA2FD196EE66F005877BB /* CCPhysicsContact.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCPhysicsContact.o.d; sourceTree = ""; }; + 15CBA2FE196EE66F005877BB /* CCPhysicsJoint.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCPhysicsJoint.o; sourceTree = ""; }; + 15CBA2FF196EE66F005877BB /* CCPhysicsJoint.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCPhysicsJoint.o.d; sourceTree = ""; }; + 15CBA300196EE66F005877BB /* CCPhysicsShape.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCPhysicsShape.o; sourceTree = ""; }; + 15CBA301196EE66F005877BB /* CCPhysicsShape.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCPhysicsShape.o.d; sourceTree = ""; }; + 15CBA302196EE66F005877BB /* CCPhysicsWorld.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCPhysicsWorld.o; sourceTree = ""; }; + 15CBA303196EE66F005877BB /* CCPhysicsWorld.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCPhysicsWorld.o.d; sourceTree = ""; }; + 15CBA305196EE66F005877BB /* CCPhysicsBodyInfo_chipmunk.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCPhysicsBodyInfo_chipmunk.o; sourceTree = ""; }; + 15CBA306196EE66F005877BB /* CCPhysicsBodyInfo_chipmunk.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCPhysicsBodyInfo_chipmunk.o.d; sourceTree = ""; }; + 15CBA307196EE66F005877BB /* CCPhysicsContactInfo_chipmunk.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCPhysicsContactInfo_chipmunk.o; sourceTree = ""; }; + 15CBA308196EE66F005877BB /* CCPhysicsContactInfo_chipmunk.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCPhysicsContactInfo_chipmunk.o.d; sourceTree = ""; }; + 15CBA309196EE66F005877BB /* CCPhysicsJointInfo_chipmunk.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCPhysicsJointInfo_chipmunk.o; sourceTree = ""; }; + 15CBA30A196EE66F005877BB /* CCPhysicsJointInfo_chipmunk.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCPhysicsJointInfo_chipmunk.o.d; sourceTree = ""; }; + 15CBA30B196EE66F005877BB /* CCPhysicsShapeInfo_chipmunk.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCPhysicsShapeInfo_chipmunk.o; sourceTree = ""; }; + 15CBA30C196EE66F005877BB /* CCPhysicsShapeInfo_chipmunk.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCPhysicsShapeInfo_chipmunk.o.d; sourceTree = ""; }; + 15CBA30D196EE66F005877BB /* CCPhysicsWorldInfo_chipmunk.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCPhysicsWorldInfo_chipmunk.o; sourceTree = ""; }; + 15CBA30E196EE66F005877BB /* CCPhysicsWorldInfo_chipmunk.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCPhysicsWorldInfo_chipmunk.o.d; sourceTree = ""; }; + 15CBA310196EE66F005877BB /* CCFileUtils.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCFileUtils.o; sourceTree = ""; }; + 15CBA311196EE66F005877BB /* CCFileUtils.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCFileUtils.o.d; sourceTree = ""; }; + 15CBA312196EE66F005877BB /* CCGLViewProtocol.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCGLViewProtocol.o; sourceTree = ""; }; + 15CBA313196EE66F005877BB /* CCGLViewProtocol.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCGLViewProtocol.o.d; sourceTree = ""; }; + 15CBA314196EE66F005877BB /* CCImage.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCImage.o; sourceTree = ""; }; + 15CBA315196EE66F005877BB /* CCImage.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCImage.o.d; sourceTree = ""; }; + 15CBA316196EE66F005877BB /* CCSAXParser.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCSAXParser.o; sourceTree = ""; }; + 15CBA317196EE66F005877BB /* CCSAXParser.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCSAXParser.o.d; sourceTree = ""; }; + 15CBA318196EE66F005877BB /* CCThread.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCThread.o; sourceTree = ""; }; + 15CBA319196EE66F005877BB /* CCThread.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCThread.o.d; sourceTree = ""; }; + 15CBA31B196EE66F005877BB /* CCBatchCommand.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCBatchCommand.o; sourceTree = ""; }; + 15CBA31C196EE66F005877BB /* CCBatchCommand.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCBatchCommand.o.d; sourceTree = ""; }; + 15CBA31D196EE66F005877BB /* CCCustomCommand.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCCustomCommand.o; sourceTree = ""; }; + 15CBA31E196EE66F005877BB /* CCCustomCommand.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCCustomCommand.o.d; sourceTree = ""; }; + 15CBA31F196EE66F005877BB /* CCGLProgram.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCGLProgram.o; sourceTree = ""; }; + 15CBA320196EE66F005877BB /* CCGLProgram.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCGLProgram.o.d; sourceTree = ""; }; + 15CBA321196EE66F005877BB /* CCGLProgramCache.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCGLProgramCache.o; sourceTree = ""; }; + 15CBA322196EE66F005877BB /* CCGLProgramCache.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCGLProgramCache.o.d; sourceTree = ""; }; + 15CBA323196EE66F005877BB /* CCGLProgramState.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCGLProgramState.o; sourceTree = ""; }; + 15CBA324196EE66F005877BB /* CCGLProgramState.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCGLProgramState.o.d; sourceTree = ""; }; + 15CBA325196EE66F005877BB /* CCGLProgramStateCache.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCGLProgramStateCache.o; sourceTree = ""; }; + 15CBA326196EE66F005877BB /* CCGLProgramStateCache.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCGLProgramStateCache.o.d; sourceTree = ""; }; + 15CBA327196EE66F005877BB /* ccGLStateCache.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = ccGLStateCache.o; sourceTree = ""; }; + 15CBA328196EE66F005877BB /* ccGLStateCache.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = ccGLStateCache.o.d; sourceTree = ""; }; + 15CBA329196EE66F005877BB /* CCGroupCommand.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCGroupCommand.o; sourceTree = ""; }; + 15CBA32A196EE66F005877BB /* CCGroupCommand.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCGroupCommand.o.d; sourceTree = ""; }; + 15CBA32B196EE66F005877BB /* CCMeshCommand.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCMeshCommand.o; sourceTree = ""; }; + 15CBA32C196EE66F005877BB /* CCMeshCommand.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCMeshCommand.o.d; sourceTree = ""; }; + 15CBA32D196EE66F005877BB /* CCQuadCommand.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCQuadCommand.o; sourceTree = ""; }; + 15CBA32E196EE66F005877BB /* CCQuadCommand.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCQuadCommand.o.d; sourceTree = ""; }; + 15CBA32F196EE66F005877BB /* CCRenderCommand.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCRenderCommand.o; sourceTree = ""; }; + 15CBA330196EE66F005877BB /* CCRenderCommand.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCRenderCommand.o.d; sourceTree = ""; }; + 15CBA331196EE66F005877BB /* CCRenderer.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCRenderer.o; sourceTree = ""; }; + 15CBA332196EE66F005877BB /* CCRenderer.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCRenderer.o.d; sourceTree = ""; }; + 15CBA333196EE66F005877BB /* ccShaders.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = ccShaders.o; sourceTree = ""; }; + 15CBA334196EE66F005877BB /* ccShaders.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = ccShaders.o.d; sourceTree = ""; }; + 15CBA335196EE66F005877BB /* CCTexture2D.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCTexture2D.o; sourceTree = ""; }; + 15CBA336196EE66F005877BB /* CCTexture2D.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCTexture2D.o.d; sourceTree = ""; }; + 15CBA337196EE66F005877BB /* CCTextureAtlas.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCTextureAtlas.o; sourceTree = ""; }; + 15CBA338196EE66F005877BB /* CCTextureAtlas.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCTextureAtlas.o.d; sourceTree = ""; }; + 15CBA339196EE66F005877BB /* CCTextureCache.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCTextureCache.o; sourceTree = ""; }; + 15CBA33A196EE66F005877BB /* CCTextureCache.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCTextureCache.o.d; sourceTree = ""; }; + 15CBA33C196EE66F005877BB /* CCApplication.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCApplication.o; sourceTree = ""; }; + 15CBA33D196EE66F005877BB /* CCApplication.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCApplication.o.d; sourceTree = ""; }; + 15CBA33E196EE66F005877BB /* CCCommon.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCCommon.o; sourceTree = ""; }; + 15CBA33F196EE66F005877BB /* CCCommon.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCCommon.o.d; sourceTree = ""; }; + 15CBA340196EE66F005877BB /* CCDevice.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCDevice.o; sourceTree = ""; }; + 15CBA341196EE66F005877BB /* CCDevice.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCDevice.o.d; sourceTree = ""; }; + 15CBA342196EE66F005877BB /* CCFileUtilsAndroid.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCFileUtilsAndroid.o; sourceTree = ""; }; + 15CBA343196EE66F005877BB /* CCFileUtilsAndroid.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCFileUtilsAndroid.o.d; sourceTree = ""; }; + 15CBA344196EE66F005877BB /* CCGLView.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCGLView.o; sourceTree = ""; }; + 15CBA345196EE66F005877BB /* CCGLView.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCGLView.o.d; sourceTree = ""; }; + 15CBA346196EE66F005877BB /* javaactivity.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = javaactivity.o; sourceTree = ""; }; + 15CBA347196EE66F005877BB /* javaactivity.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = javaactivity.o.d; sourceTree = ""; }; + 15CBA349196EE66F005877BB /* DPIJni.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = DPIJni.o; sourceTree = ""; }; + 15CBA34A196EE66F005877BB /* DPIJni.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = DPIJni.o.d; sourceTree = ""; }; + 15CBA34B196EE66F005877BB /* IMEJni.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = IMEJni.o; sourceTree = ""; }; + 15CBA34C196EE66F005877BB /* IMEJni.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = IMEJni.o.d; sourceTree = ""; }; + 15CBA34D196EE66F005877BB /* Java_org_cocos2dx_lib_Cocos2dxAccelerometer.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = Java_org_cocos2dx_lib_Cocos2dxAccelerometer.o; sourceTree = ""; }; + 15CBA34E196EE66F005877BB /* Java_org_cocos2dx_lib_Cocos2dxAccelerometer.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = Java_org_cocos2dx_lib_Cocos2dxAccelerometer.o.d; sourceTree = ""; }; + 15CBA34F196EE66F005877BB /* Java_org_cocos2dx_lib_Cocos2dxBitmap.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = Java_org_cocos2dx_lib_Cocos2dxBitmap.o; sourceTree = ""; }; + 15CBA350196EE66F005877BB /* Java_org_cocos2dx_lib_Cocos2dxBitmap.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = Java_org_cocos2dx_lib_Cocos2dxBitmap.o.d; sourceTree = ""; }; + 15CBA351196EE66F005877BB /* Java_org_cocos2dx_lib_Cocos2dxHelper.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = Java_org_cocos2dx_lib_Cocos2dxHelper.o; sourceTree = ""; }; + 15CBA352196EE66F005877BB /* Java_org_cocos2dx_lib_Cocos2dxHelper.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = Java_org_cocos2dx_lib_Cocos2dxHelper.o.d; sourceTree = ""; }; + 15CBA353196EE66F005877BB /* Java_org_cocos2dx_lib_Cocos2dxRenderer.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = Java_org_cocos2dx_lib_Cocos2dxRenderer.o; sourceTree = ""; }; + 15CBA354196EE66F005877BB /* Java_org_cocos2dx_lib_Cocos2dxRenderer.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = Java_org_cocos2dx_lib_Cocos2dxRenderer.o.d; sourceTree = ""; }; + 15CBA355196EE66F005877BB /* JniHelper.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = JniHelper.o; sourceTree = ""; }; + 15CBA356196EE66F005877BB /* JniHelper.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = JniHelper.o.d; sourceTree = ""; }; + 15CBA357196EE66F005877BB /* TouchesJni.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = TouchesJni.o; sourceTree = ""; }; + 15CBA358196EE66F005877BB /* TouchesJni.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = TouchesJni.o.d; sourceTree = ""; }; + 15CBA35B196EE66F005877BB /* AssetsManager.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = AssetsManager.o; sourceTree = ""; }; + 15CBA35C196EE66F005877BB /* AssetsManager.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = AssetsManager.o.d; sourceTree = ""; }; + 15CBA35F196EE66F005877BB /* CCControl.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCControl.o; sourceTree = ""; }; + 15CBA360196EE66F005877BB /* CCControl.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCControl.o.d; sourceTree = ""; }; + 15CBA361196EE66F005877BB /* CCControlButton.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCControlButton.o; sourceTree = ""; }; + 15CBA362196EE66F005877BB /* CCControlButton.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCControlButton.o.d; sourceTree = ""; }; + 15CBA363196EE66F005877BB /* CCControlColourPicker.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCControlColourPicker.o; sourceTree = ""; }; + 15CBA364196EE66F005877BB /* CCControlColourPicker.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCControlColourPicker.o.d; sourceTree = ""; }; + 15CBA365196EE66F005877BB /* CCControlHuePicker.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCControlHuePicker.o; sourceTree = ""; }; + 15CBA366196EE66F005877BB /* CCControlHuePicker.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCControlHuePicker.o.d; sourceTree = ""; }; + 15CBA367196EE66F005877BB /* CCControlPotentiometer.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCControlPotentiometer.o; sourceTree = ""; }; + 15CBA368196EE66F005877BB /* CCControlPotentiometer.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCControlPotentiometer.o.d; sourceTree = ""; }; + 15CBA369196EE66F005877BB /* CCControlSaturationBrightnessPicker.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCControlSaturationBrightnessPicker.o; sourceTree = ""; }; + 15CBA36A196EE66F005877BB /* CCControlSaturationBrightnessPicker.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCControlSaturationBrightnessPicker.o.d; sourceTree = ""; }; + 15CBA36B196EE66F005877BB /* CCControlSlider.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCControlSlider.o; sourceTree = ""; }; + 15CBA36C196EE66F005877BB /* CCControlSlider.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCControlSlider.o.d; sourceTree = ""; }; + 15CBA36D196EE66F005877BB /* CCControlStepper.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCControlStepper.o; sourceTree = ""; }; + 15CBA36E196EE66F005877BB /* CCControlStepper.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCControlStepper.o.d; sourceTree = ""; }; + 15CBA36F196EE66F005877BB /* CCControlSwitch.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCControlSwitch.o; sourceTree = ""; }; + 15CBA370196EE66F005877BB /* CCControlSwitch.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCControlSwitch.o.d; sourceTree = ""; }; + 15CBA371196EE66F005877BB /* CCControlUtils.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCControlUtils.o; sourceTree = ""; }; + 15CBA372196EE66F005877BB /* CCControlUtils.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCControlUtils.o.d; sourceTree = ""; }; + 15CBA373196EE66F005877BB /* CCInvocation.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCInvocation.o; sourceTree = ""; }; + 15CBA374196EE66F005877BB /* CCInvocation.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCInvocation.o.d; sourceTree = ""; }; + 15CBA375196EE66F005877BB /* CCScale9Sprite.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCScale9Sprite.o; sourceTree = ""; }; + 15CBA376196EE66F005877BB /* CCScale9Sprite.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCScale9Sprite.o.d; sourceTree = ""; }; + 15CBA378196EE66F005877BB /* CCEditBox.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCEditBox.o; sourceTree = ""; }; + 15CBA379196EE66F005877BB /* CCEditBox.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCEditBox.o.d; sourceTree = ""; }; + 15CBA37A196EE66F005877BB /* CCEditBoxImplAndroid.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCEditBoxImplAndroid.o; sourceTree = ""; }; + 15CBA37B196EE66F005877BB /* CCEditBoxImplAndroid.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCEditBoxImplAndroid.o.d; sourceTree = ""; }; + 15CBA37C196EE66F005877BB /* CCEditBoxImplNone.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCEditBoxImplNone.o; sourceTree = ""; }; + 15CBA37D196EE66F005877BB /* CCEditBoxImplNone.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCEditBoxImplNone.o.d; sourceTree = ""; }; + 15CBA37E196EE66F005877BB /* CCEditBoxImplWin.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCEditBoxImplWin.o; sourceTree = ""; }; + 15CBA37F196EE66F005877BB /* CCEditBoxImplWin.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCEditBoxImplWin.o.d; sourceTree = ""; }; + 15CBA381196EE66F005877BB /* CCScrollView.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCScrollView.o; sourceTree = ""; }; + 15CBA382196EE66F005877BB /* CCScrollView.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCScrollView.o.d; sourceTree = ""; }; + 15CBA383196EE66F005877BB /* CCTableView.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCTableView.o; sourceTree = ""; }; + 15CBA384196EE66F005877BB /* CCTableView.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCTableView.o.d; sourceTree = ""; }; + 15CBA385196EE66F005877BB /* CCTableViewCell.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCTableViewCell.o; sourceTree = ""; }; + 15CBA386196EE66F005877BB /* CCTableViewCell.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCTableViewCell.o.d; sourceTree = ""; }; + 15CBA388196EE66F005877BB /* CCPhysicsDebugNode.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCPhysicsDebugNode.o; sourceTree = ""; }; + 15CBA389196EE66F005877BB /* CCPhysicsDebugNode.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCPhysicsDebugNode.o.d; sourceTree = ""; }; + 15CBA38A196EE66F005877BB /* CCPhysicsSprite.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCPhysicsSprite.o; sourceTree = ""; }; + 15CBA38B196EE66F005877BB /* CCPhysicsSprite.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCPhysicsSprite.o.d; sourceTree = ""; }; + 15CBA393196EE66F005877BB /* auxiliar.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = auxiliar.o; sourceTree = ""; }; + 15CBA394196EE670005877BB /* auxiliar.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = auxiliar.o.d; sourceTree = ""; }; + 15CBA395196EE670005877BB /* buffer.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = buffer.o; sourceTree = ""; }; + 15CBA396196EE670005877BB /* buffer.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = buffer.o.d; sourceTree = ""; }; + 15CBA397196EE670005877BB /* except.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = except.o; sourceTree = ""; }; + 15CBA398196EE670005877BB /* except.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = except.o.d; sourceTree = ""; }; + 15CBA399196EE670005877BB /* inet.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = inet.o; sourceTree = ""; }; + 15CBA39A196EE670005877BB /* inet.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = inet.o.d; sourceTree = ""; }; + 15CBA39B196EE670005877BB /* io.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = io.o; sourceTree = ""; }; + 15CBA39C196EE670005877BB /* io.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = io.o.d; sourceTree = ""; }; + 15CBA39D196EE670005877BB /* luasocket.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = luasocket.o; sourceTree = ""; }; + 15CBA39E196EE670005877BB /* luasocket.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = luasocket.o.d; sourceTree = ""; }; + 15CBA39F196EE670005877BB /* mime.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = mime.o; sourceTree = ""; }; + 15CBA3A0196EE670005877BB /* mime.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = mime.o.d; sourceTree = ""; }; + 15CBA3A1196EE670005877BB /* options.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = options.o; sourceTree = ""; }; + 15CBA3A2196EE670005877BB /* options.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = options.o.d; sourceTree = ""; }; + 15CBA3A3196EE670005877BB /* select.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = select.o; sourceTree = ""; }; + 15CBA3A4196EE670005877BB /* select.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = select.o.d; sourceTree = ""; }; + 15CBA3A5196EE670005877BB /* serial.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = serial.o; sourceTree = ""; }; + 15CBA3A6196EE670005877BB /* serial.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = serial.o.d; sourceTree = ""; }; + 15CBA3A7196EE670005877BB /* tcp.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = tcp.o; sourceTree = ""; }; + 15CBA3A8196EE670005877BB /* tcp.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = tcp.o.d; sourceTree = ""; }; + 15CBA3A9196EE670005877BB /* timeout.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = timeout.o; sourceTree = ""; }; + 15CBA3AA196EE670005877BB /* timeout.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = timeout.o.d; sourceTree = ""; }; + 15CBA3AB196EE670005877BB /* udp.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = udp.o; sourceTree = ""; }; + 15CBA3AC196EE670005877BB /* udp.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = udp.o.d; sourceTree = ""; }; + 15CBA3AD196EE670005877BB /* unix.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = unix.o; sourceTree = ""; }; + 15CBA3AE196EE670005877BB /* unix.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = unix.o.d; sourceTree = ""; }; + 15CBA3AF196EE670005877BB /* usocket.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = usocket.o; sourceTree = ""; }; + 15CBA3B0196EE670005877BB /* usocket.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = usocket.o.d; sourceTree = ""; }; + 15CBA3B2196EE670005877BB /* tolua_event.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = tolua_event.o; sourceTree = ""; }; + 15CBA3B3196EE670005877BB /* tolua_event.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = tolua_event.o.d; sourceTree = ""; }; + 15CBA3B4196EE670005877BB /* tolua_is.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = tolua_is.o; sourceTree = ""; }; + 15CBA3B5196EE670005877BB /* tolua_is.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = tolua_is.o.d; sourceTree = ""; }; + 15CBA3B6196EE670005877BB /* tolua_map.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = tolua_map.o; sourceTree = ""; }; + 15CBA3B7196EE670005877BB /* tolua_map.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = tolua_map.o.d; sourceTree = ""; }; + 15CBA3B8196EE670005877BB /* tolua_push.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = tolua_push.o; sourceTree = ""; }; + 15CBA3B9196EE670005877BB /* tolua_push.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = tolua_push.o.d; sourceTree = ""; }; + 15CBA3BA196EE670005877BB /* tolua_to.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = tolua_to.o; sourceTree = ""; }; + 15CBA3BB196EE670005877BB /* tolua_to.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = tolua_to.o.d; sourceTree = ""; }; + 15CBA3BD196EE670005877BB /* xxtea.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = xxtea.o; sourceTree = ""; }; + 15CBA3BE196EE670005877BB /* xxtea.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = xxtea.o.d; sourceTree = ""; }; + 15CBA3C0196EE670005877BB /* lua_cocos2dx_auto.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = lua_cocos2dx_auto.o; sourceTree = ""; }; + 15CBA3C1196EE670005877BB /* lua_cocos2dx_auto.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = lua_cocos2dx_auto.o.d; sourceTree = ""; }; + 15CBA3C2196EE670005877BB /* lua_cocos2dx_controller_auto.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = lua_cocos2dx_controller_auto.o; sourceTree = ""; }; + 15CBA3C3196EE670005877BB /* lua_cocos2dx_controller_auto.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = lua_cocos2dx_controller_auto.o.d; sourceTree = ""; }; + 15CBA3C4196EE670005877BB /* lua_cocos2dx_extension_auto.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = lua_cocos2dx_extension_auto.o; sourceTree = ""; }; + 15CBA3C5196EE670005877BB /* lua_cocos2dx_extension_auto.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = lua_cocos2dx_extension_auto.o.d; sourceTree = ""; }; + 15CBA3C6196EE670005877BB /* lua_cocos2dx_physics_auto.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = lua_cocos2dx_physics_auto.o; sourceTree = ""; }; + 15CBA3C7196EE670005877BB /* lua_cocos2dx_physics_auto.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = lua_cocos2dx_physics_auto.o.d; sourceTree = ""; }; + 15CBA3C8196EE670005877BB /* lua_cocos2dx_spine_auto.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = lua_cocos2dx_spine_auto.o; sourceTree = ""; }; + 15CBA3C9196EE670005877BB /* lua_cocos2dx_spine_auto.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = lua_cocos2dx_spine_auto.o.d; sourceTree = ""; }; + 15CBA3CA196EE670005877BB /* lua_cocos2dx_studio_auto.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = lua_cocos2dx_studio_auto.o; sourceTree = ""; }; + 15CBA3CB196EE670005877BB /* lua_cocos2dx_studio_auto.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = lua_cocos2dx_studio_auto.o.d; sourceTree = ""; }; + 15CBA3CC196EE670005877BB /* lua_cocos2dx_ui_auto.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = lua_cocos2dx_ui_auto.o; sourceTree = ""; }; + 15CBA3CD196EE670005877BB /* lua_cocos2dx_ui_auto.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = lua_cocos2dx_ui_auto.o.d; sourceTree = ""; }; + 15CBA3CF196EE670005877BB /* CCBProxy.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCBProxy.o; sourceTree = ""; }; + 15CBA3D0196EE670005877BB /* CCBProxy.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCBProxy.o.d; sourceTree = ""; }; + 15CBA3D1196EE670005877BB /* CCLuaBridge.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCLuaBridge.o; sourceTree = ""; }; + 15CBA3D2196EE670005877BB /* CCLuaBridge.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCLuaBridge.o.d; sourceTree = ""; }; + 15CBA3D3196EE670005877BB /* CCLuaEngine.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCLuaEngine.o; sourceTree = ""; }; + 15CBA3D4196EE670005877BB /* CCLuaEngine.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCLuaEngine.o.d; sourceTree = ""; }; + 15CBA3D5196EE670005877BB /* CCLuaStack.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCLuaStack.o; sourceTree = ""; }; + 15CBA3D6196EE670005877BB /* CCLuaStack.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCLuaStack.o.d; sourceTree = ""; }; + 15CBA3D7196EE670005877BB /* CCLuaValue.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCLuaValue.o; sourceTree = ""; }; + 15CBA3D8196EE670005877BB /* CCLuaValue.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCLuaValue.o.d; sourceTree = ""; }; + 15CBA3D9196EE670005877BB /* Cocos2dxLuaLoader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = Cocos2dxLuaLoader.o; sourceTree = ""; }; + 15CBA3DA196EE670005877BB /* Cocos2dxLuaLoader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = Cocos2dxLuaLoader.o.d; sourceTree = ""; }; + 15CBA3DB196EE670005877BB /* lua_cocos2dx_coco_studio_manual.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = lua_cocos2dx_coco_studio_manual.o; sourceTree = ""; }; + 15CBA3DC196EE670005877BB /* lua_cocos2dx_coco_studio_manual.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = lua_cocos2dx_coco_studio_manual.o.d; sourceTree = ""; }; + 15CBA3DD196EE670005877BB /* lua_cocos2dx_controller_manual.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = lua_cocos2dx_controller_manual.o; sourceTree = ""; }; + 15CBA3DE196EE670005877BB /* lua_cocos2dx_controller_manual.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = lua_cocos2dx_controller_manual.o.d; sourceTree = ""; }; + 15CBA3DF196EE670005877BB /* lua_cocos2dx_deprecated.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = lua_cocos2dx_deprecated.o; sourceTree = ""; }; + 15CBA3E0196EE670005877BB /* lua_cocos2dx_deprecated.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = lua_cocos2dx_deprecated.o.d; sourceTree = ""; }; + 15CBA3E1196EE670005877BB /* lua_cocos2dx_extension_manual.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = lua_cocos2dx_extension_manual.o; sourceTree = ""; }; + 15CBA3E2196EE670005877BB /* lua_cocos2dx_extension_manual.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = lua_cocos2dx_extension_manual.o.d; sourceTree = ""; }; + 15CBA3E3196EE670005877BB /* lua_cocos2dx_manual.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = lua_cocos2dx_manual.o; sourceTree = ""; }; + 15CBA3E4196EE670005877BB /* lua_cocos2dx_manual.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = lua_cocos2dx_manual.o.d; sourceTree = ""; }; + 15CBA3E5196EE670005877BB /* lua_cocos2dx_physics_manual.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = lua_cocos2dx_physics_manual.o; sourceTree = ""; }; + 15CBA3E6196EE670005877BB /* lua_cocos2dx_physics_manual.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = lua_cocos2dx_physics_manual.o.d; sourceTree = ""; }; + 15CBA3E7196EE670005877BB /* lua_cocos2dx_spine_manual.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = lua_cocos2dx_spine_manual.o; sourceTree = ""; }; + 15CBA3E8196EE670005877BB /* lua_cocos2dx_spine_manual.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = lua_cocos2dx_spine_manual.o.d; sourceTree = ""; }; + 15CBA3E9196EE670005877BB /* lua_cocos2dx_ui_manual.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = lua_cocos2dx_ui_manual.o; sourceTree = ""; }; + 15CBA3EA196EE670005877BB /* lua_cocos2dx_ui_manual.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = lua_cocos2dx_ui_manual.o.d; sourceTree = ""; }; + 15CBA3EB196EE670005877BB /* lua_debugger.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = lua_debugger.o; sourceTree = ""; }; + 15CBA3EC196EE670005877BB /* lua_debugger.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = lua_debugger.o.d; sourceTree = ""; }; + 15CBA3ED196EE670005877BB /* lua_extensions.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = lua_extensions.o; sourceTree = ""; }; + 15CBA3EE196EE670005877BB /* lua_extensions.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = lua_extensions.o.d; sourceTree = ""; }; + 15CBA3EF196EE670005877BB /* Lua_web_socket.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = Lua_web_socket.o; sourceTree = ""; }; + 15CBA3F0196EE670005877BB /* Lua_web_socket.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = Lua_web_socket.o.d; sourceTree = ""; }; + 15CBA3F1196EE670005877BB /* lua_xml_http_request.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = lua_xml_http_request.o; sourceTree = ""; }; + 15CBA3F2196EE670005877BB /* lua_xml_http_request.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = lua_xml_http_request.o.d; sourceTree = ""; }; + 15CBA3F3196EE670005877BB /* LuaBasicConversions.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = LuaBasicConversions.o; sourceTree = ""; }; + 15CBA3F4196EE670005877BB /* LuaBasicConversions.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = LuaBasicConversions.o.d; sourceTree = ""; }; + 15CBA3F5196EE670005877BB /* LuaOpengl.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = LuaOpengl.o; sourceTree = ""; }; + 15CBA3F6196EE670005877BB /* LuaOpengl.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = LuaOpengl.o.d; sourceTree = ""; }; + 15CBA3F7196EE670005877BB /* LuaScriptHandlerMgr.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = LuaScriptHandlerMgr.o; sourceTree = ""; }; + 15CBA3F8196EE670005877BB /* LuaScriptHandlerMgr.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = LuaScriptHandlerMgr.o.d; sourceTree = ""; }; + 15CBA3F9196EE670005877BB /* LuaSkeletonAnimation.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = LuaSkeletonAnimation.o; sourceTree = ""; }; + 15CBA3FA196EE670005877BB /* LuaSkeletonAnimation.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = LuaSkeletonAnimation.o.d; sourceTree = ""; }; + 15CBA3FD196EE670005877BB /* CCLuaJavaBridge.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCLuaJavaBridge.o; sourceTree = ""; }; + 15CBA3FE196EE670005877BB /* CCLuaJavaBridge.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCLuaJavaBridge.o.d; sourceTree = ""; }; + 15CBA400196EE670005877BB /* Java_org_cocos2dx_lib_Cocos2dxLuaJavaBridge.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = Java_org_cocos2dx_lib_Cocos2dxLuaJavaBridge.o; sourceTree = ""; }; + 15CBA401196EE670005877BB /* Java_org_cocos2dx_lib_Cocos2dxLuaJavaBridge.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = Java_org_cocos2dx_lib_Cocos2dxLuaJavaBridge.o.d; sourceTree = ""; }; + 15CBA402196EE670005877BB /* tolua_fix.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = tolua_fix.o; sourceTree = ""; }; + 15CBA403196EE670005877BB /* tolua_fix.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = tolua_fix.o.d; sourceTree = ""; }; + 15CBA405196EE670005877BB /* HttpClient.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = HttpClient.o; sourceTree = ""; }; + 15CBA406196EE670005877BB /* HttpClient.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = HttpClient.o.d; sourceTree = ""; }; + 15CBA407196EE670005877BB /* SocketIO.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = SocketIO.o; sourceTree = ""; }; + 15CBA408196EE670005877BB /* SocketIO.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = SocketIO.o.d; sourceTree = ""; }; + 15CBA409196EE670005877BB /* WebSocket.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = WebSocket.o; sourceTree = ""; }; + 15CBA40A196EE670005877BB /* WebSocket.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = WebSocket.o.d; sourceTree = ""; }; + 15CBA40C196EE670005877BB /* CCProtectedNode.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCProtectedNode.o; sourceTree = ""; }; + 15CBA40D196EE670005877BB /* CCProtectedNode.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCProtectedNode.o.d; sourceTree = ""; }; + 15CBA40E196EE670005877BB /* CocosGUI.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CocosGUI.o; sourceTree = ""; }; + 15CBA40F196EE670005877BB /* CocosGUI.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CocosGUI.o.d; sourceTree = ""; }; + 15CBA410196EE670005877BB /* UIButton.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = UIButton.o; sourceTree = ""; }; + 15CBA411196EE670005877BB /* UIButton.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = UIButton.o.d; sourceTree = ""; }; + 15CBA412196EE670005877BB /* UICheckBox.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = UICheckBox.o; sourceTree = ""; }; + 15CBA413196EE670005877BB /* UICheckBox.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = UICheckBox.o.d; sourceTree = ""; }; + 15CBA414196EE670005877BB /* UIDeprecated.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = UIDeprecated.o; sourceTree = ""; }; + 15CBA415196EE670005877BB /* UIDeprecated.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = UIDeprecated.o.d; sourceTree = ""; }; + 15CBA416196EE670005877BB /* UIHBox.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = UIHBox.o; sourceTree = ""; }; + 15CBA417196EE670005877BB /* UIHBox.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = UIHBox.o.d; sourceTree = ""; }; + 15CBA418196EE670005877BB /* UIHelper.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = UIHelper.o; sourceTree = ""; }; + 15CBA419196EE670005877BB /* UIHelper.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = UIHelper.o.d; sourceTree = ""; }; + 15CBA41A196EE670005877BB /* UIImageView.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = UIImageView.o; sourceTree = ""; }; + 15CBA41B196EE670005877BB /* UIImageView.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = UIImageView.o.d; sourceTree = ""; }; + 15CBA41C196EE670005877BB /* UILayout.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = UILayout.o; sourceTree = ""; }; + 15CBA41D196EE670005877BB /* UILayout.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = UILayout.o.d; sourceTree = ""; }; + 15CBA41E196EE670005877BB /* UILayoutManager.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = UILayoutManager.o; sourceTree = ""; }; + 15CBA41F196EE670005877BB /* UILayoutManager.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = UILayoutManager.o.d; sourceTree = ""; }; + 15CBA420196EE670005877BB /* UILayoutParameter.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = UILayoutParameter.o; sourceTree = ""; }; + 15CBA421196EE670005877BB /* UILayoutParameter.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = UILayoutParameter.o.d; sourceTree = ""; }; + 15CBA422196EE670005877BB /* UIListView.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = UIListView.o; sourceTree = ""; }; + 15CBA423196EE670005877BB /* UIListView.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = UIListView.o.d; sourceTree = ""; }; + 15CBA424196EE670005877BB /* UILoadingBar.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = UILoadingBar.o; sourceTree = ""; }; + 15CBA425196EE670005877BB /* UILoadingBar.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = UILoadingBar.o.d; sourceTree = ""; }; + 15CBA426196EE670005877BB /* UIPageView.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = UIPageView.o; sourceTree = ""; }; + 15CBA427196EE670005877BB /* UIPageView.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = UIPageView.o.d; sourceTree = ""; }; + 15CBA428196EE670005877BB /* UIRelativeBox.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = UIRelativeBox.o; sourceTree = ""; }; + 15CBA429196EE670005877BB /* UIRelativeBox.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = UIRelativeBox.o.d; sourceTree = ""; }; + 15CBA42A196EE670005877BB /* UIRichText.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = UIRichText.o; sourceTree = ""; }; + 15CBA42B196EE670005877BB /* UIRichText.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = UIRichText.o.d; sourceTree = ""; }; + 15CBA42C196EE670005877BB /* UIScrollView.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = UIScrollView.o; sourceTree = ""; }; + 15CBA42D196EE670005877BB /* UIScrollView.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = UIScrollView.o.d; sourceTree = ""; }; + 15CBA42E196EE670005877BB /* UISlider.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = UISlider.o; sourceTree = ""; }; + 15CBA42F196EE670005877BB /* UISlider.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = UISlider.o.d; sourceTree = ""; }; + 15CBA430196EE670005877BB /* UIText.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = UIText.o; sourceTree = ""; }; + 15CBA431196EE670005877BB /* UIText.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = UIText.o.d; sourceTree = ""; }; + 15CBA432196EE670005877BB /* UITextAtlas.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = UITextAtlas.o; sourceTree = ""; }; + 15CBA433196EE670005877BB /* UITextAtlas.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = UITextAtlas.o.d; sourceTree = ""; }; + 15CBA434196EE670005877BB /* UITextBMFont.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = UITextBMFont.o; sourceTree = ""; }; + 15CBA435196EE670005877BB /* UITextBMFont.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = UITextBMFont.o.d; sourceTree = ""; }; + 15CBA436196EE670005877BB /* UITextField.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = UITextField.o; sourceTree = ""; }; + 15CBA437196EE670005877BB /* UITextField.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = UITextField.o.d; sourceTree = ""; }; + 15CBA438196EE670005877BB /* UIVBox.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = UIVBox.o; sourceTree = ""; }; + 15CBA439196EE670005877BB /* UIVBox.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = UIVBox.o.d; sourceTree = ""; }; + 15CBA43A196EE670005877BB /* UIVideoPlayerAndroid.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = UIVideoPlayerAndroid.o; sourceTree = ""; }; + 15CBA43B196EE670005877BB /* UIVideoPlayerAndroid.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = UIVideoPlayerAndroid.o.d; sourceTree = ""; }; + 15CBA43C196EE670005877BB /* UIWidget.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = UIWidget.o; sourceTree = ""; }; + 15CBA43D196EE670005877BB /* UIWidget.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = UIWidget.o.d; sourceTree = ""; }; + 15CBA43F196EE670005877BB /* CCBAnimationManager.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCBAnimationManager.o; sourceTree = ""; }; + 15CBA440196EE670005877BB /* CCBAnimationManager.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCBAnimationManager.o.d; sourceTree = ""; }; + 15CBA441196EE670005877BB /* CCBFileLoader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCBFileLoader.o; sourceTree = ""; }; + 15CBA442196EE670005877BB /* CCBFileLoader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCBFileLoader.o.d; sourceTree = ""; }; + 15CBA443196EE670005877BB /* CCBKeyframe.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCBKeyframe.o; sourceTree = ""; }; + 15CBA444196EE670005877BB /* CCBKeyframe.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCBKeyframe.o.d; sourceTree = ""; }; + 15CBA445196EE670005877BB /* CCBReader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCBReader.o; sourceTree = ""; }; + 15CBA446196EE670005877BB /* CCBReader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCBReader.o.d; sourceTree = ""; }; + 15CBA447196EE670005877BB /* CCBSequence.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCBSequence.o; sourceTree = ""; }; + 15CBA448196EE670005877BB /* CCBSequence.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCBSequence.o.d; sourceTree = ""; }; + 15CBA449196EE670005877BB /* CCBSequenceProperty.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCBSequenceProperty.o; sourceTree = ""; }; + 15CBA44A196EE670005877BB /* CCBSequenceProperty.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCBSequenceProperty.o.d; sourceTree = ""; }; + 15CBA44B196EE670005877BB /* CCControlButtonLoader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCControlButtonLoader.o; sourceTree = ""; }; + 15CBA44C196EE670005877BB /* CCControlButtonLoader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCControlButtonLoader.o.d; sourceTree = ""; }; + 15CBA44D196EE670005877BB /* CCControlLoader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCControlLoader.o; sourceTree = ""; }; + 15CBA44E196EE670005877BB /* CCControlLoader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCControlLoader.o.d; sourceTree = ""; }; + 15CBA44F196EE670005877BB /* CCLabelBMFontLoader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCLabelBMFontLoader.o; sourceTree = ""; }; + 15CBA450196EE670005877BB /* CCLabelBMFontLoader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCLabelBMFontLoader.o.d; sourceTree = ""; }; + 15CBA451196EE670005877BB /* CCLabelTTFLoader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCLabelTTFLoader.o; sourceTree = ""; }; + 15CBA452196EE670005877BB /* CCLabelTTFLoader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCLabelTTFLoader.o.d; sourceTree = ""; }; + 15CBA453196EE670005877BB /* CCLayerColorLoader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCLayerColorLoader.o; sourceTree = ""; }; + 15CBA454196EE670005877BB /* CCLayerColorLoader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCLayerColorLoader.o.d; sourceTree = ""; }; + 15CBA455196EE670005877BB /* CCLayerGradientLoader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCLayerGradientLoader.o; sourceTree = ""; }; + 15CBA456196EE670005877BB /* CCLayerGradientLoader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCLayerGradientLoader.o.d; sourceTree = ""; }; + 15CBA457196EE670005877BB /* CCLayerLoader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCLayerLoader.o; sourceTree = ""; }; + 15CBA458196EE670005877BB /* CCLayerLoader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCLayerLoader.o.d; sourceTree = ""; }; + 15CBA459196EE670005877BB /* CCMenuItemImageLoader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCMenuItemImageLoader.o; sourceTree = ""; }; + 15CBA45A196EE670005877BB /* CCMenuItemImageLoader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCMenuItemImageLoader.o.d; sourceTree = ""; }; + 15CBA45B196EE670005877BB /* CCMenuItemLoader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCMenuItemLoader.o; sourceTree = ""; }; + 15CBA45C196EE670005877BB /* CCMenuItemLoader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCMenuItemLoader.o.d; sourceTree = ""; }; + 15CBA45D196EE670005877BB /* CCNode+CCBRelativePositioning.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = "CCNode+CCBRelativePositioning.o"; sourceTree = ""; }; + 15CBA45E196EE670005877BB /* CCNode+CCBRelativePositioning.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = "CCNode+CCBRelativePositioning.o.d"; sourceTree = ""; }; + 15CBA45F196EE670005877BB /* CCNodeLoader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCNodeLoader.o; sourceTree = ""; }; + 15CBA460196EE670005877BB /* CCNodeLoader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCNodeLoader.o.d; sourceTree = ""; }; + 15CBA461196EE670005877BB /* CCNodeLoaderLibrary.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCNodeLoaderLibrary.o; sourceTree = ""; }; + 15CBA462196EE670005877BB /* CCNodeLoaderLibrary.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCNodeLoaderLibrary.o.d; sourceTree = ""; }; + 15CBA463196EE670005877BB /* CCParticleSystemQuadLoader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCParticleSystemQuadLoader.o; sourceTree = ""; }; + 15CBA464196EE670005877BB /* CCParticleSystemQuadLoader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCParticleSystemQuadLoader.o.d; sourceTree = ""; }; + 15CBA465196EE670005877BB /* CCScale9SpriteLoader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCScale9SpriteLoader.o; sourceTree = ""; }; + 15CBA466196EE670005877BB /* CCScale9SpriteLoader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCScale9SpriteLoader.o.d; sourceTree = ""; }; + 15CBA467196EE670005877BB /* CCScrollViewLoader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCScrollViewLoader.o; sourceTree = ""; }; + 15CBA468196EE670005877BB /* CCScrollViewLoader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCScrollViewLoader.o.d; sourceTree = ""; }; + 15CBA469196EE670005877BB /* CCSpriteLoader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCSpriteLoader.o; sourceTree = ""; }; + 15CBA46A196EE670005877BB /* CCSpriteLoader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCSpriteLoader.o.d; sourceTree = ""; }; + 15CBA46C196EE670005877BB /* ccdandroidUtils.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = ccdandroidUtils.o; sourceTree = ""; }; + 15CBA46D196EE670005877BB /* ccdandroidUtils.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = ccdandroidUtils.o.d; sourceTree = ""; }; + 15CBA46E196EE670005877BB /* cddSimpleAudioEngine.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cddSimpleAudioEngine.o; sourceTree = ""; }; + 15CBA46F196EE670005877BB /* cddSimpleAudioEngine.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cddSimpleAudioEngine.o.d; sourceTree = ""; }; + 15CBA471196EE670005877BB /* cddandroidAndroidJavaEngine.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = cddandroidAndroidJavaEngine.o; sourceTree = ""; }; + 15CBA472196EE670005877BB /* cddandroidAndroidJavaEngine.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = cddandroidAndroidJavaEngine.o.d; sourceTree = ""; }; + 15CBA475196EE670005877BB /* CCActionTimeline.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCActionTimeline.o; sourceTree = ""; }; + 15CBA476196EE670005877BB /* CCActionTimeline.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCActionTimeline.o.d; sourceTree = ""; }; + 15CBA477196EE670005877BB /* CCActionTimelineCache.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCActionTimelineCache.o; sourceTree = ""; }; + 15CBA478196EE670005877BB /* CCActionTimelineCache.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCActionTimelineCache.o.d; sourceTree = ""; }; + 15CBA479196EE670005877BB /* CCFrame.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCFrame.o; sourceTree = ""; }; + 15CBA47A196EE670005877BB /* CCFrame.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCFrame.o.d; sourceTree = ""; }; + 15CBA47B196EE670005877BB /* CCNodeReader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCNodeReader.o; sourceTree = ""; }; + 15CBA47C196EE670005877BB /* CCNodeReader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCNodeReader.o.d; sourceTree = ""; }; + 15CBA47D196EE670005877BB /* CCTimeLine.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCTimeLine.o; sourceTree = ""; }; + 15CBA47E196EE670005877BB /* CCTimeLine.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCTimeLine.o.d; sourceTree = ""; }; + 15CBA47F196EE670005877BB /* CCActionFrame.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCActionFrame.o; sourceTree = ""; }; + 15CBA480196EE670005877BB /* CCActionFrame.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCActionFrame.o.d; sourceTree = ""; }; + 15CBA481196EE670005877BB /* CCActionFrameEasing.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCActionFrameEasing.o; sourceTree = ""; }; + 15CBA482196EE670005877BB /* CCActionFrameEasing.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCActionFrameEasing.o.d; sourceTree = ""; }; + 15CBA483196EE670005877BB /* CCActionManagerEx.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCActionManagerEx.o; sourceTree = ""; }; + 15CBA484196EE670005877BB /* CCActionManagerEx.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCActionManagerEx.o.d; sourceTree = ""; }; + 15CBA485196EE670005877BB /* CCActionNode.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCActionNode.o; sourceTree = ""; }; + 15CBA486196EE670005877BB /* CCActionNode.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCActionNode.o.d; sourceTree = ""; }; + 15CBA487196EE670005877BB /* CCActionObject.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCActionObject.o; sourceTree = ""; }; + 15CBA488196EE670005877BB /* CCActionObject.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCActionObject.o.d; sourceTree = ""; }; + 15CBA489196EE670005877BB /* CCArmature.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCArmature.o; sourceTree = ""; }; + 15CBA48A196EE670005877BB /* CCArmature.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCArmature.o.d; sourceTree = ""; }; + 15CBA48B196EE670005877BB /* CCArmatureAnimation.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCArmatureAnimation.o; sourceTree = ""; }; + 15CBA48C196EE670005877BB /* CCArmatureAnimation.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCArmatureAnimation.o.d; sourceTree = ""; }; + 15CBA48D196EE670005877BB /* CCArmatureDataManager.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCArmatureDataManager.o; sourceTree = ""; }; + 15CBA48E196EE670005877BB /* CCArmatureDataManager.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCArmatureDataManager.o.d; sourceTree = ""; }; + 15CBA48F196EE670005877BB /* CCArmatureDefine.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCArmatureDefine.o; sourceTree = ""; }; + 15CBA490196EE670005877BB /* CCArmatureDefine.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCArmatureDefine.o.d; sourceTree = ""; }; + 15CBA491196EE670005877BB /* CCBatchNode.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCBatchNode.o; sourceTree = ""; }; + 15CBA492196EE670005877BB /* CCBatchNode.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCBatchNode.o.d; sourceTree = ""; }; + 15CBA493196EE670005877BB /* CCBone.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCBone.o; sourceTree = ""; }; + 15CBA494196EE670005877BB /* CCBone.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCBone.o.d; sourceTree = ""; }; + 15CBA495196EE670005877BB /* CCColliderDetector.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCColliderDetector.o; sourceTree = ""; }; + 15CBA496196EE670005877BB /* CCColliderDetector.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCColliderDetector.o.d; sourceTree = ""; }; + 15CBA497196EE670005877BB /* CCComAttribute.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCComAttribute.o; sourceTree = ""; }; + 15CBA498196EE670005877BB /* CCComAttribute.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCComAttribute.o.d; sourceTree = ""; }; + 15CBA499196EE670005877BB /* CCComAudio.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCComAudio.o; sourceTree = ""; }; + 15CBA49A196EE670005877BB /* CCComAudio.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCComAudio.o.d; sourceTree = ""; }; + 15CBA49B196EE670005877BB /* CCComController.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCComController.o; sourceTree = ""; }; + 15CBA49C196EE670005877BB /* CCComController.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCComController.o.d; sourceTree = ""; }; + 15CBA49D196EE670005877BB /* CCComRender.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCComRender.o; sourceTree = ""; }; + 15CBA49E196EE670005877BB /* CCComRender.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCComRender.o.d; sourceTree = ""; }; + 15CBA49F196EE670005877BB /* CCDataReaderHelper.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCDataReaderHelper.o; sourceTree = ""; }; + 15CBA4A0196EE670005877BB /* CCDataReaderHelper.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCDataReaderHelper.o.d; sourceTree = ""; }; + 15CBA4A1196EE670005877BB /* CCDatas.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCDatas.o; sourceTree = ""; }; + 15CBA4A2196EE670005877BB /* CCDatas.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCDatas.o.d; sourceTree = ""; }; + 15CBA4A3196EE670005877BB /* CCDecorativeDisplay.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCDecorativeDisplay.o; sourceTree = ""; }; + 15CBA4A4196EE670005877BB /* CCDecorativeDisplay.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCDecorativeDisplay.o.d; sourceTree = ""; }; + 15CBA4A5196EE670005877BB /* CCDisplayFactory.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCDisplayFactory.o; sourceTree = ""; }; + 15CBA4A6196EE670005877BB /* CCDisplayFactory.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCDisplayFactory.o.d; sourceTree = ""; }; + 15CBA4A7196EE670005877BB /* CCDisplayManager.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCDisplayManager.o; sourceTree = ""; }; + 15CBA4A8196EE670005877BB /* CCDisplayManager.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCDisplayManager.o.d; sourceTree = ""; }; + 15CBA4A9196EE670005877BB /* CCInputDelegate.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCInputDelegate.o; sourceTree = ""; }; + 15CBA4AA196EE670005877BB /* CCInputDelegate.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCInputDelegate.o.d; sourceTree = ""; }; + 15CBA4AB196EE670005877BB /* CCProcessBase.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCProcessBase.o; sourceTree = ""; }; + 15CBA4AC196EE670005877BB /* CCProcessBase.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCProcessBase.o.d; sourceTree = ""; }; + 15CBA4AD196EE670005877BB /* CCSGUIReader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCSGUIReader.o; sourceTree = ""; }; + 15CBA4AE196EE670005877BB /* CCSGUIReader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCSGUIReader.o.d; sourceTree = ""; }; + 15CBA4AF196EE670005877BB /* CCSkin.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCSkin.o; sourceTree = ""; }; + 15CBA4B0196EE670005877BB /* CCSkin.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCSkin.o.d; sourceTree = ""; }; + 15CBA4B1196EE671005877BB /* CCSpriteFrameCacheHelper.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCSpriteFrameCacheHelper.o; sourceTree = ""; }; + 15CBA4B2196EE671005877BB /* CCSpriteFrameCacheHelper.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCSpriteFrameCacheHelper.o.d; sourceTree = ""; }; + 15CBA4B3196EE671005877BB /* CCSSceneReader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCSSceneReader.o; sourceTree = ""; }; + 15CBA4B4196EE671005877BB /* CCSSceneReader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCSSceneReader.o.d; sourceTree = ""; }; + 15CBA4B5196EE671005877BB /* CCTransformHelp.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCTransformHelp.o; sourceTree = ""; }; + 15CBA4B6196EE671005877BB /* CCTransformHelp.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCTransformHelp.o.d; sourceTree = ""; }; + 15CBA4B7196EE671005877BB /* CCTween.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCTween.o; sourceTree = ""; }; + 15CBA4B8196EE671005877BB /* CCTween.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCTween.o.d; sourceTree = ""; }; + 15CBA4B9196EE671005877BB /* CCUtilMath.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCUtilMath.o; sourceTree = ""; }; + 15CBA4BA196EE671005877BB /* CCUtilMath.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCUtilMath.o.d; sourceTree = ""; }; + 15CBA4BB196EE671005877BB /* CocoLoader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CocoLoader.o; sourceTree = ""; }; + 15CBA4BC196EE671005877BB /* CocoLoader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CocoLoader.o.d; sourceTree = ""; }; + 15CBA4BD196EE671005877BB /* DictionaryHelper.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = DictionaryHelper.o; sourceTree = ""; }; + 15CBA4BE196EE671005877BB /* DictionaryHelper.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = DictionaryHelper.o.d; sourceTree = ""; }; + 15CBA4BF196EE671005877BB /* TriggerBase.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = TriggerBase.o; sourceTree = ""; }; + 15CBA4C0196EE671005877BB /* TriggerBase.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = TriggerBase.o.d; sourceTree = ""; }; + 15CBA4C1196EE671005877BB /* TriggerMng.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = TriggerMng.o; sourceTree = ""; }; + 15CBA4C2196EE671005877BB /* TriggerMng.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = TriggerMng.o.d; sourceTree = ""; }; + 15CBA4C3196EE671005877BB /* TriggerObj.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = TriggerObj.o; sourceTree = ""; }; + 15CBA4C4196EE671005877BB /* TriggerObj.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = TriggerObj.o.d; sourceTree = ""; }; + 15CBA4C7196EE671005877BB /* ButtonReader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = ButtonReader.o; sourceTree = ""; }; + 15CBA4C8196EE671005877BB /* ButtonReader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = ButtonReader.o.d; sourceTree = ""; }; + 15CBA4CA196EE671005877BB /* CheckBoxReader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CheckBoxReader.o; sourceTree = ""; }; + 15CBA4CB196EE671005877BB /* CheckBoxReader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CheckBoxReader.o.d; sourceTree = ""; }; + 15CBA4CD196EE671005877BB /* ImageViewReader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = ImageViewReader.o; sourceTree = ""; }; + 15CBA4CE196EE671005877BB /* ImageViewReader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = ImageViewReader.o.d; sourceTree = ""; }; + 15CBA4D0196EE671005877BB /* LayoutReader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = LayoutReader.o; sourceTree = ""; }; + 15CBA4D1196EE671005877BB /* LayoutReader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = LayoutReader.o.d; sourceTree = ""; }; + 15CBA4D3196EE671005877BB /* ListViewReader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = ListViewReader.o; sourceTree = ""; }; + 15CBA4D4196EE671005877BB /* ListViewReader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = ListViewReader.o.d; sourceTree = ""; }; + 15CBA4D6196EE671005877BB /* LoadingBarReader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = LoadingBarReader.o; sourceTree = ""; }; + 15CBA4D7196EE671005877BB /* LoadingBarReader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = LoadingBarReader.o.d; sourceTree = ""; }; + 15CBA4D9196EE671005877BB /* PageViewReader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = PageViewReader.o; sourceTree = ""; }; + 15CBA4DA196EE671005877BB /* PageViewReader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = PageViewReader.o.d; sourceTree = ""; }; + 15CBA4DC196EE671005877BB /* ScrollViewReader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = ScrollViewReader.o; sourceTree = ""; }; + 15CBA4DD196EE671005877BB /* ScrollViewReader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = ScrollViewReader.o.d; sourceTree = ""; }; + 15CBA4DF196EE671005877BB /* SliderReader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = SliderReader.o; sourceTree = ""; }; + 15CBA4E0196EE671005877BB /* SliderReader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = SliderReader.o.d; sourceTree = ""; }; + 15CBA4E2196EE671005877BB /* TextAtlasReader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = TextAtlasReader.o; sourceTree = ""; }; + 15CBA4E3196EE671005877BB /* TextAtlasReader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = TextAtlasReader.o.d; sourceTree = ""; }; + 15CBA4E5196EE671005877BB /* TextBMFontReader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = TextBMFontReader.o; sourceTree = ""; }; + 15CBA4E6196EE671005877BB /* TextBMFontReader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = TextBMFontReader.o.d; sourceTree = ""; }; + 15CBA4E8196EE671005877BB /* TextFieldReader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = TextFieldReader.o; sourceTree = ""; }; + 15CBA4E9196EE671005877BB /* TextFieldReader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = TextFieldReader.o.d; sourceTree = ""; }; + 15CBA4EB196EE671005877BB /* TextReader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = TextReader.o; sourceTree = ""; }; + 15CBA4EC196EE671005877BB /* TextReader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = TextReader.o.d; sourceTree = ""; }; + 15CBA4ED196EE671005877BB /* WidgetReader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = WidgetReader.o; sourceTree = ""; }; + 15CBA4EE196EE671005877BB /* WidgetReader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = WidgetReader.o.d; sourceTree = ""; }; + 15CBA4F0196EE671005877BB /* cpu-features.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = "cpu-features.o"; sourceTree = ""; }; + 15CBA4F1196EE671005877BB /* cpu-features.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = "cpu-features.o.d"; sourceTree = ""; }; + 15CBA4F6196EE671005877BB /* AppDelegate.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = AppDelegate.o; sourceTree = ""; }; + 15CBA4F7196EE671005877BB /* AppDelegate.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = AppDelegate.o.d; sourceTree = ""; }; + 15CBA4F8196EE671005877BB /* main.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = main.o; sourceTree = ""; }; + 15CBA4F9196EE671005877BB /* main.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = main.o.d; sourceTree = ""; }; + 15CBA4FB196EE671005877BB /* Animation.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = Animation.o; sourceTree = ""; }; + 15CBA4FC196EE671005877BB /* Animation.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = Animation.o.d; sourceTree = ""; }; + 15CBA4FD196EE671005877BB /* AnimationState.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = AnimationState.o; sourceTree = ""; }; + 15CBA4FE196EE671005877BB /* AnimationState.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = AnimationState.o.d; sourceTree = ""; }; + 15CBA4FF196EE671005877BB /* AnimationStateData.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = AnimationStateData.o; sourceTree = ""; }; + 15CBA500196EE671005877BB /* AnimationStateData.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = AnimationStateData.o.d; sourceTree = ""; }; + 15CBA501196EE671005877BB /* Atlas.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = Atlas.o; sourceTree = ""; }; + 15CBA502196EE671005877BB /* Atlas.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = Atlas.o.d; sourceTree = ""; }; + 15CBA503196EE671005877BB /* AtlasAttachmentLoader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = AtlasAttachmentLoader.o; sourceTree = ""; }; + 15CBA504196EE671005877BB /* AtlasAttachmentLoader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = AtlasAttachmentLoader.o.d; sourceTree = ""; }; + 15CBA505196EE671005877BB /* Attachment.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = Attachment.o; sourceTree = ""; }; + 15CBA506196EE671005877BB /* Attachment.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = Attachment.o.d; sourceTree = ""; }; + 15CBA507196EE671005877BB /* AttachmentLoader.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = AttachmentLoader.o; sourceTree = ""; }; + 15CBA508196EE671005877BB /* AttachmentLoader.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = AttachmentLoader.o.d; sourceTree = ""; }; + 15CBA509196EE671005877BB /* Bone.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = Bone.o; sourceTree = ""; }; + 15CBA50A196EE671005877BB /* Bone.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = Bone.o.d; sourceTree = ""; }; + 15CBA50B196EE671005877BB /* BoneData.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = BoneData.o; sourceTree = ""; }; + 15CBA50C196EE671005877BB /* BoneData.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = BoneData.o.d; sourceTree = ""; }; + 15CBA50D196EE671005877BB /* BoundingBoxAttachment.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = BoundingBoxAttachment.o; sourceTree = ""; }; + 15CBA50E196EE671005877BB /* BoundingBoxAttachment.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = BoundingBoxAttachment.o.d; sourceTree = ""; }; + 15CBA50F196EE671005877BB /* CCSkeleton.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCSkeleton.o; sourceTree = ""; }; + 15CBA510196EE671005877BB /* CCSkeleton.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCSkeleton.o.d; sourceTree = ""; }; + 15CBA511196EE671005877BB /* CCSkeletonAnimation.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = CCSkeletonAnimation.o; sourceTree = ""; }; + 15CBA512196EE671005877BB /* CCSkeletonAnimation.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = CCSkeletonAnimation.o.d; sourceTree = ""; }; + 15CBA513196EE671005877BB /* Event.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = Event.o; sourceTree = ""; }; + 15CBA514196EE671005877BB /* Event.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = Event.o.d; sourceTree = ""; }; + 15CBA515196EE671005877BB /* EventData.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = EventData.o; sourceTree = ""; }; + 15CBA516196EE671005877BB /* EventData.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = EventData.o.d; sourceTree = ""; }; + 15CBA517196EE671005877BB /* extension.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = extension.o; sourceTree = ""; }; + 15CBA518196EE671005877BB /* extension.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = extension.o.d; sourceTree = ""; }; + 15CBA519196EE671005877BB /* Json.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = Json.o; sourceTree = ""; }; + 15CBA51A196EE671005877BB /* Json.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = Json.o.d; sourceTree = ""; }; + 15CBA51B196EE671005877BB /* RegionAttachment.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = RegionAttachment.o; sourceTree = ""; }; + 15CBA51C196EE671005877BB /* RegionAttachment.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = RegionAttachment.o.d; sourceTree = ""; }; + 15CBA51D196EE671005877BB /* Skeleton.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = Skeleton.o; sourceTree = ""; }; + 15CBA51E196EE671005877BB /* Skeleton.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = Skeleton.o.d; sourceTree = ""; }; + 15CBA51F196EE671005877BB /* SkeletonBounds.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = SkeletonBounds.o; sourceTree = ""; }; + 15CBA520196EE671005877BB /* SkeletonBounds.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = SkeletonBounds.o.d; sourceTree = ""; }; + 15CBA521196EE671005877BB /* SkeletonData.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = SkeletonData.o; sourceTree = ""; }; + 15CBA522196EE671005877BB /* SkeletonData.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = SkeletonData.o.d; sourceTree = ""; }; + 15CBA523196EE671005877BB /* SkeletonJson.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = SkeletonJson.o; sourceTree = ""; }; + 15CBA524196EE671005877BB /* SkeletonJson.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = SkeletonJson.o.d; sourceTree = ""; }; + 15CBA525196EE671005877BB /* Skin.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = Skin.o; sourceTree = ""; }; + 15CBA526196EE671005877BB /* Skin.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = Skin.o.d; sourceTree = ""; }; + 15CBA527196EE671005877BB /* Slot.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = Slot.o; sourceTree = ""; }; + 15CBA528196EE671005877BB /* Slot.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = Slot.o.d; sourceTree = ""; }; + 15CBA529196EE671005877BB /* SlotData.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = SlotData.o; sourceTree = ""; }; + 15CBA52A196EE671005877BB /* SlotData.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = SlotData.o.d; sourceTree = ""; }; + 15CBA52B196EE671005877BB /* spine-cocos2dx.o */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.objfile"; path = "spine-cocos2dx.o"; sourceTree = ""; }; + 15CBA52C196EE671005877BB /* spine-cocos2dx.o.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = "spine-cocos2dx.o.d"; sourceTree = ""; }; + 15CBA52D196EE671005877BB /* proguard-project.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "proguard-project.txt"; sourceTree = ""; }; + 15CBA52E196EE671005877BB /* project.properties */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = project.properties; sourceTree = ""; }; + 15CBA531196EE671005877BB /* icon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = icon.png; sourceTree = ""; }; + 15CBA533196EE671005877BB /* icon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = icon.png; sourceTree = ""; }; + 15CBA535196EE671005877BB /* icon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = icon.png; sourceTree = ""; }; + 15CBA537196EE671005877BB /* strings.xml */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = strings.xml; sourceTree = ""; }; + 15CBA53C196EE671005877BB /* AppActivity.java */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.java; path = AppActivity.java; sourceTree = ""; }; + 15CBA53E196EE671005877BB /* AppController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppController.h; sourceTree = ""; }; + 15CBA53F196EE671005877BB /* AppController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = AppController.mm; sourceTree = ""; }; + 15CBA540196EE671005877BB /* Default-568h@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-568h@2x.png"; sourceTree = ""; }; + 15CBA541196EE671005877BB /* Default.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Default.png; sourceTree = ""; }; + 15CBA542196EE671005877BB /* Default@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default@2x.png"; sourceTree = ""; }; + 15CBA543196EE671005877BB /* HelloLua_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HelloLua_Prefix.pch; sourceTree = ""; }; + 15CBA544196EE671005877BB /* Icon-114.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Icon-114.png"; sourceTree = ""; }; + 15CBA545196EE671005877BB /* Icon-120.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Icon-120.png"; sourceTree = ""; }; + 15CBA546196EE671005877BB /* Icon-144.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Icon-144.png"; sourceTree = ""; }; + 15CBA547196EE671005877BB /* Icon-152.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Icon-152.png"; sourceTree = ""; }; + 15CBA548196EE671005877BB /* Icon-57.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Icon-57.png"; sourceTree = ""; }; + 15CBA549196EE671005877BB /* Icon-72.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Icon-72.png"; sourceTree = ""; }; + 15CBA54A196EE671005877BB /* Icon-76.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Icon-76.png"; sourceTree = ""; }; + 15CBA54B196EE671005877BB /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 15CBA54C196EE671005877BB /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; + 15CBA54D196EE671005877BB /* RootViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RootViewController.h; sourceTree = ""; }; + 15CBA54E196EE671005877BB /* RootViewController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = RootViewController.mm; sourceTree = ""; }; + 15CBA9A4196EE6B1005877BB /* src */ = {isa = PBXFileReference; lastKnownFileType = folder; path = src; sourceTree = ""; }; + 15CBA9A7196EE6DB005877BB /* .gitignore */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = .gitignore; sourceTree = ""; }; + 15CBA9C0196EE943005877BB /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; + 15CBA9C2196EE951005877BB /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/System/Library/Frameworks/AVFoundation.framework; sourceTree = DEVELOPER_DIR; }; + 15CBA9C4196EE962005877BB /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/System/Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; }; + 15CBA9C6196EE971005877BB /* OpenGLES.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGLES.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/System/Library/Frameworks/OpenGLES.framework; sourceTree = DEVELOPER_DIR; }; + 15CBA9C8196EE97F005877BB /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/System/Library/Frameworks/CoreGraphics.framework; sourceTree = DEVELOPER_DIR; }; + 15CBA9D3196EEA33005877BB /* OpenAL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenAL.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/System/Library/Frameworks/OpenAL.framework; sourceTree = DEVELOPER_DIR; }; + 15CBA9D6196EEA63005877BB /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/System/Library/Frameworks/AudioToolbox.framework; sourceTree = DEVELOPER_DIR; }; + 15CBA9D8196EEA7D005877BB /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/System/Library/Frameworks/QuartzCore.framework; sourceTree = DEVELOPER_DIR; }; + 15CBA9DA196EEA90005877BB /* CoreMotion.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreMotion.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/System/Library/Frameworks/CoreMotion.framework; sourceTree = DEVELOPER_DIR; }; + 15CBA9DC196EEAA6005877BB /* libz.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.dylib; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/usr/lib/libz.dylib; sourceTree = DEVELOPER_DIR; }; + 15CBA9EB196F7BD8005877BB /* lua_cocos2dx_controller_auto.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = lua_cocos2dx_controller_auto.cpp; path = "../../../../cocos/scripting/lua-bindings/auto/lua_cocos2dx_controller_auto.cpp"; sourceTree = ""; }; + 15CBA9EC196F7BD8005877BB /* lua_cocos2dx_controller_auto.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = lua_cocos2dx_controller_auto.hpp; path = "../../../../cocos/scripting/lua-bindings/auto/lua_cocos2dx_controller_auto.hpp"; sourceTree = ""; }; + 15CBA9EE196F7BEC005877BB /* lua_cocos2dx_controller_manual.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = lua_cocos2dx_controller_manual.cpp; path = "../../../../cocos/scripting/lua-bindings/manual/lua_cocos2dx_controller_manual.cpp"; sourceTree = ""; }; + 15CBA9EF196F7BEC005877BB /* lua_cocos2dx_controller_manual.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = lua_cocos2dx_controller_manual.hpp; path = "../../../../cocos/scripting/lua-bindings/manual/lua_cocos2dx_controller_manual.hpp"; sourceTree = ""; }; 1A0EE2B218CDF6DA004CD58F /* cpp-empty-test Mac.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "cpp-empty-test Mac.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 1A0EE31418CDF733004CD58F /* lua-empty-test Mac.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "lua-empty-test Mac.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 1A0EE41318CDF775004CD58F /* cpp-empty-test iOS.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "cpp-empty-test iOS.app"; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -1828,14 +3023,14 @@ 1D6058910D05DD3D006BFB54 /* cpp-tests Mac.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "cpp-tests Mac.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 1F33634D18E37E840074764D /* RefPtrTest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RefPtrTest.cpp; sourceTree = ""; }; 1F33634E18E37E840074764D /* RefPtrTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RefPtrTest.h; sourceTree = ""; }; - 29080D1A191B574B0066F8DF /* UITest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = UITest.cpp; path = UITest/UITest.cpp; sourceTree = ""; }; - 29080D1B191B574B0066F8DF /* UITest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = UITest.h; path = UITest/UITest.h; sourceTree = ""; }; + 29080D1A191B574B0066F8DF /* UITest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = UITest.cpp; path = ../UITest.cpp; sourceTree = ""; }; + 29080D1B191B574B0066F8DF /* UITest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = UITest.h; path = ../UITest.h; sourceTree = ""; }; 29080D1F191B595E0066F8DF /* CocosGUIScene.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CocosGUIScene.cpp; sourceTree = ""; }; 29080D20191B595E0066F8DF /* CocosGUIScene.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CocosGUIScene.h; sourceTree = ""; }; 29080D21191B595E0066F8DF /* CocoStudioGUITest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CocoStudioGUITest.cpp; sourceTree = ""; }; 29080D22191B595E0066F8DF /* CocoStudioGUITest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CocoStudioGUITest.h; sourceTree = ""; }; - 29080D23191B595E0066F8DF /* CustomGUIScene.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CustomGUIScene.cpp; sourceTree = ""; }; - 29080D24191B595E0066F8DF /* CustomGUIScene.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CustomGUIScene.h; sourceTree = ""; }; + 29080D23191B595E0066F8DF /* CustomGUIScene.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CustomGUIScene.cpp; path = ../CustomGUIScene.cpp; sourceTree = ""; }; + 29080D24191B595E0066F8DF /* CustomGUIScene.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CustomGUIScene.h; path = ../CustomGUIScene.h; sourceTree = ""; }; 29080D27191B595E0066F8DF /* CustomImageTest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CustomImageTest.cpp; sourceTree = ""; }; 29080D28191B595E0066F8DF /* CustomImageTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CustomImageTest.h; sourceTree = ""; }; 29080D2A191B595E0066F8DF /* CustomParticleWidgetTest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CustomParticleWidgetTest.cpp; sourceTree = ""; }; @@ -1920,6 +3115,10 @@ 29080D8A191B595E0066F8DF /* UIWidgetAddNodeTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UIWidgetAddNodeTest.h; sourceTree = ""; }; 29080D8B191B595E0066F8DF /* UIWidgetAddNodeTest_Editor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = UIWidgetAddNodeTest_Editor.cpp; sourceTree = ""; }; 29080D8C191B595E0066F8DF /* UIWidgetAddNodeTest_Editor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UIWidgetAddNodeTest_Editor.h; sourceTree = ""; }; + 290E94B3196FC16900694919 /* CocostudioParserTest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CocostudioParserTest.cpp; path = ../CocostudioParserTest.cpp; sourceTree = ""; }; + 290E94B4196FC16900694919 /* CocostudioParserTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CocostudioParserTest.h; path = ../CocostudioParserTest.h; sourceTree = ""; }; + 29FBBBFC196A9ECD00E65826 /* CocostudioParserJsonTest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CocostudioParserJsonTest.cpp; sourceTree = ""; }; + 29FBBBFD196A9ECD00E65826 /* CocostudioParserJsonTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CocostudioParserJsonTest.h; sourceTree = ""; }; 38FA2E71194AEBE100FF2BE4 /* ActionTimelineTestScene.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ActionTimelineTestScene.cpp; sourceTree = ""; }; 38FA2E72194AEBE100FF2BE4 /* ActionTimelineTestScene.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActionTimelineTestScene.h; sourceTree = ""; }; 38FA2E75194AECF800FF2BE4 /* ActionTimeline */ = {isa = PBXFileReference; lastKnownFileType = folder; name = ActionTimeline; path = "../tests/cpp-tests/Resources/ActionTimeline"; sourceTree = ""; }; @@ -1983,6 +3182,30 @@ /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ + 15CBA025196EE56C005877BB /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 15CBA9E0196EEBD4005877BB /* MediaPlayer.framework in Frameworks */, + 15CBA9DE196EEAF8005877BB /* GameController.framework in Frameworks */, + 15CBA9DD196EEAA6005877BB /* libz.dylib in Frameworks */, + 15CBA9DB196EEA90005877BB /* CoreMotion.framework in Frameworks */, + 15CBA9D7196EEA63005877BB /* AudioToolbox.framework in Frameworks */, + 15CBA9D4196EEA33005877BB /* OpenAL.framework in Frameworks */, + 15CBA9D9196EEA7D005877BB /* QuartzCore.framework in Frameworks */, + 15CBA9D5196EEA43005877BB /* CoreGraphics.framework in Frameworks */, + 15CBA9D2196EEA33005877BB /* OpenGLES.framework in Frameworks */, + 15CBA9D0196EEA05005877BB /* UIKit.framework in Frameworks */, + 15CBA9CF196EE9FB005877BB /* AVFoundation.framework in Frameworks */, + 15CBA9D1196EEA1D005877BB /* Foundation.framework in Frameworks */, + 15CBA9BB196EE910005877BB /* libchipmunk iOS.a in Frameworks */, + 15CBA9DF196EEBB3005877BB /* libcocos2dx iOS.a in Frameworks */, + 15CBA9BD196EE910005877BB /* libcocos2dx-extensions iOS.a in Frameworks */, + 15CBA9BE196EE910005877BB /* libCocosDenshion iOS.a in Frameworks */, + 15CBA9BF196EE910005877BB /* libluabindings iOS.a in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; 1A0EE29F18CDF6DA004CD58F /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; @@ -2182,6 +3405,2096 @@ /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ + 15CBA087196EE66D005877BB /* lua-game-controller-test */ = { + isa = PBXGroup; + children = ( + 15CBA089196EE66D005877BB /* project */, + 15CBA9A6196EE6DB005877BB /* res */, + 15CBA9A4196EE6B1005877BB /* src */, + ); + name = "lua-game-controller-test"; + path = "../tests/lua-game-controller-test"; + sourceTree = ""; + }; + 15CBA089196EE66D005877BB /* project */ = { + isa = PBXGroup; + children = ( + 15CBA08A196EE66D005877BB /* Classes */, + 15CBA08E196EE66D005877BB /* proj.android */, + 15CBA53D196EE671005877BB /* proj.ios */, + ); + path = project; + sourceTree = ""; + }; + 15CBA08A196EE66D005877BB /* Classes */ = { + isa = PBXGroup; + children = ( + 15CBA9EE196F7BEC005877BB /* lua_cocos2dx_controller_manual.cpp */, + 15CBA9EF196F7BEC005877BB /* lua_cocos2dx_controller_manual.hpp */, + 15CBA9EB196F7BD8005877BB /* lua_cocos2dx_controller_auto.cpp */, + 15CBA9EC196F7BD8005877BB /* lua_cocos2dx_controller_auto.hpp */, + 15CBA08B196EE66D005877BB /* AppDelegate.cpp */, + 15CBA08C196EE66D005877BB /* AppDelegate.h */, + ); + path = Classes; + sourceTree = ""; + }; + 15CBA08E196EE66D005877BB /* proj.android */ = { + isa = PBXGroup; + children = ( + 15CBA08F196EE66D005877BB /* .classpath */, + 15CBA090196EE66D005877BB /* .project */, + 15CBA091196EE66D005877BB /* AndroidManifest.xml */, + 15CBA092196EE66D005877BB /* ant.properties */, + 15CBA093196EE66D005877BB /* assets */, + 15CBA0D8196EE66D005877BB /* bin */, + 15CBA104196EE66E005877BB /* build-cfg.json */, + 15CBA105196EE66E005877BB /* build.xml */, + 15CBA106196EE66E005877BB /* gen */, + 15CBA10F196EE66E005877BB /* jni */, + 15CBA113196EE66E005877BB /* libs */, + 15CBA116196EE66E005877BB /* local.properties */, + 15CBA117196EE66E005877BB /* obj */, + 15CBA52D196EE671005877BB /* proguard-project.txt */, + 15CBA52E196EE671005877BB /* project.properties */, + 15CBA52F196EE671005877BB /* res */, + 15CBA538196EE671005877BB /* src */, + ); + path = proj.android; + sourceTree = ""; + }; + 15CBA093196EE66D005877BB /* assets */ = { + isa = PBXGroup; + children = ( + 15CBA094196EE66D005877BB /* AudioEngine.lua */, + 15CBA095196EE66D005877BB /* CCBReaderLoad.lua */, + 15CBA096196EE66D005877BB /* Cocos2d.lua */, + 15CBA097196EE66D005877BB /* Cocos2dConstants.lua */, + 15CBA098196EE66D005877BB /* CocoStudio.lua */, + 15CBA099196EE66D005877BB /* Deprecated.lua */, + 15CBA09A196EE66D005877BB /* DeprecatedClass.lua */, + 15CBA09B196EE66D005877BB /* DeprecatedEnum.lua */, + 15CBA09C196EE66D005877BB /* DeprecatedOpenglEnum.lua */, + 15CBA09D196EE66D005877BB /* DrawPrimitives.lua */, + 15CBA09E196EE66D005877BB /* extern.lua */, + 15CBA09F196EE66D005877BB /* ftp.lua */, + 15CBA0A0196EE66D005877BB /* GuiConstants.lua */, + 15CBA0A1196EE66D005877BB /* headers.lua */, + 15CBA0A2196EE66D005877BB /* http.lua */, + 15CBA0A3196EE66D005877BB /* json.lua */, + 15CBA0A4196EE66D005877BB /* ltn12.lua */, + 15CBA0A5196EE66D005877BB /* luaj.lua */, + 15CBA0A6196EE66D005877BB /* luaoc.lua */, + 15CBA0A7196EE66D005877BB /* mbox.lua */, + 15CBA0A8196EE66D005877BB /* mime.lua */, + 15CBA0A9196EE66D005877BB /* Opengl.lua */, + 15CBA0AA196EE66D005877BB /* OpenglConstants.lua */, + 15CBA0AB196EE66D005877BB /* res */, + 15CBA0D0196EE66D005877BB /* smtp.lua */, + 15CBA0D1196EE66D005877BB /* socket.lua */, + 15CBA0D2196EE66D005877BB /* src */, + 15CBA0D5196EE66D005877BB /* StudioConstants.lua */, + 15CBA0D6196EE66D005877BB /* tp.lua */, + 15CBA0D7196EE66D005877BB /* url.lua */, + ); + path = assets; + sourceTree = ""; + }; + 15CBA0AB196EE66D005877BB /* res */ = { + isa = PBXGroup; + children = ( + 15CBA0AC196EE66D005877BB /* fonts */, + 15CBA0AE196EE66D005877BB /* ipad */, + 15CBA0BE196EE66D005877BB /* ipadhd */, + 15CBA0CD196EE66D005877BB /* iphone */, + ); + path = res; + sourceTree = ""; + }; + 15CBA0AC196EE66D005877BB /* fonts */ = { + isa = PBXGroup; + children = ( + 15CBA0AD196EE66D005877BB /* Marker Felt.ttf */, + ); + path = fonts; + sourceTree = ""; + }; + 15CBA0AE196EE66D005877BB /* ipad */ = { + isa = PBXGroup; + children = ( + 15CBA0AF196EE66D005877BB /* A.png */, + 15CBA0B0196EE66D005877BB /* B.png */, + 15CBA0B1196EE66D005877BB /* CloseNormal.png */, + 15CBA0B2196EE66D005877BB /* CloseSelected.png */, + 15CBA0B3196EE66D005877BB /* controller-1.png */, + 15CBA0B4196EE66D005877BB /* controller-2.png */, + 15CBA0B5196EE66D005877BB /* dpad-key.png */, + 15CBA0B6196EE66D005877BB /* dPad.png */, + 15CBA0B7196EE66D005877BB /* joystick.png */, + 15CBA0B8196EE66D005877BB /* L1.png */, + 15CBA0B9196EE66D005877BB /* L2.png */, + 15CBA0BA196EE66D005877BB /* R1.png */, + 15CBA0BB196EE66D005877BB /* R2.png */, + 15CBA0BC196EE66D005877BB /* X.png */, + 15CBA0BD196EE66D005877BB /* Y.png */, + ); + path = ipad; + sourceTree = ""; + }; + 15CBA0BE196EE66D005877BB /* ipadhd */ = { + isa = PBXGroup; + children = ( + 15CBA0BF196EE66D005877BB /* A.png */, + 15CBA0C0196EE66D005877BB /* B.png */, + 15CBA0C1196EE66D005877BB /* CloseNormal.png */, + 15CBA0C2196EE66D005877BB /* CloseSelected.png */, + 15CBA0C3196EE66D005877BB /* controller-1.png */, + 15CBA0C4196EE66D005877BB /* controller-2.png */, + 15CBA0C5196EE66D005877BB /* dPad.png */, + 15CBA0C6196EE66D005877BB /* joystick.png */, + 15CBA0C7196EE66D005877BB /* L1.png */, + 15CBA0C8196EE66D005877BB /* L2.png */, + 15CBA0C9196EE66D005877BB /* R1.png */, + 15CBA0CA196EE66D005877BB /* R2.png */, + 15CBA0CB196EE66D005877BB /* X.png */, + 15CBA0CC196EE66D005877BB /* Y.png */, + ); + path = ipadhd; + sourceTree = ""; + }; + 15CBA0CD196EE66D005877BB /* iphone */ = { + isa = PBXGroup; + children = ( + 15CBA0CE196EE66D005877BB /* CloseNormal.png */, + 15CBA0CF196EE66D005877BB /* CloseSelected.png */, + ); + path = iphone; + sourceTree = ""; + }; + 15CBA0D2196EE66D005877BB /* src */ = { + isa = PBXGroup; + children = ( + 15CBA0D3196EE66D005877BB /* GameControllerTest.lua */, + 15CBA0D4196EE66D005877BB /* main.lua */, + ); + path = src; + sourceTree = ""; + }; + 15CBA0D8196EE66D005877BB /* bin */ = { + isa = PBXGroup; + children = ( + 15CBA0D9196EE66D005877BB /* AndroidManifest.xml */, + 15CBA0DA196EE66D005877BB /* AndroidManifest.xml.d */, + 15CBA0DB196EE66D005877BB /* build.prop */, + 15CBA0DC196EE66D005877BB /* classes */, + 15CBA0EB196EE66D005877BB /* classes.dex */, + 15CBA0EC196EE66D005877BB /* classes.dex.d */, + 15CBA0ED196EE66D005877BB /* dexedLibs */, + 15CBA0F3196EE66E005877BB /* jarlist.cache */, + 15CBA0F4196EE66E005877BB /* LuaGameControllerTest-debug-unaligned.apk */, + 15CBA0F5196EE66E005877BB /* LuaGameControllerTest-debug-unaligned.apk.d */, + 15CBA0F6196EE66E005877BB /* LuaGameControllerTest-debug.apk */, + 15CBA0F7196EE66E005877BB /* LuaGameControllerTest.ap_ */, + 15CBA0F8196EE66E005877BB /* LuaGameControllerTest.ap_.d */, + 15CBA0F9196EE66E005877BB /* LuaGameControllerTest.apk */, + 15CBA0FA196EE66E005877BB /* proguard.txt */, + 15CBA0FB196EE66E005877BB /* R.txt */, + 15CBA0FC196EE66E005877BB /* res */, + 15CBA103196EE66E005877BB /* resources.ap_ */, + ); + path = bin; + sourceTree = ""; + }; + 15CBA0DC196EE66D005877BB /* classes */ = { + isa = PBXGroup; + children = ( + 15CBA0DD196EE66D005877BB /* org */, + 15CBA0EA196EE66D005877BB /* R.java.d */, + ); + path = classes; + sourceTree = ""; + }; + 15CBA0DD196EE66D005877BB /* org */ = { + isa = PBXGroup; + children = ( + 15CBA0DE196EE66D005877BB /* cocos2dx */, + ); + path = org; + sourceTree = ""; + }; + 15CBA0DE196EE66D005877BB /* cocos2dx */ = { + isa = PBXGroup; + children = ( + 15CBA0DF196EE66D005877BB /* lib */, + 15CBA0E3196EE66D005877BB /* LuaGameControllerTest */, + ); + path = cocos2dx; + sourceTree = ""; + }; + 15CBA0DF196EE66D005877BB /* lib */ = { + isa = PBXGroup; + children = ( + 15CBA0E0196EE66D005877BB /* R$drawable.class */, + 15CBA0E1196EE66D005877BB /* R$string.class */, + 15CBA0E2196EE66D005877BB /* R.class */, + ); + path = lib; + sourceTree = ""; + }; + 15CBA0E3196EE66D005877BB /* LuaGameControllerTest */ = { + isa = PBXGroup; + children = ( + 15CBA0E4196EE66D005877BB /* AppActivity.class */, + 15CBA0E5196EE66D005877BB /* BuildConfig.class */, + 15CBA0E6196EE66D005877BB /* R$attr.class */, + 15CBA0E7196EE66D005877BB /* R$drawable.class */, + 15CBA0E8196EE66D005877BB /* R$string.class */, + 15CBA0E9196EE66D005877BB /* R.class */, + ); + path = LuaGameControllerTest; + sourceTree = ""; + }; + 15CBA0ED196EE66D005877BB /* dexedLibs */ = { + isa = PBXGroup; + children = ( + 15CBA0EE196EE66D005877BB /* com.bda.controller-2a2221a1ab7454168b1de77b0fcb60b5.jar */, + 15CBA0EF196EE66D005877BB /* libcocos2dx-6607f245d91af6aef71b17fa98444a4b.jar */, + 15CBA0F0196EE66E005877BB /* libcontrollermanualadapter-e17761caab08972308a4bbfa589d7d02.jar */, + 15CBA0F1196EE66E005877BB /* nibiru_lib_2_1_7-67e12061a63fd16ecf47bdef1767938c.jar */, + 15CBA0F2196EE66E005877BB /* ouya-sdk-f5c122a155623a2270a639db2ebe8685.jar */, + ); + path = dexedLibs; + sourceTree = ""; + }; + 15CBA0FC196EE66E005877BB /* res */ = { + isa = PBXGroup; + children = ( + 15CBA0FD196EE66E005877BB /* drawable-hdpi */, + 15CBA0FF196EE66E005877BB /* drawable-ldpi */, + 15CBA101196EE66E005877BB /* drawable-mdpi */, + ); + path = res; + sourceTree = ""; + }; + 15CBA0FD196EE66E005877BB /* drawable-hdpi */ = { + isa = PBXGroup; + children = ( + 15CBA0FE196EE66E005877BB /* icon.png */, + ); + path = "drawable-hdpi"; + sourceTree = ""; + }; + 15CBA0FF196EE66E005877BB /* drawable-ldpi */ = { + isa = PBXGroup; + children = ( + 15CBA100196EE66E005877BB /* icon.png */, + ); + path = "drawable-ldpi"; + sourceTree = ""; + }; + 15CBA101196EE66E005877BB /* drawable-mdpi */ = { + isa = PBXGroup; + children = ( + 15CBA102196EE66E005877BB /* icon.png */, + ); + path = "drawable-mdpi"; + sourceTree = ""; + }; + 15CBA106196EE66E005877BB /* gen */ = { + isa = PBXGroup; + children = ( + 15CBA107196EE66E005877BB /* org */, + 15CBA10E196EE66E005877BB /* R.java.d */, + ); + path = gen; + sourceTree = ""; + }; + 15CBA107196EE66E005877BB /* org */ = { + isa = PBXGroup; + children = ( + 15CBA108196EE66E005877BB /* cocos2dx */, + ); + path = org; + sourceTree = ""; + }; + 15CBA108196EE66E005877BB /* cocos2dx */ = { + isa = PBXGroup; + children = ( + 15CBA109196EE66E005877BB /* lib */, + 15CBA10B196EE66E005877BB /* LuaGameControllerTest */, + ); + path = cocos2dx; + sourceTree = ""; + }; + 15CBA109196EE66E005877BB /* lib */ = { + isa = PBXGroup; + children = ( + 15CBA10A196EE66E005877BB /* R.java */, + ); + path = lib; + sourceTree = ""; + }; + 15CBA10B196EE66E005877BB /* LuaGameControllerTest */ = { + isa = PBXGroup; + children = ( + 15CBA10C196EE66E005877BB /* BuildConfig.java */, + 15CBA10D196EE66E005877BB /* R.java */, + ); + path = LuaGameControllerTest; + sourceTree = ""; + }; + 15CBA10F196EE66E005877BB /* jni */ = { + isa = PBXGroup; + children = ( + 15CBA110196EE66E005877BB /* Android.mk */, + 15CBA111196EE66E005877BB /* Application.mk */, + 15CBA112196EE66E005877BB /* main.cpp */, + ); + path = jni; + sourceTree = ""; + }; + 15CBA113196EE66E005877BB /* libs */ = { + isa = PBXGroup; + children = ( + 15CBA114196EE66E005877BB /* armeabi */, + ); + path = libs; + sourceTree = ""; + }; + 15CBA114196EE66E005877BB /* armeabi */ = { + isa = PBXGroup; + children = ( + 15CBA115196EE66E005877BB /* liblua_game_controller.so */, + ); + path = armeabi; + sourceTree = ""; + }; + 15CBA117196EE66E005877BB /* obj */ = { + isa = PBXGroup; + children = ( + 15CBA118196EE66E005877BB /* local */, + ); + path = obj; + sourceTree = ""; + }; + 15CBA118196EE66E005877BB /* local */ = { + isa = PBXGroup; + children = ( + 15CBA119196EE66E005877BB /* armeabi */, + ); + path = local; + sourceTree = ""; + }; + 15CBA119196EE66E005877BB /* armeabi */ = { + isa = PBXGroup; + children = ( + 15CBA11A196EE66E005877BB /* libbox2d.a */, + 15CBA11B196EE66E005877BB /* libchipmunk.a */, + 15CBA11C196EE66E005877BB /* libcocos2d.a */, + 15CBA11D196EE66E005877BB /* libcocos2dandroid.a */, + 15CBA11E196EE66E005877BB /* libcocosbuilder.a */, + 15CBA11F196EE66E005877BB /* libcocosdenshion.a */, + 15CBA120196EE66E005877BB /* libcocostudio.a */, + 15CBA121196EE66E005877BB /* libcpufeatures.a */, + 15CBA122196EE66E005877BB /* libextension.a */, + 15CBA123196EE66E005877BB /* liblua.a */, + 15CBA124196EE66E005877BB /* liblua_game_controller.so */, + 15CBA125196EE66E005877BB /* libnetwork.a */, + 15CBA126196EE66E005877BB /* libspine.a */, + 15CBA127196EE66E005877BB /* libui.a */, + 15CBA128196EE66E005877BB /* objs-debug */, + ); + path = armeabi; + sourceTree = ""; + }; + 15CBA128196EE66E005877BB /* objs-debug */ = { + isa = PBXGroup; + children = ( + 15CBA129196EE66E005877BB /* box2d_static */, + 15CBA18D196EE66E005877BB /* chipmunk_static */, + 15CBA1CA196EE66E005877BB /* cocos2dx_static */, + 15CBA33B196EE66F005877BB /* cocos2dxandroid_static */, + 15CBA359196EE66F005877BB /* cocos_extension_static */, + 15CBA38C196EE66F005877BB /* cocos_lua_static */, + 15CBA404196EE670005877BB /* cocos_network_static */, + 15CBA40B196EE670005877BB /* cocos_ui_static */, + 15CBA43E196EE670005877BB /* cocosbuilder_static */, + 15CBA46B196EE670005877BB /* cocosdenshion_static */, + 15CBA473196EE670005877BB /* cocostudio_static */, + 15CBA4EF196EE671005877BB /* cpufeatures */, + 15CBA4F2196EE671005877BB /* lua_game_controller_test_shared */, + 15CBA4FA196EE671005877BB /* spine_static */, + ); + path = "objs-debug"; + sourceTree = ""; + }; + 15CBA129196EE66E005877BB /* box2d_static */ = { + isa = PBXGroup; + children = ( + 15CBA12A196EE66E005877BB /* Collision */, + 15CBA144196EE66E005877BB /* Common */, + 15CBA151196EE66E005877BB /* Dynamics */, + 15CBA18A196EE66E005877BB /* Rope */, + ); + path = box2d_static; + sourceTree = ""; + }; + 15CBA12A196EE66E005877BB /* Collision */ = { + isa = PBXGroup; + children = ( + 15CBA12B196EE66E005877BB /* b2BroadPhase.o */, + 15CBA12C196EE66E005877BB /* b2BroadPhase.o.d */, + 15CBA12D196EE66E005877BB /* b2CollideCircle.o */, + 15CBA12E196EE66E005877BB /* b2CollideCircle.o.d */, + 15CBA12F196EE66E005877BB /* b2CollideEdge.o */, + 15CBA130196EE66E005877BB /* b2CollideEdge.o.d */, + 15CBA131196EE66E005877BB /* b2CollidePolygon.o */, + 15CBA132196EE66E005877BB /* b2CollidePolygon.o.d */, + 15CBA133196EE66E005877BB /* b2Collision.o */, + 15CBA134196EE66E005877BB /* b2Collision.o.d */, + 15CBA135196EE66E005877BB /* b2Distance.o */, + 15CBA136196EE66E005877BB /* b2Distance.o.d */, + 15CBA137196EE66E005877BB /* b2DynamicTree.o */, + 15CBA138196EE66E005877BB /* b2DynamicTree.o.d */, + 15CBA139196EE66E005877BB /* b2TimeOfImpact.o */, + 15CBA13A196EE66E005877BB /* b2TimeOfImpact.o.d */, + 15CBA13B196EE66E005877BB /* Shapes */, + ); + path = Collision; + sourceTree = ""; + }; + 15CBA13B196EE66E005877BB /* Shapes */ = { + isa = PBXGroup; + children = ( + 15CBA13C196EE66E005877BB /* b2ChainShape.o */, + 15CBA13D196EE66E005877BB /* b2ChainShape.o.d */, + 15CBA13E196EE66E005877BB /* b2CircleShape.o */, + 15CBA13F196EE66E005877BB /* b2CircleShape.o.d */, + 15CBA140196EE66E005877BB /* b2EdgeShape.o */, + 15CBA141196EE66E005877BB /* b2EdgeShape.o.d */, + 15CBA142196EE66E005877BB /* b2PolygonShape.o */, + 15CBA143196EE66E005877BB /* b2PolygonShape.o.d */, + ); + path = Shapes; + sourceTree = ""; + }; + 15CBA144196EE66E005877BB /* Common */ = { + isa = PBXGroup; + children = ( + 15CBA145196EE66E005877BB /* b2BlockAllocator.o */, + 15CBA146196EE66E005877BB /* b2BlockAllocator.o.d */, + 15CBA147196EE66E005877BB /* b2Draw.o */, + 15CBA148196EE66E005877BB /* b2Draw.o.d */, + 15CBA149196EE66E005877BB /* b2Math.o */, + 15CBA14A196EE66E005877BB /* b2Math.o.d */, + 15CBA14B196EE66E005877BB /* b2Settings.o */, + 15CBA14C196EE66E005877BB /* b2Settings.o.d */, + 15CBA14D196EE66E005877BB /* b2StackAllocator.o */, + 15CBA14E196EE66E005877BB /* b2StackAllocator.o.d */, + 15CBA14F196EE66E005877BB /* b2Timer.o */, + 15CBA150196EE66E005877BB /* b2Timer.o.d */, + ); + path = Common; + sourceTree = ""; + }; + 15CBA151196EE66E005877BB /* Dynamics */ = { + isa = PBXGroup; + children = ( + 15CBA152196EE66E005877BB /* b2Body.o */, + 15CBA153196EE66E005877BB /* b2Body.o.d */, + 15CBA154196EE66E005877BB /* b2ContactManager.o */, + 15CBA155196EE66E005877BB /* b2ContactManager.o.d */, + 15CBA156196EE66E005877BB /* b2Fixture.o */, + 15CBA157196EE66E005877BB /* b2Fixture.o.d */, + 15CBA158196EE66E005877BB /* b2Island.o */, + 15CBA159196EE66E005877BB /* b2Island.o.d */, + 15CBA15A196EE66E005877BB /* b2World.o */, + 15CBA15B196EE66E005877BB /* b2World.o.d */, + 15CBA15C196EE66E005877BB /* b2WorldCallbacks.o */, + 15CBA15D196EE66E005877BB /* b2WorldCallbacks.o.d */, + 15CBA15E196EE66E005877BB /* Contacts */, + 15CBA171196EE66E005877BB /* Joints */, + ); + path = Dynamics; + sourceTree = ""; + }; + 15CBA15E196EE66E005877BB /* Contacts */ = { + isa = PBXGroup; + children = ( + 15CBA15F196EE66E005877BB /* b2ChainAndCircleContact.o */, + 15CBA160196EE66E005877BB /* b2ChainAndCircleContact.o.d */, + 15CBA161196EE66E005877BB /* b2ChainAndPolygonContact.o */, + 15CBA162196EE66E005877BB /* b2ChainAndPolygonContact.o.d */, + 15CBA163196EE66E005877BB /* b2CircleContact.o */, + 15CBA164196EE66E005877BB /* b2CircleContact.o.d */, + 15CBA165196EE66E005877BB /* b2Contact.o */, + 15CBA166196EE66E005877BB /* b2Contact.o.d */, + 15CBA167196EE66E005877BB /* b2ContactSolver.o */, + 15CBA168196EE66E005877BB /* b2ContactSolver.o.d */, + 15CBA169196EE66E005877BB /* b2EdgeAndCircleContact.o */, + 15CBA16A196EE66E005877BB /* b2EdgeAndCircleContact.o.d */, + 15CBA16B196EE66E005877BB /* b2EdgeAndPolygonContact.o */, + 15CBA16C196EE66E005877BB /* b2EdgeAndPolygonContact.o.d */, + 15CBA16D196EE66E005877BB /* b2PolygonAndCircleContact.o */, + 15CBA16E196EE66E005877BB /* b2PolygonAndCircleContact.o.d */, + 15CBA16F196EE66E005877BB /* b2PolygonContact.o */, + 15CBA170196EE66E005877BB /* b2PolygonContact.o.d */, + ); + path = Contacts; + sourceTree = ""; + }; + 15CBA171196EE66E005877BB /* Joints */ = { + isa = PBXGroup; + children = ( + 15CBA172196EE66E005877BB /* b2DistanceJoint.o */, + 15CBA173196EE66E005877BB /* b2DistanceJoint.o.d */, + 15CBA174196EE66E005877BB /* b2FrictionJoint.o */, + 15CBA175196EE66E005877BB /* b2FrictionJoint.o.d */, + 15CBA176196EE66E005877BB /* b2GearJoint.o */, + 15CBA177196EE66E005877BB /* b2GearJoint.o.d */, + 15CBA178196EE66E005877BB /* b2Joint.o */, + 15CBA179196EE66E005877BB /* b2Joint.o.d */, + 15CBA17A196EE66E005877BB /* b2MotorJoint.o */, + 15CBA17B196EE66E005877BB /* b2MotorJoint.o.d */, + 15CBA17C196EE66E005877BB /* b2MouseJoint.o */, + 15CBA17D196EE66E005877BB /* b2MouseJoint.o.d */, + 15CBA17E196EE66E005877BB /* b2PrismaticJoint.o */, + 15CBA17F196EE66E005877BB /* b2PrismaticJoint.o.d */, + 15CBA180196EE66E005877BB /* b2PulleyJoint.o */, + 15CBA181196EE66E005877BB /* b2PulleyJoint.o.d */, + 15CBA182196EE66E005877BB /* b2RevoluteJoint.o */, + 15CBA183196EE66E005877BB /* b2RevoluteJoint.o.d */, + 15CBA184196EE66E005877BB /* b2RopeJoint.o */, + 15CBA185196EE66E005877BB /* b2RopeJoint.o.d */, + 15CBA186196EE66E005877BB /* b2WeldJoint.o */, + 15CBA187196EE66E005877BB /* b2WeldJoint.o.d */, + 15CBA188196EE66E005877BB /* b2WheelJoint.o */, + 15CBA189196EE66E005877BB /* b2WheelJoint.o.d */, + ); + path = Joints; + sourceTree = ""; + }; + 15CBA18A196EE66E005877BB /* Rope */ = { + isa = PBXGroup; + children = ( + 15CBA18B196EE66E005877BB /* b2Rope.o */, + 15CBA18C196EE66E005877BB /* b2Rope.o.d */, + ); + path = Rope; + sourceTree = ""; + }; + 15CBA18D196EE66E005877BB /* chipmunk_static */ = { + isa = PBXGroup; + children = ( + 15CBA18E196EE66E005877BB /* src */, + ); + path = chipmunk_static; + sourceTree = ""; + }; + 15CBA18E196EE66E005877BB /* src */ = { + isa = PBXGroup; + children = ( + 15CBA18F196EE66E005877BB /* chipmunk.o */, + 15CBA190196EE66E005877BB /* chipmunk.o.d */, + 15CBA191196EE66E005877BB /* constraints */, + 15CBA1A8196EE66E005877BB /* cpArbiter.o */, + 15CBA1A9196EE66E005877BB /* cpArbiter.o.d */, + 15CBA1AA196EE66E005877BB /* cpArray.o */, + 15CBA1AB196EE66E005877BB /* cpArray.o.d */, + 15CBA1AC196EE66E005877BB /* cpBB.o */, + 15CBA1AD196EE66E005877BB /* cpBB.o.d */, + 15CBA1AE196EE66E005877BB /* cpBBTree.o */, + 15CBA1AF196EE66E005877BB /* cpBBTree.o.d */, + 15CBA1B0196EE66E005877BB /* cpBody.o */, + 15CBA1B1196EE66E005877BB /* cpBody.o.d */, + 15CBA1B2196EE66E005877BB /* cpCollision.o */, + 15CBA1B3196EE66E005877BB /* cpCollision.o.d */, + 15CBA1B4196EE66E005877BB /* cpHashSet.o */, + 15CBA1B5196EE66E005877BB /* cpHashSet.o.d */, + 15CBA1B6196EE66E005877BB /* cpPolyShape.o */, + 15CBA1B7196EE66E005877BB /* cpPolyShape.o.d */, + 15CBA1B8196EE66E005877BB /* cpShape.o */, + 15CBA1B9196EE66E005877BB /* cpShape.o.d */, + 15CBA1BA196EE66E005877BB /* cpSpace.o */, + 15CBA1BB196EE66E005877BB /* cpSpace.o.d */, + 15CBA1BC196EE66E005877BB /* cpSpaceComponent.o */, + 15CBA1BD196EE66E005877BB /* cpSpaceComponent.o.d */, + 15CBA1BE196EE66E005877BB /* cpSpaceHash.o */, + 15CBA1BF196EE66E005877BB /* cpSpaceHash.o.d */, + 15CBA1C0196EE66E005877BB /* cpSpaceQuery.o */, + 15CBA1C1196EE66E005877BB /* cpSpaceQuery.o.d */, + 15CBA1C2196EE66E005877BB /* cpSpaceStep.o */, + 15CBA1C3196EE66E005877BB /* cpSpaceStep.o.d */, + 15CBA1C4196EE66E005877BB /* cpSpatialIndex.o */, + 15CBA1C5196EE66E005877BB /* cpSpatialIndex.o.d */, + 15CBA1C6196EE66E005877BB /* cpSweep1D.o */, + 15CBA1C7196EE66E005877BB /* cpSweep1D.o.d */, + 15CBA1C8196EE66E005877BB /* cpVect.o */, + 15CBA1C9196EE66E005877BB /* cpVect.o.d */, + ); + path = src; + sourceTree = ""; + }; + 15CBA191196EE66E005877BB /* constraints */ = { + isa = PBXGroup; + children = ( + 15CBA192196EE66E005877BB /* cpConstraint.o */, + 15CBA193196EE66E005877BB /* cpConstraint.o.d */, + 15CBA194196EE66E005877BB /* cpDampedRotarySpring.o */, + 15CBA195196EE66E005877BB /* cpDampedRotarySpring.o.d */, + 15CBA196196EE66E005877BB /* cpDampedSpring.o */, + 15CBA197196EE66E005877BB /* cpDampedSpring.o.d */, + 15CBA198196EE66E005877BB /* cpGearJoint.o */, + 15CBA199196EE66E005877BB /* cpGearJoint.o.d */, + 15CBA19A196EE66E005877BB /* cpGrooveJoint.o */, + 15CBA19B196EE66E005877BB /* cpGrooveJoint.o.d */, + 15CBA19C196EE66E005877BB /* cpPinJoint.o */, + 15CBA19D196EE66E005877BB /* cpPinJoint.o.d */, + 15CBA19E196EE66E005877BB /* cpPivotJoint.o */, + 15CBA19F196EE66E005877BB /* cpPivotJoint.o.d */, + 15CBA1A0196EE66E005877BB /* cpRatchetJoint.o */, + 15CBA1A1196EE66E005877BB /* cpRatchetJoint.o.d */, + 15CBA1A2196EE66E005877BB /* cpRotaryLimitJoint.o */, + 15CBA1A3196EE66E005877BB /* cpRotaryLimitJoint.o.d */, + 15CBA1A4196EE66E005877BB /* cpSimpleMotor.o */, + 15CBA1A5196EE66E005877BB /* cpSimpleMotor.o.d */, + 15CBA1A6196EE66E005877BB /* cpSlideJoint.o */, + 15CBA1A7196EE66E005877BB /* cpSlideJoint.o.d */, + ); + path = constraints; + sourceTree = ""; + }; + 15CBA1CA196EE66E005877BB /* cocos2dx_static */ = { + isa = PBXGroup; + children = ( + 15CBA1CB196EE66E005877BB /* 2d */, + 15CBA24E196EE66F005877BB /* 3d */, + 15CBA261196EE66F005877BB /* __ */, + 15CBA276196EE66F005877BB /* base */, + 15CBA2D5196EE66F005877BB /* cocos2d.o */, + 15CBA2D6196EE66F005877BB /* cocos2d.o.d */, + 15CBA2D7196EE66F005877BB /* deprecated */, + 15CBA2E4196EE66F005877BB /* math */, + 15CBA2F9196EE66F005877BB /* physics */, + 15CBA30F196EE66F005877BB /* platform */, + 15CBA31A196EE66F005877BB /* renderer */, + ); + path = cocos2dx_static; + sourceTree = ""; + }; + 15CBA1CB196EE66E005877BB /* 2d */ = { + isa = PBXGroup; + children = ( + 15CBA1CC196EE66E005877BB /* CCAction.o */, + 15CBA1CD196EE66E005877BB /* CCAction.o.d */, + 15CBA1CE196EE66E005877BB /* CCActionCamera.o */, + 15CBA1CF196EE66E005877BB /* CCActionCamera.o.d */, + 15CBA1D0196EE66E005877BB /* CCActionCatmullRom.o */, + 15CBA1D1196EE66E005877BB /* CCActionCatmullRom.o.d */, + 15CBA1D2196EE66E005877BB /* CCActionEase.o */, + 15CBA1D3196EE66E005877BB /* CCActionEase.o.d */, + 15CBA1D4196EE66E005877BB /* CCActionGrid.o */, + 15CBA1D5196EE66E005877BB /* CCActionGrid.o.d */, + 15CBA1D6196EE66E005877BB /* CCActionGrid3D.o */, + 15CBA1D7196EE66E005877BB /* CCActionGrid3D.o.d */, + 15CBA1D8196EE66E005877BB /* CCActionInstant.o */, + 15CBA1D9196EE66E005877BB /* CCActionInstant.o.d */, + 15CBA1DA196EE66E005877BB /* CCActionInterval.o */, + 15CBA1DB196EE66E005877BB /* CCActionInterval.o.d */, + 15CBA1DC196EE66E005877BB /* CCActionManager.o */, + 15CBA1DD196EE66E005877BB /* CCActionManager.o.d */, + 15CBA1DE196EE66E005877BB /* CCActionPageTurn3D.o */, + 15CBA1DF196EE66E005877BB /* CCActionPageTurn3D.o.d */, + 15CBA1E0196EE66E005877BB /* CCActionProgressTimer.o */, + 15CBA1E1196EE66E005877BB /* CCActionProgressTimer.o.d */, + 15CBA1E2196EE66E005877BB /* CCActionTiledGrid.o */, + 15CBA1E3196EE66E005877BB /* CCActionTiledGrid.o.d */, + 15CBA1E4196EE66E005877BB /* CCActionTween.o */, + 15CBA1E5196EE66E005877BB /* CCActionTween.o.d */, + 15CBA1E6196EE66E005877BB /* CCAnimation.o */, + 15CBA1E7196EE66E005877BB /* CCAnimation.o.d */, + 15CBA1E8196EE66E005877BB /* CCAnimationCache.o */, + 15CBA1E9196EE66E005877BB /* CCAnimationCache.o.d */, + 15CBA1EA196EE66E005877BB /* CCAtlasNode.o */, + 15CBA1EB196EE66E005877BB /* CCAtlasNode.o.d */, + 15CBA1EC196EE66E005877BB /* CCClippingNode.o */, + 15CBA1ED196EE66E005877BB /* CCClippingNode.o.d */, + 15CBA1EE196EE66E005877BB /* CCComponent.o */, + 15CBA1EF196EE66E005877BB /* CCComponent.o.d */, + 15CBA1F0196EE66E005877BB /* CCComponentContainer.o */, + 15CBA1F1196EE66E005877BB /* CCComponentContainer.o.d */, + 15CBA1F2196EE66E005877BB /* CCDrawingPrimitives.o */, + 15CBA1F3196EE66E005877BB /* CCDrawingPrimitives.o.d */, + 15CBA1F4196EE66E005877BB /* CCDrawNode.o */, + 15CBA1F5196EE66E005877BB /* CCDrawNode.o.d */, + 15CBA1F6196EE66E005877BB /* CCFastTMXLayer.o */, + 15CBA1F7196EE66E005877BB /* CCFastTMXLayer.o.d */, + 15CBA1F8196EE66E005877BB /* CCFastTMXTiledMap.o */, + 15CBA1F9196EE66E005877BB /* CCFastTMXTiledMap.o.d */, + 15CBA1FA196EE66E005877BB /* CCFont.o */, + 15CBA1FB196EE66E005877BB /* CCFont.o.d */, + 15CBA1FC196EE66E005877BB /* CCFontAtlas.o */, + 15CBA1FD196EE66E005877BB /* CCFontAtlas.o.d */, + 15CBA1FE196EE66E005877BB /* CCFontAtlasCache.o */, + 15CBA1FF196EE66E005877BB /* CCFontAtlasCache.o.d */, + 15CBA200196EE66E005877BB /* CCFontCharMap.o */, + 15CBA201196EE66E005877BB /* CCFontCharMap.o.d */, + 15CBA202196EE66E005877BB /* CCFontFNT.o */, + 15CBA203196EE66E005877BB /* CCFontFNT.o.d */, + 15CBA204196EE66E005877BB /* CCFontFreeType.o */, + 15CBA205196EE66E005877BB /* CCFontFreeType.o.d */, + 15CBA206196EE66E005877BB /* CCGLBufferedNode.o */, + 15CBA207196EE66E005877BB /* CCGLBufferedNode.o.d */, + 15CBA208196EE66E005877BB /* CCGrabber.o */, + 15CBA209196EE66E005877BB /* CCGrabber.o.d */, + 15CBA20A196EE66E005877BB /* CCGrid.o */, + 15CBA20B196EE66E005877BB /* CCGrid.o.d */, + 15CBA20C196EE66E005877BB /* CCLabel.o */, + 15CBA20D196EE66E005877BB /* CCLabel.o.d */, + 15CBA20E196EE66E005877BB /* CCLabelAtlas.o */, + 15CBA20F196EE66E005877BB /* CCLabelAtlas.o.d */, + 15CBA210196EE66E005877BB /* CCLabelBMFont.o */, + 15CBA211196EE66E005877BB /* CCLabelBMFont.o.d */, + 15CBA212196EE66E005877BB /* CCLabelTextFormatter.o */, + 15CBA213196EE66E005877BB /* CCLabelTextFormatter.o.d */, + 15CBA214196EE66E005877BB /* CCLabelTTF.o */, + 15CBA215196EE66E005877BB /* CCLabelTTF.o.d */, + 15CBA216196EE66E005877BB /* CCLayer.o */, + 15CBA217196EE66E005877BB /* CCLayer.o.d */, + 15CBA218196EE66E005877BB /* CCMenu.o */, + 15CBA219196EE66E005877BB /* CCMenu.o.d */, + 15CBA21A196EE66E005877BB /* CCMenuItem.o */, + 15CBA21B196EE66E005877BB /* CCMenuItem.o.d */, + 15CBA21C196EE66E005877BB /* CCMotionStreak.o */, + 15CBA21D196EE66E005877BB /* CCMotionStreak.o.d */, + 15CBA21E196EE66E005877BB /* CCNode.o */, + 15CBA21F196EE66E005877BB /* CCNode.o.d */, + 15CBA220196EE66E005877BB /* CCNodeGrid.o */, + 15CBA221196EE66E005877BB /* CCNodeGrid.o.d */, + 15CBA222196EE66E005877BB /* CCParallaxNode.o */, + 15CBA223196EE66E005877BB /* CCParallaxNode.o.d */, + 15CBA224196EE66E005877BB /* CCParticleBatchNode.o */, + 15CBA225196EE66E005877BB /* CCParticleBatchNode.o.d */, + 15CBA226196EE66E005877BB /* CCParticleExamples.o */, + 15CBA227196EE66E005877BB /* CCParticleExamples.o.d */, + 15CBA228196EE66E005877BB /* CCParticleSystem.o */, + 15CBA229196EE66E005877BB /* CCParticleSystem.o.d */, + 15CBA22A196EE66E005877BB /* CCParticleSystemQuad.o */, + 15CBA22B196EE66E005877BB /* CCParticleSystemQuad.o.d */, + 15CBA22C196EE66E005877BB /* CCProgressTimer.o */, + 15CBA22D196EE66E005877BB /* CCProgressTimer.o.d */, + 15CBA22E196EE66E005877BB /* CCRenderTexture.o */, + 15CBA22F196EE66E005877BB /* CCRenderTexture.o.d */, + 15CBA230196EE66E005877BB /* CCScene.o */, + 15CBA231196EE66E005877BB /* CCScene.o.d */, + 15CBA232196EE66E005877BB /* CCSprite.o */, + 15CBA233196EE66E005877BB /* CCSprite.o.d */, + 15CBA234196EE66E005877BB /* CCSpriteBatchNode.o */, + 15CBA235196EE66E005877BB /* CCSpriteBatchNode.o.d */, + 15CBA236196EE66E005877BB /* CCSpriteFrame.o */, + 15CBA237196EE66E005877BB /* CCSpriteFrame.o.d */, + 15CBA238196EE66E005877BB /* CCSpriteFrameCache.o */, + 15CBA239196EE66E005877BB /* CCSpriteFrameCache.o.d */, + 15CBA23A196EE66E005877BB /* CCTextFieldTTF.o */, + 15CBA23B196EE66E005877BB /* CCTextFieldTTF.o.d */, + 15CBA23C196EE66E005877BB /* CCTileMapAtlas.o */, + 15CBA23D196EE66E005877BB /* CCTileMapAtlas.o.d */, + 15CBA23E196EE66E005877BB /* CCTMXLayer.o */, + 15CBA23F196EE66E005877BB /* CCTMXLayer.o.d */, + 15CBA240196EE66E005877BB /* CCTMXObjectGroup.o */, + 15CBA241196EE66E005877BB /* CCTMXObjectGroup.o.d */, + 15CBA242196EE66E005877BB /* CCTMXTiledMap.o */, + 15CBA243196EE66E005877BB /* CCTMXTiledMap.o.d */, + 15CBA244196EE66E005877BB /* CCTMXXMLParser.o */, + 15CBA245196EE66E005877BB /* CCTMXXMLParser.o.d */, + 15CBA246196EE66E005877BB /* CCTransition.o */, + 15CBA247196EE66E005877BB /* CCTransition.o.d */, + 15CBA248196EE66E005877BB /* CCTransitionPageTurn.o */, + 15CBA249196EE66E005877BB /* CCTransitionPageTurn.o.d */, + 15CBA24A196EE66E005877BB /* CCTransitionProgress.o */, + 15CBA24B196EE66E005877BB /* CCTransitionProgress.o.d */, + 15CBA24C196EE66F005877BB /* CCTweenFunction.o */, + 15CBA24D196EE66F005877BB /* CCTweenFunction.o.d */, + ); + path = 2d; + sourceTree = ""; + }; + 15CBA24E196EE66F005877BB /* 3d */ = { + isa = PBXGroup; + children = ( + 15CBA24F196EE66F005877BB /* CCAnimate3D.o */, + 15CBA250196EE66F005877BB /* CCAnimate3D.o.d */, + 15CBA251196EE66F005877BB /* CCAnimation3D.o */, + 15CBA252196EE66F005877BB /* CCAnimation3D.o.d */, + 15CBA253196EE66F005877BB /* CCBundle3D.o */, + 15CBA254196EE66F005877BB /* CCBundle3D.o.d */, + 15CBA255196EE66F005877BB /* CCBundleReader.o */, + 15CBA256196EE66F005877BB /* CCBundleReader.o.d */, + 15CBA257196EE66F005877BB /* CCMesh.o */, + 15CBA258196EE66F005877BB /* CCMesh.o.d */, + 15CBA259196EE66F005877BB /* CCMeshSkin.o */, + 15CBA25A196EE66F005877BB /* CCMeshSkin.o.d */, + 15CBA25B196EE66F005877BB /* CCObjLoader.o */, + 15CBA25C196EE66F005877BB /* CCObjLoader.o.d */, + 15CBA25D196EE66F005877BB /* CCSprite3D.o */, + 15CBA25E196EE66F005877BB /* CCSprite3D.o.d */, + 15CBA25F196EE66F005877BB /* CCSprite3DMaterial.o */, + 15CBA260196EE66F005877BB /* CCSprite3DMaterial.o.d */, + ); + path = 3d; + sourceTree = ""; + }; + 15CBA261196EE66F005877BB /* __ */ = { + isa = PBXGroup; + children = ( + 15CBA262196EE66F005877BB /* external */, + ); + path = __; + sourceTree = ""; + }; + 15CBA262196EE66F005877BB /* external */ = { + isa = PBXGroup; + children = ( + 15CBA263196EE66F005877BB /* ConvertUTF */, + 15CBA268196EE66F005877BB /* edtaa3func */, + 15CBA26B196EE66F005877BB /* tinyxml2 */, + 15CBA26E196EE66F005877BB /* unzip */, + 15CBA273196EE66F005877BB /* xxhash */, + ); + path = external; + sourceTree = ""; + }; + 15CBA263196EE66F005877BB /* ConvertUTF */ = { + isa = PBXGroup; + children = ( + 15CBA264196EE66F005877BB /* ConvertUTF.o */, + 15CBA265196EE66F005877BB /* ConvertUTF.o.d */, + 15CBA266196EE66F005877BB /* ConvertUTFWrapper.o */, + 15CBA267196EE66F005877BB /* ConvertUTFWrapper.o.d */, + ); + path = ConvertUTF; + sourceTree = ""; + }; + 15CBA268196EE66F005877BB /* edtaa3func */ = { + isa = PBXGroup; + children = ( + 15CBA269196EE66F005877BB /* edtaa3func.o */, + 15CBA26A196EE66F005877BB /* edtaa3func.o.d */, + ); + path = edtaa3func; + sourceTree = ""; + }; + 15CBA26B196EE66F005877BB /* tinyxml2 */ = { + isa = PBXGroup; + children = ( + 15CBA26C196EE66F005877BB /* tinyxml2.o */, + 15CBA26D196EE66F005877BB /* tinyxml2.o.d */, + ); + path = tinyxml2; + sourceTree = ""; + }; + 15CBA26E196EE66F005877BB /* unzip */ = { + isa = PBXGroup; + children = ( + 15CBA26F196EE66F005877BB /* ioapi.o */, + 15CBA270196EE66F005877BB /* ioapi.o.d */, + 15CBA271196EE66F005877BB /* unzip.o */, + 15CBA272196EE66F005877BB /* unzip.o.d */, + ); + path = unzip; + sourceTree = ""; + }; + 15CBA273196EE66F005877BB /* xxhash */ = { + isa = PBXGroup; + children = ( + 15CBA274196EE66F005877BB /* xxhash.o */, + 15CBA275196EE66F005877BB /* xxhash.o.d */, + ); + path = xxhash; + sourceTree = ""; + }; + 15CBA276196EE66F005877BB /* base */ = { + isa = PBXGroup; + children = ( + 15CBA277196EE66F005877BB /* atitc.o */, + 15CBA278196EE66F005877BB /* atitc.o.d */, + 15CBA279196EE66F005877BB /* base64.o */, + 15CBA27A196EE66F005877BB /* base64.o.d */, + 15CBA27B196EE66F005877BB /* CCAutoreleasePool.o */, + 15CBA27C196EE66F005877BB /* CCAutoreleasePool.o.d */, + 15CBA27D196EE66F005877BB /* ccCArray.o */, + 15CBA27E196EE66F005877BB /* ccCArray.o.d */, + 15CBA27F196EE66F005877BB /* CCConfiguration.o */, + 15CBA280196EE66F005877BB /* CCConfiguration.o.d */, + 15CBA281196EE66F005877BB /* CCConsole.o */, + 15CBA282196EE66F005877BB /* CCConsole.o.d */, + 15CBA283196EE66F005877BB /* CCController-android.o */, + 15CBA284196EE66F005877BB /* CCController-android.o.d */, + 15CBA285196EE66F005877BB /* CCController.o */, + 15CBA286196EE66F005877BB /* CCController.o.d */, + 15CBA287196EE66F005877BB /* CCData.o */, + 15CBA288196EE66F005877BB /* CCData.o.d */, + 15CBA289196EE66F005877BB /* CCDataVisitor.o */, + 15CBA28A196EE66F005877BB /* CCDataVisitor.o.d */, + 15CBA28B196EE66F005877BB /* CCDirector.o */, + 15CBA28C196EE66F005877BB /* CCDirector.o.d */, + 15CBA28D196EE66F005877BB /* CCEvent.o */, + 15CBA28E196EE66F005877BB /* CCEvent.o.d */, + 15CBA28F196EE66F005877BB /* CCEventAcceleration.o */, + 15CBA290196EE66F005877BB /* CCEventAcceleration.o.d */, + 15CBA291196EE66F005877BB /* CCEventController.o */, + 15CBA292196EE66F005877BB /* CCEventController.o.d */, + 15CBA293196EE66F005877BB /* CCEventCustom.o */, + 15CBA294196EE66F005877BB /* CCEventCustom.o.d */, + 15CBA295196EE66F005877BB /* CCEventDispatcher.o */, + 15CBA296196EE66F005877BB /* CCEventDispatcher.o.d */, + 15CBA297196EE66F005877BB /* CCEventFocus.o */, + 15CBA298196EE66F005877BB /* CCEventFocus.o.d */, + 15CBA299196EE66F005877BB /* CCEventKeyboard.o */, + 15CBA29A196EE66F005877BB /* CCEventKeyboard.o.d */, + 15CBA29B196EE66F005877BB /* CCEventListener.o */, + 15CBA29C196EE66F005877BB /* CCEventListener.o.d */, + 15CBA29D196EE66F005877BB /* CCEventListenerAcceleration.o */, + 15CBA29E196EE66F005877BB /* CCEventListenerAcceleration.o.d */, + 15CBA29F196EE66F005877BB /* CCEventListenerController.o */, + 15CBA2A0196EE66F005877BB /* CCEventListenerController.o.d */, + 15CBA2A1196EE66F005877BB /* CCEventListenerCustom.o */, + 15CBA2A2196EE66F005877BB /* CCEventListenerCustom.o.d */, + 15CBA2A3196EE66F005877BB /* CCEventListenerFocus.o */, + 15CBA2A4196EE66F005877BB /* CCEventListenerFocus.o.d */, + 15CBA2A5196EE66F005877BB /* CCEventListenerKeyboard.o */, + 15CBA2A6196EE66F005877BB /* CCEventListenerKeyboard.o.d */, + 15CBA2A7196EE66F005877BB /* CCEventListenerMouse.o */, + 15CBA2A8196EE66F005877BB /* CCEventListenerMouse.o.d */, + 15CBA2A9196EE66F005877BB /* CCEventListenerTouch.o */, + 15CBA2AA196EE66F005877BB /* CCEventListenerTouch.o.d */, + 15CBA2AB196EE66F005877BB /* CCEventMouse.o */, + 15CBA2AC196EE66F005877BB /* CCEventMouse.o.d */, + 15CBA2AD196EE66F005877BB /* CCEventTouch.o */, + 15CBA2AE196EE66F005877BB /* CCEventTouch.o.d */, + 15CBA2AF196EE66F005877BB /* ccFPSImages.o */, + 15CBA2B0196EE66F005877BB /* ccFPSImages.o.d */, + 15CBA2B1196EE66F005877BB /* CCIMEDispatcher.o */, + 15CBA2B2196EE66F005877BB /* CCIMEDispatcher.o.d */, + 15CBA2B3196EE66F005877BB /* CCNS.o */, + 15CBA2B4196EE66F005877BB /* CCNS.o.d */, + 15CBA2B5196EE66F005877BB /* CCProfiling.o */, + 15CBA2B6196EE66F005877BB /* CCProfiling.o.d */, + 15CBA2B7196EE66F005877BB /* CCRef.o */, + 15CBA2B8196EE66F005877BB /* CCRef.o.d */, + 15CBA2B9196EE66F005877BB /* CCScheduler.o */, + 15CBA2BA196EE66F005877BB /* CCScheduler.o.d */, + 15CBA2BB196EE66F005877BB /* CCScriptSupport.o */, + 15CBA2BC196EE66F005877BB /* CCScriptSupport.o.d */, + 15CBA2BD196EE66F005877BB /* CCTouch.o */, + 15CBA2BE196EE66F005877BB /* CCTouch.o.d */, + 15CBA2BF196EE66F005877BB /* ccTypes.o */, + 15CBA2C0196EE66F005877BB /* ccTypes.o.d */, + 15CBA2C1196EE66F005877BB /* CCUserDefault.o */, + 15CBA2C2196EE66F005877BB /* CCUserDefault.o.d */, + 15CBA2C3196EE66F005877BB /* CCUserDefaultAndroid.o */, + 15CBA2C4196EE66F005877BB /* CCUserDefaultAndroid.o.d */, + 15CBA2C5196EE66F005877BB /* ccUTF8.o */, + 15CBA2C6196EE66F005877BB /* ccUTF8.o.d */, + 15CBA2C7196EE66F005877BB /* ccUtils.o */, + 15CBA2C8196EE66F005877BB /* ccUtils.o.d */, + 15CBA2C9196EE66F005877BB /* CCValue.o */, + 15CBA2CA196EE66F005877BB /* CCValue.o.d */, + 15CBA2CB196EE66F005877BB /* etc1.o */, + 15CBA2CC196EE66F005877BB /* etc1.o.d */, + 15CBA2CD196EE66F005877BB /* ObjectFactory.o */, + 15CBA2CE196EE66F005877BB /* ObjectFactory.o.d */, + 15CBA2CF196EE66F005877BB /* s3tc.o */, + 15CBA2D0196EE66F005877BB /* s3tc.o.d */, + 15CBA2D1196EE66F005877BB /* TGAlib.o */, + 15CBA2D2196EE66F005877BB /* TGAlib.o.d */, + 15CBA2D3196EE66F005877BB /* ZipUtils.o */, + 15CBA2D4196EE66F005877BB /* ZipUtils.o.d */, + ); + path = base; + sourceTree = ""; + }; + 15CBA2D7196EE66F005877BB /* deprecated */ = { + isa = PBXGroup; + children = ( + 15CBA2D8196EE66F005877BB /* CCArray.o */, + 15CBA2D9196EE66F005877BB /* CCArray.o.d */, + 15CBA2DA196EE66F005877BB /* CCDeprecated.o */, + 15CBA2DB196EE66F005877BB /* CCDeprecated.o.d */, + 15CBA2DC196EE66F005877BB /* CCDictionary.o */, + 15CBA2DD196EE66F005877BB /* CCDictionary.o.d */, + 15CBA2DE196EE66F005877BB /* CCNotificationCenter.o */, + 15CBA2DF196EE66F005877BB /* CCNotificationCenter.o.d */, + 15CBA2E0196EE66F005877BB /* CCSet.o */, + 15CBA2E1196EE66F005877BB /* CCSet.o.d */, + 15CBA2E2196EE66F005877BB /* CCString.o */, + 15CBA2E3196EE66F005877BB /* CCString.o.d */, + ); + path = deprecated; + sourceTree = ""; + }; + 15CBA2E4196EE66F005877BB /* math */ = { + isa = PBXGroup; + children = ( + 15CBA2E5196EE66F005877BB /* CCAffineTransform.o */, + 15CBA2E6196EE66F005877BB /* CCAffineTransform.o.d */, + 15CBA2E7196EE66F005877BB /* CCGeometry.o */, + 15CBA2E8196EE66F005877BB /* CCGeometry.o.d */, + 15CBA2E9196EE66F005877BB /* CCVertex.o */, + 15CBA2EA196EE66F005877BB /* CCVertex.o.d */, + 15CBA2EB196EE66F005877BB /* Mat4.o */, + 15CBA2EC196EE66F005877BB /* Mat4.o.d */, + 15CBA2ED196EE66F005877BB /* MathUtil.o */, + 15CBA2EE196EE66F005877BB /* MathUtil.o.d */, + 15CBA2EF196EE66F005877BB /* Quaternion.o */, + 15CBA2F0196EE66F005877BB /* Quaternion.o.d */, + 15CBA2F1196EE66F005877BB /* TransformUtils.o */, + 15CBA2F2196EE66F005877BB /* TransformUtils.o.d */, + 15CBA2F3196EE66F005877BB /* Vec2.o */, + 15CBA2F4196EE66F005877BB /* Vec2.o.d */, + 15CBA2F5196EE66F005877BB /* Vec3.o */, + 15CBA2F6196EE66F005877BB /* Vec3.o.d */, + 15CBA2F7196EE66F005877BB /* Vec4.o */, + 15CBA2F8196EE66F005877BB /* Vec4.o.d */, + ); + path = math; + sourceTree = ""; + }; + 15CBA2F9196EE66F005877BB /* physics */ = { + isa = PBXGroup; + children = ( + 15CBA2FA196EE66F005877BB /* CCPhysicsBody.o */, + 15CBA2FB196EE66F005877BB /* CCPhysicsBody.o.d */, + 15CBA2FC196EE66F005877BB /* CCPhysicsContact.o */, + 15CBA2FD196EE66F005877BB /* CCPhysicsContact.o.d */, + 15CBA2FE196EE66F005877BB /* CCPhysicsJoint.o */, + 15CBA2FF196EE66F005877BB /* CCPhysicsJoint.o.d */, + 15CBA300196EE66F005877BB /* CCPhysicsShape.o */, + 15CBA301196EE66F005877BB /* CCPhysicsShape.o.d */, + 15CBA302196EE66F005877BB /* CCPhysicsWorld.o */, + 15CBA303196EE66F005877BB /* CCPhysicsWorld.o.d */, + 15CBA304196EE66F005877BB /* chipmunk */, + ); + path = physics; + sourceTree = ""; + }; + 15CBA304196EE66F005877BB /* chipmunk */ = { + isa = PBXGroup; + children = ( + 15CBA305196EE66F005877BB /* CCPhysicsBodyInfo_chipmunk.o */, + 15CBA306196EE66F005877BB /* CCPhysicsBodyInfo_chipmunk.o.d */, + 15CBA307196EE66F005877BB /* CCPhysicsContactInfo_chipmunk.o */, + 15CBA308196EE66F005877BB /* CCPhysicsContactInfo_chipmunk.o.d */, + 15CBA309196EE66F005877BB /* CCPhysicsJointInfo_chipmunk.o */, + 15CBA30A196EE66F005877BB /* CCPhysicsJointInfo_chipmunk.o.d */, + 15CBA30B196EE66F005877BB /* CCPhysicsShapeInfo_chipmunk.o */, + 15CBA30C196EE66F005877BB /* CCPhysicsShapeInfo_chipmunk.o.d */, + 15CBA30D196EE66F005877BB /* CCPhysicsWorldInfo_chipmunk.o */, + 15CBA30E196EE66F005877BB /* CCPhysicsWorldInfo_chipmunk.o.d */, + ); + path = chipmunk; + sourceTree = ""; + }; + 15CBA30F196EE66F005877BB /* platform */ = { + isa = PBXGroup; + children = ( + 15CBA310196EE66F005877BB /* CCFileUtils.o */, + 15CBA311196EE66F005877BB /* CCFileUtils.o.d */, + 15CBA312196EE66F005877BB /* CCGLViewProtocol.o */, + 15CBA313196EE66F005877BB /* CCGLViewProtocol.o.d */, + 15CBA314196EE66F005877BB /* CCImage.o */, + 15CBA315196EE66F005877BB /* CCImage.o.d */, + 15CBA316196EE66F005877BB /* CCSAXParser.o */, + 15CBA317196EE66F005877BB /* CCSAXParser.o.d */, + 15CBA318196EE66F005877BB /* CCThread.o */, + 15CBA319196EE66F005877BB /* CCThread.o.d */, + ); + path = platform; + sourceTree = ""; + }; + 15CBA31A196EE66F005877BB /* renderer */ = { + isa = PBXGroup; + children = ( + 15CBA31B196EE66F005877BB /* CCBatchCommand.o */, + 15CBA31C196EE66F005877BB /* CCBatchCommand.o.d */, + 15CBA31D196EE66F005877BB /* CCCustomCommand.o */, + 15CBA31E196EE66F005877BB /* CCCustomCommand.o.d */, + 15CBA31F196EE66F005877BB /* CCGLProgram.o */, + 15CBA320196EE66F005877BB /* CCGLProgram.o.d */, + 15CBA321196EE66F005877BB /* CCGLProgramCache.o */, + 15CBA322196EE66F005877BB /* CCGLProgramCache.o.d */, + 15CBA323196EE66F005877BB /* CCGLProgramState.o */, + 15CBA324196EE66F005877BB /* CCGLProgramState.o.d */, + 15CBA325196EE66F005877BB /* CCGLProgramStateCache.o */, + 15CBA326196EE66F005877BB /* CCGLProgramStateCache.o.d */, + 15CBA327196EE66F005877BB /* ccGLStateCache.o */, + 15CBA328196EE66F005877BB /* ccGLStateCache.o.d */, + 15CBA329196EE66F005877BB /* CCGroupCommand.o */, + 15CBA32A196EE66F005877BB /* CCGroupCommand.o.d */, + 15CBA32B196EE66F005877BB /* CCMeshCommand.o */, + 15CBA32C196EE66F005877BB /* CCMeshCommand.o.d */, + 15CBA32D196EE66F005877BB /* CCQuadCommand.o */, + 15CBA32E196EE66F005877BB /* CCQuadCommand.o.d */, + 15CBA32F196EE66F005877BB /* CCRenderCommand.o */, + 15CBA330196EE66F005877BB /* CCRenderCommand.o.d */, + 15CBA331196EE66F005877BB /* CCRenderer.o */, + 15CBA332196EE66F005877BB /* CCRenderer.o.d */, + 15CBA333196EE66F005877BB /* ccShaders.o */, + 15CBA334196EE66F005877BB /* ccShaders.o.d */, + 15CBA335196EE66F005877BB /* CCTexture2D.o */, + 15CBA336196EE66F005877BB /* CCTexture2D.o.d */, + 15CBA337196EE66F005877BB /* CCTextureAtlas.o */, + 15CBA338196EE66F005877BB /* CCTextureAtlas.o.d */, + 15CBA339196EE66F005877BB /* CCTextureCache.o */, + 15CBA33A196EE66F005877BB /* CCTextureCache.o.d */, + ); + path = renderer; + sourceTree = ""; + }; + 15CBA33B196EE66F005877BB /* cocos2dxandroid_static */ = { + isa = PBXGroup; + children = ( + 15CBA33C196EE66F005877BB /* CCApplication.o */, + 15CBA33D196EE66F005877BB /* CCApplication.o.d */, + 15CBA33E196EE66F005877BB /* CCCommon.o */, + 15CBA33F196EE66F005877BB /* CCCommon.o.d */, + 15CBA340196EE66F005877BB /* CCDevice.o */, + 15CBA341196EE66F005877BB /* CCDevice.o.d */, + 15CBA342196EE66F005877BB /* CCFileUtilsAndroid.o */, + 15CBA343196EE66F005877BB /* CCFileUtilsAndroid.o.d */, + 15CBA344196EE66F005877BB /* CCGLView.o */, + 15CBA345196EE66F005877BB /* CCGLView.o.d */, + 15CBA346196EE66F005877BB /* javaactivity.o */, + 15CBA347196EE66F005877BB /* javaactivity.o.d */, + 15CBA348196EE66F005877BB /* jni */, + ); + path = cocos2dxandroid_static; + sourceTree = ""; + }; + 15CBA348196EE66F005877BB /* jni */ = { + isa = PBXGroup; + children = ( + 15CBA349196EE66F005877BB /* DPIJni.o */, + 15CBA34A196EE66F005877BB /* DPIJni.o.d */, + 15CBA34B196EE66F005877BB /* IMEJni.o */, + 15CBA34C196EE66F005877BB /* IMEJni.o.d */, + 15CBA34D196EE66F005877BB /* Java_org_cocos2dx_lib_Cocos2dxAccelerometer.o */, + 15CBA34E196EE66F005877BB /* Java_org_cocos2dx_lib_Cocos2dxAccelerometer.o.d */, + 15CBA34F196EE66F005877BB /* Java_org_cocos2dx_lib_Cocos2dxBitmap.o */, + 15CBA350196EE66F005877BB /* Java_org_cocos2dx_lib_Cocos2dxBitmap.o.d */, + 15CBA351196EE66F005877BB /* Java_org_cocos2dx_lib_Cocos2dxHelper.o */, + 15CBA352196EE66F005877BB /* Java_org_cocos2dx_lib_Cocos2dxHelper.o.d */, + 15CBA353196EE66F005877BB /* Java_org_cocos2dx_lib_Cocos2dxRenderer.o */, + 15CBA354196EE66F005877BB /* Java_org_cocos2dx_lib_Cocos2dxRenderer.o.d */, + 15CBA355196EE66F005877BB /* JniHelper.o */, + 15CBA356196EE66F005877BB /* JniHelper.o.d */, + 15CBA357196EE66F005877BB /* TouchesJni.o */, + 15CBA358196EE66F005877BB /* TouchesJni.o.d */, + ); + path = jni; + sourceTree = ""; + }; + 15CBA359196EE66F005877BB /* cocos_extension_static */ = { + isa = PBXGroup; + children = ( + 15CBA35A196EE66F005877BB /* assets-manager */, + 15CBA35D196EE66F005877BB /* GUI */, + 15CBA387196EE66F005877BB /* physics-nodes */, + ); + path = cocos_extension_static; + sourceTree = ""; + }; + 15CBA35A196EE66F005877BB /* assets-manager */ = { + isa = PBXGroup; + children = ( + 15CBA35B196EE66F005877BB /* AssetsManager.o */, + 15CBA35C196EE66F005877BB /* AssetsManager.o.d */, + ); + path = "assets-manager"; + sourceTree = ""; + }; + 15CBA35D196EE66F005877BB /* GUI */ = { + isa = PBXGroup; + children = ( + 15CBA35E196EE66F005877BB /* CCControlExtension */, + 15CBA377196EE66F005877BB /* CCEditBox */, + 15CBA380196EE66F005877BB /* CCScrollView */, + ); + path = GUI; + sourceTree = ""; + }; + 15CBA35E196EE66F005877BB /* CCControlExtension */ = { + isa = PBXGroup; + children = ( + 15CBA35F196EE66F005877BB /* CCControl.o */, + 15CBA360196EE66F005877BB /* CCControl.o.d */, + 15CBA361196EE66F005877BB /* CCControlButton.o */, + 15CBA362196EE66F005877BB /* CCControlButton.o.d */, + 15CBA363196EE66F005877BB /* CCControlColourPicker.o */, + 15CBA364196EE66F005877BB /* CCControlColourPicker.o.d */, + 15CBA365196EE66F005877BB /* CCControlHuePicker.o */, + 15CBA366196EE66F005877BB /* CCControlHuePicker.o.d */, + 15CBA367196EE66F005877BB /* CCControlPotentiometer.o */, + 15CBA368196EE66F005877BB /* CCControlPotentiometer.o.d */, + 15CBA369196EE66F005877BB /* CCControlSaturationBrightnessPicker.o */, + 15CBA36A196EE66F005877BB /* CCControlSaturationBrightnessPicker.o.d */, + 15CBA36B196EE66F005877BB /* CCControlSlider.o */, + 15CBA36C196EE66F005877BB /* CCControlSlider.o.d */, + 15CBA36D196EE66F005877BB /* CCControlStepper.o */, + 15CBA36E196EE66F005877BB /* CCControlStepper.o.d */, + 15CBA36F196EE66F005877BB /* CCControlSwitch.o */, + 15CBA370196EE66F005877BB /* CCControlSwitch.o.d */, + 15CBA371196EE66F005877BB /* CCControlUtils.o */, + 15CBA372196EE66F005877BB /* CCControlUtils.o.d */, + 15CBA373196EE66F005877BB /* CCInvocation.o */, + 15CBA374196EE66F005877BB /* CCInvocation.o.d */, + 15CBA375196EE66F005877BB /* CCScale9Sprite.o */, + 15CBA376196EE66F005877BB /* CCScale9Sprite.o.d */, + ); + path = CCControlExtension; + sourceTree = ""; + }; + 15CBA377196EE66F005877BB /* CCEditBox */ = { + isa = PBXGroup; + children = ( + 15CBA378196EE66F005877BB /* CCEditBox.o */, + 15CBA379196EE66F005877BB /* CCEditBox.o.d */, + 15CBA37A196EE66F005877BB /* CCEditBoxImplAndroid.o */, + 15CBA37B196EE66F005877BB /* CCEditBoxImplAndroid.o.d */, + 15CBA37C196EE66F005877BB /* CCEditBoxImplNone.o */, + 15CBA37D196EE66F005877BB /* CCEditBoxImplNone.o.d */, + 15CBA37E196EE66F005877BB /* CCEditBoxImplWin.o */, + 15CBA37F196EE66F005877BB /* CCEditBoxImplWin.o.d */, + ); + path = CCEditBox; + sourceTree = ""; + }; + 15CBA380196EE66F005877BB /* CCScrollView */ = { + isa = PBXGroup; + children = ( + 15CBA381196EE66F005877BB /* CCScrollView.o */, + 15CBA382196EE66F005877BB /* CCScrollView.o.d */, + 15CBA383196EE66F005877BB /* CCTableView.o */, + 15CBA384196EE66F005877BB /* CCTableView.o.d */, + 15CBA385196EE66F005877BB /* CCTableViewCell.o */, + 15CBA386196EE66F005877BB /* CCTableViewCell.o.d */, + ); + path = CCScrollView; + sourceTree = ""; + }; + 15CBA387196EE66F005877BB /* physics-nodes */ = { + isa = PBXGroup; + children = ( + 15CBA388196EE66F005877BB /* CCPhysicsDebugNode.o */, + 15CBA389196EE66F005877BB /* CCPhysicsDebugNode.o.d */, + 15CBA38A196EE66F005877BB /* CCPhysicsSprite.o */, + 15CBA38B196EE66F005877BB /* CCPhysicsSprite.o.d */, + ); + path = "physics-nodes"; + sourceTree = ""; + }; + 15CBA38C196EE66F005877BB /* cocos_lua_static */ = { + isa = PBXGroup; + children = ( + 15CBA38D196EE66F005877BB /* __ */, + 15CBA3BF196EE670005877BB /* auto */, + 15CBA3CE196EE670005877BB /* manual */, + ); + path = cocos_lua_static; + sourceTree = ""; + }; + 15CBA38D196EE66F005877BB /* __ */ = { + isa = PBXGroup; + children = ( + 15CBA38E196EE66F005877BB /* __ */, + ); + path = __; + sourceTree = ""; + }; + 15CBA38E196EE66F005877BB /* __ */ = { + isa = PBXGroup; + children = ( + 15CBA38F196EE66F005877BB /* __ */, + ); + path = __; + sourceTree = ""; + }; + 15CBA38F196EE66F005877BB /* __ */ = { + isa = PBXGroup; + children = ( + 15CBA390196EE66F005877BB /* external */, + ); + path = __; + sourceTree = ""; + }; + 15CBA390196EE66F005877BB /* external */ = { + isa = PBXGroup; + children = ( + 15CBA391196EE66F005877BB /* lua */, + 15CBA3BC196EE670005877BB /* xxtea */, + ); + path = external; + sourceTree = ""; + }; + 15CBA391196EE66F005877BB /* lua */ = { + isa = PBXGroup; + children = ( + 15CBA392196EE66F005877BB /* luasocket */, + 15CBA3B1196EE670005877BB /* tolua */, + ); + path = lua; + sourceTree = ""; + }; + 15CBA392196EE66F005877BB /* luasocket */ = { + isa = PBXGroup; + children = ( + 15CBA393196EE66F005877BB /* auxiliar.o */, + 15CBA394196EE670005877BB /* auxiliar.o.d */, + 15CBA395196EE670005877BB /* buffer.o */, + 15CBA396196EE670005877BB /* buffer.o.d */, + 15CBA397196EE670005877BB /* except.o */, + 15CBA398196EE670005877BB /* except.o.d */, + 15CBA399196EE670005877BB /* inet.o */, + 15CBA39A196EE670005877BB /* inet.o.d */, + 15CBA39B196EE670005877BB /* io.o */, + 15CBA39C196EE670005877BB /* io.o.d */, + 15CBA39D196EE670005877BB /* luasocket.o */, + 15CBA39E196EE670005877BB /* luasocket.o.d */, + 15CBA39F196EE670005877BB /* mime.o */, + 15CBA3A0196EE670005877BB /* mime.o.d */, + 15CBA3A1196EE670005877BB /* options.o */, + 15CBA3A2196EE670005877BB /* options.o.d */, + 15CBA3A3196EE670005877BB /* select.o */, + 15CBA3A4196EE670005877BB /* select.o.d */, + 15CBA3A5196EE670005877BB /* serial.o */, + 15CBA3A6196EE670005877BB /* serial.o.d */, + 15CBA3A7196EE670005877BB /* tcp.o */, + 15CBA3A8196EE670005877BB /* tcp.o.d */, + 15CBA3A9196EE670005877BB /* timeout.o */, + 15CBA3AA196EE670005877BB /* timeout.o.d */, + 15CBA3AB196EE670005877BB /* udp.o */, + 15CBA3AC196EE670005877BB /* udp.o.d */, + 15CBA3AD196EE670005877BB /* unix.o */, + 15CBA3AE196EE670005877BB /* unix.o.d */, + 15CBA3AF196EE670005877BB /* usocket.o */, + 15CBA3B0196EE670005877BB /* usocket.o.d */, + ); + path = luasocket; + sourceTree = ""; + }; + 15CBA3B1196EE670005877BB /* tolua */ = { + isa = PBXGroup; + children = ( + 15CBA3B2196EE670005877BB /* tolua_event.o */, + 15CBA3B3196EE670005877BB /* tolua_event.o.d */, + 15CBA3B4196EE670005877BB /* tolua_is.o */, + 15CBA3B5196EE670005877BB /* tolua_is.o.d */, + 15CBA3B6196EE670005877BB /* tolua_map.o */, + 15CBA3B7196EE670005877BB /* tolua_map.o.d */, + 15CBA3B8196EE670005877BB /* tolua_push.o */, + 15CBA3B9196EE670005877BB /* tolua_push.o.d */, + 15CBA3BA196EE670005877BB /* tolua_to.o */, + 15CBA3BB196EE670005877BB /* tolua_to.o.d */, + ); + path = tolua; + sourceTree = ""; + }; + 15CBA3BC196EE670005877BB /* xxtea */ = { + isa = PBXGroup; + children = ( + 15CBA3BD196EE670005877BB /* xxtea.o */, + 15CBA3BE196EE670005877BB /* xxtea.o.d */, + ); + path = xxtea; + sourceTree = ""; + }; + 15CBA3BF196EE670005877BB /* auto */ = { + isa = PBXGroup; + children = ( + 15CBA3C0196EE670005877BB /* lua_cocos2dx_auto.o */, + 15CBA3C1196EE670005877BB /* lua_cocos2dx_auto.o.d */, + 15CBA3C2196EE670005877BB /* lua_cocos2dx_controller_auto.o */, + 15CBA3C3196EE670005877BB /* lua_cocos2dx_controller_auto.o.d */, + 15CBA3C4196EE670005877BB /* lua_cocos2dx_extension_auto.o */, + 15CBA3C5196EE670005877BB /* lua_cocos2dx_extension_auto.o.d */, + 15CBA3C6196EE670005877BB /* lua_cocos2dx_physics_auto.o */, + 15CBA3C7196EE670005877BB /* lua_cocos2dx_physics_auto.o.d */, + 15CBA3C8196EE670005877BB /* lua_cocos2dx_spine_auto.o */, + 15CBA3C9196EE670005877BB /* lua_cocos2dx_spine_auto.o.d */, + 15CBA3CA196EE670005877BB /* lua_cocos2dx_studio_auto.o */, + 15CBA3CB196EE670005877BB /* lua_cocos2dx_studio_auto.o.d */, + 15CBA3CC196EE670005877BB /* lua_cocos2dx_ui_auto.o */, + 15CBA3CD196EE670005877BB /* lua_cocos2dx_ui_auto.o.d */, + ); + path = auto; + sourceTree = ""; + }; + 15CBA3CE196EE670005877BB /* manual */ = { + isa = PBXGroup; + children = ( + 15CBA3CF196EE670005877BB /* CCBProxy.o */, + 15CBA3D0196EE670005877BB /* CCBProxy.o.d */, + 15CBA3D1196EE670005877BB /* CCLuaBridge.o */, + 15CBA3D2196EE670005877BB /* CCLuaBridge.o.d */, + 15CBA3D3196EE670005877BB /* CCLuaEngine.o */, + 15CBA3D4196EE670005877BB /* CCLuaEngine.o.d */, + 15CBA3D5196EE670005877BB /* CCLuaStack.o */, + 15CBA3D6196EE670005877BB /* CCLuaStack.o.d */, + 15CBA3D7196EE670005877BB /* CCLuaValue.o */, + 15CBA3D8196EE670005877BB /* CCLuaValue.o.d */, + 15CBA3D9196EE670005877BB /* Cocos2dxLuaLoader.o */, + 15CBA3DA196EE670005877BB /* Cocos2dxLuaLoader.o.d */, + 15CBA3DB196EE670005877BB /* lua_cocos2dx_coco_studio_manual.o */, + 15CBA3DC196EE670005877BB /* lua_cocos2dx_coco_studio_manual.o.d */, + 15CBA3DD196EE670005877BB /* lua_cocos2dx_controller_manual.o */, + 15CBA3DE196EE670005877BB /* lua_cocos2dx_controller_manual.o.d */, + 15CBA3DF196EE670005877BB /* lua_cocos2dx_deprecated.o */, + 15CBA3E0196EE670005877BB /* lua_cocos2dx_deprecated.o.d */, + 15CBA3E1196EE670005877BB /* lua_cocos2dx_extension_manual.o */, + 15CBA3E2196EE670005877BB /* lua_cocos2dx_extension_manual.o.d */, + 15CBA3E3196EE670005877BB /* lua_cocos2dx_manual.o */, + 15CBA3E4196EE670005877BB /* lua_cocos2dx_manual.o.d */, + 15CBA3E5196EE670005877BB /* lua_cocos2dx_physics_manual.o */, + 15CBA3E6196EE670005877BB /* lua_cocos2dx_physics_manual.o.d */, + 15CBA3E7196EE670005877BB /* lua_cocos2dx_spine_manual.o */, + 15CBA3E8196EE670005877BB /* lua_cocos2dx_spine_manual.o.d */, + 15CBA3E9196EE670005877BB /* lua_cocos2dx_ui_manual.o */, + 15CBA3EA196EE670005877BB /* lua_cocos2dx_ui_manual.o.d */, + 15CBA3EB196EE670005877BB /* lua_debugger.o */, + 15CBA3EC196EE670005877BB /* lua_debugger.o.d */, + 15CBA3ED196EE670005877BB /* lua_extensions.o */, + 15CBA3EE196EE670005877BB /* lua_extensions.o.d */, + 15CBA3EF196EE670005877BB /* Lua_web_socket.o */, + 15CBA3F0196EE670005877BB /* Lua_web_socket.o.d */, + 15CBA3F1196EE670005877BB /* lua_xml_http_request.o */, + 15CBA3F2196EE670005877BB /* lua_xml_http_request.o.d */, + 15CBA3F3196EE670005877BB /* LuaBasicConversions.o */, + 15CBA3F4196EE670005877BB /* LuaBasicConversions.o.d */, + 15CBA3F5196EE670005877BB /* LuaOpengl.o */, + 15CBA3F6196EE670005877BB /* LuaOpengl.o.d */, + 15CBA3F7196EE670005877BB /* LuaScriptHandlerMgr.o */, + 15CBA3F8196EE670005877BB /* LuaScriptHandlerMgr.o.d */, + 15CBA3F9196EE670005877BB /* LuaSkeletonAnimation.o */, + 15CBA3FA196EE670005877BB /* LuaSkeletonAnimation.o.d */, + 15CBA3FB196EE670005877BB /* platform */, + 15CBA402196EE670005877BB /* tolua_fix.o */, + 15CBA403196EE670005877BB /* tolua_fix.o.d */, + ); + path = manual; + sourceTree = ""; + }; + 15CBA3FB196EE670005877BB /* platform */ = { + isa = PBXGroup; + children = ( + 15CBA3FC196EE670005877BB /* android */, + ); + path = platform; + sourceTree = ""; + }; + 15CBA3FC196EE670005877BB /* android */ = { + isa = PBXGroup; + children = ( + 15CBA3FD196EE670005877BB /* CCLuaJavaBridge.o */, + 15CBA3FE196EE670005877BB /* CCLuaJavaBridge.o.d */, + 15CBA3FF196EE670005877BB /* jni */, + ); + path = android; + sourceTree = ""; + }; + 15CBA3FF196EE670005877BB /* jni */ = { + isa = PBXGroup; + children = ( + 15CBA400196EE670005877BB /* Java_org_cocos2dx_lib_Cocos2dxLuaJavaBridge.o */, + 15CBA401196EE670005877BB /* Java_org_cocos2dx_lib_Cocos2dxLuaJavaBridge.o.d */, + ); + path = jni; + sourceTree = ""; + }; + 15CBA404196EE670005877BB /* cocos_network_static */ = { + isa = PBXGroup; + children = ( + 15CBA405196EE670005877BB /* HttpClient.o */, + 15CBA406196EE670005877BB /* HttpClient.o.d */, + 15CBA407196EE670005877BB /* SocketIO.o */, + 15CBA408196EE670005877BB /* SocketIO.o.d */, + 15CBA409196EE670005877BB /* WebSocket.o */, + 15CBA40A196EE670005877BB /* WebSocket.o.d */, + ); + path = cocos_network_static; + sourceTree = ""; + }; + 15CBA40B196EE670005877BB /* cocos_ui_static */ = { + isa = PBXGroup; + children = ( + 15CBA40C196EE670005877BB /* CCProtectedNode.o */, + 15CBA40D196EE670005877BB /* CCProtectedNode.o.d */, + 15CBA40E196EE670005877BB /* CocosGUI.o */, + 15CBA40F196EE670005877BB /* CocosGUI.o.d */, + 15CBA410196EE670005877BB /* UIButton.o */, + 15CBA411196EE670005877BB /* UIButton.o.d */, + 15CBA412196EE670005877BB /* UICheckBox.o */, + 15CBA413196EE670005877BB /* UICheckBox.o.d */, + 15CBA414196EE670005877BB /* UIDeprecated.o */, + 15CBA415196EE670005877BB /* UIDeprecated.o.d */, + 15CBA416196EE670005877BB /* UIHBox.o */, + 15CBA417196EE670005877BB /* UIHBox.o.d */, + 15CBA418196EE670005877BB /* UIHelper.o */, + 15CBA419196EE670005877BB /* UIHelper.o.d */, + 15CBA41A196EE670005877BB /* UIImageView.o */, + 15CBA41B196EE670005877BB /* UIImageView.o.d */, + 15CBA41C196EE670005877BB /* UILayout.o */, + 15CBA41D196EE670005877BB /* UILayout.o.d */, + 15CBA41E196EE670005877BB /* UILayoutManager.o */, + 15CBA41F196EE670005877BB /* UILayoutManager.o.d */, + 15CBA420196EE670005877BB /* UILayoutParameter.o */, + 15CBA421196EE670005877BB /* UILayoutParameter.o.d */, + 15CBA422196EE670005877BB /* UIListView.o */, + 15CBA423196EE670005877BB /* UIListView.o.d */, + 15CBA424196EE670005877BB /* UILoadingBar.o */, + 15CBA425196EE670005877BB /* UILoadingBar.o.d */, + 15CBA426196EE670005877BB /* UIPageView.o */, + 15CBA427196EE670005877BB /* UIPageView.o.d */, + 15CBA428196EE670005877BB /* UIRelativeBox.o */, + 15CBA429196EE670005877BB /* UIRelativeBox.o.d */, + 15CBA42A196EE670005877BB /* UIRichText.o */, + 15CBA42B196EE670005877BB /* UIRichText.o.d */, + 15CBA42C196EE670005877BB /* UIScrollView.o */, + 15CBA42D196EE670005877BB /* UIScrollView.o.d */, + 15CBA42E196EE670005877BB /* UISlider.o */, + 15CBA42F196EE670005877BB /* UISlider.o.d */, + 15CBA430196EE670005877BB /* UIText.o */, + 15CBA431196EE670005877BB /* UIText.o.d */, + 15CBA432196EE670005877BB /* UITextAtlas.o */, + 15CBA433196EE670005877BB /* UITextAtlas.o.d */, + 15CBA434196EE670005877BB /* UITextBMFont.o */, + 15CBA435196EE670005877BB /* UITextBMFont.o.d */, + 15CBA436196EE670005877BB /* UITextField.o */, + 15CBA437196EE670005877BB /* UITextField.o.d */, + 15CBA438196EE670005877BB /* UIVBox.o */, + 15CBA439196EE670005877BB /* UIVBox.o.d */, + 15CBA43A196EE670005877BB /* UIVideoPlayerAndroid.o */, + 15CBA43B196EE670005877BB /* UIVideoPlayerAndroid.o.d */, + 15CBA43C196EE670005877BB /* UIWidget.o */, + 15CBA43D196EE670005877BB /* UIWidget.o.d */, + ); + path = cocos_ui_static; + sourceTree = ""; + }; + 15CBA43E196EE670005877BB /* cocosbuilder_static */ = { + isa = PBXGroup; + children = ( + 15CBA43F196EE670005877BB /* CCBAnimationManager.o */, + 15CBA440196EE670005877BB /* CCBAnimationManager.o.d */, + 15CBA441196EE670005877BB /* CCBFileLoader.o */, + 15CBA442196EE670005877BB /* CCBFileLoader.o.d */, + 15CBA443196EE670005877BB /* CCBKeyframe.o */, + 15CBA444196EE670005877BB /* CCBKeyframe.o.d */, + 15CBA445196EE670005877BB /* CCBReader.o */, + 15CBA446196EE670005877BB /* CCBReader.o.d */, + 15CBA447196EE670005877BB /* CCBSequence.o */, + 15CBA448196EE670005877BB /* CCBSequence.o.d */, + 15CBA449196EE670005877BB /* CCBSequenceProperty.o */, + 15CBA44A196EE670005877BB /* CCBSequenceProperty.o.d */, + 15CBA44B196EE670005877BB /* CCControlButtonLoader.o */, + 15CBA44C196EE670005877BB /* CCControlButtonLoader.o.d */, + 15CBA44D196EE670005877BB /* CCControlLoader.o */, + 15CBA44E196EE670005877BB /* CCControlLoader.o.d */, + 15CBA44F196EE670005877BB /* CCLabelBMFontLoader.o */, + 15CBA450196EE670005877BB /* CCLabelBMFontLoader.o.d */, + 15CBA451196EE670005877BB /* CCLabelTTFLoader.o */, + 15CBA452196EE670005877BB /* CCLabelTTFLoader.o.d */, + 15CBA453196EE670005877BB /* CCLayerColorLoader.o */, + 15CBA454196EE670005877BB /* CCLayerColorLoader.o.d */, + 15CBA455196EE670005877BB /* CCLayerGradientLoader.o */, + 15CBA456196EE670005877BB /* CCLayerGradientLoader.o.d */, + 15CBA457196EE670005877BB /* CCLayerLoader.o */, + 15CBA458196EE670005877BB /* CCLayerLoader.o.d */, + 15CBA459196EE670005877BB /* CCMenuItemImageLoader.o */, + 15CBA45A196EE670005877BB /* CCMenuItemImageLoader.o.d */, + 15CBA45B196EE670005877BB /* CCMenuItemLoader.o */, + 15CBA45C196EE670005877BB /* CCMenuItemLoader.o.d */, + 15CBA45D196EE670005877BB /* CCNode+CCBRelativePositioning.o */, + 15CBA45E196EE670005877BB /* CCNode+CCBRelativePositioning.o.d */, + 15CBA45F196EE670005877BB /* CCNodeLoader.o */, + 15CBA460196EE670005877BB /* CCNodeLoader.o.d */, + 15CBA461196EE670005877BB /* CCNodeLoaderLibrary.o */, + 15CBA462196EE670005877BB /* CCNodeLoaderLibrary.o.d */, + 15CBA463196EE670005877BB /* CCParticleSystemQuadLoader.o */, + 15CBA464196EE670005877BB /* CCParticleSystemQuadLoader.o.d */, + 15CBA465196EE670005877BB /* CCScale9SpriteLoader.o */, + 15CBA466196EE670005877BB /* CCScale9SpriteLoader.o.d */, + 15CBA467196EE670005877BB /* CCScrollViewLoader.o */, + 15CBA468196EE670005877BB /* CCScrollViewLoader.o.d */, + 15CBA469196EE670005877BB /* CCSpriteLoader.o */, + 15CBA46A196EE670005877BB /* CCSpriteLoader.o.d */, + ); + path = cocosbuilder_static; + sourceTree = ""; + }; + 15CBA46B196EE670005877BB /* cocosdenshion_static */ = { + isa = PBXGroup; + children = ( + 15CBA46C196EE670005877BB /* ccdandroidUtils.o */, + 15CBA46D196EE670005877BB /* ccdandroidUtils.o.d */, + 15CBA46E196EE670005877BB /* cddSimpleAudioEngine.o */, + 15CBA46F196EE670005877BB /* cddSimpleAudioEngine.o.d */, + 15CBA470196EE670005877BB /* jni */, + ); + path = cocosdenshion_static; + sourceTree = ""; + }; + 15CBA470196EE670005877BB /* jni */ = { + isa = PBXGroup; + children = ( + 15CBA471196EE670005877BB /* cddandroidAndroidJavaEngine.o */, + 15CBA472196EE670005877BB /* cddandroidAndroidJavaEngine.o.d */, + ); + path = jni; + sourceTree = ""; + }; + 15CBA473196EE670005877BB /* cocostudio_static */ = { + isa = PBXGroup; + children = ( + 15CBA474196EE670005877BB /* ActionTimeline */, + 15CBA47F196EE670005877BB /* CCActionFrame.o */, + 15CBA480196EE670005877BB /* CCActionFrame.o.d */, + 15CBA481196EE670005877BB /* CCActionFrameEasing.o */, + 15CBA482196EE670005877BB /* CCActionFrameEasing.o.d */, + 15CBA483196EE670005877BB /* CCActionManagerEx.o */, + 15CBA484196EE670005877BB /* CCActionManagerEx.o.d */, + 15CBA485196EE670005877BB /* CCActionNode.o */, + 15CBA486196EE670005877BB /* CCActionNode.o.d */, + 15CBA487196EE670005877BB /* CCActionObject.o */, + 15CBA488196EE670005877BB /* CCActionObject.o.d */, + 15CBA489196EE670005877BB /* CCArmature.o */, + 15CBA48A196EE670005877BB /* CCArmature.o.d */, + 15CBA48B196EE670005877BB /* CCArmatureAnimation.o */, + 15CBA48C196EE670005877BB /* CCArmatureAnimation.o.d */, + 15CBA48D196EE670005877BB /* CCArmatureDataManager.o */, + 15CBA48E196EE670005877BB /* CCArmatureDataManager.o.d */, + 15CBA48F196EE670005877BB /* CCArmatureDefine.o */, + 15CBA490196EE670005877BB /* CCArmatureDefine.o.d */, + 15CBA491196EE670005877BB /* CCBatchNode.o */, + 15CBA492196EE670005877BB /* CCBatchNode.o.d */, + 15CBA493196EE670005877BB /* CCBone.o */, + 15CBA494196EE670005877BB /* CCBone.o.d */, + 15CBA495196EE670005877BB /* CCColliderDetector.o */, + 15CBA496196EE670005877BB /* CCColliderDetector.o.d */, + 15CBA497196EE670005877BB /* CCComAttribute.o */, + 15CBA498196EE670005877BB /* CCComAttribute.o.d */, + 15CBA499196EE670005877BB /* CCComAudio.o */, + 15CBA49A196EE670005877BB /* CCComAudio.o.d */, + 15CBA49B196EE670005877BB /* CCComController.o */, + 15CBA49C196EE670005877BB /* CCComController.o.d */, + 15CBA49D196EE670005877BB /* CCComRender.o */, + 15CBA49E196EE670005877BB /* CCComRender.o.d */, + 15CBA49F196EE670005877BB /* CCDataReaderHelper.o */, + 15CBA4A0196EE670005877BB /* CCDataReaderHelper.o.d */, + 15CBA4A1196EE670005877BB /* CCDatas.o */, + 15CBA4A2196EE670005877BB /* CCDatas.o.d */, + 15CBA4A3196EE670005877BB /* CCDecorativeDisplay.o */, + 15CBA4A4196EE670005877BB /* CCDecorativeDisplay.o.d */, + 15CBA4A5196EE670005877BB /* CCDisplayFactory.o */, + 15CBA4A6196EE670005877BB /* CCDisplayFactory.o.d */, + 15CBA4A7196EE670005877BB /* CCDisplayManager.o */, + 15CBA4A8196EE670005877BB /* CCDisplayManager.o.d */, + 15CBA4A9196EE670005877BB /* CCInputDelegate.o */, + 15CBA4AA196EE670005877BB /* CCInputDelegate.o.d */, + 15CBA4AB196EE670005877BB /* CCProcessBase.o */, + 15CBA4AC196EE670005877BB /* CCProcessBase.o.d */, + 15CBA4AD196EE670005877BB /* CCSGUIReader.o */, + 15CBA4AE196EE670005877BB /* CCSGUIReader.o.d */, + 15CBA4AF196EE670005877BB /* CCSkin.o */, + 15CBA4B0196EE670005877BB /* CCSkin.o.d */, + 15CBA4B1196EE671005877BB /* CCSpriteFrameCacheHelper.o */, + 15CBA4B2196EE671005877BB /* CCSpriteFrameCacheHelper.o.d */, + 15CBA4B3196EE671005877BB /* CCSSceneReader.o */, + 15CBA4B4196EE671005877BB /* CCSSceneReader.o.d */, + 15CBA4B5196EE671005877BB /* CCTransformHelp.o */, + 15CBA4B6196EE671005877BB /* CCTransformHelp.o.d */, + 15CBA4B7196EE671005877BB /* CCTween.o */, + 15CBA4B8196EE671005877BB /* CCTween.o.d */, + 15CBA4B9196EE671005877BB /* CCUtilMath.o */, + 15CBA4BA196EE671005877BB /* CCUtilMath.o.d */, + 15CBA4BB196EE671005877BB /* CocoLoader.o */, + 15CBA4BC196EE671005877BB /* CocoLoader.o.d */, + 15CBA4BD196EE671005877BB /* DictionaryHelper.o */, + 15CBA4BE196EE671005877BB /* DictionaryHelper.o.d */, + 15CBA4BF196EE671005877BB /* TriggerBase.o */, + 15CBA4C0196EE671005877BB /* TriggerBase.o.d */, + 15CBA4C1196EE671005877BB /* TriggerMng.o */, + 15CBA4C2196EE671005877BB /* TriggerMng.o.d */, + 15CBA4C3196EE671005877BB /* TriggerObj.o */, + 15CBA4C4196EE671005877BB /* TriggerObj.o.d */, + 15CBA4C5196EE671005877BB /* WidgetReader */, + ); + path = cocostudio_static; + sourceTree = ""; + }; + 15CBA474196EE670005877BB /* ActionTimeline */ = { + isa = PBXGroup; + children = ( + 15CBA475196EE670005877BB /* CCActionTimeline.o */, + 15CBA476196EE670005877BB /* CCActionTimeline.o.d */, + 15CBA477196EE670005877BB /* CCActionTimelineCache.o */, + 15CBA478196EE670005877BB /* CCActionTimelineCache.o.d */, + 15CBA479196EE670005877BB /* CCFrame.o */, + 15CBA47A196EE670005877BB /* CCFrame.o.d */, + 15CBA47B196EE670005877BB /* CCNodeReader.o */, + 15CBA47C196EE670005877BB /* CCNodeReader.o.d */, + 15CBA47D196EE670005877BB /* CCTimeLine.o */, + 15CBA47E196EE670005877BB /* CCTimeLine.o.d */, + ); + path = ActionTimeline; + sourceTree = ""; + }; + 15CBA4C5196EE671005877BB /* WidgetReader */ = { + isa = PBXGroup; + children = ( + 15CBA4C6196EE671005877BB /* ButtonReader */, + 15CBA4C9196EE671005877BB /* CheckBoxReader */, + 15CBA4CC196EE671005877BB /* ImageViewReader */, + 15CBA4CF196EE671005877BB /* LayoutReader */, + 15CBA4D2196EE671005877BB /* ListViewReader */, + 15CBA4D5196EE671005877BB /* LoadingBarReader */, + 15CBA4D8196EE671005877BB /* PageViewReader */, + 15CBA4DB196EE671005877BB /* ScrollViewReader */, + 15CBA4DE196EE671005877BB /* SliderReader */, + 15CBA4E1196EE671005877BB /* TextAtlasReader */, + 15CBA4E4196EE671005877BB /* TextBMFontReader */, + 15CBA4E7196EE671005877BB /* TextFieldReader */, + 15CBA4EA196EE671005877BB /* TextReader */, + 15CBA4ED196EE671005877BB /* WidgetReader.o */, + 15CBA4EE196EE671005877BB /* WidgetReader.o.d */, + ); + path = WidgetReader; + sourceTree = ""; + }; + 15CBA4C6196EE671005877BB /* ButtonReader */ = { + isa = PBXGroup; + children = ( + 15CBA4C7196EE671005877BB /* ButtonReader.o */, + 15CBA4C8196EE671005877BB /* ButtonReader.o.d */, + ); + path = ButtonReader; + sourceTree = ""; + }; + 15CBA4C9196EE671005877BB /* CheckBoxReader */ = { + isa = PBXGroup; + children = ( + 15CBA4CA196EE671005877BB /* CheckBoxReader.o */, + 15CBA4CB196EE671005877BB /* CheckBoxReader.o.d */, + ); + path = CheckBoxReader; + sourceTree = ""; + }; + 15CBA4CC196EE671005877BB /* ImageViewReader */ = { + isa = PBXGroup; + children = ( + 15CBA4CD196EE671005877BB /* ImageViewReader.o */, + 15CBA4CE196EE671005877BB /* ImageViewReader.o.d */, + ); + path = ImageViewReader; + sourceTree = ""; + }; + 15CBA4CF196EE671005877BB /* LayoutReader */ = { + isa = PBXGroup; + children = ( + 15CBA4D0196EE671005877BB /* LayoutReader.o */, + 15CBA4D1196EE671005877BB /* LayoutReader.o.d */, + ); + path = LayoutReader; + sourceTree = ""; + }; + 15CBA4D2196EE671005877BB /* ListViewReader */ = { + isa = PBXGroup; + children = ( + 15CBA4D3196EE671005877BB /* ListViewReader.o */, + 15CBA4D4196EE671005877BB /* ListViewReader.o.d */, + ); + path = ListViewReader; + sourceTree = ""; + }; + 15CBA4D5196EE671005877BB /* LoadingBarReader */ = { + isa = PBXGroup; + children = ( + 15CBA4D6196EE671005877BB /* LoadingBarReader.o */, + 15CBA4D7196EE671005877BB /* LoadingBarReader.o.d */, + ); + path = LoadingBarReader; + sourceTree = ""; + }; + 15CBA4D8196EE671005877BB /* PageViewReader */ = { + isa = PBXGroup; + children = ( + 15CBA4D9196EE671005877BB /* PageViewReader.o */, + 15CBA4DA196EE671005877BB /* PageViewReader.o.d */, + ); + path = PageViewReader; + sourceTree = ""; + }; + 15CBA4DB196EE671005877BB /* ScrollViewReader */ = { + isa = PBXGroup; + children = ( + 15CBA4DC196EE671005877BB /* ScrollViewReader.o */, + 15CBA4DD196EE671005877BB /* ScrollViewReader.o.d */, + ); + path = ScrollViewReader; + sourceTree = ""; + }; + 15CBA4DE196EE671005877BB /* SliderReader */ = { + isa = PBXGroup; + children = ( + 15CBA4DF196EE671005877BB /* SliderReader.o */, + 15CBA4E0196EE671005877BB /* SliderReader.o.d */, + ); + path = SliderReader; + sourceTree = ""; + }; + 15CBA4E1196EE671005877BB /* TextAtlasReader */ = { + isa = PBXGroup; + children = ( + 15CBA4E2196EE671005877BB /* TextAtlasReader.o */, + 15CBA4E3196EE671005877BB /* TextAtlasReader.o.d */, + ); + path = TextAtlasReader; + sourceTree = ""; + }; + 15CBA4E4196EE671005877BB /* TextBMFontReader */ = { + isa = PBXGroup; + children = ( + 15CBA4E5196EE671005877BB /* TextBMFontReader.o */, + 15CBA4E6196EE671005877BB /* TextBMFontReader.o.d */, + ); + path = TextBMFontReader; + sourceTree = ""; + }; + 15CBA4E7196EE671005877BB /* TextFieldReader */ = { + isa = PBXGroup; + children = ( + 15CBA4E8196EE671005877BB /* TextFieldReader.o */, + 15CBA4E9196EE671005877BB /* TextFieldReader.o.d */, + ); + path = TextFieldReader; + sourceTree = ""; + }; + 15CBA4EA196EE671005877BB /* TextReader */ = { + isa = PBXGroup; + children = ( + 15CBA4EB196EE671005877BB /* TextReader.o */, + 15CBA4EC196EE671005877BB /* TextReader.o.d */, + ); + path = TextReader; + sourceTree = ""; + }; + 15CBA4EF196EE671005877BB /* cpufeatures */ = { + isa = PBXGroup; + children = ( + 15CBA4F0196EE671005877BB /* cpu-features.o */, + 15CBA4F1196EE671005877BB /* cpu-features.o.d */, + ); + path = cpufeatures; + sourceTree = ""; + }; + 15CBA4F2196EE671005877BB /* lua_game_controller_test_shared */ = { + isa = PBXGroup; + children = ( + 15CBA4F3196EE671005877BB /* __ */, + 15CBA4F8196EE671005877BB /* main.o */, + 15CBA4F9196EE671005877BB /* main.o.d */, + ); + path = lua_game_controller_test_shared; + sourceTree = ""; + }; + 15CBA4F3196EE671005877BB /* __ */ = { + isa = PBXGroup; + children = ( + 15CBA4F4196EE671005877BB /* __ */, + ); + path = __; + sourceTree = ""; + }; + 15CBA4F4196EE671005877BB /* __ */ = { + isa = PBXGroup; + children = ( + 15CBA4F5196EE671005877BB /* Classes */, + ); + path = __; + sourceTree = ""; + }; + 15CBA4F5196EE671005877BB /* Classes */ = { + isa = PBXGroup; + children = ( + 15CBA4F6196EE671005877BB /* AppDelegate.o */, + 15CBA4F7196EE671005877BB /* AppDelegate.o.d */, + ); + path = Classes; + sourceTree = ""; + }; + 15CBA4FA196EE671005877BB /* spine_static */ = { + isa = PBXGroup; + children = ( + 15CBA4FB196EE671005877BB /* Animation.o */, + 15CBA4FC196EE671005877BB /* Animation.o.d */, + 15CBA4FD196EE671005877BB /* AnimationState.o */, + 15CBA4FE196EE671005877BB /* AnimationState.o.d */, + 15CBA4FF196EE671005877BB /* AnimationStateData.o */, + 15CBA500196EE671005877BB /* AnimationStateData.o.d */, + 15CBA501196EE671005877BB /* Atlas.o */, + 15CBA502196EE671005877BB /* Atlas.o.d */, + 15CBA503196EE671005877BB /* AtlasAttachmentLoader.o */, + 15CBA504196EE671005877BB /* AtlasAttachmentLoader.o.d */, + 15CBA505196EE671005877BB /* Attachment.o */, + 15CBA506196EE671005877BB /* Attachment.o.d */, + 15CBA507196EE671005877BB /* AttachmentLoader.o */, + 15CBA508196EE671005877BB /* AttachmentLoader.o.d */, + 15CBA509196EE671005877BB /* Bone.o */, + 15CBA50A196EE671005877BB /* Bone.o.d */, + 15CBA50B196EE671005877BB /* BoneData.o */, + 15CBA50C196EE671005877BB /* BoneData.o.d */, + 15CBA50D196EE671005877BB /* BoundingBoxAttachment.o */, + 15CBA50E196EE671005877BB /* BoundingBoxAttachment.o.d */, + 15CBA50F196EE671005877BB /* CCSkeleton.o */, + 15CBA510196EE671005877BB /* CCSkeleton.o.d */, + 15CBA511196EE671005877BB /* CCSkeletonAnimation.o */, + 15CBA512196EE671005877BB /* CCSkeletonAnimation.o.d */, + 15CBA513196EE671005877BB /* Event.o */, + 15CBA514196EE671005877BB /* Event.o.d */, + 15CBA515196EE671005877BB /* EventData.o */, + 15CBA516196EE671005877BB /* EventData.o.d */, + 15CBA517196EE671005877BB /* extension.o */, + 15CBA518196EE671005877BB /* extension.o.d */, + 15CBA519196EE671005877BB /* Json.o */, + 15CBA51A196EE671005877BB /* Json.o.d */, + 15CBA51B196EE671005877BB /* RegionAttachment.o */, + 15CBA51C196EE671005877BB /* RegionAttachment.o.d */, + 15CBA51D196EE671005877BB /* Skeleton.o */, + 15CBA51E196EE671005877BB /* Skeleton.o.d */, + 15CBA51F196EE671005877BB /* SkeletonBounds.o */, + 15CBA520196EE671005877BB /* SkeletonBounds.o.d */, + 15CBA521196EE671005877BB /* SkeletonData.o */, + 15CBA522196EE671005877BB /* SkeletonData.o.d */, + 15CBA523196EE671005877BB /* SkeletonJson.o */, + 15CBA524196EE671005877BB /* SkeletonJson.o.d */, + 15CBA525196EE671005877BB /* Skin.o */, + 15CBA526196EE671005877BB /* Skin.o.d */, + 15CBA527196EE671005877BB /* Slot.o */, + 15CBA528196EE671005877BB /* Slot.o.d */, + 15CBA529196EE671005877BB /* SlotData.o */, + 15CBA52A196EE671005877BB /* SlotData.o.d */, + 15CBA52B196EE671005877BB /* spine-cocos2dx.o */, + 15CBA52C196EE671005877BB /* spine-cocos2dx.o.d */, + ); + path = spine_static; + sourceTree = ""; + }; + 15CBA52F196EE671005877BB /* res */ = { + isa = PBXGroup; + children = ( + 15CBA530196EE671005877BB /* drawable-hdpi */, + 15CBA532196EE671005877BB /* drawable-ldpi */, + 15CBA534196EE671005877BB /* drawable-mdpi */, + 15CBA536196EE671005877BB /* values */, + ); + path = res; + sourceTree = ""; + }; + 15CBA530196EE671005877BB /* drawable-hdpi */ = { + isa = PBXGroup; + children = ( + 15CBA531196EE671005877BB /* icon.png */, + ); + path = "drawable-hdpi"; + sourceTree = ""; + }; + 15CBA532196EE671005877BB /* drawable-ldpi */ = { + isa = PBXGroup; + children = ( + 15CBA533196EE671005877BB /* icon.png */, + ); + path = "drawable-ldpi"; + sourceTree = ""; + }; + 15CBA534196EE671005877BB /* drawable-mdpi */ = { + isa = PBXGroup; + children = ( + 15CBA535196EE671005877BB /* icon.png */, + ); + path = "drawable-mdpi"; + sourceTree = ""; + }; + 15CBA536196EE671005877BB /* values */ = { + isa = PBXGroup; + children = ( + 15CBA537196EE671005877BB /* strings.xml */, + ); + path = values; + sourceTree = ""; + }; + 15CBA538196EE671005877BB /* src */ = { + isa = PBXGroup; + children = ( + 15CBA539196EE671005877BB /* org */, + ); + path = src; + sourceTree = ""; + }; + 15CBA539196EE671005877BB /* org */ = { + isa = PBXGroup; + children = ( + 15CBA53A196EE671005877BB /* cocos2dx */, + ); + path = org; + sourceTree = ""; + }; + 15CBA53A196EE671005877BB /* cocos2dx */ = { + isa = PBXGroup; + children = ( + 15CBA53B196EE671005877BB /* LuaGameControllerTest */, + ); + path = cocos2dx; + sourceTree = ""; + }; + 15CBA53B196EE671005877BB /* LuaGameControllerTest */ = { + isa = PBXGroup; + children = ( + 15CBA53C196EE671005877BB /* AppActivity.java */, + ); + path = LuaGameControllerTest; + sourceTree = ""; + }; + 15CBA53D196EE671005877BB /* proj.ios */ = { + isa = PBXGroup; + children = ( + 15CBA53E196EE671005877BB /* AppController.h */, + 15CBA53F196EE671005877BB /* AppController.mm */, + 15CBA540196EE671005877BB /* Default-568h@2x.png */, + 15CBA541196EE671005877BB /* Default.png */, + 15CBA542196EE671005877BB /* Default@2x.png */, + 15CBA543196EE671005877BB /* HelloLua_Prefix.pch */, + 15CBA544196EE671005877BB /* Icon-114.png */, + 15CBA545196EE671005877BB /* Icon-120.png */, + 15CBA546196EE671005877BB /* Icon-144.png */, + 15CBA547196EE671005877BB /* Icon-152.png */, + 15CBA548196EE671005877BB /* Icon-57.png */, + 15CBA549196EE671005877BB /* Icon-72.png */, + 15CBA54A196EE671005877BB /* Icon-76.png */, + 15CBA54B196EE671005877BB /* Info.plist */, + 15CBA54C196EE671005877BB /* main.m */, + 15CBA54D196EE671005877BB /* RootViewController.h */, + 15CBA54E196EE671005877BB /* RootViewController.mm */, + ); + path = proj.ios; + sourceTree = ""; + }; + 15CBA9A6196EE6DB005877BB /* res */ = { + isa = PBXGroup; + children = ( + 15CBA9A7196EE6DB005877BB /* .gitignore */, + ); + path = res; + sourceTree = ""; + }; 19C28FACFE9D520D11CA2CBB /* Products */ = { isa = PBXGroup; children = ( @@ -2194,6 +5507,7 @@ 1A0EE41318CDF775004CD58F /* cpp-empty-test iOS.app */, 1A0EE47E18CDF799004CD58F /* lua-empty-test iOS.app */, 3E6177311960FAED00DE83F5 /* game-controller-test IOS.app */, + 15CBA063196EE56C005877BB /* lua-game-controller-test iOS.app */, ); name = Products; sourceTree = ""; @@ -2220,6 +5534,7 @@ 1ABCA36418CD9E060087CE3A /* Lua Common */ = { isa = PBXGroup; children = ( + 156229321973D400009C9067 /* bitExtend.lua */, 15AECE1E195D0EC500907DB0 /* experimentalConstants.lua */, 1503FAA918DA8B6C00F6518C /* ftp.lua */, 1503FAAA18DA8B6C00F6518C /* headers.lua */, @@ -3574,6 +6889,7 @@ 1AC35E0318CEE78300F37B72 /* tests */ = { isa = PBXGroup; children = ( + 15CBA087196EE66D005877BB /* lua-game-controller-test */, 3E6176B51960FA6300DE83F5 /* game-controller-test */, 1AC358B618CEC19F00F37B72 /* cpp-empty-test */, 1AC3592118CECEFF00F37B72 /* cpp-tests */, @@ -3587,8 +6903,6 @@ isa = PBXGroup; children = ( 29080D1E191B595E0066F8DF /* CocoStudioGUITest */, - 29080D1A191B574B0066F8DF /* UITest.cpp */, - 29080D1B191B574B0066F8DF /* UITest.h */, ); name = UITest; sourceTree = ""; @@ -3596,41 +6910,13 @@ 29080D1E191B595E0066F8DF /* CocoStudioGUITest */ = { isa = PBXGroup; children = ( - 3EA0FB6F191C844400B170C8 /* UIVideoPlayerTest */, - 29080D1F191B595E0066F8DF /* CocosGUIScene.cpp */, - 29080D20191B595E0066F8DF /* CocosGUIScene.h */, + 29080D1A191B574B0066F8DF /* UITest.cpp */, + 29080D1B191B574B0066F8DF /* UITest.h */, 29080D21191B595E0066F8DF /* CocoStudioGUITest.cpp */, 29080D22191B595E0066F8DF /* CocoStudioGUITest.h */, - 29080D23191B595E0066F8DF /* CustomGUIScene.cpp */, - 29080D24191B595E0066F8DF /* CustomGUIScene.h */, + 29FBBC00196A9F0D00E65826 /* UIAndEditorTests */, + 29FBBBFB196A9ECD00E65826 /* CocostudioParserTest */, 29080D25191B595E0066F8DF /* CustomTest */, - 29080D2C191B595E0066F8DF /* CustomWidget */, - 29080D37191B595E0066F8DF /* GUIEditorTest.cpp */, - 29080D38191B595E0066F8DF /* GUIEditorTest.h */, - 29080D39191B595E0066F8DF /* UIButtonTest */, - 29080D3E191B595E0066F8DF /* UICheckBoxTest */, - 29080D43191B595E0066F8DF /* UIFocusTest */, - 29080D46191B595E0066F8DF /* UIImageViewTest */, - 29080D4B191B595E0066F8DF /* UILayoutTest */, - 29080D50191B595E0066F8DF /* UIListViewTest */, - 29080D55191B595E0066F8DF /* UILoadingBarTest */, - 29080D5A191B595E0066F8DF /* UIPageViewTest */, - 29080D5F191B595E0066F8DF /* UIRichTextTest */, - 29080D62191B595E0066F8DF /* UIScene.cpp */, - 29080D63191B595E0066F8DF /* UIScene.h */, - 29080D64191B595E0066F8DF /* UIScene_Editor.cpp */, - 29080D65191B595E0066F8DF /* UIScene_Editor.h */, - 29080D66191B595E0066F8DF /* UISceneManager.cpp */, - 29080D67191B595E0066F8DF /* UISceneManager.h */, - 29080D68191B595E0066F8DF /* UISceneManager_Editor.cpp */, - 29080D69191B595E0066F8DF /* UISceneManager_Editor.h */, - 29080D6A191B595E0066F8DF /* UIScrollViewTest */, - 29080D6F191B595E0066F8DF /* UISliderTest */, - 29080D74191B595E0066F8DF /* UITextAtlasTest */, - 29080D79191B595E0066F8DF /* UITextBMFontTest */, - 29080D7E191B595E0066F8DF /* UITextFieldTest */, - 29080D83191B595E0066F8DF /* UITextTest */, - 29080D88191B595E0066F8DF /* UIWidgetAddNodeTest */, ); name = CocoStudioGUITest; path = UITest/CocoStudioGUITest; @@ -3639,6 +6925,9 @@ 29080D25191B595E0066F8DF /* CustomTest */ = { isa = PBXGroup; children = ( + 29080D2C191B595E0066F8DF /* CustomWidget */, + 29080D23191B595E0066F8DF /* CustomGUIScene.cpp */, + 29080D24191B595E0066F8DF /* CustomGUIScene.h */, 29080D26191B595E0066F8DF /* CustomImageTest */, 29080D29191B595E0066F8DF /* CustomParticleWidgetTest */, ); @@ -3677,7 +6966,8 @@ 29080D35191B595E0066F8DF /* CustomReader.cpp */, 29080D36191B595E0066F8DF /* CustomReader.h */, ); - path = CustomWidget; + name = CustomWidget; + path = ../CustomWidget; sourceTree = ""; }; 29080D39191B595E0066F8DF /* UIButtonTest */ = { @@ -3868,6 +7158,16 @@ 29B97323FDCFA39411CA2CEA /* Frameworks */ = { isa = PBXGroup; children = ( + 15CBA9DC196EEAA6005877BB /* libz.dylib */, + 15CBA9DA196EEA90005877BB /* CoreMotion.framework */, + 15CBA9D8196EEA7D005877BB /* QuartzCore.framework */, + 15CBA9D6196EEA63005877BB /* AudioToolbox.framework */, + 15CBA9D3196EEA33005877BB /* OpenAL.framework */, + 15CBA9C8196EE97F005877BB /* CoreGraphics.framework */, + 15CBA9C6196EE971005877BB /* OpenGLES.framework */, + 15CBA9C4196EE962005877BB /* UIKit.framework */, + 15CBA9C2196EE951005877BB /* AVFoundation.framework */, + 15CBA9C0196EE943005877BB /* Foundation.framework */, 3E61773C1960FBD100DE83F5 /* GameController.framework */, 3E61773A1960FBC300DE83F5 /* CFNetwork.framework */, 3E6177381960FBB800DE83F5 /* SystemConfiguration.framework */, @@ -3908,6 +7208,53 @@ name = Frameworks; sourceTree = ""; }; + 29FBBBFB196A9ECD00E65826 /* CocostudioParserTest */ = { + isa = PBXGroup; + children = ( + 290E94B3196FC16900694919 /* CocostudioParserTest.cpp */, + 290E94B4196FC16900694919 /* CocostudioParserTest.h */, + 29FBBBFC196A9ECD00E65826 /* CocostudioParserJsonTest.cpp */, + 29FBBBFD196A9ECD00E65826 /* CocostudioParserJsonTest.h */, + ); + path = CocostudioParserTest; + sourceTree = ""; + }; + 29FBBC00196A9F0D00E65826 /* UIAndEditorTests */ = { + isa = PBXGroup; + children = ( + 29080D1F191B595E0066F8DF /* CocosGUIScene.cpp */, + 29080D20191B595E0066F8DF /* CocosGUIScene.h */, + 29080D37191B595E0066F8DF /* GUIEditorTest.cpp */, + 29080D38191B595E0066F8DF /* GUIEditorTest.h */, + 29080D62191B595E0066F8DF /* UIScene.cpp */, + 29080D63191B595E0066F8DF /* UIScene.h */, + 29080D64191B595E0066F8DF /* UIScene_Editor.cpp */, + 29080D65191B595E0066F8DF /* UIScene_Editor.h */, + 29080D66191B595E0066F8DF /* UISceneManager.cpp */, + 29080D67191B595E0066F8DF /* UISceneManager.h */, + 29080D68191B595E0066F8DF /* UISceneManager_Editor.cpp */, + 29080D69191B595E0066F8DF /* UISceneManager_Editor.h */, + 29080D6A191B595E0066F8DF /* UIScrollViewTest */, + 29080D6F191B595E0066F8DF /* UISliderTest */, + 29080D74191B595E0066F8DF /* UITextAtlasTest */, + 29080D79191B595E0066F8DF /* UITextBMFontTest */, + 29080D7E191B595E0066F8DF /* UITextFieldTest */, + 29080D83191B595E0066F8DF /* UITextTest */, + 29080D88191B595E0066F8DF /* UIWidgetAddNodeTest */, + 29080D39191B595E0066F8DF /* UIButtonTest */, + 29080D3E191B595E0066F8DF /* UICheckBoxTest */, + 29080D43191B595E0066F8DF /* UIFocusTest */, + 29080D46191B595E0066F8DF /* UIImageViewTest */, + 29080D4B191B595E0066F8DF /* UILayoutTest */, + 29080D50191B595E0066F8DF /* UIListViewTest */, + 29080D55191B595E0066F8DF /* UILoadingBarTest */, + 29080D5A191B595E0066F8DF /* UIPageViewTest */, + 29080D5F191B595E0066F8DF /* UIRichTextTest */, + 3EA0FB6F191C844400B170C8 /* UIVideoPlayerTest */, + ); + name = UIAndEditorTests; + sourceTree = ""; + }; 38FA2E70194AEBE100FF2BE4 /* CocoStudioActionTimelineTest */ = { isa = PBXGroup; children = ( @@ -4016,6 +7363,28 @@ /* End PBXGroup section */ /* Begin PBXNativeTarget section */ + 15CBA015196EE56C005877BB /* lua-game-controller-test iOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = 15CBA060196EE56C005877BB /* Build configuration list for PBXNativeTarget "lua-game-controller-test iOS" */; + buildPhases = ( + 15CBA020196EE56C005877BB /* Sources */, + 15CBA025196EE56C005877BB /* Frameworks */, + 15CBA036196EE56C005877BB /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 15CBA016196EE56C005877BB /* PBXTargetDependency */, + 15CBA018196EE56C005877BB /* PBXTargetDependency */, + 15CBA01A196EE56C005877BB /* PBXTargetDependency */, + 15CBA01C196EE56C005877BB /* PBXTargetDependency */, + 15CBA01E196EE56C005877BB /* PBXTargetDependency */, + ); + name = "lua-game-controller-test iOS"; + productName = "Test lua iOS"; + productReference = 15CBA063196EE56C005877BB /* lua-game-controller-test iOS.app */; + productType = "com.apple.product-type.application"; + }; 1A0EE1C618CDF6DA004CD58F /* cpp-empty-test Mac */ = { isa = PBXNativeTarget; buildConfigurationList = 1A0EE2AF18CDF6DA004CD58F /* Build configuration list for PBXNativeTarget "cpp-empty-test Mac" */; @@ -4254,6 +7623,7 @@ 1ABCA2CC18CD93580087CE3A /* lua-tests iOS */, 1A0EE41918CDF799004CD58F /* lua-empty-test iOS */, 3E6176FF1960FAED00DE83F5 /* game-controller-test IOS */, + 15CBA015196EE56C005877BB /* lua-game-controller-test iOS */, ); }; /* End PBXProject section */ @@ -4346,6 +7716,26 @@ /* End PBXReferenceProxy section */ /* Begin PBXResourcesBuildPhase section */ + 15CBA036196EE56C005877BB /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 15CBA9B3196EE824005877BB /* src in Resources */, + 15CBA9AF196EE80B005877BB /* fonts in Resources */, + 15CBA9B0196EE80B005877BB /* ipad in Resources */, + 15CBA9B1196EE80B005877BB /* ipadhd in Resources */, + 15CBA9B2196EE80B005877BB /* iphone in Resources */, + 15CBA9F2196F8718005877BB /* extern.lua in Resources */, + 15CBA9F1196F865C005877BB /* json.lua in Resources */, + 15CBA9A9196EE7FA005877BB /* Cocos2d.lua in Resources */, + 15CBA9AA196EE7FA005877BB /* Cocos2dConstants.lua in Resources */, + 15CBA9AB196EE7FA005877BB /* CocoStudio.lua in Resources */, + 15CBA9AC196EE7FA005877BB /* Deprecated.lua in Resources */, + 15CBA9AD196EE7FA005877BB /* DeprecatedClass.lua in Resources */, + 15CBA9AE196EE7FA005877BB /* DeprecatedEnum.lua in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; 1A0EE1D118CDF6DA004CD58F /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; @@ -4511,6 +7901,7 @@ 15C90B4918E66C2A00D69802 /* tp.lua in Resources */, 1AC35DE918CEE65900F37B72 /* effect1.wav in Resources */, 1ABCA38E18CD9E180087CE3A /* GuiConstants.lua in Resources */, + 156229331973D400009C9067 /* bitExtend.lua in Resources */, 15C90B3F18E66C0C00D69802 /* ltn12.lua in Resources */, 15C90B4718E66C2400D69802 /* socket.lua in Resources */, 15C90B3A18E66BE200D69802 /* ftp.lua in Resources */, @@ -4553,6 +7944,7 @@ 15B0870D195AD52000D6F62B /* ActionTimeline in Resources */, 15E66FC8192D957100C20A52 /* Sprite3DTest in Resources */, 15C90B4418E66C1800D69802 /* mime.lua in Resources */, + 156229341973D400009C9067 /* bitExtend.lua in Resources */, 15C90B4C18E66C3100D69802 /* url.lua in Resources */, 1AC35DD618CEE65200F37B72 /* Misc in Resources */, 1ABCA37B18CD9E180087CE3A /* CCBReaderLoad.lua in Resources */, @@ -4745,6 +8137,19 @@ /* End PBXResourcesBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ + 15CBA020196EE56C005877BB /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 15CBA9B7196EE8D9005877BB /* AppController.mm in Sources */, + 15CBA9B8196EE8D9005877BB /* main.m in Sources */, + 15CBA9B9196EE8D9005877BB /* RootViewController.mm in Sources */, + 15CBA9F0196F7BEC005877BB /* lua_cocos2dx_controller_manual.cpp in Sources */, + 15CBA9ED196F7BD8005877BB /* lua_cocos2dx_controller_auto.cpp in Sources */, + 15CBA9B4196EE8A0005877BB /* AppDelegate.cpp in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; 1A0EE1F618CDF6DA004CD58F /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -4869,6 +8274,7 @@ 1AC35C5118CECF0C00F37B72 /* testBasic.cpp in Sources */, 1AC35B7918CECF0C00F37B72 /* EnemyController.cpp in Sources */, 1AC35B6B18CECF0C00F37B72 /* CocosBuilderTest.cpp in Sources */, + 29FBBBFE196A9ECD00E65826 /* CocostudioParserJsonTest.cpp in Sources */, 1AC35B4118CECF0C00F37B72 /* QuestionContainerSprite.cpp in Sources */, 1AC35B6118CECF0C00F37B72 /* DrawPrimitivesTest.cpp in Sources */, 1AC35C1718CECF0C00F37B72 /* MotionStreakTest.cpp in Sources */, @@ -4910,6 +8316,7 @@ 1AC35BF318CECF0C00F37B72 /* ExtensionsTest.cpp in Sources */, 1AC35B3518CECF0C00F37B72 /* TestEntries.cpp in Sources */, 1AC35B2D18CECF0C00F37B72 /* Box2dTest.cpp in Sources */, + 290E94B5196FC16900694919 /* CocostudioParserTest.cpp in Sources */, 29080DDB191B595E0066F8DF /* UITextFieldTest.cpp in Sources */, 1AC35C1118CECF0C00F37B72 /* LabelTestNew.cpp in Sources */, 1AC35B4D18CECF0C00F37B72 /* ChipmunkTest.cpp in Sources */, @@ -5161,6 +8568,7 @@ 1AC35C0218CECF0C00F37B72 /* TableViewTestScene.cpp in Sources */, 1AC35C4C18CECF0C00F37B72 /* ShaderTest2.cpp in Sources */, 1AC35C6618CECF0C00F37B72 /* UnitTest.cpp in Sources */, + 290E94B6196FC16900694919 /* CocostudioParserTest.cpp in Sources */, 1AC35B4018CECF0C00F37B72 /* Bug-458.cpp in Sources */, 1AC35C3A18CECF0C00F37B72 /* PerformanceTextureTest.cpp in Sources */, 29080DC4191B595E0066F8DF /* UIScene.cpp in Sources */, @@ -5174,6 +8582,7 @@ 1AC35B7418CECF0C00F37B72 /* TimelineCallbackTestLayer.cpp in Sources */, 29080D9E191B595E0066F8DF /* CustomParticleWidgetReader.cpp in Sources */, 1AC35BFC18CECF0C00F37B72 /* NotificationCenterTest.cpp in Sources */, + 29FBBBFF196A9ECD00E65826 /* CocostudioParserJsonTest.cpp in Sources */, 1AC35C3618CECF0C00F37B72 /* PerformanceSpriteTest.cpp in Sources */, 1AC35C3C18CECF0C00F37B72 /* PerformanceTouchesTest.cpp in Sources */, 29080DA2191B595E0066F8DF /* GUIEditorTest.cpp in Sources */, @@ -5189,6 +8598,31 @@ /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ + 15CBA016196EE56C005877BB /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "cocos2dx iOS"; + targetProxy = 15CBA017196EE56C005877BB /* PBXContainerItemProxy */; + }; + 15CBA018196EE56C005877BB /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "cocos2dx-extensions iOS"; + targetProxy = 15CBA019196EE56C005877BB /* PBXContainerItemProxy */; + }; + 15CBA01A196EE56C005877BB /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "chipmunk iOS"; + targetProxy = 15CBA01B196EE56C005877BB /* PBXContainerItemProxy */; + }; + 15CBA01C196EE56C005877BB /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "CocosDenshion iOS"; + targetProxy = 15CBA01D196EE56C005877BB /* PBXContainerItemProxy */; + }; + 15CBA01E196EE56C005877BB /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "luabindings iOS"; + targetProxy = 15CBA01F196EE56C005877BB /* PBXContainerItemProxy */; + }; 1A0EE1C718CDF6DA004CD58F /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "cocos2dx Mac"; @@ -5499,6 +8933,59 @@ /* End PBXVariantGroup section */ /* Begin XCBuildConfiguration section */ + 15CBA061196EE56C005877BB /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = "iPhone Developer"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(DEVELOPER_DIR)/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/System/Library/Frameworks", + ); + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(inherited)", + CC_TARGET_OS_IPHONE, + ); + INFOPLIST_FILE = "$(SRCROOT)/../tests/lua-game-controller-test/project/proj.ios/Info.plist"; + IPHONEOS_DEPLOYMENT_TARGET = 5.1.1; + LIBRARY_SEARCH_PATHS = ( + "$(inherited)", + "/Users/cocos2d/MyWork/cocos2d-x-develop/tests/lua-game-controller-test/project/proj.android/obj/local/armeabi", + "$(DEVELOPER_DIR)/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/usr/lib", + ); + PRODUCT_NAME = "lua-game-controller-test iOS"; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/.. $(SRCROOT)/../cocos/platform/ios $(SRCROOT)/../external $(SRCROOT)/../external/lua/luajit/include $(SRCROOT)/../external/lua/tolua $(SRCROOT)/../cocos/scripting/lua-bindings/manual $(SRCROOT)/../cocos/scripting/lua-bindings/auto $(SRCROOT)/../cocos/base"; + }; + name = Debug; + }; + 15CBA062196EE56C005877BB /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = "iPhone Developer"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(DEVELOPER_DIR)/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/System/Library/Frameworks", + ); + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(inherited)", + CC_TARGET_OS_IPHONE, + ); + INFOPLIST_FILE = "$(SRCROOT)/../tests/lua-game-controller-test/project/proj.ios/Info.plist"; + IPHONEOS_DEPLOYMENT_TARGET = 5.1.1; + LIBRARY_SEARCH_PATHS = ( + "$(inherited)", + "/Users/cocos2d/MyWork/cocos2d-x-develop/tests/lua-game-controller-test/project/proj.android/obj/local/armeabi", + "$(DEVELOPER_DIR)/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/usr/lib", + ); + PRODUCT_NAME = "lua-game-controller-test iOS"; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + USER_HEADER_SEARCH_PATHS = "$(inherited) $(SRCROOT)/.. $(SRCROOT)/../cocos/platform/ios $(SRCROOT)/../external $(SRCROOT)/../external/lua/luajit/include $(SRCROOT)/../external/lua/tolua $(SRCROOT)/../cocos/scripting/lua-bindings/manual $(SRCROOT)/../cocos/scripting/lua-bindings/auto $(SRCROOT)/../cocos/base"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; 1A0EE2B018CDF6DA004CD58F /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { @@ -5892,6 +9379,15 @@ /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ + 15CBA060196EE56C005877BB /* Build configuration list for PBXNativeTarget "lua-game-controller-test iOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 15CBA061196EE56C005877BB /* Debug */, + 15CBA062196EE56C005877BB /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Debug; + }; 1A0EE2AF18CDF6DA004CD58F /* Build configuration list for PBXNativeTarget "cpp-empty-test Mac" */ = { isa = XCConfigurationList; buildConfigurations = ( diff --git a/build/cocos2d_tests.xcodeproj/xcshareddata/xcschemes/lua-game-controller-test iOS.xcscheme b/build/cocos2d_tests.xcodeproj/xcshareddata/xcschemes/lua-game-controller-test iOS.xcscheme new file mode 100644 index 0000000000..c13623f4a0 --- /dev/null +++ b/build/cocos2d_tests.xcodeproj/xcshareddata/xcschemes/lua-game-controller-test iOS.xcscheme @@ -0,0 +1,86 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/cocos/2d/CCActionInterval.h b/cocos/2d/CCActionInterval.h index 343794e867..a952192988 100644 --- a/cocos/2d/CCActionInterval.h +++ b/cocos/2d/CCActionInterval.h @@ -89,10 +89,11 @@ public: return nullptr; } -protected: +CC_CONSTRUCTOR_ACCESS: /** initializes the action */ bool initWithDuration(float d); +protected: float _elapsed; bool _firstTick; }; @@ -597,6 +598,8 @@ public: CC_CONSTRUCTOR_ACCESS: JumpTo() {} virtual ~JumpTo() {} + +private: CC_DISALLOW_COPY_AND_ASSIGN(JumpTo); }; diff --git a/cocos/2d/CCDrawNode.cpp b/cocos/2d/CCDrawNode.cpp index 5462b7f6ce..e942e11103 100644 --- a/cocos/2d/CCDrawNode.cpp +++ b/cocos/2d/CCDrawNode.cpp @@ -194,8 +194,8 @@ bool DrawNode::init() #if CC_ENABLE_CACHE_TEXTURE_DATA // Need to listen the event only when not use batchnode, because it will use VBO - auto listener = EventListenerCustom::create(EVENT_COME_TO_FOREGROUND, [this](EventCustom* event){ - /** listen the event that coming to foreground on Android */ + auto listener = EventListenerCustom::create(EVENT_RENDERER_RECREATED, [this](EventCustom* event){ + /** listen the event that renderer was recreated on Android/WP8 */ this->init(); }); diff --git a/cocos/2d/CCFontAtlas.cpp b/cocos/2d/CCFontAtlas.cpp index f9f6df7db1..072021780d 100644 --- a/cocos/2d/CCFontAtlas.cpp +++ b/cocos/2d/CCFontAtlas.cpp @@ -31,6 +31,7 @@ #include "base/CCEventDispatcher.h" #include "base/CCEventType.h" + NS_CC_BEGIN const int FontAtlas::CacheTextureWidth = 512; @@ -41,9 +42,9 @@ FontAtlas::FontAtlas(Font &theFont) : _font(&theFont) , _currentPageData(nullptr) , _fontAscender(0) -, _toForegroundListener(nullptr) -, _toBackgroundListener(nullptr) +, _rendererRecreatedListener(nullptr) , _antialiasEnabled(true) +, _rendererRecreate(false) { _font->retain(); @@ -77,12 +78,12 @@ FontAtlas::FontAtlas(Font &theFont) addTexture(texture,0); texture->release(); + #if CC_ENABLE_CACHE_TEXTURE_DATA auto eventDispatcher = Director::getInstance()->getEventDispatcher(); - _toBackgroundListener = EventListenerCustom::create(EVENT_COME_TO_BACKGROUND, CC_CALLBACK_1(FontAtlas::listenToBackground, this)); - eventDispatcher->addEventListenerWithFixedPriority(_toBackgroundListener, 1); - _toForegroundListener = EventListenerCustom::create(EVENT_COME_TO_FOREGROUND, CC_CALLBACK_1(FontAtlas::listenToForeground, this)); - eventDispatcher->addEventListenerWithFixedPriority(_toForegroundListener, 1); + + _rendererRecreatedListener = EventListenerCustom::create(EVENT_RENDERER_RECREATED, CC_CALLBACK_1(FontAtlas::listenRendererRecreated, this)); + eventDispatcher->addEventListenerWithFixedPriority(_rendererRecreatedListener, 1); #endif } } @@ -91,19 +92,11 @@ FontAtlas::~FontAtlas() { #if CC_ENABLE_CACHE_TEXTURE_DATA FontFreeType* fontTTf = dynamic_cast(_font); - if (fontTTf) + if (fontTTf && _rendererRecreatedListener) { auto eventDispatcher = Director::getInstance()->getEventDispatcher(); - if (_toForegroundListener) - { - eventDispatcher->removeEventListener(_toForegroundListener); - _toForegroundListener = nullptr; - } - if (_toBackgroundListener) - { - eventDispatcher->removeEventListener(_toBackgroundListener); - _toBackgroundListener = nullptr; - } + eventDispatcher->removeEventListener(_rendererRecreatedListener); + _rendererRecreatedListener = nullptr; } #endif @@ -149,11 +142,10 @@ void FontAtlas::purgeTexturesAtlas() } } -void FontAtlas::listenToBackground(EventCustom *event) +void FontAtlas::listenRendererRecreated(EventCustom *event) { -#if CC_ENABLE_CACHE_TEXTURE_DATA FontFreeType* fontTTf = dynamic_cast(_font); - if (fontTTf && _atlasTextures.size() > 1) + if (fontTTf) { for( auto &item: _atlasTextures) { @@ -171,30 +163,12 @@ void FontAtlas::listenToBackground(EventCustom *event) _currentPage = 0; _currentPageOrigX = 0; _currentPageOrigY = 0; - } -#endif -} -void FontAtlas::listenToForeground(EventCustom *event) -{ -#if CC_ENABLE_CACHE_TEXTURE_DATA - FontFreeType* fontTTf = dynamic_cast(_font); - if (fontTTf) - { - if (_currentPageOrigX == 0 && _currentPageOrigY == 0) - { - auto eventDispatcher = Director::getInstance()->getEventDispatcher(); - eventDispatcher->dispatchCustomEvent(EVENT_PURGE_TEXTURES,this); - } - else - { - auto pixelFormat = fontTTf->getOutlineSize() > 0 ? Texture2D::PixelFormat::AI88 : Texture2D::PixelFormat::A8; - - _atlasTextures[_currentPage]->initWithData(_currentPageData, _currentPageDataSize, - pixelFormat, CacheTextureWidth, CacheTextureHeight, Size(CacheTextureWidth,CacheTextureHeight) ); - } + _rendererRecreate = true; + auto eventDispatcher = Director::getInstance()->getEventDispatcher(); + eventDispatcher->dispatchCustomEvent(EVENT_PURGE_TEXTURES,this); + _rendererRecreate = false; } -#endif } void FontAtlas::addLetterDefinition(const FontLetterDefinition &letterDefinition) @@ -223,7 +197,7 @@ bool FontAtlas::prepareLetterDefinitions(const std::u16string& utf16String) FontFreeType* fontTTf = dynamic_cast(_font); if(fontTTf == nullptr) return false; - + size_t length = utf16String.length(); float offsetAdjust = _letterPadding / 2; @@ -333,17 +307,25 @@ bool FontAtlas::prepareLetterDefinitions(const std::u16string& utf16String) if(existNewLetter) { - unsigned char *data = nullptr; - if(pixelFormat == Texture2D::PixelFormat::AI88) + if (_rendererRecreate) { - data = _currentPageData + CacheTextureWidth * (int)startY * 2; - } + _atlasTextures[_currentPage]->initWithData(_currentPageData, _currentPageDataSize, + pixelFormat, CacheTextureWidth, CacheTextureHeight, Size(CacheTextureWidth,CacheTextureHeight) ); + } else { - data = _currentPageData + CacheTextureWidth * (int)startY; + unsigned char *data = nullptr; + if(pixelFormat == Texture2D::PixelFormat::AI88) + { + data = _currentPageData + CacheTextureWidth * (int)startY * 2; + } + else + { + data = _currentPageData + CacheTextureWidth * (int)startY; + } + _atlasTextures[_currentPage]->updateWithData(data, 0, startY, + CacheTextureWidth, _currentPageOrigY - startY + _commonLineHeight); } - _atlasTextures[_currentPage]->updateWithData(data, 0, startY, - CacheTextureWidth, _currentPageOrigY - startY + _commonLineHeight); } return true; } diff --git a/cocos/2d/CCFontAtlas.h b/cocos/2d/CCFontAtlas.h index f55c6938d9..56a76bca29 100644 --- a/cocos/2d/CCFontAtlas.h +++ b/cocos/2d/CCFontAtlas.h @@ -84,15 +84,10 @@ public: Texture2D* getTexture(int slot); const Font* getFont() const; - /** Listen "come to background" message, and clear the texture atlas. - It only has effect on Android. + /** listen the event that renderer was recreated on Android/WP8 + It only has effect on Android and WP8. */ - void listenToBackground(EventCustom *event); - - /** Listen "come to foreground" message and restore the texture atlas. - It only has effect on Android. - */ - void listenToForeground(EventCustom *event); + void listenRendererRecreated(EventCustom *event); /** Removes textures atlas. It will purge the textures atlas and if multiple texture exist in the FontAtlas. @@ -129,9 +124,9 @@ private: bool _makeDistanceMap; int _fontAscender; - EventListenerCustom* _toBackgroundListener; - EventListenerCustom* _toForegroundListener; + EventListenerCustom* _rendererRecreatedListener; bool _antialiasEnabled; + bool _rendererRecreate; }; diff --git a/cocos/2d/CCFontAtlasCache.cpp b/cocos/2d/CCFontAtlasCache.cpp index bad6c9f733..f088da6319 100644 --- a/cocos/2d/CCFontAtlasCache.cpp +++ b/cocos/2d/CCFontAtlasCache.cpp @@ -22,11 +22,11 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ****************************************************************************/ - -#include - #include "2d/CCFontAtlasCache.h" +#include +#include + #include "2d/CCFontFNT.h" #include "2d/CCFontFreeType.h" #include "CCFontCharMap.h" diff --git a/cocos/2d/CCFontAtlasCache.h b/cocos/2d/CCFontAtlasCache.h index 800948ba44..4e2c17c687 100644 --- a/cocos/2d/CCFontAtlasCache.h +++ b/cocos/2d/CCFontAtlasCache.h @@ -26,7 +26,6 @@ #ifndef _CCFontAtlasCache_h_ #define _CCFontAtlasCache_h_ -#include #include #include "2d/CCFontAtlas.h" diff --git a/cocos/2d/CCLabel.cpp b/cocos/2d/CCLabel.cpp index e7ac43edf1..6071882ea9 100644 --- a/cocos/2d/CCLabel.cpp +++ b/cocos/2d/CCLabel.cpp @@ -266,20 +266,13 @@ Label::Label(FontAtlas *atlas /* = nullptr */, TextHAlignment hAlignment /* = Te setAnchorPoint(Vec2::ANCHOR_MIDDLE); reset(); -#if CC_ENABLE_CACHE_TEXTURE_DATA - auto toBackgroundListener = EventListenerCustom::create(EVENT_COME_TO_BACKGROUND, [this](EventCustom* event){ - if (_fontAtlas && _currentLabelType == LabelType::TTF) - { - _batchNodes.clear(); - _batchNodes.push_back(this); - Node::removeAllChildrenWithCleanup(true); - } - }); - _eventDispatcher->addEventListenerWithSceneGraphPriority(toBackgroundListener, this); -#endif auto purgeTextureListener = EventListenerCustom::create(FontAtlas::EVENT_PURGE_TEXTURES, [this](EventCustom* event){ if (_fontAtlas && _currentLabelType == LabelType::TTF && event->getUserData() == _fontAtlas) { + Node::removeAllChildrenWithCleanup(true); + _batchNodes.clear(); + _batchNodes.push_back(this); + alignText(); } }); diff --git a/cocos/2d/CCMenuItem.cpp b/cocos/2d/CCMenuItem.cpp index ceda096b82..54146875dc 100644 --- a/cocos/2d/CCMenuItem.cpp +++ b/cocos/2d/CCMenuItem.cpp @@ -839,6 +839,18 @@ MenuItemToggle * MenuItemToggle::createWithTarget(Ref* target, SEL_MenuHandler s return ret; } +#if (CC_TARGET_PLATFORM == CC_PLATFORM_WP8) || (CC_TARGET_PLATFORM == CC_PLATFORM_WINRT) +MenuItemToggle * MenuItemToggle::createWithCallbackVA(const ccMenuCallback &callback, MenuItem* item, ...) +{ + va_list args; + va_start(args, item); + MenuItemToggle *ret = new MenuItemToggle(); + ret->initWithCallback(callback, item, args); + ret->autorelease(); + va_end(args); + return ret; +} +#else MenuItemToggle * MenuItemToggle::createWithCallback(const ccMenuCallback &callback, MenuItem* item, ...) { va_list args; @@ -849,6 +861,7 @@ MenuItemToggle * MenuItemToggle::createWithCallback(const ccMenuCallback &callba va_end(args); return ret; } +#endif MenuItemToggle * MenuItemToggle::create() { diff --git a/cocos/2d/CCMenuItem.h b/cocos/2d/CCMenuItem.h index 2152046acc..b089f914d4 100644 --- a/cocos/2d/CCMenuItem.h +++ b/cocos/2d/CCMenuItem.h @@ -478,7 +478,25 @@ public: /** creates a menu item from a Array with a callable object */ static MenuItemToggle * createWithCallback(const ccMenuCallback& callback, const Vector& menuItems); /** creates a menu item from a list of items with a callable object */ +#if (CC_TARGET_PLATFORM == CC_PLATFORM_WP8) || (CC_TARGET_PLATFORM == CC_PLATFORM_WINRT) + // WP8 in VS2012 does not support nullptr in variable args lists and variadic templates are also not supported + typedef MenuItem* M; + static MenuItemToggle* createWithCallback(const ccMenuCallback& callback, M m1, std::nullptr_t listEnd) { return createWithCallbackVA(callback, m1, NULL); } + static MenuItemToggle* createWithCallback(const ccMenuCallback& callback, M m1, M m2, std::nullptr_t listEnd) { return createWithCallbackVA(callback, m1, m2, NULL); } + static MenuItemToggle* createWithCallback(const ccMenuCallback& callback, M m1, M m2, M m3, std::nullptr_t listEnd) { return createWithCallbackVA(callback, m1, m2, m3, NULL); } + static MenuItemToggle* createWithCallback(const ccMenuCallback& callback, M m1, M m2, M m3, M m4, std::nullptr_t listEnd) { return createWithCallbackVA(callback, m1, m2, m3, m4, NULL); } + static MenuItemToggle* createWithCallback(const ccMenuCallback& callback, M m1, M m2, M m3, M m4, M m5, std::nullptr_t listEnd) { return createWithCallbackVA(callback, m1, m2, m3, m4, m5, NULL); } + static MenuItemToggle* createWithCallback(const ccMenuCallback& callback, M m1, M m2, M m3, M m4, M m5, M m6, std::nullptr_t listEnd) { return createWithCallbackVA(callback, m1, m2, m3, m4, m5, m6, NULL); } + static MenuItemToggle* createWithCallback(const ccMenuCallback& callback, M m1, M m2, M m3, M m4, M m5, M m6, M m7, std::nullptr_t listEnd) { return createWithCallbackVA(callback, m1, m2, m3, m4, m5, m6, m7, NULL); } + static MenuItemToggle* createWithCallback(const ccMenuCallback& callback, M m1, M m2, M m3, M m4, M m5, M m6, M m7, M m8, std::nullptr_t listEnd) { return createWithCallbackVA(callback, m1, m2, m3, m4, m5, m6, m7, m8, NULL); } + static MenuItemToggle* createWithCallback(const ccMenuCallback& callback, M m1, M m2, M m3, M m4, M m5, M m6, M m7, M m8, M m9, std::nullptr_t listEnd) { return createWithCallbackVA(callback, m1, m2, m3, m4, m5, m6, m7, m8, m9, NULL); } + static MenuItemToggle* createWithCallback(const ccMenuCallback& callback, M m1, M m2, M m3, M m4, M m5, M m6, M m7, M m8, M m9, M m10, std::nullptr_t listEnd) { return createWithCallbackVA(callback, m1, m2, m3, m4, m5, m6, m7, m8, m9, m10, NULL); } + + // On WP8 for lists longer than 10 items, use createWithArray or variadicCreate with NULL as the last argument + static MenuItemToggle* createWithCallbackVA(const ccMenuCallback& callback, M item, ...); +#else static MenuItemToggle* createWithCallback(const ccMenuCallback& callback, MenuItem* item, ...) CC_REQUIRES_NULL_TERMINATION; +#endif /** creates a menu item with no target/selector and no items */ static MenuItemToggle* create(); /** creates a menu item with a item */ diff --git a/cocos/2d/CCParticleSystemQuad.cpp b/cocos/2d/CCParticleSystemQuad.cpp index 70143fe75f..44f707a46f 100644 --- a/cocos/2d/CCParticleSystemQuad.cpp +++ b/cocos/2d/CCParticleSystemQuad.cpp @@ -135,7 +135,7 @@ bool ParticleSystemQuad::initWithTotalParticles(int numberOfParticles) #if CC_ENABLE_CACHE_TEXTURE_DATA // Need to listen the event only when not use batchnode, because it will use VBO - auto listener = EventListenerCustom::create(EVENT_COME_TO_FOREGROUND, CC_CALLBACK_1(ParticleSystemQuad::listenBackToForeground, this)); + auto listener = EventListenerCustom::create(EVENT_RENDERER_RECREATED, CC_CALLBACK_1(ParticleSystemQuad::listenRendererRecreated, this)); _eventDispatcher->addEventListenerWithSceneGraphPriority(listener, this); #endif @@ -509,7 +509,7 @@ void ParticleSystemQuad::setupVBO() CHECK_GL_ERROR_DEBUG(); } -void ParticleSystemQuad::listenBackToForeground(EventCustom* event) +void ParticleSystemQuad::listenRendererRecreated(EventCustom* event) { if (Configuration::getInstance()->supportsShareableVAO()) { diff --git a/cocos/2d/CCParticleSystemQuad.h b/cocos/2d/CCParticleSystemQuad.h index b3a701c1ba..73386f152d 100644 --- a/cocos/2d/CCParticleSystemQuad.h +++ b/cocos/2d/CCParticleSystemQuad.h @@ -81,11 +81,11 @@ public: */ void setTextureWithRect(Texture2D *texture, const Rect& rect); - /** listen the event that coming to foreground on Android + /** listen the event that renderer was recreated on Android/WP8 * @js NA * @lua NA */ - void listenBackToForeground(EventCustom* event); + void listenRendererRecreated(EventCustom* event); /** * @js NA diff --git a/cocos/2d/CCTransition.h b/cocos/2d/CCTransition.h index a065dfc419..e86aa06394 100644 --- a/cocos/2d/CCTransition.h +++ b/cocos/2d/CCTransition.h @@ -153,7 +153,7 @@ public: // virtual void onEnter() override; -protected: +CC_CONSTRUCTOR_ACCESS: TransitionRotoZoom(); virtual ~TransitionRotoZoom(); @@ -175,7 +175,7 @@ public: // virtual void onEnter() override; -protected: +CC_CONSTRUCTOR_ACCESS: TransitionJumpZoom(); virtual ~TransitionJumpZoom(); @@ -201,10 +201,11 @@ public: // virtual void onEnter() override; -protected: +CC_CONSTRUCTOR_ACCESS: TransitionMoveInL(); virtual ~TransitionMoveInL(); +protected: /** initializes the scenes */ virtual void initScenes(); @@ -220,10 +221,11 @@ class CC_DLL TransitionMoveInR : public TransitionMoveInL public: static TransitionMoveInR* create(float t, Scene* scene); -protected: +CC_CONSTRUCTOR_ACCESS: TransitionMoveInR(); virtual ~TransitionMoveInR(); +protected: virtual void initScenes(); private: @@ -238,10 +240,11 @@ class CC_DLL TransitionMoveInT : public TransitionMoveInL public: static TransitionMoveInT* create(float t, Scene* scene); -protected: +CC_CONSTRUCTOR_ACCESS: TransitionMoveInT(); virtual ~TransitionMoveInT(); +protected: virtual void initScenes(); private: @@ -256,10 +259,11 @@ class CC_DLL TransitionMoveInB : public TransitionMoveInL public: static TransitionMoveInB* create(float t, Scene* scene); -protected: +CC_CONSTRUCTOR_ACCESS: TransitionMoveInB(); virtual ~TransitionMoveInB(); +protected: virtual void initScenes(); private: @@ -284,10 +288,11 @@ public: // virtual void onEnter() override; -protected: +CC_CONSTRUCTOR_ACCESS: TransitionSlideInL(); virtual ~TransitionSlideInL(); +protected: /** initializes the scenes */ virtual void initScenes(void); @@ -308,10 +313,11 @@ public: /** returns the action that will be performed by the incoming and outgoing scene */ virtual ActionInterval* action(void); -protected: +CC_CONSTRUCTOR_ACCESS: TransitionSlideInR(); virtual ~TransitionSlideInR(); +protected: /** initializes the scenes */ virtual void initScenes(void); @@ -332,10 +338,11 @@ public: /** returns the action that will be performed by the incoming and outgoing scene */ virtual ActionInterval* action(void); -protected: +CC_CONSTRUCTOR_ACCESS: TransitionSlideInB(); virtual ~TransitionSlideInB(); +protected: /** initializes the scenes */ virtual void initScenes(); @@ -356,10 +363,11 @@ public: /** returns the action that will be performed by the incoming and outgoing scene */ virtual ActionInterval* action(void); -protected: +CC_CONSTRUCTOR_ACCESS: TransitionSlideInT(); virtual ~TransitionSlideInT(); +protected: /** initializes the scenes */ virtual void initScenes(void); @@ -387,7 +395,7 @@ public: virtual void onEnter() override; virtual ActionInterval* easeActionWithAction(ActionInterval * action) override; -protected: +CC_CONSTRUCTOR_ACCESS: TransitionShrinkGrow(); virtual ~TransitionShrinkGrow(); @@ -414,7 +422,7 @@ public: */ virtual void onEnter() override; -protected: +CC_CONSTRUCTOR_ACCESS: TransitionFlipX(); virtual ~TransitionFlipX(); @@ -441,7 +449,7 @@ public: */ virtual void onEnter() override; -protected: +CC_CONSTRUCTOR_ACCESS: TransitionFlipY(); virtual ~TransitionFlipY(); @@ -468,7 +476,7 @@ public: */ virtual void onEnter() override; -protected: +CC_CONSTRUCTOR_ACCESS: TransitionFlipAngular(); virtual ~TransitionFlipAngular(); @@ -495,7 +503,7 @@ public: */ virtual void onEnter() override; -protected: +CC_CONSTRUCTOR_ACCESS: TransitionZoomFlipX(); virtual ~TransitionZoomFlipX(); @@ -522,7 +530,7 @@ public: */ virtual void onEnter() override; -protected: +CC_CONSTRUCTOR_ACCESS: TransitionZoomFlipY(); virtual ~TransitionZoomFlipY(); @@ -549,7 +557,7 @@ public: */ virtual void onEnter() override; -protected: +CC_CONSTRUCTOR_ACCESS: TransitionZoomFlipAngular(); virtual ~TransitionZoomFlipAngular(); @@ -625,7 +633,7 @@ public : */ virtual void onExit() override; -protected: +CC_CONSTRUCTOR_ACCESS: TransitionCrossFade(); virtual ~TransitionCrossFade(); @@ -653,10 +661,11 @@ public : virtual ActionInterval * easeActionWithAction(ActionInterval * action) override; virtual void draw(Renderer *renderer, const Mat4 &transform, uint32_t flags) override; -protected: +CC_CONSTRUCTOR_ACCESS: TransitionTurnOffTiles(); virtual ~TransitionTurnOffTiles(); +protected: virtual void sceneOrder() override; NodeGrid* _outSceneProxy; @@ -685,9 +694,12 @@ public: virtual ActionInterval * easeActionWithAction(ActionInterval * action) override; virtual void onExit() override; virtual void draw(Renderer *renderer, const Mat4 &transform, uint32_t flags) override; -protected: + +CC_CONSTRUCTOR_ACCESS: TransitionSplitCols(); virtual ~TransitionSplitCols(); + +protected: void switchTargetToInscene(); NodeGrid* _gridProxy; private: @@ -707,7 +719,7 @@ public: // virtual ActionInterval* action(void) override; -protected: +CC_CONSTRUCTOR_ACCESS: TransitionSplitRows(); virtual ~TransitionSplitRows(); @@ -736,10 +748,12 @@ public: virtual ActionInterval* easeActionWithAction(ActionInterval * action) override; virtual void onExit() override; virtual void draw(Renderer *renderer, const Mat4 &transform, uint32_t flags) override; -protected: + +CC_CONSTRUCTOR_ACCESS: TransitionFadeTR(); virtual ~TransitionFadeTR(); +protected: virtual void sceneOrder(); NodeGrid* _outSceneProxy; @@ -761,7 +775,7 @@ public: // virtual ActionInterval* actionWithSize(const Size& size) override; -protected: +CC_CONSTRUCTOR_ACCESS: TransitionFadeBL(); virtual ~TransitionFadeBL(); @@ -782,7 +796,7 @@ public: // virtual ActionInterval* actionWithSize(const Size& size) override; -protected: +CC_CONSTRUCTOR_ACCESS: TransitionFadeUp(); virtual ~TransitionFadeUp(); @@ -803,7 +817,7 @@ public: // virtual ActionInterval* actionWithSize(const Size& size) override; -protected: +CC_CONSTRUCTOR_ACCESS: TransitionFadeDown(); virtual ~TransitionFadeDown(); diff --git a/cocos/2d/CCTransitionPageTurn.h b/cocos/2d/CCTransitionPageTurn.h index a34fc19946..3291566d33 100644 --- a/cocos/2d/CCTransitionPageTurn.h +++ b/cocos/2d/CCTransitionPageTurn.h @@ -59,15 +59,6 @@ public: * scene is being turned from left over the outgoing scene. */ static TransitionPageTurn* create(float t,Scene* scene,bool backwards); - /** - * @js ctor - */ - TransitionPageTurn(); - /** - * @js NA - * @lua NA - */ - virtual ~TransitionPageTurn(); // // Overrides @@ -89,6 +80,17 @@ public: virtual void onEnter() override; virtual void onExit() override; +CC_CONSTRUCTOR_ACCESS: + /** + * @js ctor + */ + TransitionPageTurn(); + /** + * @js NA + * @lua NA + */ + virtual ~TransitionPageTurn(); + protected: virtual void sceneOrder() override; diff --git a/cocos/2d/CCTransitionProgress.h b/cocos/2d/CCTransitionProgress.h index 0f5f01a856..d4cfbe8deb 100644 --- a/cocos/2d/CCTransitionProgress.h +++ b/cocos/2d/CCTransitionProgress.h @@ -44,14 +44,16 @@ class CC_DLL TransitionProgress : public TransitionScene public: static TransitionProgress* create(float t, Scene* scene); - TransitionProgress(); - // // Overrides // virtual void onEnter() override; virtual void onExit() override; +CC_CONSTRUCTOR_ACCESS: + TransitionProgress(); + virtual ~TransitionProgress(){} + protected: virtual void sceneOrder() override; @@ -74,6 +76,13 @@ class CC_DLL TransitionProgressRadialCCW : public TransitionProgress public: static TransitionProgressRadialCCW* create(float t, Scene* scene); +CC_CONSTRUCTOR_ACCESS: + /** + * @js ctor + */ + TransitionProgressRadialCCW(){} + virtual ~TransitionProgressRadialCCW(){} + protected: // // Overrides @@ -91,6 +100,13 @@ class CC_DLL TransitionProgressRadialCW : public TransitionProgress public: static TransitionProgressRadialCW* create(float t, Scene* scene); +CC_CONSTRUCTOR_ACCESS: + /** + * @js ctor + */ + TransitionProgressRadialCW(){} + virtual ~TransitionProgressRadialCW(){} + protected: // // Overrides @@ -107,6 +123,13 @@ class CC_DLL TransitionProgressHorizontal : public TransitionProgress public: static TransitionProgressHorizontal* create(float t, Scene* scene); +CC_CONSTRUCTOR_ACCESS: + /** + * @js ctor + */ + TransitionProgressHorizontal(){} + virtual ~TransitionProgressHorizontal(){} + protected: // // Overrides @@ -119,6 +142,13 @@ class CC_DLL TransitionProgressVertical : public TransitionProgress public: static TransitionProgressVertical* create(float t, Scene* scene); +CC_CONSTRUCTOR_ACCESS: + /** + * @js ctor + */ + TransitionProgressVertical(){} + virtual ~TransitionProgressVertical(){} + protected: // // Overrides @@ -131,6 +161,13 @@ class CC_DLL TransitionProgressInOut : public TransitionProgress public: static TransitionProgressInOut* create(float t, Scene* scene); +CC_CONSTRUCTOR_ACCESS: + /** + * @js ctor + */ + TransitionProgressInOut(){} + virtual ~TransitionProgressInOut(){} + protected: // // Overrides @@ -145,6 +182,13 @@ class CC_DLL TransitionProgressOutIn : public TransitionProgress public: static TransitionProgressOutIn* create(float t, Scene* scene); +CC_CONSTRUCTOR_ACCESS: + /** + * @js ctor + */ + TransitionProgressOutIn(){} + virtual ~TransitionProgressOutIn(){} + protected: // // Overrides diff --git a/cocos/3d/CCMesh.cpp b/cocos/3d/CCMesh.cpp index c499f00d93..c0511afad1 100644 --- a/cocos/3d/CCMesh.cpp +++ b/cocos/3d/CCMesh.cpp @@ -322,22 +322,22 @@ void MeshCache::removeUnusedMesh() MeshCache::MeshCache() { -#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) - // listen the event when app go to foreground - _backToForegroundlistener = EventListenerCustom::create(EVENT_COME_TO_FOREGROUND, CC_CALLBACK_1(MeshCache::listenBackToForeground, this)); - Director::getInstance()->getEventDispatcher()->addEventListenerWithFixedPriority(_backToForegroundlistener, -1); +#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID || CC_TARGET_PLATFORM == CC_PLATFORM_WP8) + // listen the event that renderer was recreated on Android/WP8 + _rendererRecreatedListener = EventListenerCustom::create(EVENT_RENDERER_RECREATED, CC_CALLBACK_1(MeshCache::listenRendererRecreated, this)); + Director::getInstance()->getEventDispatcher()->addEventListenerWithFixedPriority(_rendererRecreatedListener, -1); #endif } MeshCache::~MeshCache() { removeAllMeshes(); -#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) - Director::getInstance()->getEventDispatcher()->removeEventListener(_backToForegroundlistener); +#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID || CC_TARGET_PLATFORM == CC_PLATFORM_WP8) + Director::getInstance()->getEventDispatcher()->removeEventListener(_rendererRecreatedListener); #endif } -#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) -void MeshCache::listenBackToForeground(EventCustom* event) +#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID || CC_TARGET_PLATFORM == CC_PLATFORM_WP8) +void MeshCache::listenRendererRecreated(EventCustom* event) { for (auto iter = _meshes.begin(); iter != _meshes.end(); ++iter) { diff --git a/cocos/3d/CCMesh.h b/cocos/3d/CCMesh.h index 6cd724d93e..16a8a6d2fb 100644 --- a/cocos/3d/CCMesh.h +++ b/cocos/3d/CCMesh.h @@ -166,8 +166,8 @@ public: /**remove unused meshes*/ void removeUnusedMesh(); -#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) - void listenBackToForeground(EventCustom* event); +#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID || CC_TARGET_PLATFORM == CC_PLATFORM_WP8) + void listenRendererRecreated(EventCustom* event); #endif CC_CONSTRUCTOR_ACCESS: @@ -181,8 +181,8 @@ protected: std::unordered_map _meshes; //cached meshes -#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) - EventListenerCustom* _backToForegroundlistener; +#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID || CC_TARGET_PLATFORM == CC_PLATFORM_WP8) + EventListenerCustom* _rendererRecreatedListener; #endif }; diff --git a/cocos/Android.mk b/cocos/Android.mk index 219098f275..92ff9a8b65 100644 --- a/cocos/Android.mk +++ b/cocos/Android.mk @@ -223,9 +223,9 @@ LOCAL_WHOLE_STATIC_LIBRARIES += cocos2dxandroid_static # define the macro to compile through support/zip_support/ioapi.c LOCAL_CFLAGS := -DUSE_FILE32API -LOCAL_CPPFLAGS := -Wno-deprecated-declarations +LOCAL_CPPFLAGS := -Wno-deprecated-declarations -Wno-extern-c-compat LOCAL_EXPORT_CFLAGS := -DUSE_FILE32API -LOCAL_EXPORT_CPPFLAGS := -Wno-deprecated-declarations +LOCAL_EXPORT_CPPFLAGS := -Wno-deprecated-declarations -Wno-extern-c-compat include $(BUILD_STATIC_LIBRARY) diff --git a/cocos/base/CCController-android.cpp b/cocos/base/CCController-android.cpp index d333105533..c87f75ef36 100644 --- a/cocos/base/CCController-android.cpp +++ b/cocos/base/CCController-android.cpp @@ -30,7 +30,7 @@ #include "ccMacros.h" #include "CCDirector.h" #include "jni/JniHelper.h" - +#include "base/CCEventController.h" NS_CC_BEGIN diff --git a/cocos/base/CCController.h b/cocos/base/CCController.h index 46aabbc283..0c596f3cfe 100644 --- a/cocos/base/CCController.h +++ b/cocos/base/CCController.h @@ -41,6 +41,9 @@ class EventDispatcher; class Controller { public: + /** Controllers' standard key + * Controller receives only standard key which contained within enum Key by default. + */ enum Key { JOYSTICK_LEFT_X = 1000, @@ -87,9 +90,17 @@ public: static const int TAG_UNSET = -1; static const std::vector& getAllController(){ return s_allController;} + /** Gets a controller with its tag + * @param tag An identifier to find the controller. + */ static Controller* getControllerByTag(int tag); - + /** To start discovering new controllers + * @warning The API only work on the IOS platform.Empty implementation on Android + */ static void startDiscoveryController(); + /** End the discovery process + * @warning The API only work on the IOS platform.Empty implementation on Android + */ static void stopDiscoveryController(); const std::string& getDeviceName() const { return _deviceName;} @@ -108,7 +119,15 @@ public: */ void receiveExternalKeyEvent(int externalKeyCode,bool receive); + /** Changes the tag that is used to identify the controller easily. + * @param tag A integer that identifies the controller. + */ void setTag(int tag) { _controllerTag = tag;} + /** + * Returns a tag that is used to identify the controller easily. + * + * @return An integer that identifies the controller. + */ int getTag() const { return _controllerTag;} private: diff --git a/cocos/base/CCEventDispatcher.cpp b/cocos/base/CCEventDispatcher.cpp index a3f033a34a..5c5fc374b6 100644 --- a/cocos/base/CCEventDispatcher.cpp +++ b/cocos/base/CCEventDispatcher.cpp @@ -211,6 +211,7 @@ EventDispatcher::EventDispatcher() // Therefore, internal listeners would not be cleaned when removeAllEventListeners is invoked. _internalCustomListenerIDs.insert(EVENT_COME_TO_FOREGROUND); _internalCustomListenerIDs.insert(EVENT_COME_TO_BACKGROUND); + _internalCustomListenerIDs.insert(EVENT_RENDERER_RECREATED); } EventDispatcher::~EventDispatcher() diff --git a/cocos/base/CCEventType.h b/cocos/base/CCEventType.h index bc3b8a6194..c50ecff4f9 100644 --- a/cocos/base/CCEventType.h +++ b/cocos/base/CCEventType.h @@ -30,13 +30,17 @@ */ // The application will come to foreground. -// This message is used for reloading resources before come to foreground on Android. -// This message is posted in main.cpp. +// This message is posted in cocos/platform/android/jni/Java_org_cocos2dx_lib_Cocos2dxRenderer.cpp. #define EVENT_COME_TO_FOREGROUND "event_come_to_foreground" +// The renderer[android:GLSurfaceView.Renderer WP8:Cocos2dRenderer] was recreated. +// This message is used for reloading resources before renderer is recreated on Android/WP8. +// This message is posted in cocos/platform/android/javaactivity.cpp and cocos\platform\wp8-xaml\cpp\Cocos2dRenderer.cpp. +#define EVENT_RENDERER_RECREATED "event_renderer_recreated" + // The application will come to background. // This message is used for doing something before coming to background, such as save RenderTexture. -// This message is posted in cocos2dx/platform/android/jni/MessageJni.cpp. +// This message is posted in cocos/platform/android/jni/Java_org_cocos2dx_lib_Cocos2dxRenderer.cpp and cocos\platform\wp8-xaml\cpp\Cocos2dRenderer.cpp. #define EVENT_COME_TO_BACKGROUND "event_come_to_background" #endif // __CCEVENT_TYPE_H__ diff --git a/cocos/base/CCUserDefaultAndroid.cpp b/cocos/base/CCUserDefaultAndroid.cpp index fb96d39e37..63ee9182db 100644 --- a/cocos/base/CCUserDefaultAndroid.cpp +++ b/cocos/base/CCUserDefaultAndroid.cpp @@ -455,7 +455,7 @@ void UserDefault::setDataForKey(const char* pKey, const Data& value) deleteNodeByKey(pKey); #endif - CCLOG("SET DATA FOR KEY: --%s--%d", value.getBytes(), value.getSize()); + CCLOG("SET DATA FOR KEY: --%s--%d", value.getBytes(), (int)(value.getSize())); char * encodedData = nullptr; unsigned int encodedDataLen = base64Encode(value.getBytes(), value.getSize(), &encodedData); diff --git a/cocos/cocos2d.cpp b/cocos/cocos2d.cpp index 34b671cd8e..d96b55ce20 100644 --- a/cocos/cocos2d.cpp +++ b/cocos/cocos2d.cpp @@ -31,7 +31,7 @@ NS_CC_BEGIN const char* cocos2dVersion() { - return "cocos2d-x 3.2beta0"; + return "cocos2d-x 3.2"; } NS_CC_END diff --git a/cocos/cocos2d.h b/cocos/cocos2d.h index 56fab797a8..db8e89fa4c 100644 --- a/cocos/cocos2d.h +++ b/cocos/cocos2d.h @@ -253,6 +253,8 @@ THE SOFTWARE. #include "2d/CCTMXTiledMap.h" #include "2d/CCTMXXMLParser.h" #include "2d/CCTileMapAtlas.h" +#include "2d/CCFastTMXTiledMap.h" +#include "2d/CCFastTMXLayer.h" // component #include "2d/CCComponent.h" diff --git a/cocos/editor-support/cocostudio/ActionTimeline/CCTimeLine.cpp b/cocos/editor-support/cocostudio/ActionTimeline/CCTimeLine.cpp index c9f04cc985..10f09ceb5d 100644 --- a/cocos/editor-support/cocostudio/ActionTimeline/CCTimeLine.cpp +++ b/cocos/editor-support/cocostudio/ActionTimeline/CCTimeLine.cpp @@ -157,8 +157,8 @@ void Timeline::binarySearchKeyFrame(int frameIndex) break; } - int target = -1; - int low=0,high=length-1,mid; + long target = -1; + long low=0,high=length-1,mid=0; while(low<=high){ mid=(low+high)/2; if(frameIndex >= _frames.at(mid)->getFrameIndex() && frameIndex < _frames.at(mid+1)->getFrameIndex()) diff --git a/cocos/editor-support/cocostudio/CCSGUIReader.cpp b/cocos/editor-support/cocostudio/CCSGUIReader.cpp index 7221c51809..7e706e4455 100644 --- a/cocos/editor-support/cocostudio/CCSGUIReader.cpp +++ b/cocos/editor-support/cocostudio/CCSGUIReader.cpp @@ -1459,7 +1459,7 @@ Widget* WidgetPropertiesReader0300::widgetFromJsonDictionary(const rapidjson::Va } setPropsForAllCustomWidgetFromJsonDictionary(classname, widget, customJsonDict); }else{ - CCLOG("Widget or WidgetReader doesn't exists!!! Please check your csb file."); + CCLOG("Widget or WidgetReader doesn't exists!!! Please check your json file."); } } diff --git a/cocos/editor-support/cocostudio/CCSkin.cpp b/cocos/editor-support/cocostudio/CCSkin.cpp index d7d7a3feab..ac61c1a104 100644 --- a/cocos/editor-support/cocostudio/CCSkin.cpp +++ b/cocos/editor-support/cocostudio/CCSkin.cpp @@ -160,6 +160,7 @@ void Skin::updateTransform() // // calculate the Quad based on the Affine Matrix // + Mat4 transform = getNodeToParentTransform(); Size &size = _rect.size; @@ -169,13 +170,13 @@ void Skin::updateTransform() float x2 = x1 + size.width; float y2 = y1 + size.height; - float x = _transform.m[12]; - float y = _transform.m[13]; + float x = transform.m[12]; + float y = transform.m[13]; - float cr = _transform.m[0]; - float sr = _transform.m[1]; - float cr2 = _transform.m[5]; - float sr2 = -_transform.m[4]; + float cr = transform.m[0]; + float sr = transform.m[1]; + float cr2 = transform.m[5]; + float sr2 = -transform.m[4]; float ax = x1 * cr - y1 * sr2 + x; float ay = x1 * sr + y1 * cr2 + y; diff --git a/cocos/editor-support/cocostudio/CocoLoader.cpp b/cocos/editor-support/cocostudio/CocoLoader.cpp index 334858fe0c..41bafa1392 100644 --- a/cocos/editor-support/cocostudio/CocoLoader.cpp +++ b/cocos/editor-support/cocostudio/CocoLoader.cpp @@ -130,18 +130,15 @@ char* stExpCocoNode::GetName(CocoLoader* pCoco) } - char* stExpCocoNode::GetValue(CocoLoader* pCoco) - { - char* szValue = ( pCoco->GetMemoryAddr_String() + m_szValue ); - if(GetType(pCoco) == kStringType ) - { - if(szValue && 0==strcmp(szValue,"null")) - { - strcpy(szValue,""); - } - } - return szValue; - } +char* stExpCocoNode::GetValue(CocoLoader* pCoco) +{ + char* szValue = ( pCoco->GetMemoryAddr_String() + m_szValue ); + if( 0==strcmp(szValue,"null") && GetType(pCoco) == kStringType ) + { + strcpy(szValue,""); + } + return szValue; +} int stExpCocoNode::GetChildNum() @@ -198,27 +195,6 @@ bool CocoLoader::ReadCocoBinBuff(char* pBinBuff) return true; } -stExpCocoObjectDesc* CocoLoader::GetCocoObjectDesc(const char* szObjDesc) -{ - for(int i = 0 ; i < m_pFileHeader->m_ObjectCount ; i++) - { - if(0 == strcmp((char*)m_pObjectDescArray[i].m_szName,szObjDesc)) - { - return &m_pObjectDescArray[i]; - } - } - return nullptr; -} - -stExpCocoObjectDesc* CocoLoader::GetCocoObjectDesc(int vIndex) -{ - if(vIndex >= 0 && vIndex < m_pFileHeader->m_ObjectCount) - { - return &m_pObjectDescArray[vIndex]; - } - return nullptr; -} - char* CocoLoader::GetMemoryAddr_AttribDesc() { return m_pMemoryBuff + m_pFileHeader->m_lAttribMemAddr ; diff --git a/cocos/editor-support/cocostudio/CocoLoader.h b/cocos/editor-support/cocostudio/CocoLoader.h index 4ead7b84b7..b54681aaa6 100644 --- a/cocos/editor-support/cocostudio/CocoLoader.h +++ b/cocos/editor-support/cocostudio/CocoLoader.h @@ -104,8 +104,6 @@ public: stCocoFileHeader* GetFileHeader(){return m_pFileHeader;} stExpCocoNode* GetRootCocoNode(){return m_pRootNode;} stExpCocoObjectDesc* GetCocoObjectDescArray(){return m_pObjectDescArray;} - stExpCocoObjectDesc* GetCocoObjectDesc(const char* szObjDesc); - stExpCocoObjectDesc* GetCocoObjectDesc(int vIndex); char* GetMemoryAddr_AttribDesc(); char* GetMemoryAddr_CocoNode(); char* GetMemoryAddr_String(); diff --git a/cocos/editor-support/cocostudio/WidgetReader/TextReader/TextReader.cpp b/cocos/editor-support/cocostudio/WidgetReader/TextReader/TextReader.cpp index 786856e408..6cd77cf038 100644 --- a/cocos/editor-support/cocostudio/WidgetReader/TextReader/TextReader.cpp +++ b/cocos/editor-support/cocostudio/WidgetReader/TextReader/TextReader.cpp @@ -71,7 +71,11 @@ namespace cocostudio }else if(key == P_FontName){ std::string fontFilePath; fontFilePath = binaryFilePath.append(value); - label->setFontName(fontFilePath); + if (FileUtils::getInstance()->isFileExist(fontFilePath)) { + label->setFontName(fontFilePath); + }else{ + label->setFontName(value); + } }else if(key == P_AreaWidth){ label->setTextAreaSize(Size(valueToFloat(value), label->getTextAreaSize().height)); }else if(key == P_AreaHeight){ @@ -102,8 +106,15 @@ namespace cocostudio label->setFontSize(DICTOOL->getIntValue_json(options, P_FontSize,20)); std::string fontName = DICTOOL->getStringValue_json(options, P_FontName, "微软雅黑"); + std::string fontFilePath = jsonPath.append(fontName); - label->setFontName(fontFilePath); + if (FileUtils::getInstance()->isFileExist(fontFilePath)) + { + label->setFontName(fontFilePath); + } + else{ + label->setFontName(fontName); + } bool aw = DICTOOL->checkObjectExist_json(options, P_AreaWidth); bool ah = DICTOOL->checkObjectExist_json(options, P_AreaHeight); diff --git a/cocos/platform/CCApplicationProtocol.h b/cocos/platform/CCApplicationProtocol.h index 501cd2f9c0..32727027e2 100644 --- a/cocos/platform/CCApplicationProtocol.h +++ b/cocos/platform/CCApplicationProtocol.h @@ -64,7 +64,9 @@ public: * @lua NA */ virtual ~ApplicationProtocol(){ +#if CC_ENABLE_SCRIPT_BINDING ScriptEngineManager::destroyInstance(); +#endif // clean auto release pool PoolManager::destroyInstance(); } diff --git a/cocos/platform/CCGLViewProtocol.cpp b/cocos/platform/CCGLViewProtocol.cpp index 194ae5d696..1e8423a155 100644 --- a/cocos/platform/CCGLViewProtocol.cpp +++ b/cocos/platform/CCGLViewProtocol.cpp @@ -315,7 +315,7 @@ void GLViewProtocol::handleTouchesMove(int num, intptr_t ids[], float xs[], floa else { // It is error, should return. - CCLOG("Moving touches with id: %ld error", id); + CCLOG("Moving touches with id: %ld error", (long int)id); return; } } diff --git a/cocos/platform/android/ControllerManualAdapter/libs/nibiru_lib_2_1_7.jar b/cocos/platform/android/ControllerManualAdapter/libs/nibiru_lib_2_1_7.jar deleted file mode 100644 index 9cd732aa00..0000000000 Binary files a/cocos/platform/android/ControllerManualAdapter/libs/nibiru_lib_2_1_7.jar and /dev/null differ diff --git a/cocos/platform/android/ControllerManualAdapter/libs/nibiru_lib_2_1_8.jar b/cocos/platform/android/ControllerManualAdapter/libs/nibiru_lib_2_1_8.jar new file mode 100644 index 0000000000..5aa738c296 Binary files /dev/null and b/cocos/platform/android/ControllerManualAdapter/libs/nibiru_lib_2_1_8.jar differ diff --git a/cocos/platform/android/ControllerManualAdapter/src/org/cocos2dx/lib/GameControllerNibiru.java b/cocos/platform/android/ControllerManualAdapter/src/org/cocos2dx/lib/GameControllerNibiru.java index 34983ab812..142a19f671 100644 --- a/cocos/platform/android/ControllerManualAdapter/src/org/cocos2dx/lib/GameControllerNibiru.java +++ b/cocos/platform/android/ControllerManualAdapter/src/org/cocos2dx/lib/GameControllerNibiru.java @@ -73,7 +73,7 @@ OnSimpleStickListener, OnAccListener, OnGyroListener, OnStateListener, GameContr mControllerService.setEnableLR2(true); mControllerService.setAutoKeyUpMode(false); - mControllerService.checkNibiruInstall(mContext, true); + mControllerService.checkNibiruInstall(mContext, false); } } diff --git a/cocos/platform/android/javaactivity.cpp b/cocos/platform/android/javaactivity.cpp index 58524d839a..866318527f 100644 --- a/cocos/platform/android/javaactivity.cpp +++ b/cocos/platform/android/javaactivity.cpp @@ -75,8 +75,8 @@ void Java_org_cocos2dx_lib_Cocos2dxRenderer_nativeInit(JNIEnv* env, jobject thi cocos2d::DrawPrimitives::init(); cocos2d::VolatileTextureMgr::reloadAllTextures(); - cocos2d::EventCustom foregroundEvent(EVENT_COME_TO_FOREGROUND); - director->getEventDispatcher()->dispatchEvent(&foregroundEvent); + cocos2d::EventCustom recreatedEvent(EVENT_RENDERER_RECREATED); + director->getEventDispatcher()->dispatchEvent(&recreatedEvent); director->setGLDefaultValues(); } diff --git a/cocos/platform/android/jni/Java_org_cocos2dx_lib_Cocos2dxRenderer.cpp b/cocos/platform/android/jni/Java_org_cocos2dx_lib_Cocos2dxRenderer.cpp index 5a37af879f..b3742e00e5 100644 --- a/cocos/platform/android/jni/Java_org_cocos2dx_lib_Cocos2dxRenderer.cpp +++ b/cocos/platform/android/jni/Java_org_cocos2dx_lib_Cocos2dxRenderer.cpp @@ -24,6 +24,8 @@ extern "C" { JNIEXPORT void JNICALL Java_org_cocos2dx_lib_Cocos2dxRenderer_nativeOnResume() { if (Director::getInstance()->getOpenGLView()) { Application::getInstance()->applicationWillEnterForeground(); + cocos2d::EventCustom foregroundEvent(EVENT_COME_TO_FOREGROUND); + cocos2d::Director::getInstance()->getEventDispatcher()->dispatchEvent(&foregroundEvent); } } diff --git a/cocos/platform/win32/CCDevice.cpp b/cocos/platform/win32/CCDevice.cpp index 778b58aaa7..70f7f1d1c7 100644 --- a/cocos/platform/win32/CCDevice.cpp +++ b/cocos/platform/win32/CCDevice.cpp @@ -123,6 +123,21 @@ public: nFindPos = fontName.rfind("."); fontName = fontName.substr(0,nFindPos); } + else + { + auto nFindPos = fontName.rfind("/"); + if (nFindPos != fontName.npos) + { + if (fontName.length() == nFindPos + 1) + { + fontName = ""; + } + else + { + fontName = &fontName[nFindPos+1]; + } + } + } tNewFont.lfCharSet = DEFAULT_CHARSET; strcpy_s(tNewFont.lfFaceName, LF_FACESIZE, fontName.c_str()); } diff --git a/cocos/platform/winrt/CCApplication.cpp b/cocos/platform/winrt/CCApplication.cpp index 7925bfa6ba..a6e5ba4b29 100644 --- a/cocos/platform/winrt/CCApplication.cpp +++ b/cocos/platform/winrt/CCApplication.cpp @@ -103,7 +103,7 @@ const char * Application::getCurrentLanguageCode() if (GetUserDefaultLocaleName(localeName, LOCALE_NAME_MAX_LENGTH)) { wchar_t* primary = wcstok(localeName, L"-"); - std::string code = CCUnicodeToUtf8(primary); + code = CCUnicodeToUtf8(primary); } else { diff --git a/cocos/platform/wp8-xaml/cpp/Cocos2dRenderer.cpp b/cocos/platform/wp8-xaml/cpp/Cocos2dRenderer.cpp index 608a524861..4e74c6f298 100644 --- a/cocos/platform/wp8-xaml/cpp/Cocos2dRenderer.cpp +++ b/cocos/platform/wp8-xaml/cpp/Cocos2dRenderer.cpp @@ -67,8 +67,8 @@ void Cocos2dRenderer::CreateGLResources() cocos2d::ShaderCache::getInstance()->reloadDefaultGLPrograms(); cocos2d::DrawPrimitives::init(); cocos2d::VolatileTextureMgr::reloadAllTextures(); - cocos2d::EventCustom foregroundEvent(EVENT_COME_TO_FOREGROUND); - director->getEventDispatcher()->dispatchEvent(&foregroundEvent); + cocos2d::EventCustom recreatedEvent(EVENT_RENDERER_RECREATED); + director->getEventDispatcher()->dispatchEvent(&recreatedEvent); cocos2d::Application::getInstance()->applicationWillEnterForeground(); director->setGLDefaultValues(); } diff --git a/cocos/renderer/CCGLProgramState.cpp b/cocos/renderer/CCGLProgramState.cpp index 5652db4e8e..6ce072b370 100644 --- a/cocos/renderer/CCGLProgramState.cpp +++ b/cocos/renderer/CCGLProgramState.cpp @@ -279,9 +279,9 @@ GLProgramState::GLProgramState() , _uniformAttributeValueDirty(true) { #if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) - // listen the event when app go to foreground - CCLOG("create _backToForegroundlistener for GLProgramState"); - _backToForegroundlistener = EventListenerCustom::create(EVENT_COME_TO_FOREGROUND, [this](EventCustom*) { _uniformAttributeValueDirty = true; }); + /** listen the event that renderer was recreated on Android/WP8 */ + CCLOG("create rendererRecreatedListener for GLProgramState"); + _backToForegroundlistener = EventListenerCustom::create(EVENT_RENDERER_RECREATED, [this](EventCustom*) { _uniformAttributeValueDirty = true; }); Director::getInstance()->getEventDispatcher()->addEventListenerWithFixedPriority(_backToForegroundlistener, -1); #endif } diff --git a/cocos/renderer/CCMeshCommand.cpp b/cocos/renderer/CCMeshCommand.cpp index 27104be85d..ad251cb9cc 100644 --- a/cocos/renderer/CCMeshCommand.cpp +++ b/cocos/renderer/CCMeshCommand.cpp @@ -56,10 +56,10 @@ MeshCommand::MeshCommand() , _vao(0) { _type = RenderCommand::Type::MESH_COMMAND; -#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) - // listen the event when app go to foreground - _backToForegroundlistener = EventListenerCustom::create(EVENT_COME_TO_FOREGROUND, CC_CALLBACK_1(MeshCommand::listenBackToForeground, this)); - Director::getInstance()->getEventDispatcher()->addEventListenerWithFixedPriority(_backToForegroundlistener, -1); +#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID || CC_TARGET_PLATFORM == CC_PLATFORM_WP8) + // listen the event that renderer was recreated on Android/WP8 + _rendererRecreatedListener = EventListenerCustom::create(EVENT_RENDERER_RECREATED, CC_CALLBACK_1(MeshCommand::listenRendererRecreated, this)); + Director::getInstance()->getEventDispatcher()->addEventListenerWithFixedPriority(_rendererRecreatedListener, -1); #endif } @@ -117,8 +117,8 @@ void MeshCommand::setDisplayColor(const Vec4& color) MeshCommand::~MeshCommand() { releaseVAO(); -#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) - Director::getInstance()->getEventDispatcher()->removeEventListener(_backToForegroundlistener); +#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID || CC_TARGET_PLATFORM == CC_PLATFORM_WP8) + Director::getInstance()->getEventDispatcher()->removeEventListener(_rendererRecreatedListener); #endif } @@ -292,8 +292,8 @@ void MeshCommand::releaseVAO() } } -#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) -void MeshCommand::listenBackToForeground(EventCustom* event) +#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID || CC_TARGET_PLATFORM == CC_PLATFORM_WP8) +void MeshCommand::listenRendererRecreated(EventCustom* event) { _vao = 0; } diff --git a/cocos/renderer/CCMeshCommand.h b/cocos/renderer/CCMeshCommand.h index 8e76e7e3a6..fcbf7881a9 100644 --- a/cocos/renderer/CCMeshCommand.h +++ b/cocos/renderer/CCMeshCommand.h @@ -74,8 +74,8 @@ public: uint32_t getMaterialID() const { return _materialID; } -#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) - void listenBackToForeground(EventCustom* event); +#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID || CC_TARGET_PLATFORM == CC_PLATFORM_WP8) + void listenRendererRecreated(EventCustom* event); #endif protected: @@ -122,8 +122,8 @@ protected: // ModelView transform Mat4 _mv; -#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) - EventListenerCustom* _backToForegroundlistener; +#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID || CC_TARGET_PLATFORM == CC_PLATFORM_WP8) + EventListenerCustom* _rendererRecreatedListener; #endif }; diff --git a/cocos/renderer/CCRenderer.cpp b/cocos/renderer/CCRenderer.cpp index e40fd56dcb..b7c9b47e23 100644 --- a/cocos/renderer/CCRenderer.cpp +++ b/cocos/renderer/CCRenderer.cpp @@ -145,8 +145,8 @@ Renderer::~Renderer() void Renderer::initGLView() { #if CC_ENABLE_CACHE_TEXTURE_DATA - _cacheTextureListener = EventListenerCustom::create(EVENT_COME_TO_FOREGROUND, [this](EventCustom* event){ - /** listen the event that coming to foreground on Android */ + _cacheTextureListener = EventListenerCustom::create(EVENT_RENDERER_RECREATED, [this](EventCustom* event){ + /** listen the event that renderer was recreated on Android/WP8 */ this->setupBuffer(); }); diff --git a/cocos/renderer/CCTextureAtlas.cpp b/cocos/renderer/CCTextureAtlas.cpp index 332a0246bb..d6b1a7578c 100644 --- a/cocos/renderer/CCTextureAtlas.cpp +++ b/cocos/renderer/CCTextureAtlas.cpp @@ -57,7 +57,7 @@ TextureAtlas::TextureAtlas() ,_texture(nullptr) ,_quads(nullptr) #if CC_ENABLE_CACHE_TEXTURE_DATA - ,_backToForegroundlistener(nullptr) + ,_rendererRecreatedListener(nullptr) #endif {} @@ -78,7 +78,7 @@ TextureAtlas::~TextureAtlas() CC_SAFE_RELEASE(_texture); #if CC_ENABLE_CACHE_TEXTURE_DATA - Director::getInstance()->getEventDispatcher()->removeEventListener(_backToForegroundlistener); + Director::getInstance()->getEventDispatcher()->removeEventListener(_rendererRecreatedListener); #endif } @@ -192,9 +192,9 @@ bool TextureAtlas::initWithTexture(Texture2D *texture, ssize_t capacity) memset( _indices, 0, _capacity * 6 * sizeof(GLushort) ); #if CC_ENABLE_CACHE_TEXTURE_DATA - // listen the event when app go to background - _backToForegroundlistener = EventListenerCustom::create(EVENT_COME_TO_FOREGROUND, CC_CALLBACK_1(TextureAtlas::listenBackToForeground, this)); - Director::getInstance()->getEventDispatcher()->addEventListenerWithFixedPriority(_backToForegroundlistener, -1); + /** listen the event that renderer was recreated on Android/WP8 */ + _rendererRecreatedListener = EventListenerCustom::create(EVENT_RENDERER_RECREATED, CC_CALLBACK_1(TextureAtlas::listenRendererRecreated, this)); + Director::getInstance()->getEventDispatcher()->addEventListenerWithFixedPriority(_rendererRecreatedListener, -1); #endif this->setupIndices(); @@ -213,7 +213,7 @@ bool TextureAtlas::initWithTexture(Texture2D *texture, ssize_t capacity) return true; } -void TextureAtlas::listenBackToForeground(EventCustom* event) +void TextureAtlas::listenRendererRecreated(EventCustom* event) { if (Configuration::getInstance()->supportsShareableVAO()) { diff --git a/cocos/renderer/CCTextureAtlas.h b/cocos/renderer/CCTextureAtlas.h index 5dd431d116..1e3c561ff3 100644 --- a/cocos/renderer/CCTextureAtlas.h +++ b/cocos/renderer/CCTextureAtlas.h @@ -189,9 +189,9 @@ public: /** draws all the Atlas's Quads */ void drawQuads(); - /** listen the event that coming to foreground on Android + /** listen the event that renderer was recreated on Android */ - void listenBackToForeground(EventCustom* event); + void listenRendererRecreated(EventCustom* event); /** whether or not the array buffer of the VBO needs to be updated*/ inline bool isDirty(void) { return _dirty; } @@ -244,7 +244,7 @@ protected: V3F_C4B_T2F_Quad* _quads; #if CC_ENABLE_CACHE_TEXTURE_DATA - EventListenerCustom* _backToForegroundlistener; + EventListenerCustom* _rendererRecreatedListener; #endif }; diff --git a/cocos/scripting/lua-bindings/auto/api/Controller.lua b/cocos/scripting/lua-bindings/auto/api/Controller.lua new file mode 100644 index 0000000000..160b455817 --- /dev/null +++ b/cocos/scripting/lua-bindings/auto/api/Controller.lua @@ -0,0 +1,51 @@ + +-------------------------------- +-- @module Controller +-- @parent_module cc + +-------------------------------- +-- @function [parent=#Controller] receiveExternalKeyEvent +-- @param self +-- @param #int int +-- @param #bool bool + +-------------------------------- +-- @function [parent=#Controller] getDeviceName +-- @param self +-- @return string#string ret (return value: string) + +-------------------------------- +-- @function [parent=#Controller] isConnected +-- @param self +-- @return bool#bool ret (return value: bool) + +-------------------------------- +-- @function [parent=#Controller] getDeviceId +-- @param self +-- @return int#int ret (return value: int) + +-------------------------------- +-- @function [parent=#Controller] setTag +-- @param self +-- @param #int int + +-------------------------------- +-- @function [parent=#Controller] getTag +-- @param self +-- @return int#int ret (return value: int) + +-------------------------------- +-- @function [parent=#Controller] startDiscoveryController +-- @param self + +-------------------------------- +-- @function [parent=#Controller] stopDiscoveryController +-- @param self + +-------------------------------- +-- @function [parent=#Controller] getControllerByTag +-- @param self +-- @param #int int +-- @return Controller#Controller ret (return value: cc.Controller) + +return nil diff --git a/cocos/scripting/lua-bindings/auto/api/EventController.lua b/cocos/scripting/lua-bindings/auto/api/EventController.lua new file mode 100644 index 0000000000..289b55d97c --- /dev/null +++ b/cocos/scripting/lua-bindings/auto/api/EventController.lua @@ -0,0 +1,48 @@ + +-------------------------------- +-- @module EventController +-- @extend Event +-- @parent_module cc + +-------------------------------- +-- @function [parent=#EventController] getControllerEventType +-- @param self +-- @return EventController::ControllerEventType#EventController::ControllerEventType ret (return value: cc.EventController::ControllerEventType) + +-------------------------------- +-- @function [parent=#EventController] setConnectStatus +-- @param self +-- @param #bool bool + +-------------------------------- +-- @function [parent=#EventController] isConnected +-- @param self +-- @return bool#bool ret (return value: bool) + +-------------------------------- +-- @function [parent=#EventController] setKeyCode +-- @param self +-- @param #int int + +-------------------------------- +-- @function [parent=#EventController] getController +-- @param self +-- @return Controller#Controller ret (return value: cc.Controller) + +-------------------------------- +-- @function [parent=#EventController] getKeyCode +-- @param self +-- @return int#int ret (return value: int) + +-------------------------------- +-- overload function: EventController(cc.EventController::ControllerEventType, cc.Controller, bool) +-- +-- overload function: EventController(cc.EventController::ControllerEventType, cc.Controller, int) +-- +-- @function [parent=#EventController] EventController +-- @param self +-- @param #cc.EventController::ControllerEventType controllereventtype +-- @param #cc.Controller controller +-- @param #int int + +return nil diff --git a/cocos/scripting/lua-bindings/auto/api/EventListenerController.lua b/cocos/scripting/lua-bindings/auto/api/EventListenerController.lua new file mode 100644 index 0000000000..338b93fcd1 --- /dev/null +++ b/cocos/scripting/lua-bindings/auto/api/EventListenerController.lua @@ -0,0 +1,22 @@ + +-------------------------------- +-- @module EventListenerController +-- @extend EventListener +-- @parent_module cc + +-------------------------------- +-- @function [parent=#EventListenerController] create +-- @param self +-- @return EventListenerController#EventListenerController ret (return value: cc.EventListenerController) + +-------------------------------- +-- @function [parent=#EventListenerController] clone +-- @param self +-- @return EventListenerController#EventListenerController ret (return value: cc.EventListenerController) + +-------------------------------- +-- @function [parent=#EventListenerController] checkAvailable +-- @param self +-- @return bool#bool ret (return value: bool) + +return nil diff --git a/cocos/scripting/lua-bindings/auto/api/FastTMXLayer.lua b/cocos/scripting/lua-bindings/auto/api/FastTMXLayer.lua new file mode 100644 index 0000000000..d159f6f54d --- /dev/null +++ b/cocos/scripting/lua-bindings/auto/api/FastTMXLayer.lua @@ -0,0 +1,146 @@ + +-------------------------------- +-- @module FastTMXLayer +-- @extend Node +-- @parent_module cc + +-------------------------------- +-- @function [parent=#FastTMXLayer] getPositionAt +-- @param self +-- @param #vec2_table vec2 +-- @return vec2_table#vec2_table ret (return value: vec2_table) + +-------------------------------- +-- @function [parent=#FastTMXLayer] setLayerOrientation +-- @param self +-- @param #int int + +-------------------------------- +-- @function [parent=#FastTMXLayer] getLayerSize +-- @param self +-- @return size_table#size_table ret (return value: size_table) + +-------------------------------- +-- @function [parent=#FastTMXLayer] setMapTileSize +-- @param self +-- @param #size_table size + +-------------------------------- +-- @function [parent=#FastTMXLayer] getLayerOrientation +-- @param self +-- @return int#int ret (return value: int) + +-------------------------------- +-- @function [parent=#FastTMXLayer] setProperties +-- @param self +-- @param #map_table map + +-------------------------------- +-- @function [parent=#FastTMXLayer] setLayerName +-- @param self +-- @param #string str + +-------------------------------- +-- @function [parent=#FastTMXLayer] removeTileAt +-- @param self +-- @param #vec2_table vec2 + +-------------------------------- +-- overload function: getProperties() +-- +-- overload function: getProperties() +-- +-- @function [parent=#FastTMXLayer] getProperties +-- @param self +-- @return map_table#map_table ret (retunr value: map_table) + +-------------------------------- +-- @function [parent=#FastTMXLayer] setupTiles +-- @param self + +-------------------------------- +-- @function [parent=#FastTMXLayer] setupTileSprite +-- @param self +-- @param #cc.Sprite sprite +-- @param #vec2_table vec2 +-- @param #int int + +-------------------------------- +-- overload function: setTileGID(int, vec2_table, cc.TMXTileFlags_) +-- +-- overload function: setTileGID(int, vec2_table) +-- +-- @function [parent=#FastTMXLayer] setTileGID +-- @param self +-- @param #int int +-- @param #vec2_table vec2 +-- @param #cc.TMXTileFlags_ tmxtileflags_ + +-------------------------------- +-- @function [parent=#FastTMXLayer] getMapTileSize +-- @param self +-- @return size_table#size_table ret (return value: size_table) + +-------------------------------- +-- @function [parent=#FastTMXLayer] getProperty +-- @param self +-- @param #string str +-- @return Value#Value ret (return value: cc.Value) + +-------------------------------- +-- @function [parent=#FastTMXLayer] setLayerSize +-- @param self +-- @param #size_table size + +-------------------------------- +-- @function [parent=#FastTMXLayer] getLayerName +-- @param self +-- @return string#string ret (return value: string) + +-------------------------------- +-- @function [parent=#FastTMXLayer] setTileSet +-- @param self +-- @param #cc.TMXTilesetInfo tmxtilesetinfo + +-------------------------------- +-- @function [parent=#FastTMXLayer] getTileSet +-- @param self +-- @return TMXTilesetInfo#TMXTilesetInfo ret (return value: cc.TMXTilesetInfo) + +-------------------------------- +-- @function [parent=#FastTMXLayer] getTileAt +-- @param self +-- @param #vec2_table vec2 +-- @return Sprite#Sprite ret (return value: cc.Sprite) + +-------------------------------- +-- @function [parent=#FastTMXLayer] create +-- @param self +-- @param #cc.TMXTilesetInfo tmxtilesetinfo +-- @param #cc.TMXLayerInfo tmxlayerinfo +-- @param #cc.TMXMapInfo map +-- @return FastTMXLayer#FastTMXLayer ret (return value: cc.FastTMXLayer) + +-------------------------------- +-- @function [parent=#FastTMXLayer] removeChild +-- @param self +-- @param #cc.Node node +-- @param #bool bool + +-------------------------------- +-- @function [parent=#FastTMXLayer] draw +-- @param self +-- @param #cc.Renderer renderer +-- @param #mat4_table mat4 +-- @param #unsigned int int + +-------------------------------- +-- @function [parent=#FastTMXLayer] getDescription +-- @param self +-- @return string#string ret (return value: string) + +-------------------------------- +-- @function [parent=#FastTMXLayer] FastTMXLayer +-- @param self + +return nil diff --git a/cocos/scripting/lua-bindings/auto/api/FastTMXTiledMap.lua b/cocos/scripting/lua-bindings/auto/api/FastTMXTiledMap.lua new file mode 100644 index 0000000000..008fdc4b61 --- /dev/null +++ b/cocos/scripting/lua-bindings/auto/api/FastTMXTiledMap.lua @@ -0,0 +1,103 @@ + +-------------------------------- +-- @module FastTMXTiledMap +-- @extend Node +-- @parent_module cc + +-------------------------------- +-- @function [parent=#FastTMXTiledMap] setObjectGroups +-- @param self +-- @param #array_table array + +-------------------------------- +-- @function [parent=#FastTMXTiledMap] getProperty +-- @param self +-- @param #string str +-- @return Value#Value ret (return value: cc.Value) + +-------------------------------- +-- @function [parent=#FastTMXTiledMap] setMapSize +-- @param self +-- @param #size_table size + +-------------------------------- +-- @function [parent=#FastTMXTiledMap] getObjectGroup +-- @param self +-- @param #string str +-- @return TMXObjectGroup#TMXObjectGroup ret (return value: cc.TMXObjectGroup) + +-------------------------------- +-- overload function: getObjectGroups() +-- +-- overload function: getObjectGroups() +-- +-- @function [parent=#FastTMXTiledMap] getObjectGroups +-- @param self +-- @return array_table#array_table ret (retunr value: array_table) + +-------------------------------- +-- @function [parent=#FastTMXTiledMap] getTileSize +-- @param self +-- @return size_table#size_table ret (return value: size_table) + +-------------------------------- +-- @function [parent=#FastTMXTiledMap] getMapSize +-- @param self +-- @return size_table#size_table ret (return value: size_table) + +-------------------------------- +-- @function [parent=#FastTMXTiledMap] getProperties +-- @param self +-- @return map_table#map_table ret (return value: map_table) + +-------------------------------- +-- @function [parent=#FastTMXTiledMap] getPropertiesForGID +-- @param self +-- @param #int int +-- @return Value#Value ret (return value: cc.Value) + +-------------------------------- +-- @function [parent=#FastTMXTiledMap] setTileSize +-- @param self +-- @param #size_table size + +-------------------------------- +-- @function [parent=#FastTMXTiledMap] setProperties +-- @param self +-- @param #map_table map + +-------------------------------- +-- @function [parent=#FastTMXTiledMap] getLayer +-- @param self +-- @param #string str +-- @return FastTMXLayer#FastTMXLayer ret (return value: cc.FastTMXLayer) + +-------------------------------- +-- @function [parent=#FastTMXTiledMap] getMapOrientation +-- @param self +-- @return int#int ret (return value: int) + +-------------------------------- +-- @function [parent=#FastTMXTiledMap] setMapOrientation +-- @param self +-- @param #int int + +-------------------------------- +-- @function [parent=#FastTMXTiledMap] create +-- @param self +-- @param #string str +-- @return FastTMXTiledMap#FastTMXTiledMap ret (return value: cc.FastTMXTiledMap) + +-------------------------------- +-- @function [parent=#FastTMXTiledMap] createWithXML +-- @param self +-- @param #string str +-- @param #string str +-- @return FastTMXTiledMap#FastTMXTiledMap ret (return value: cc.FastTMXTiledMap) + +-------------------------------- +-- @function [parent=#FastTMXTiledMap] getDescription +-- @param self +-- @return string#string ret (return value: string) + +return nil diff --git a/cocos/scripting/lua-bindings/auto/api/ParticleSystemQuad.lua b/cocos/scripting/lua-bindings/auto/api/ParticleSystemQuad.lua index 40b95f9386..3b41c5710a 100644 --- a/cocos/scripting/lua-bindings/auto/api/ParticleSystemQuad.lua +++ b/cocos/scripting/lua-bindings/auto/api/ParticleSystemQuad.lua @@ -15,6 +15,11 @@ -- @param #cc.Texture2D texture2d -- @param #rect_table rect +-------------------------------- +-- @function [parent=#ParticleSystemQuad] listenRendererRecreated +-- @param self +-- @param #cc.EventCustom eventcustom + -------------------------------- -- overload function: create(string) -- diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionPageTurn.lua b/cocos/scripting/lua-bindings/auto/api/TransitionPageTurn.lua index fa8d58c4fc..1c655d6fab 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionPageTurn.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionPageTurn.lua @@ -33,8 +33,4 @@ -- @param #mat4_table mat4 -- @param #unsigned int int --------------------------------- --- @function [parent=#TransitionPageTurn] TransitionPageTurn --- @param self - return nil diff --git a/cocos/scripting/lua-bindings/auto/api/TransitionProgress.lua b/cocos/scripting/lua-bindings/auto/api/TransitionProgress.lua index dd78bcf0e7..d05379f82b 100644 --- a/cocos/scripting/lua-bindings/auto/api/TransitionProgress.lua +++ b/cocos/scripting/lua-bindings/auto/api/TransitionProgress.lua @@ -11,8 +11,4 @@ -- @param #cc.Scene scene -- @return TransitionProgress#TransitionProgress ret (return value: cc.TransitionProgress) --------------------------------- --- @function [parent=#TransitionProgress] TransitionProgress --- @param self - return nil diff --git a/cocos/scripting/lua-bindings/auto/api/lua_cocos2dx_auto_api.lua b/cocos/scripting/lua-bindings/auto/api/lua_cocos2dx_auto_api.lua index 1e6649afb8..2d798d773a 100644 --- a/cocos/scripting/lua-bindings/auto/api/lua_cocos2dx_auto_api.lua +++ b/cocos/scripting/lua-bindings/auto/api/lua_cocos2dx_auto_api.lua @@ -1196,6 +1196,16 @@ -- @field [parent=#cc] TileMapAtlas#TileMapAtlas TileMapAtlas preloaded module +-------------------------------------------------------- +-- the cc FastTMXTiledMap +-- @field [parent=#cc] FastTMXTiledMap#FastTMXTiledMap FastTMXTiledMap preloaded module + + +-------------------------------------------------------- +-- the cc FastTMXLayer +-- @field [parent=#cc] FastTMXLayer#FastTMXLayer FastTMXLayer preloaded module + + -------------------------------------------------------- -- the cc Component -- @field [parent=#cc] Component#Component Component preloaded module diff --git a/cocos/scripting/lua-bindings/auto/api/lua_cocos2dx_controller_auto_api.lua b/cocos/scripting/lua-bindings/auto/api/lua_cocos2dx_controller_auto_api.lua new file mode 100644 index 0000000000..30ab29ef7b --- /dev/null +++ b/cocos/scripting/lua-bindings/auto/api/lua_cocos2dx_controller_auto_api.lua @@ -0,0 +1,19 @@ +-------------------------------- +-- @module cc + +-------------------------------------------------------- +-- the cc Controller +-- @field [parent=#cc] Controller#Controller Controller preloaded module + + +-------------------------------------------------------- +-- the cc EventController +-- @field [parent=#cc] EventController#EventController EventController preloaded module + + +-------------------------------------------------------- +-- the cc EventListenerController +-- @field [parent=#cc] EventListenerController#EventListenerController EventListenerController preloaded module + + +return nil diff --git a/cocos/scripting/lua-bindings/auto/lua_cocos2dx_auto.cpp b/cocos/scripting/lua-bindings/auto/lua_cocos2dx_auto.cpp index 3a95708463..c5c34c2ae2 100644 --- a/cocos/scripting/lua-bindings/auto/lua_cocos2dx_auto.cpp +++ b/cocos/scripting/lua-bindings/auto/lua_cocos2dx_auto.cpp @@ -39201,40 +39201,6 @@ int lua_cocos2dx_TransitionPageTurn_create(lua_State* tolua_S) #endif return 0; } -int lua_cocos2dx_TransitionPageTurn_constructor(lua_State* tolua_S) -{ - int argc = 0; - cocos2d::TransitionPageTurn* cobj = nullptr; - bool ok = true; - -#if COCOS2D_DEBUG >= 1 - tolua_Error tolua_err; -#endif - - - - argc = lua_gettop(tolua_S)-1; - if (argc == 0) - { - if(!ok) - return 0; - cobj = new cocos2d::TransitionPageTurn(); - cobj->autorelease(); - int ID = (int)cobj->_ID ; - int* luaID = &cobj->_luaID ; - toluafix_pushusertype_ccobject(tolua_S, ID, luaID, (void*)cobj,"cc.TransitionPageTurn"); - return 1; - } - CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "TransitionPageTurn",argc, 0); - return 0; - -#if COCOS2D_DEBUG >= 1 - tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_TransitionPageTurn_constructor'.",&tolua_err); -#endif - - return 0; -} - static int lua_cocos2dx_TransitionPageTurn_finalize(lua_State* tolua_S) { printf("luabindings: finalizing LUA object (TransitionPageTurn)"); @@ -39247,7 +39213,6 @@ int lua_register_cocos2dx_TransitionPageTurn(lua_State* tolua_S) tolua_cclass(tolua_S,"TransitionPageTurn","cc.TransitionPageTurn","cc.TransitionScene",nullptr); tolua_beginmodule(tolua_S,"TransitionPageTurn"); - tolua_function(tolua_S,"new",lua_cocos2dx_TransitionPageTurn_constructor); tolua_function(tolua_S,"actionWithSize",lua_cocos2dx_TransitionPageTurn_actionWithSize); tolua_function(tolua_S,"initWithDuration",lua_cocos2dx_TransitionPageTurn_initWithDuration); tolua_function(tolua_S,"create", lua_cocos2dx_TransitionPageTurn_create); @@ -39293,40 +39258,6 @@ int lua_cocos2dx_TransitionProgress_create(lua_State* tolua_S) #endif return 0; } -int lua_cocos2dx_TransitionProgress_constructor(lua_State* tolua_S) -{ - int argc = 0; - cocos2d::TransitionProgress* cobj = nullptr; - bool ok = true; - -#if COCOS2D_DEBUG >= 1 - tolua_Error tolua_err; -#endif - - - - argc = lua_gettop(tolua_S)-1; - if (argc == 0) - { - if(!ok) - return 0; - cobj = new cocos2d::TransitionProgress(); - cobj->autorelease(); - int ID = (int)cobj->_ID ; - int* luaID = &cobj->_luaID ; - toluafix_pushusertype_ccobject(tolua_S, ID, luaID, (void*)cobj,"cc.TransitionProgress"); - return 1; - } - CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "TransitionProgress",argc, 0); - return 0; - -#if COCOS2D_DEBUG >= 1 - tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_TransitionProgress_constructor'.",&tolua_err); -#endif - - return 0; -} - static int lua_cocos2dx_TransitionProgress_finalize(lua_State* tolua_S) { printf("luabindings: finalizing LUA object (TransitionProgress)"); @@ -39339,7 +39270,6 @@ int lua_register_cocos2dx_TransitionProgress(lua_State* tolua_S) tolua_cclass(tolua_S,"TransitionProgress","cc.TransitionProgress","cc.TransitionScene",nullptr); tolua_beginmodule(tolua_S,"TransitionProgress"); - tolua_function(tolua_S,"new",lua_cocos2dx_TransitionProgress_constructor); tolua_function(tolua_S,"create", lua_cocos2dx_TransitionProgress_create); tolua_endmodule(tolua_S); std::string typeName = typeid(cocos2d::TransitionProgress).name(); @@ -51948,6 +51878,52 @@ int lua_cocos2dx_ParticleSystemQuad_setTextureWithRect(lua_State* tolua_S) return 0; } +int lua_cocos2dx_ParticleSystemQuad_listenRendererRecreated(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::ParticleSystemQuad* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.ParticleSystemQuad",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::ParticleSystemQuad*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_ParticleSystemQuad_listenRendererRecreated'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 1) + { + cocos2d::EventCustom* arg0; + + ok &= luaval_to_object(tolua_S, 2, "cc.EventCustom",&arg0); + if(!ok) + return 0; + cobj->listenRendererRecreated(arg0); + return 0; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "listenRendererRecreated",argc, 1); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_ParticleSystemQuad_listenRendererRecreated'.",&tolua_err); +#endif + + return 0; +} int lua_cocos2dx_ParticleSystemQuad_create(lua_State* tolua_S) { int argc = 0; @@ -52053,6 +52029,7 @@ int lua_register_cocos2dx_ParticleSystemQuad(lua_State* tolua_S) tolua_beginmodule(tolua_S,"ParticleSystemQuad"); tolua_function(tolua_S,"setDisplayFrame",lua_cocos2dx_ParticleSystemQuad_setDisplayFrame); tolua_function(tolua_S,"setTextureWithRect",lua_cocos2dx_ParticleSystemQuad_setTextureWithRect); + tolua_function(tolua_S,"listenRendererRecreated",lua_cocos2dx_ParticleSystemQuad_listenRendererRecreated); tolua_function(tolua_S,"create", lua_cocos2dx_ParticleSystemQuad_create); tolua_function(tolua_S,"createWithTotalParticles", lua_cocos2dx_ParticleSystemQuad_createWithTotalParticles); tolua_endmodule(tolua_S); @@ -61926,6 +61903,1751 @@ int lua_register_cocos2dx_TileMapAtlas(lua_State* tolua_S) return 1; } +int lua_cocos2dx_FastTMXTiledMap_setObjectGroups(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXTiledMap* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXTiledMap",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXTiledMap*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXTiledMap_setObjectGroups'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 1) + { + cocos2d::Vector arg0; + + ok &= luaval_to_ccvector(tolua_S, 2, &arg0); + if(!ok) + return 0; + cobj->setObjectGroups(arg0); + return 0; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "setObjectGroups",argc, 1); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXTiledMap_setObjectGroups'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXTiledMap_getProperty(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXTiledMap* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXTiledMap",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXTiledMap*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXTiledMap_getProperty'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 1) + { + std::string arg0; + + ok &= luaval_to_std_string(tolua_S, 2,&arg0); + if(!ok) + return 0; + cocos2d::Value ret = cobj->getProperty(arg0); + ccvalue_to_luaval(tolua_S, ret); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "getProperty",argc, 1); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXTiledMap_getProperty'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXTiledMap_setMapSize(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXTiledMap* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXTiledMap",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXTiledMap*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXTiledMap_setMapSize'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 1) + { + cocos2d::Size arg0; + + ok &= luaval_to_size(tolua_S, 2, &arg0); + if(!ok) + return 0; + cobj->setMapSize(arg0); + return 0; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "setMapSize",argc, 1); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXTiledMap_setMapSize'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXTiledMap_getObjectGroup(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXTiledMap* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXTiledMap",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXTiledMap*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXTiledMap_getObjectGroup'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 1) + { + std::string arg0; + + ok &= luaval_to_std_string(tolua_S, 2,&arg0); + if(!ok) + return 0; + cocos2d::TMXObjectGroup* ret = cobj->getObjectGroup(arg0); + object_to_luaval(tolua_S, "cc.TMXObjectGroup",(cocos2d::TMXObjectGroup*)ret); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "getObjectGroup",argc, 1); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXTiledMap_getObjectGroup'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXTiledMap_getObjectGroups(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXTiledMap* cobj = nullptr; + bool ok = true; +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXTiledMap",0,&tolua_err)) goto tolua_lerror; +#endif + cobj = (cocos2d::FastTMXTiledMap*)tolua_tousertype(tolua_S,1,0); +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXTiledMap_getObjectGroups'", nullptr); + return 0; + } +#endif + argc = lua_gettop(tolua_S)-1; + do{ + if (argc == 0) { + cocos2d::Vector& ret = cobj->getObjectGroups(); + ccvector_to_luaval(tolua_S, ret); + return 1; + } + }while(0); + ok = true; + do{ + if (argc == 0) { + const cocos2d::Vector& ret = cobj->getObjectGroups(); + ccvector_to_luaval(tolua_S, ret); + return 1; + } + }while(0); + ok = true; + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "getObjectGroups",argc, 0); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXTiledMap_getObjectGroups'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXTiledMap_getTileSize(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXTiledMap* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXTiledMap",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXTiledMap*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXTiledMap_getTileSize'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 0) + { + if(!ok) + return 0; + const cocos2d::Size& ret = cobj->getTileSize(); + size_to_luaval(tolua_S, ret); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "getTileSize",argc, 0); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXTiledMap_getTileSize'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXTiledMap_getMapSize(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXTiledMap* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXTiledMap",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXTiledMap*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXTiledMap_getMapSize'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 0) + { + if(!ok) + return 0; + const cocos2d::Size& ret = cobj->getMapSize(); + size_to_luaval(tolua_S, ret); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "getMapSize",argc, 0); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXTiledMap_getMapSize'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXTiledMap_getProperties(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXTiledMap* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXTiledMap",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXTiledMap*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXTiledMap_getProperties'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 0) + { + if(!ok) + return 0; + const cocos2d::ValueMap& ret = cobj->getProperties(); + ccvaluemap_to_luaval(tolua_S, ret); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "getProperties",argc, 0); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXTiledMap_getProperties'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXTiledMap_getPropertiesForGID(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXTiledMap* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXTiledMap",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXTiledMap*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXTiledMap_getPropertiesForGID'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 1) + { + int arg0; + + ok &= luaval_to_int32(tolua_S, 2,(int *)&arg0); + if(!ok) + return 0; + cocos2d::Value ret = cobj->getPropertiesForGID(arg0); + ccvalue_to_luaval(tolua_S, ret); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "getPropertiesForGID",argc, 1); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXTiledMap_getPropertiesForGID'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXTiledMap_setTileSize(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXTiledMap* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXTiledMap",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXTiledMap*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXTiledMap_setTileSize'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 1) + { + cocos2d::Size arg0; + + ok &= luaval_to_size(tolua_S, 2, &arg0); + if(!ok) + return 0; + cobj->setTileSize(arg0); + return 0; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "setTileSize",argc, 1); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXTiledMap_setTileSize'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXTiledMap_setProperties(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXTiledMap* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXTiledMap",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXTiledMap*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXTiledMap_setProperties'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 1) + { + cocos2d::ValueMap arg0; + + ok &= luaval_to_ccvaluemap(tolua_S, 2, &arg0); + if(!ok) + return 0; + cobj->setProperties(arg0); + return 0; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "setProperties",argc, 1); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXTiledMap_setProperties'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXTiledMap_getLayer(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXTiledMap* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXTiledMap",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXTiledMap*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXTiledMap_getLayer'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 1) + { + std::string arg0; + + ok &= luaval_to_std_string(tolua_S, 2,&arg0); + if(!ok) + return 0; + cocos2d::FastTMXLayer* ret = cobj->getLayer(arg0); + object_to_luaval(tolua_S, "cc.FastTMXLayer",(cocos2d::FastTMXLayer*)ret); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "getLayer",argc, 1); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXTiledMap_getLayer'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXTiledMap_getMapOrientation(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXTiledMap* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXTiledMap",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXTiledMap*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXTiledMap_getMapOrientation'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 0) + { + if(!ok) + return 0; + int ret = cobj->getMapOrientation(); + tolua_pushnumber(tolua_S,(lua_Number)ret); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "getMapOrientation",argc, 0); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXTiledMap_getMapOrientation'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXTiledMap_setMapOrientation(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXTiledMap* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXTiledMap",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXTiledMap*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXTiledMap_setMapOrientation'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 1) + { + int arg0; + + ok &= luaval_to_int32(tolua_S, 2,(int *)&arg0); + if(!ok) + return 0; + cobj->setMapOrientation(arg0); + return 0; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "setMapOrientation",argc, 1); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXTiledMap_setMapOrientation'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXTiledMap_create(lua_State* tolua_S) +{ + int argc = 0; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertable(tolua_S,1,"cc.FastTMXTiledMap",0,&tolua_err)) goto tolua_lerror; +#endif + + argc = lua_gettop(tolua_S) - 1; + + if (argc == 1) + { + std::string arg0; + ok &= luaval_to_std_string(tolua_S, 2,&arg0); + if(!ok) + return 0; + cocos2d::FastTMXTiledMap* ret = cocos2d::FastTMXTiledMap::create(arg0); + object_to_luaval(tolua_S, "cc.FastTMXTiledMap",(cocos2d::FastTMXTiledMap*)ret); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d\n ", "create",argc, 1); + return 0; +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXTiledMap_create'.",&tolua_err); +#endif + return 0; +} +int lua_cocos2dx_FastTMXTiledMap_createWithXML(lua_State* tolua_S) +{ + int argc = 0; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertable(tolua_S,1,"cc.FastTMXTiledMap",0,&tolua_err)) goto tolua_lerror; +#endif + + argc = lua_gettop(tolua_S) - 1; + + if (argc == 2) + { + std::string arg0; + std::string arg1; + ok &= luaval_to_std_string(tolua_S, 2,&arg0); + ok &= luaval_to_std_string(tolua_S, 3,&arg1); + if(!ok) + return 0; + cocos2d::FastTMXTiledMap* ret = cocos2d::FastTMXTiledMap::createWithXML(arg0, arg1); + object_to_luaval(tolua_S, "cc.FastTMXTiledMap",(cocos2d::FastTMXTiledMap*)ret); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d\n ", "createWithXML",argc, 2); + return 0; +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXTiledMap_createWithXML'.",&tolua_err); +#endif + return 0; +} +static int lua_cocos2dx_FastTMXTiledMap_finalize(lua_State* tolua_S) +{ + printf("luabindings: finalizing LUA object (FastTMXTiledMap)"); + return 0; +} + +int lua_register_cocos2dx_FastTMXTiledMap(lua_State* tolua_S) +{ + tolua_usertype(tolua_S,"cc.FastTMXTiledMap"); + tolua_cclass(tolua_S,"FastTMXTiledMap","cc.FastTMXTiledMap","cc.Node",nullptr); + + tolua_beginmodule(tolua_S,"FastTMXTiledMap"); + tolua_function(tolua_S,"setObjectGroups",lua_cocos2dx_FastTMXTiledMap_setObjectGroups); + tolua_function(tolua_S,"getProperty",lua_cocos2dx_FastTMXTiledMap_getProperty); + tolua_function(tolua_S,"setMapSize",lua_cocos2dx_FastTMXTiledMap_setMapSize); + tolua_function(tolua_S,"getObjectGroup",lua_cocos2dx_FastTMXTiledMap_getObjectGroup); + tolua_function(tolua_S,"getObjectGroups",lua_cocos2dx_FastTMXTiledMap_getObjectGroups); + tolua_function(tolua_S,"getTileSize",lua_cocos2dx_FastTMXTiledMap_getTileSize); + tolua_function(tolua_S,"getMapSize",lua_cocos2dx_FastTMXTiledMap_getMapSize); + tolua_function(tolua_S,"getProperties",lua_cocos2dx_FastTMXTiledMap_getProperties); + tolua_function(tolua_S,"getPropertiesForGID",lua_cocos2dx_FastTMXTiledMap_getPropertiesForGID); + tolua_function(tolua_S,"setTileSize",lua_cocos2dx_FastTMXTiledMap_setTileSize); + tolua_function(tolua_S,"setProperties",lua_cocos2dx_FastTMXTiledMap_setProperties); + tolua_function(tolua_S,"getLayer",lua_cocos2dx_FastTMXTiledMap_getLayer); + tolua_function(tolua_S,"getMapOrientation",lua_cocos2dx_FastTMXTiledMap_getMapOrientation); + tolua_function(tolua_S,"setMapOrientation",lua_cocos2dx_FastTMXTiledMap_setMapOrientation); + tolua_function(tolua_S,"create", lua_cocos2dx_FastTMXTiledMap_create); + tolua_function(tolua_S,"createWithXML", lua_cocos2dx_FastTMXTiledMap_createWithXML); + tolua_endmodule(tolua_S); + std::string typeName = typeid(cocos2d::FastTMXTiledMap).name(); + g_luaType[typeName] = "cc.FastTMXTiledMap"; + g_typeCast["FastTMXTiledMap"] = "cc.FastTMXTiledMap"; + return 1; +} + +int lua_cocos2dx_FastTMXLayer_getPositionAt(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXLayer* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXLayer",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXLayer*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXLayer_getPositionAt'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 1) + { + cocos2d::Vec2 arg0; + + ok &= luaval_to_vec2(tolua_S, 2, &arg0); + if(!ok) + return 0; + cocos2d::Vec2 ret = cobj->getPositionAt(arg0); + vec2_to_luaval(tolua_S, ret); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "getPositionAt",argc, 1); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXLayer_getPositionAt'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXLayer_setLayerOrientation(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXLayer* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXLayer",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXLayer*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXLayer_setLayerOrientation'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 1) + { + int arg0; + + ok &= luaval_to_int32(tolua_S, 2,(int *)&arg0); + if(!ok) + return 0; + cobj->setLayerOrientation(arg0); + return 0; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "setLayerOrientation",argc, 1); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXLayer_setLayerOrientation'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXLayer_getLayerSize(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXLayer* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXLayer",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXLayer*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXLayer_getLayerSize'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 0) + { + if(!ok) + return 0; + const cocos2d::Size& ret = cobj->getLayerSize(); + size_to_luaval(tolua_S, ret); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "getLayerSize",argc, 0); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXLayer_getLayerSize'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXLayer_setMapTileSize(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXLayer* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXLayer",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXLayer*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXLayer_setMapTileSize'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 1) + { + cocos2d::Size arg0; + + ok &= luaval_to_size(tolua_S, 2, &arg0); + if(!ok) + return 0; + cobj->setMapTileSize(arg0); + return 0; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "setMapTileSize",argc, 1); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXLayer_setMapTileSize'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXLayer_getLayerOrientation(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXLayer* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXLayer",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXLayer*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXLayer_getLayerOrientation'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 0) + { + if(!ok) + return 0; + int ret = cobj->getLayerOrientation(); + tolua_pushnumber(tolua_S,(lua_Number)ret); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "getLayerOrientation",argc, 0); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXLayer_getLayerOrientation'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXLayer_setProperties(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXLayer* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXLayer",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXLayer*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXLayer_setProperties'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 1) + { + cocos2d::ValueMap arg0; + + ok &= luaval_to_ccvaluemap(tolua_S, 2, &arg0); + if(!ok) + return 0; + cobj->setProperties(arg0); + return 0; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "setProperties",argc, 1); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXLayer_setProperties'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXLayer_setLayerName(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXLayer* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXLayer",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXLayer*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXLayer_setLayerName'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 1) + { + std::string arg0; + + ok &= luaval_to_std_string(tolua_S, 2,&arg0); + if(!ok) + return 0; + cobj->setLayerName(arg0); + return 0; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "setLayerName",argc, 1); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXLayer_setLayerName'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXLayer_removeTileAt(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXLayer* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXLayer",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXLayer*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXLayer_removeTileAt'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 1) + { + cocos2d::Vec2 arg0; + + ok &= luaval_to_vec2(tolua_S, 2, &arg0); + if(!ok) + return 0; + cobj->removeTileAt(arg0); + return 0; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "removeTileAt",argc, 1); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXLayer_removeTileAt'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXLayer_getProperties(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXLayer* cobj = nullptr; + bool ok = true; +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXLayer",0,&tolua_err)) goto tolua_lerror; +#endif + cobj = (cocos2d::FastTMXLayer*)tolua_tousertype(tolua_S,1,0); +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXLayer_getProperties'", nullptr); + return 0; + } +#endif + argc = lua_gettop(tolua_S)-1; + do{ + if (argc == 0) { + cocos2d::ValueMap& ret = cobj->getProperties(); + ccvaluemap_to_luaval(tolua_S, ret); + return 1; + } + }while(0); + ok = true; + do{ + if (argc == 0) { + const cocos2d::ValueMap& ret = cobj->getProperties(); + ccvaluemap_to_luaval(tolua_S, ret); + return 1; + } + }while(0); + ok = true; + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "getProperties",argc, 0); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXLayer_getProperties'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXLayer_setupTiles(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXLayer* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXLayer",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXLayer*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXLayer_setupTiles'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 0) + { + if(!ok) + return 0; + cobj->setupTiles(); + return 0; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "setupTiles",argc, 0); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXLayer_setupTiles'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXLayer_setupTileSprite(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXLayer* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXLayer",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXLayer*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXLayer_setupTileSprite'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 3) + { + cocos2d::Sprite* arg0; + cocos2d::Vec2 arg1; + int arg2; + + ok &= luaval_to_object(tolua_S, 2, "cc.Sprite",&arg0); + + ok &= luaval_to_vec2(tolua_S, 3, &arg1); + + ok &= luaval_to_int32(tolua_S, 4,(int *)&arg2); + if(!ok) + return 0; + cobj->setupTileSprite(arg0, arg1, arg2); + return 0; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "setupTileSprite",argc, 3); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXLayer_setupTileSprite'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXLayer_setTileGID(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXLayer* cobj = nullptr; + bool ok = true; +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXLayer",0,&tolua_err)) goto tolua_lerror; +#endif + cobj = (cocos2d::FastTMXLayer*)tolua_tousertype(tolua_S,1,0); +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXLayer_setTileGID'", nullptr); + return 0; + } +#endif + argc = lua_gettop(tolua_S)-1; + do{ + if (argc == 3) { + int arg0; + ok &= luaval_to_int32(tolua_S, 2,(int *)&arg0); + + if (!ok) { break; } + cocos2d::Vec2 arg1; + ok &= luaval_to_vec2(tolua_S, 3, &arg1); + + if (!ok) { break; } + cocos2d::TMXTileFlags_ arg2; + ok &= luaval_to_int32(tolua_S, 4,(int *)&arg2); + + if (!ok) { break; } + cobj->setTileGID(arg0, arg1, arg2); + return 0; + } + }while(0); + ok = true; + do{ + if (argc == 2) { + int arg0; + ok &= luaval_to_int32(tolua_S, 2,(int *)&arg0); + + if (!ok) { break; } + cocos2d::Vec2 arg1; + ok &= luaval_to_vec2(tolua_S, 3, &arg1); + + if (!ok) { break; } + cobj->setTileGID(arg0, arg1); + return 0; + } + }while(0); + ok = true; + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "setTileGID",argc, 2); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXLayer_setTileGID'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXLayer_getMapTileSize(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXLayer* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXLayer",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXLayer*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXLayer_getMapTileSize'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 0) + { + if(!ok) + return 0; + const cocos2d::Size& ret = cobj->getMapTileSize(); + size_to_luaval(tolua_S, ret); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "getMapTileSize",argc, 0); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXLayer_getMapTileSize'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXLayer_getProperty(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXLayer* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXLayer",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXLayer*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXLayer_getProperty'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 1) + { + std::string arg0; + + ok &= luaval_to_std_string(tolua_S, 2,&arg0); + if(!ok) + return 0; + cocos2d::Value ret = cobj->getProperty(arg0); + ccvalue_to_luaval(tolua_S, ret); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "getProperty",argc, 1); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXLayer_getProperty'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXLayer_setLayerSize(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXLayer* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXLayer",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXLayer*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXLayer_setLayerSize'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 1) + { + cocos2d::Size arg0; + + ok &= luaval_to_size(tolua_S, 2, &arg0); + if(!ok) + return 0; + cobj->setLayerSize(arg0); + return 0; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "setLayerSize",argc, 1); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXLayer_setLayerSize'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXLayer_getLayerName(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXLayer* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXLayer",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXLayer*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXLayer_getLayerName'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 0) + { + if(!ok) + return 0; + const std::string& ret = cobj->getLayerName(); + tolua_pushcppstring(tolua_S,ret); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "getLayerName",argc, 0); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXLayer_getLayerName'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXLayer_setTileSet(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXLayer* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXLayer",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXLayer*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXLayer_setTileSet'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 1) + { + cocos2d::TMXTilesetInfo* arg0; + + ok &= luaval_to_object(tolua_S, 2, "cc.TMXTilesetInfo",&arg0); + if(!ok) + return 0; + cobj->setTileSet(arg0); + return 0; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "setTileSet",argc, 1); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXLayer_setTileSet'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXLayer_getTileSet(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXLayer* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXLayer",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXLayer*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXLayer_getTileSet'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 0) + { + if(!ok) + return 0; + cocos2d::TMXTilesetInfo* ret = cobj->getTileSet(); + object_to_luaval(tolua_S, "cc.TMXTilesetInfo",(cocos2d::TMXTilesetInfo*)ret); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "getTileSet",argc, 0); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXLayer_getTileSet'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXLayer_getTileAt(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXLayer* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXLayer",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXLayer*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXLayer_getTileAt'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 1) + { + cocos2d::Vec2 arg0; + + ok &= luaval_to_vec2(tolua_S, 2, &arg0); + if(!ok) + return 0; + cocos2d::Sprite* ret = cobj->getTileAt(arg0); + object_to_luaval(tolua_S, "cc.Sprite",(cocos2d::Sprite*)ret); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "getTileAt",argc, 1); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXLayer_getTileAt'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_FastTMXLayer_create(lua_State* tolua_S) +{ + int argc = 0; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertable(tolua_S,1,"cc.FastTMXLayer",0,&tolua_err)) goto tolua_lerror; +#endif + + argc = lua_gettop(tolua_S) - 1; + + if (argc == 3) + { + cocos2d::TMXTilesetInfo* arg0; + cocos2d::TMXLayerInfo* arg1; + cocos2d::TMXMapInfo* arg2; + ok &= luaval_to_object(tolua_S, 2, "cc.TMXTilesetInfo",&arg0); + ok &= luaval_to_object(tolua_S, 3, "cc.TMXLayerInfo",&arg1); + ok &= luaval_to_object(tolua_S, 4, "cc.TMXMapInfo",&arg2); + if(!ok) + return 0; + cocos2d::FastTMXLayer* ret = cocos2d::FastTMXLayer::create(arg0, arg1, arg2); + object_to_luaval(tolua_S, "cc.FastTMXLayer",(cocos2d::FastTMXLayer*)ret); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d\n ", "create",argc, 3); + return 0; +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXLayer_create'.",&tolua_err); +#endif + return 0; +} +int lua_cocos2dx_FastTMXLayer_constructor(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXLayer* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + + + argc = lua_gettop(tolua_S)-1; + if (argc == 0) + { + if(!ok) + return 0; + cobj = new cocos2d::FastTMXLayer(); + cobj->autorelease(); + int ID = (int)cobj->_ID ; + int* luaID = &cobj->_luaID ; + toluafix_pushusertype_ccobject(tolua_S, ID, luaID, (void*)cobj,"cc.FastTMXLayer"); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "FastTMXLayer",argc, 0); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXLayer_constructor'.",&tolua_err); +#endif + + return 0; +} + +static int lua_cocos2dx_FastTMXLayer_finalize(lua_State* tolua_S) +{ + printf("luabindings: finalizing LUA object (FastTMXLayer)"); + return 0; +} + +int lua_register_cocos2dx_FastTMXLayer(lua_State* tolua_S) +{ + tolua_usertype(tolua_S,"cc.FastTMXLayer"); + tolua_cclass(tolua_S,"FastTMXLayer","cc.FastTMXLayer","cc.Node",nullptr); + + tolua_beginmodule(tolua_S,"FastTMXLayer"); + tolua_function(tolua_S,"new",lua_cocos2dx_FastTMXLayer_constructor); + tolua_function(tolua_S,"getPositionAt",lua_cocos2dx_FastTMXLayer_getPositionAt); + tolua_function(tolua_S,"setLayerOrientation",lua_cocos2dx_FastTMXLayer_setLayerOrientation); + tolua_function(tolua_S,"getLayerSize",lua_cocos2dx_FastTMXLayer_getLayerSize); + tolua_function(tolua_S,"setMapTileSize",lua_cocos2dx_FastTMXLayer_setMapTileSize); + tolua_function(tolua_S,"getLayerOrientation",lua_cocos2dx_FastTMXLayer_getLayerOrientation); + tolua_function(tolua_S,"setProperties",lua_cocos2dx_FastTMXLayer_setProperties); + tolua_function(tolua_S,"setLayerName",lua_cocos2dx_FastTMXLayer_setLayerName); + tolua_function(tolua_S,"removeTileAt",lua_cocos2dx_FastTMXLayer_removeTileAt); + tolua_function(tolua_S,"getProperties",lua_cocos2dx_FastTMXLayer_getProperties); + tolua_function(tolua_S,"setupTiles",lua_cocos2dx_FastTMXLayer_setupTiles); + tolua_function(tolua_S,"setupTileSprite",lua_cocos2dx_FastTMXLayer_setupTileSprite); + tolua_function(tolua_S,"setTileGID",lua_cocos2dx_FastTMXLayer_setTileGID); + tolua_function(tolua_S,"getMapTileSize",lua_cocos2dx_FastTMXLayer_getMapTileSize); + tolua_function(tolua_S,"getProperty",lua_cocos2dx_FastTMXLayer_getProperty); + tolua_function(tolua_S,"setLayerSize",lua_cocos2dx_FastTMXLayer_setLayerSize); + tolua_function(tolua_S,"getLayerName",lua_cocos2dx_FastTMXLayer_getLayerName); + tolua_function(tolua_S,"setTileSet",lua_cocos2dx_FastTMXLayer_setTileSet); + tolua_function(tolua_S,"getTileSet",lua_cocos2dx_FastTMXLayer_getTileSet); + tolua_function(tolua_S,"getTileAt",lua_cocos2dx_FastTMXLayer_getTileAt); + tolua_function(tolua_S,"create", lua_cocos2dx_FastTMXLayer_create); + tolua_endmodule(tolua_S); + std::string typeName = typeid(cocos2d::FastTMXLayer).name(); + g_luaType[typeName] = "cc.FastTMXLayer"; + g_typeCast["FastTMXLayer"] = "cc.FastTMXLayer"; + return 1; +} + int lua_cocos2dx_Component_setEnabled(lua_State* tolua_S) { int argc = 0; @@ -65255,6 +66977,7 @@ TOLUA_API int register_all_cocos2dx(lua_State* tolua_S) lua_register_cocos2dx_Sprite3D(tolua_S); lua_register_cocos2dx_EventListenerMouse(tolua_S); lua_register_cocos2dx_TiledGrid3D(tolua_S); + lua_register_cocos2dx_FastTMXTiledMap(tolua_S); lua_register_cocos2dx_ParticleGalaxy(tolua_S); lua_register_cocos2dx_Twirl(tolua_S); lua_register_cocos2dx_MenuItemLabel(tolua_S); @@ -65287,6 +67010,7 @@ TOLUA_API int register_all_cocos2dx(lua_State* tolua_S) lua_register_cocos2dx_SpriteFrame(tolua_S); lua_register_cocos2dx_ActionManager(tolua_S); lua_register_cocos2dx_UserDefault(tolua_S); + lua_register_cocos2dx_FastTMXLayer(tolua_S); lua_register_cocos2dx_TransitionZoomFlipX(tolua_S); lua_register_cocos2dx_EventFocus(tolua_S); lua_register_cocos2dx_EaseQuinticActionInOut(tolua_S); diff --git a/cocos/scripting/lua-bindings/auto/lua_cocos2dx_auto.hpp b/cocos/scripting/lua-bindings/auto/lua_cocos2dx_auto.hpp index 0cff4e3b27..42b0e17ab0 100644 --- a/cocos/scripting/lua-bindings/auto/lua_cocos2dx_auto.hpp +++ b/cocos/scripting/lua-bindings/auto/lua_cocos2dx_auto.hpp @@ -1555,6 +1555,44 @@ int register_all_cocos2dx(lua_State* tolua_S); + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/cocos/scripting/lua-bindings/auto/lua_cocos2dx_controller_auto.cpp b/cocos/scripting/lua-bindings/auto/lua_cocos2dx_controller_auto.cpp new file mode 100644 index 0000000000..160c684a1d --- /dev/null +++ b/cocos/scripting/lua-bindings/auto/lua_cocos2dx_controller_auto.cpp @@ -0,0 +1,826 @@ +#include "lua_cocos2dx_controller_auto.hpp" +#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID || CC_TARGET_PLATFORM == CC_PLATFORM_IOS) +#include "CCGameController.h" +#include "tolua_fix.h" +#include "LuaBasicConversions.h" + + + +int lua_cocos2dx_controller_Controller_receiveExternalKeyEvent(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::Controller* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.Controller",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::Controller*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_controller_Controller_receiveExternalKeyEvent'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 2) + { + int arg0; + bool arg1; + + ok &= luaval_to_int32(tolua_S, 2,(int *)&arg0); + + ok &= luaval_to_boolean(tolua_S, 3,&arg1); + if(!ok) + return 0; + cobj->receiveExternalKeyEvent(arg0, arg1); + return 0; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "receiveExternalKeyEvent",argc, 2); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_controller_Controller_receiveExternalKeyEvent'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_controller_Controller_getDeviceName(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::Controller* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.Controller",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::Controller*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_controller_Controller_getDeviceName'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 0) + { + if(!ok) + return 0; + const std::string& ret = cobj->getDeviceName(); + tolua_pushcppstring(tolua_S,ret); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "getDeviceName",argc, 0); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_controller_Controller_getDeviceName'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_controller_Controller_isConnected(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::Controller* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.Controller",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::Controller*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_controller_Controller_isConnected'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 0) + { + if(!ok) + return 0; + bool ret = cobj->isConnected(); + tolua_pushboolean(tolua_S,(bool)ret); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "isConnected",argc, 0); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_controller_Controller_isConnected'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_controller_Controller_getDeviceId(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::Controller* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.Controller",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::Controller*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_controller_Controller_getDeviceId'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 0) + { + if(!ok) + return 0; + int ret = cobj->getDeviceId(); + tolua_pushnumber(tolua_S,(lua_Number)ret); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "getDeviceId",argc, 0); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_controller_Controller_getDeviceId'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_controller_Controller_setTag(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::Controller* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.Controller",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::Controller*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_controller_Controller_setTag'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 1) + { + int arg0; + + ok &= luaval_to_int32(tolua_S, 2,(int *)&arg0); + if(!ok) + return 0; + cobj->setTag(arg0); + return 0; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "setTag",argc, 1); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_controller_Controller_setTag'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_controller_Controller_getTag(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::Controller* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.Controller",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::Controller*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_controller_Controller_getTag'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 0) + { + if(!ok) + return 0; + int ret = cobj->getTag(); + tolua_pushnumber(tolua_S,(lua_Number)ret); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "getTag",argc, 0); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_controller_Controller_getTag'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_controller_Controller_startDiscoveryController(lua_State* tolua_S) +{ + int argc = 0; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertable(tolua_S,1,"cc.Controller",0,&tolua_err)) goto tolua_lerror; +#endif + + argc = lua_gettop(tolua_S) - 1; + + if (argc == 0) + { + if(!ok) + return 0; + cocos2d::Controller::startDiscoveryController(); + return 0; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d\n ", "startDiscoveryController",argc, 0); + return 0; +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_controller_Controller_startDiscoveryController'.",&tolua_err); +#endif + return 0; +} +int lua_cocos2dx_controller_Controller_stopDiscoveryController(lua_State* tolua_S) +{ + int argc = 0; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertable(tolua_S,1,"cc.Controller",0,&tolua_err)) goto tolua_lerror; +#endif + + argc = lua_gettop(tolua_S) - 1; + + if (argc == 0) + { + if(!ok) + return 0; + cocos2d::Controller::stopDiscoveryController(); + return 0; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d\n ", "stopDiscoveryController",argc, 0); + return 0; +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_controller_Controller_stopDiscoveryController'.",&tolua_err); +#endif + return 0; +} +int lua_cocos2dx_controller_Controller_getControllerByTag(lua_State* tolua_S) +{ + int argc = 0; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertable(tolua_S,1,"cc.Controller",0,&tolua_err)) goto tolua_lerror; +#endif + + argc = lua_gettop(tolua_S) - 1; + + if (argc == 1) + { + int arg0; + ok &= luaval_to_int32(tolua_S, 2,(int *)&arg0); + if(!ok) + return 0; + cocos2d::Controller* ret = cocos2d::Controller::getControllerByTag(arg0); + object_to_luaval(tolua_S, "cc.Controller",(cocos2d::Controller*)ret); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d\n ", "getControllerByTag",argc, 1); + return 0; +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_controller_Controller_getControllerByTag'.",&tolua_err); +#endif + return 0; +} +static int lua_cocos2dx_controller_Controller_finalize(lua_State* tolua_S) +{ + printf("luabindings: finalizing LUA object (Controller)"); + return 0; +} + +int lua_register_cocos2dx_controller_Controller(lua_State* tolua_S) +{ + tolua_usertype(tolua_S,"cc.Controller"); + tolua_cclass(tolua_S,"Controller","cc.Controller","",nullptr); + + tolua_beginmodule(tolua_S,"Controller"); + tolua_function(tolua_S,"receiveExternalKeyEvent",lua_cocos2dx_controller_Controller_receiveExternalKeyEvent); + tolua_function(tolua_S,"getDeviceName",lua_cocos2dx_controller_Controller_getDeviceName); + tolua_function(tolua_S,"isConnected",lua_cocos2dx_controller_Controller_isConnected); + tolua_function(tolua_S,"getDeviceId",lua_cocos2dx_controller_Controller_getDeviceId); + tolua_function(tolua_S,"setTag",lua_cocos2dx_controller_Controller_setTag); + tolua_function(tolua_S,"getTag",lua_cocos2dx_controller_Controller_getTag); + tolua_function(tolua_S,"startDiscoveryController", lua_cocos2dx_controller_Controller_startDiscoveryController); + tolua_function(tolua_S,"stopDiscoveryController", lua_cocos2dx_controller_Controller_stopDiscoveryController); + tolua_function(tolua_S,"getControllerByTag", lua_cocos2dx_controller_Controller_getControllerByTag); + tolua_endmodule(tolua_S); + std::string typeName = typeid(cocos2d::Controller).name(); + g_luaType[typeName] = "cc.Controller"; + g_typeCast["Controller"] = "cc.Controller"; + return 1; +} + +int lua_cocos2dx_controller_EventController_getControllerEventType(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::EventController* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.EventController",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::EventController*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_controller_EventController_getControllerEventType'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 0) + { + if(!ok) + return 0; + int ret = (int)cobj->getControllerEventType(); + tolua_pushnumber(tolua_S,(lua_Number)ret); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "getControllerEventType",argc, 0); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_controller_EventController_getControllerEventType'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_controller_EventController_setConnectStatus(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::EventController* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.EventController",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::EventController*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_controller_EventController_setConnectStatus'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 1) + { + bool arg0; + + ok &= luaval_to_boolean(tolua_S, 2,&arg0); + if(!ok) + return 0; + cobj->setConnectStatus(arg0); + return 0; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "setConnectStatus",argc, 1); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_controller_EventController_setConnectStatus'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_controller_EventController_isConnected(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::EventController* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.EventController",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::EventController*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_controller_EventController_isConnected'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 0) + { + if(!ok) + return 0; + bool ret = cobj->isConnected(); + tolua_pushboolean(tolua_S,(bool)ret); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "isConnected",argc, 0); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_controller_EventController_isConnected'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_controller_EventController_setKeyCode(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::EventController* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.EventController",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::EventController*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_controller_EventController_setKeyCode'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 1) + { + int arg0; + + ok &= luaval_to_int32(tolua_S, 2,(int *)&arg0); + if(!ok) + return 0; + cobj->setKeyCode(arg0); + return 0; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "setKeyCode",argc, 1); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_controller_EventController_setKeyCode'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_controller_EventController_getController(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::EventController* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.EventController",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::EventController*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_controller_EventController_getController'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 0) + { + if(!ok) + return 0; + cocos2d::Controller* ret = cobj->getController(); + object_to_luaval(tolua_S, "cc.Controller",(cocos2d::Controller*)ret); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "getController",argc, 0); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_controller_EventController_getController'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_controller_EventController_getKeyCode(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::EventController* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.EventController",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::EventController*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_controller_EventController_getKeyCode'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 0) + { + if(!ok) + return 0; + int ret = cobj->getKeyCode(); + tolua_pushnumber(tolua_S,(lua_Number)ret); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "getKeyCode",argc, 0); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_controller_EventController_getKeyCode'.",&tolua_err); +#endif + + return 0; +} +int lua_cocos2dx_controller_EventController_constructor(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::EventController* cobj = nullptr; + bool ok = true; +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + argc = lua_gettop(tolua_S)-1; + do{ + if (argc == 3) { + cocos2d::EventController::ControllerEventType arg0; + ok &= luaval_to_int32(tolua_S, 2,(int *)&arg0); + + if (!ok) { break; } + cocos2d::Controller* arg1; + ok &= luaval_to_object(tolua_S, 3, "cc.Controller",&arg1); + + if (!ok) { break; } + bool arg2; + ok &= luaval_to_boolean(tolua_S, 4,&arg2); + + if (!ok) { break; } + cobj = new cocos2d::EventController(arg0, arg1, arg2); + cobj->autorelease(); + int ID = (int)cobj->_ID ; + int* luaID = &cobj->_luaID ; + toluafix_pushusertype_ccobject(tolua_S, ID, luaID, (void*)cobj,"cc.EventController"); + return 1; + } + }while(0); + ok = true; + do{ + if (argc == 3) { + cocos2d::EventController::ControllerEventType arg0; + ok &= luaval_to_int32(tolua_S, 2,(int *)&arg0); + + if (!ok) { break; } + cocos2d::Controller* arg1; + ok &= luaval_to_object(tolua_S, 3, "cc.Controller",&arg1); + + if (!ok) { break; } + int arg2; + ok &= luaval_to_int32(tolua_S, 4,(int *)&arg2); + + if (!ok) { break; } + cobj = new cocos2d::EventController(arg0, arg1, arg2); + cobj->autorelease(); + int ID = (int)cobj->_ID ; + int* luaID = &cobj->_luaID ; + toluafix_pushusertype_ccobject(tolua_S, ID, luaID, (void*)cobj,"cc.EventController"); + return 1; + } + }while(0); + ok = true; + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "EventController",argc, 3); + return 0; + +#if COCOS2D_DEBUG >= 1 + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_controller_EventController_constructor'.",&tolua_err); +#endif + + return 0; +} + +static int lua_cocos2dx_controller_EventController_finalize(lua_State* tolua_S) +{ + printf("luabindings: finalizing LUA object (EventController)"); + return 0; +} + +int lua_register_cocos2dx_controller_EventController(lua_State* tolua_S) +{ + tolua_usertype(tolua_S,"cc.EventController"); + tolua_cclass(tolua_S,"EventController","cc.EventController","cc.Event",nullptr); + + tolua_beginmodule(tolua_S,"EventController"); + tolua_function(tolua_S,"new",lua_cocos2dx_controller_EventController_constructor); + tolua_function(tolua_S,"getControllerEventType",lua_cocos2dx_controller_EventController_getControllerEventType); + tolua_function(tolua_S,"setConnectStatus",lua_cocos2dx_controller_EventController_setConnectStatus); + tolua_function(tolua_S,"isConnected",lua_cocos2dx_controller_EventController_isConnected); + tolua_function(tolua_S,"setKeyCode",lua_cocos2dx_controller_EventController_setKeyCode); + tolua_function(tolua_S,"getController",lua_cocos2dx_controller_EventController_getController); + tolua_function(tolua_S,"getKeyCode",lua_cocos2dx_controller_EventController_getKeyCode); + tolua_endmodule(tolua_S); + std::string typeName = typeid(cocos2d::EventController).name(); + g_luaType[typeName] = "cc.EventController"; + g_typeCast["EventController"] = "cc.EventController"; + return 1; +} + +int lua_cocos2dx_controller_EventListenerController_create(lua_State* tolua_S) +{ + int argc = 0; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertable(tolua_S,1,"cc.EventListenerController",0,&tolua_err)) goto tolua_lerror; +#endif + + argc = lua_gettop(tolua_S) - 1; + + if (argc == 0) + { + if(!ok) + return 0; + cocos2d::EventListenerController* ret = cocos2d::EventListenerController::create(); + object_to_luaval(tolua_S, "cc.EventListenerController",(cocos2d::EventListenerController*)ret); + return 1; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d\n ", "create",argc, 0); + return 0; +#if COCOS2D_DEBUG >= 1 + tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_controller_EventListenerController_create'.",&tolua_err); +#endif + return 0; +} +static int lua_cocos2dx_controller_EventListenerController_finalize(lua_State* tolua_S) +{ + printf("luabindings: finalizing LUA object (EventListenerController)"); + return 0; +} + +int lua_register_cocos2dx_controller_EventListenerController(lua_State* tolua_S) +{ + tolua_usertype(tolua_S,"cc.EventListenerController"); + tolua_cclass(tolua_S,"EventListenerController","cc.EventListenerController","cc.EventListener",nullptr); + + tolua_beginmodule(tolua_S,"EventListenerController"); + tolua_function(tolua_S,"create", lua_cocos2dx_controller_EventListenerController_create); + tolua_endmodule(tolua_S); + std::string typeName = typeid(cocos2d::EventListenerController).name(); + g_luaType[typeName] = "cc.EventListenerController"; + g_typeCast["EventListenerController"] = "cc.EventListenerController"; + return 1; +} +TOLUA_API int register_all_cocos2dx_controller(lua_State* tolua_S) +{ + tolua_open(tolua_S); + + tolua_module(tolua_S,"cc",0); + tolua_beginmodule(tolua_S,"cc"); + + lua_register_cocos2dx_controller_EventListenerController(tolua_S); + lua_register_cocos2dx_controller_Controller(tolua_S); + lua_register_cocos2dx_controller_EventController(tolua_S); + + tolua_endmodule(tolua_S); + return 1; +} + +#endif diff --git a/cocos/scripting/lua-bindings/auto/lua_cocos2dx_controller_auto.hpp b/cocos/scripting/lua-bindings/auto/lua_cocos2dx_controller_auto.hpp new file mode 100644 index 0000000000..4fd667b49f --- /dev/null +++ b/cocos/scripting/lua-bindings/auto/lua_cocos2dx_controller_auto.hpp @@ -0,0 +1,37 @@ +#include "base/ccConfig.h" +#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID || CC_TARGET_PLATFORM == CC_PLATFORM_IOS) +#ifndef __cocos2dx_controller_h__ +#define __cocos2dx_controller_h__ + +#ifdef __cplusplus +extern "C" { +#endif +#include "tolua++.h" +#ifdef __cplusplus +} +#endif + +int register_all_cocos2dx_controller(lua_State* tolua_S); + + + + + + + + + + + + + + + + + + + + + +#endif // __cocos2dx_controller_h__ +#endif //#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID || CC_TARGET_PLATFORM == CC_PLATFORM_IOS) diff --git a/cocos/scripting/lua-bindings/manual/CCLuaStack.cpp b/cocos/scripting/lua-bindings/manual/CCLuaStack.cpp index f695bb8ae6..d8fc0cf0d6 100644 --- a/cocos/scripting/lua-bindings/manual/CCLuaStack.cpp +++ b/cocos/scripting/lua-bindings/manual/CCLuaStack.cpp @@ -46,9 +46,14 @@ extern "C" { #include "platform/android/CCLuaJavaBridge.h" #endif +#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) +#include "platform/android/CCLuaJavaBridge.h" +#endif + #if (CC_TARGET_PLATFORM == CC_PLATFORM_IOS || CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID || CC_TARGET_PLATFORM == CC_PLATFORM_WIN32) #include "Lua_web_socket.h" #endif + #include "LuaOpengl.h" #include "LuaScriptHandlerMgr.h" #include "lua_cocos2dx_auto.hpp" @@ -173,6 +178,7 @@ bool LuaStack::init(void) register_all_cocos2dx_physics(_state); register_all_cocos2dx_physics_manual(_state); #endif + #if (CC_TARGET_PLATFORM == CC_PLATFORM_IOS || CC_TARGET_PLATFORM == CC_PLATFORM_MAC) LuaObjcBridge::luaopen_luaoc(_state); #endif @@ -501,86 +507,92 @@ int LuaStack::reallocateScriptHandler(int nHandler) int LuaStack::executeFunctionReturnArray(int handler,int numArgs,int numResults,__Array& resultArray) { + int top = lua_gettop(_state); if (pushFunctionByHandler(handler)) /* L: ... arg1 arg2 ... func */ { if (numArgs > 0) { lua_insert(_state, -(numArgs + 1)); /* L: ... func arg1 arg2 ... */ - int functionIndex = -(numArgs + 1); - if (!lua_isfunction(_state, functionIndex)) + } + int functionIndex = -(numArgs + 1); + if (!lua_isfunction(_state, functionIndex)) + { + CCLOG("value at stack [%d] is not function", functionIndex); + lua_pop(_state, numArgs + 1); // remove function and arguments + lua_settop(_state,top); + return 0; + } + + int traceback = 0; + lua_getglobal(_state, "__G__TRACKBACK__"); /* L: ... func arg1 arg2 ... G */ + if (!lua_isfunction(_state, -1)) + { + lua_pop(_state, 1); /* L: ... func arg1 arg2 ... */ + } + else + { + lua_insert(_state, functionIndex - 1); /* L: ... G func arg1 arg2 ... */ + traceback = functionIndex - 1; + } + + int error = 0; + ++_callFromLua; + error = lua_pcall(_state, numArgs, numResults, traceback); /* L: ... [G] ret1 ret2 ... retResults*/ + --_callFromLua; + if (error) + { + if (traceback == 0) { - CCLOG("value at stack [%d] is not function", functionIndex); - lua_pop(_state, numArgs + 1); // remove function and arguments - return 0; + CCLOG("[LUA ERROR] %s", lua_tostring(_state, - 1)); /* L: ... error */ + lua_pop(_state, 1); // remove error message from stack } - - int traceback = 0; - lua_getglobal(_state, "__G__TRACKBACK__"); /* L: ... func arg1 arg2 ... G */ - if (!lua_isfunction(_state, -1)) + else /* L: ... G error */ { - lua_pop(_state, 1); /* L: ... func arg1 arg2 ... */ + lua_pop(_state, 2); // remove __G__TRACKBACK__ and error message from stack } - else - { - lua_insert(_state, functionIndex - 1); /* L: ... G func arg1 arg2 ... */ - traceback = functionIndex - 1; - } - - int error = 0; - ++_callFromLua; - error = lua_pcall(_state, numArgs, numResults, traceback); /* L: ... [G] ret1 ret2 ... retResults*/ - --_callFromLua; - if (error) - { - if (traceback == 0) - { - CCLOG("[LUA ERROR] %s", lua_tostring(_state, - 1)); /* L: ... error */ - lua_pop(_state, 1); // remove error message from stack - } - else /* L: ... G error */ - { - lua_pop(_state, 2); // remove __G__TRACKBACK__ and error message from stack - } - return 0; - } - - // get return value,don't pass LUA_MULTRET to numResults, - if (numResults <= 0) - return 0; - - for (int i = 0 ; i < numResults; i++) - { - if (lua_type(_state, -1) == LUA_TBOOLEAN) { - - bool value = lua_toboolean(_state, -1); - resultArray.addObject(Bool::create(value)) ; - - }else if (lua_type(_state, -1) == LUA_TNUMBER) { - - double value = lua_tonumber(_state, -1); - resultArray.addObject(Double::create(value)); - - }else if (lua_type(_state, -1) == LUA_TSTRING) { - - const char* value = lua_tostring(_state, -1); - resultArray.addObject(String::create(value)); - - }else{ - - resultArray.addObject(static_cast(tolua_tousertype(_state, -1, NULL))); - } - // remove return value from stack - lua_pop(_state, 1); /* L: ... [G] ret1 ret2 ... ret*/ - } - /* L: ... [G]*/ - - if (traceback) - { - lua_pop(_state, 1); // remove __G__TRACKBACK__ from stack /* L: ... */ + lua_settop(_state,top); + return 0; + } + + // get return value,don't pass LUA_MULTRET to numResults, + if (numResults <= 0) + { + lua_settop(_state,top); + return 0; + } + + for (int i = 0 ; i < numResults; i++) + { + if (lua_type(_state, -1) == LUA_TBOOLEAN) { + + bool value = lua_toboolean(_state, -1); + resultArray.addObject(Bool::create(value)) ; + + }else if (lua_type(_state, -1) == LUA_TNUMBER) { + + double value = lua_tonumber(_state, -1); + resultArray.addObject(Double::create(value)); + + }else if (lua_type(_state, -1) == LUA_TSTRING) { + + const char* value = lua_tostring(_state, -1); + resultArray.addObject(String::create(value)); + + }else{ + + resultArray.addObject(static_cast(tolua_tousertype(_state, -1, NULL))); } + // remove return value from stack + lua_pop(_state, 1); /* L: ... [G] ret1 ret2 ... ret*/ + } + /* L: ... [G]*/ + + if (traceback) + { + lua_pop(_state, 1); // remove __G__TRACKBACK__ from stack /* L: ... */ } } - lua_settop(_state, 0); + lua_settop(_state,top); return 1; } diff --git a/cocos/scripting/lua-bindings/manual/LuaBasicConversions.h b/cocos/scripting/lua-bindings/manual/LuaBasicConversions.h index 7adce3e77e..f332afb076 100644 --- a/cocos/scripting/lua-bindings/manual/LuaBasicConversions.h +++ b/cocos/scripting/lua-bindings/manual/LuaBasicConversions.h @@ -79,7 +79,7 @@ extern bool luaval_to_ttfconfig(lua_State* L, int lo, cocos2d::TTFConfig* outVal extern bool luaval_to_uniform(lua_State* L, int lo, cocos2d::Uniform* outValue); extern bool luaval_to_vertexattrib(lua_State* L, int lo, cocos2d::VertexAttrib* outValue); -CC_DEPRECATED_ATTRIBUTE static inline bool luaval_to_point(lua_State* L,int lo,cocos2d::Vec2* outValue) +static inline bool luaval_to_point(lua_State* L,int lo,cocos2d::Vec2* outValue) { return luaval_to_vec2(L, lo, outValue); } @@ -258,7 +258,7 @@ extern void ttfconfig_to_luaval(lua_State* L, const cocos2d::TTFConfig& config); extern void uniform_to_luaval(lua_State* L, const cocos2d::Uniform& uniform); extern void vertexattrib_to_luaval(lua_State* L, const cocos2d::VertexAttrib& verAttrib); -CC_DEPRECATED_ATTRIBUTE static inline void point_to_luaval(lua_State* L,const cocos2d::Vec2& pt) +static inline void point_to_luaval(lua_State* L,const cocos2d::Vec2& pt) { vec2_to_luaval(L, pt); } diff --git a/cocos/scripting/lua-bindings/manual/LuaScriptHandlerMgr.h b/cocos/scripting/lua-bindings/manual/LuaScriptHandlerMgr.h index afe3017b63..27c1473adb 100644 --- a/cocos/scripting/lua-bindings/manual/LuaScriptHandlerMgr.h +++ b/cocos/scripting/lua-bindings/manual/LuaScriptHandlerMgr.h @@ -163,6 +163,13 @@ public: EVENT_FOCUS, + EVENT_CONTROLLER_CONNECTED, + EVENT_CONTROLLER_DISCONNECTED, + EVENT_CONTROLLER_KEYDOWN, + EVENT_CONTROLLER_KEYUP, + EVENT_CONTROLLER_KEYREPEAT, + EVENT_CONTROLLER_AXIS, + EVENT_CUSTOM_BEGAN = 10000, EVENT_CUSTOM_ENDED = 11000, }; diff --git a/cocos/scripting/lua-bindings/manual/lua_cocos2dx_coco_studio_manual.cpp b/cocos/scripting/lua-bindings/manual/lua_cocos2dx_coco_studio_manual.cpp index 5291ac5a92..a33e1adb2f 100644 --- a/cocos/scripting/lua-bindings/manual/lua_cocos2dx_coco_studio_manual.cpp +++ b/cocos/scripting/lua-bindings/manual/lua_cocos2dx_coco_studio_manual.cpp @@ -201,8 +201,8 @@ static int lua_cocos2dx_ArmatureAnimation_setFrameEventCallFunc(lua_State* L) #if COCOS2D_DEBUG >= 1 tolua_lerror: tolua_error(L,"#ferror in function 'setFrameEventCallFunc'.",&tolua_err); - return 0; #endif + return 0; } static void extendArmatureAnimation(lua_State* L) @@ -293,8 +293,8 @@ static int lua_cocos2dx_ArmatureDataManager_addArmatureFileInfoAsyncCallFunc(lua #if COCOS2D_DEBUG >= 1 tolua_lerror: tolua_error(L,"#ferror in function 'addArmatureFileInfoAsync'.",&tolua_err); - return 0; #endif + return 0; } static void extendArmatureDataManager(lua_State* L) @@ -538,8 +538,8 @@ static int lua_cocos2dx_ActionTimeline_setFrameEventCallFunc(lua_State* L) #if COCOS2D_DEBUG >= 1 tolua_lerror: tolua_error(L,"#ferror in function 'setFrameEventCallFunc'.",&tolua_err); - return 0; #endif + return 0; } static void extendActionTimeline(lua_State* L) diff --git a/cocos/scripting/lua-bindings/manual/lua_cocos2dx_controller_manual.cpp b/cocos/scripting/lua-bindings/manual/lua_cocos2dx_controller_manual.cpp new file mode 100644 index 0000000000..b5885874e9 --- /dev/null +++ b/cocos/scripting/lua-bindings/manual/lua_cocos2dx_controller_manual.cpp @@ -0,0 +1,373 @@ +/**************************************************************************** + Copyright (c) 2013-2014 Chukong Technologies Inc. + + http://www.cocos2d-x.org + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + ****************************************************************************/ +#include "lua_cocos2dx_controller_manual.hpp" + +#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID || CC_TARGET_PLATFORM == CC_PLATFORM_IOS) + +#include "cocos2d.h" +#include "tolua_fix.h" +#include "LuaBasicConversions.h" +#include "LuaScriptHandlerMgr.h" +#include "CCLuaValue.h" +#include "CCLuaEngine.h" +#include "CCGameController.h" + + +static void cloneEventListenerControllerHandler(const cocos2d::EventListenerController* src,cocos2d::EventListenerController* dst, ScriptHandlerMgr::HandlerType type) +{ + if (nullptr == src || nullptr == dst) + return; + + LUA_FUNCTION handler = ScriptHandlerMgr::getInstance()->getObjectHandler((void*)src, type); + if (0 != handler) + { + int newscriptHandler = ScriptEngineManager::getInstance()->getScriptEngine()->reallocateScriptHandler(handler); + + ScriptHandlerMgr::getInstance()->addObjectHandler((void*)dst, newscriptHandler, type); + switch (type) + { + case ScriptHandlerMgr::HandlerType::EVENT_CONTROLLER_CONNECTED: + { + dst->onConnected = [=](cocos2d::Controller* controller, Event* event){ + + }; + } + break; + case ScriptHandlerMgr::HandlerType::EVENT_CONTROLLER_DISCONNECTED: + { + dst->onDisconnected = [=](cocos2d::Controller* controller, Event* event){ + + }; + } + break; + case ScriptHandlerMgr::HandlerType::EVENT_CONTROLLER_KEYDOWN: + { + dst->onKeyDown = [=](cocos2d::Controller* controller, int keyCode, Event* event){ + + }; + } + break; + case ScriptHandlerMgr::HandlerType::EVENT_CONTROLLER_KEYUP: + { + dst->onKeyUp = [=](cocos2d::Controller* controller, int keyCode, Event* event){ + + }; + } + break; + case ScriptHandlerMgr::HandlerType::EVENT_CONTROLLER_KEYREPEAT: + { + dst->onKeyRepeat = [=](cocos2d::Controller* controller, int keyCode, Event* event){ + }; + } + break; + case ScriptHandlerMgr::HandlerType::EVENT_CONTROLLER_AXIS: + { + dst->onAxisEvent = [=](cocos2d::Controller* controller, int keyCode, Event* event){ + }; + } + break; + default: + break; + } + } +} + +static int tolua_cocos2dx_EventListenerController_clone(lua_State* tolua_S) +{ + if (nullptr == tolua_S) + return 0; + + int argc = 0; + cocos2d::EventListenerController* self = nullptr; +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; + if (!tolua_isusertype(tolua_S, 1, "cc.EventListenerController", 0, &tolua_err)) goto tolua_lerror; +#endif + + self = static_cast(tolua_tousertype(tolua_S,1,0)); +#if COCOS2D_DEBUG >= 1 + if (nullptr == self) { + tolua_error(tolua_S,"invalid 'self' in function 'tolua_cocos2dx_EventListenerController_clone'\n", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S) - 1; + + if (argc == 0) + { + cocos2d::EventListenerController* tolua_ret = cocos2d::EventListenerController::create(); + if(nullptr == tolua_ret) + return 0; + + cloneEventListenerControllerHandler(self, tolua_ret, ScriptHandlerMgr::HandlerType::EVENT_CONTROLLER_CONNECTED); + cloneEventListenerControllerHandler(self, tolua_ret, ScriptHandlerMgr::HandlerType::EVENT_CONTROLLER_DISCONNECTED); + cloneEventListenerControllerHandler(self, tolua_ret, ScriptHandlerMgr::HandlerType::EVENT_CONTROLLER_KEYDOWN); + cloneEventListenerControllerHandler(self, tolua_ret, ScriptHandlerMgr::HandlerType::EVENT_CONTROLLER_KEYUP); + cloneEventListenerControllerHandler(self, tolua_ret, ScriptHandlerMgr::HandlerType::EVENT_CONTROLLER_KEYREPEAT); + cloneEventListenerControllerHandler(self, tolua_ret, ScriptHandlerMgr::HandlerType::EVENT_CONTROLLER_AXIS); + + int ID = (tolua_ret) ? (int)tolua_ret->_ID : -1; + int* luaID = (tolua_ret) ? &tolua_ret->_luaID : NULL; + toluafix_pushusertype_ccobject(tolua_S, ID, luaID, (void*)tolua_ret,"cc.EventListenerController"); + + return 1; + } + + CCLOG("'clone' has wrong number of arguments: %d, was expecting %d\n", argc, 0); + return 0; + +#if COCOS2D_DEBUG >= 1 +tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'clone'.",&tolua_err); + return 0; +#endif +} + +static int tolua_cocos2dx_EventListenerController_registerScriptHandler(lua_State* tolua_S) +{ + if (nullptr == tolua_S) + return 0; + + int argc = 0; + cocos2d::EventListenerController* self = nullptr; +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; + if (!tolua_isusertype(tolua_S, 1, "cc.EventListenerController", 0, &tolua_err)) goto tolua_lerror; +#endif + + self = static_cast(tolua_tousertype(tolua_S,1,0)); +#if COCOS2D_DEBUG >= 1 + if (nullptr == self) { + tolua_error(tolua_S,"invalid 'self' in function 'tolua_cocos2dx_EventListenerController_registerScriptHandler'\n", nullptr); + return 0; + } +#endif + argc = lua_gettop(tolua_S) - 1; + + if (argc == 2) + { +#if COCOS2D_DEBUG >= 1 + if (!toluafix_isfunction(tolua_S,2,"LUA_FUNCTION",0,&tolua_err) || + !tolua_isnumber(tolua_S, 3, 0, &tolua_err)) + { + goto tolua_lerror; + } +#endif + LUA_FUNCTION handler = toluafix_ref_function(tolua_S,2,0); + ScriptHandlerMgr::HandlerType type = static_cast((int)tolua_tonumber(tolua_S, 3, 0)); + + switch (type) + { + case ScriptHandlerMgr::HandlerType::EVENT_CONTROLLER_CONNECTED: + { + ScriptHandlerMgr::getInstance()->addObjectHandler((void*)self, handler, type); + + self->onConnected = [=](cocos2d::Controller* controller, Event* event){ + tolua_pushusertype(tolua_S, (void*)controller, "cc.Controller"); + int ID = (event) ? (int)event->_ID : -1; + int* luaID = (event) ? &event->_luaID : NULL; + toluafix_pushusertype_ccobject(tolua_S, ID, luaID, (void*)event,"cc.event"); + LuaEngine::getInstance()->getLuaStack()->executeFunctionByHandler(handler, 2); + }; + } + break; + case ScriptHandlerMgr::HandlerType::EVENT_CONTROLLER_DISCONNECTED: + { + ScriptHandlerMgr::getInstance()->addObjectHandler((void*)self, handler, type); + + self->onDisconnected = [=](cocos2d::Controller* controller, Event* event){ + tolua_pushusertype(tolua_S, (void*)controller, "cc.Controller"); + int ID = (event) ? (int)event->_ID : -1; + int* luaID = (event) ? &event->_luaID : NULL; + toluafix_pushusertype_ccobject(tolua_S, ID, luaID, (void*)event,"cc.event"); + LuaEngine::getInstance()->getLuaStack()->executeFunctionByHandler(handler, 2); + }; + } + break; + case ScriptHandlerMgr::HandlerType::EVENT_CONTROLLER_KEYDOWN: + { + + ScriptHandlerMgr::getInstance()->addObjectHandler((void*)self, handler, type); + + self->onKeyDown = [=](cocos2d::Controller* controller, int keyCode, Event* event){ + tolua_pushusertype(tolua_S, (void*)controller, "cc.Controller"); + tolua_pushnumber(tolua_S, (lua_Number) keyCode); + int ID = (event) ? (int)event->_ID : -1; + int* luaID = (event) ? &event->_luaID : NULL; + toluafix_pushusertype_ccobject(tolua_S, ID, luaID, (void*)event,"cc.event"); + LuaEngine::getInstance()->getLuaStack()->executeFunctionByHandler(handler, 3); + }; + } + break; + case ScriptHandlerMgr::HandlerType::EVENT_CONTROLLER_KEYUP: + { + ScriptHandlerMgr::getInstance()->addObjectHandler((void*)self, handler, type); + + self->onKeyUp = [=](cocos2d::Controller* controller, int keyCode, Event* event){ + tolua_pushusertype(tolua_S, (void*)controller, "cc.Controller"); + tolua_pushnumber(tolua_S, (lua_Number) keyCode); + int ID = (event) ? (int)event->_ID : -1; + int* luaID = (event) ? &event->_luaID : NULL; + toluafix_pushusertype_ccobject(tolua_S, ID, luaID, (void*)event,"cc.event"); + LuaEngine::getInstance()->getLuaStack()->executeFunctionByHandler(handler, 3); + }; + } + break; + case ScriptHandlerMgr::HandlerType::EVENT_CONTROLLER_KEYREPEAT: + { + ScriptHandlerMgr::getInstance()->addObjectHandler((void*)self, handler, type); + + self->onKeyRepeat = [=](cocos2d::Controller* controller, int keyCode, Event* event){ + tolua_pushusertype(tolua_S, (void*)controller, "cc.Controller"); + tolua_pushnumber(tolua_S, (lua_Number) keyCode); + int ID = (event) ? (int)event->_ID : -1; + int* luaID = (event) ? &event->_luaID : NULL; + toluafix_pushusertype_ccobject(tolua_S, ID, luaID, (void*)event,"cc.event"); + LuaEngine::getInstance()->getLuaStack()->executeFunctionByHandler(handler, 3); + }; + } + break; + case ScriptHandlerMgr::HandlerType::EVENT_CONTROLLER_AXIS: + { + ScriptHandlerMgr::getInstance()->addObjectHandler((void*)self, handler, type); + + self->onAxisEvent = [=](cocos2d::Controller* controller, int keyCode, Event* event){ + tolua_pushusertype(tolua_S, (void*)controller, "cc.Controller"); + tolua_pushnumber(tolua_S, (lua_Number) keyCode); + int ID = (event) ? (int)event->_ID : -1; + int* luaID = (event) ? &event->_luaID : NULL; + toluafix_pushusertype_ccobject(tolua_S, ID, luaID, (void*)event,"cc.event"); + LuaEngine::getInstance()->getLuaStack()->executeFunctionByHandler(handler, 3); + }; + } + break; + default: + break; + } + return 0; + } + + CCLOG("'registerScriptHandler' has wrong number of arguments: %d, was expecting %d\n", argc, 2); + return 0; + +#if COCOS2D_DEBUG >= 1 +tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'registerScriptHandler'.",&tolua_err); + return 0; +#endif +} + + +static void extendEventListenerController(lua_State* L) +{ + lua_pushstring(L, "cc.EventListenerController"); + lua_rawget(L, LUA_REGISTRYINDEX); + if (lua_istable(L,-1)) + { + tolua_function(L, "clone", tolua_cocos2dx_EventListenerController_clone); + tolua_function(L, "registerScriptHandler", tolua_cocos2dx_EventListenerController_registerScriptHandler); + } + lua_pop(L, 1); +} + +static int tolua_cocos2dx_Controller_getKeyStatus(lua_State* tolua_S) +{ + if (nullptr == tolua_S) + return 0; + + int argc = 0; + cocos2d::Controller* self = nullptr; +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; + if (!tolua_isusertype(tolua_S, 1, "cc.Controller", 0, &tolua_err)) goto tolua_lerror; +#endif + + self = static_cast(tolua_tousertype(tolua_S,1,0)); +#if COCOS2D_DEBUG >= 1 + if (nullptr == self) { + tolua_error(tolua_S,"invalid 'self' in function 'tolua_cocos2dx_Controller_getKeyStatus'\n", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S) - 1; + + if (argc == 1) + { +#if COCOS2D_DEBUG >= 1 + if (!tolua_isnumber(tolua_S, 2, 0, &tolua_err)) + goto tolua_lerror; +#endif + int keyCode = (int)tolua_tonumber(tolua_S, 2, 0); + cocos2d::Controller::KeyStatus keyStatus = self->getKeyStatus(keyCode); + + lua_newtable(tolua_S); /* L: table */ + lua_pushstring(tolua_S, "isPressed"); /* L: table key */ + lua_pushboolean(tolua_S, (int)keyStatus.isPressed); /* L: table key value*/ + lua_rawset(tolua_S, -3); /* table[key] = value, L: table */ + lua_pushstring(tolua_S, "value"); /* L: table key */ + lua_pushnumber(tolua_S, (lua_Number) keyStatus.value); /* L: table key value*/ + lua_rawset(tolua_S, -3); /* table[key] = value, L: table */ + lua_pushstring(tolua_S, "isAnalog"); /* L: table key */ + lua_pushnumber(tolua_S, (int) keyStatus.isAnalog); /* L: table key value*/ + lua_rawset(tolua_S, -3); /* table[key] = value, L: table */ + + return 1; + } + + CCLOG("'clone' has wrong number of arguments: %d, was expecting %d\n", argc, 0); + return 0; + +#if COCOS2D_DEBUG >= 1 +tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'getKeyStatus'.",&tolua_err); + return 0; +#endif +} + +static void extendController(lua_State* L) +{ + lua_pushstring(L, "cc.Controller"); + lua_rawget(L, LUA_REGISTRYINDEX); + if (lua_istable(L,-1)) + { + tolua_function(L, "getKeyStatus", tolua_cocos2dx_Controller_getKeyStatus); + } + lua_pop(L, 1); +} + + +int register_all_cocos2dx_controller_manual(lua_State* L) +{ + if (nullptr == L) + return 0; + + extendEventListenerController(L); + extendController(L); + + return 0; +} + +#endif //#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID || CC_TARGET_PLATFORM == CC_PLATFORM_IOS) diff --git a/cocos/scripting/lua-bindings/manual/lua_cocos2dx_controller_manual.hpp b/cocos/scripting/lua-bindings/manual/lua_cocos2dx_controller_manual.hpp new file mode 100644 index 0000000000..7d44970ea0 --- /dev/null +++ b/cocos/scripting/lua-bindings/manual/lua_cocos2dx_controller_manual.hpp @@ -0,0 +1,41 @@ +/**************************************************************************** + Copyright (c) 2013-2014 Chukong Technologies Inc. + + http://www.cocos2d-x.org + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + ****************************************************************************/ +#ifndef COCOS_SCRIPTING_LUA_BINDINGS_LUA_COCOS2DX_CONTROLLER_MANUAL_H +#define COCOS_SCRIPTING_LUA_BINDINGS_LUA_COCOS2DX_CONTROLLER_MANUAL_H + +#ifdef __cplusplus +extern "C" { +#endif +#include "tolua++.h" +#ifdef __cplusplus +} +#endif + +#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID || CC_TARGET_PLATFORM == CC_PLATFORM_IOS) + +TOLUA_API int register_all_cocos2dx_controller_manual(lua_State* L); + +#endif //#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID || CC_TARGET_PLATFORM == CC_PLATFORM_IOS) + +#endif // #ifndef COCOS_SCRIPTING_LUA_BINDINGS_LUA_COCOS2DX_CONTROLLER_MANUAL_H diff --git a/cocos/scripting/lua-bindings/manual/lua_cocos2dx_manual.cpp b/cocos/scripting/lua-bindings/manual/lua_cocos2dx_manual.cpp index 098ec2717b..1b2e2ff86a 100644 --- a/cocos/scripting/lua-bindings/manual/lua_cocos2dx_manual.cpp +++ b/cocos/scripting/lua-bindings/manual/lua_cocos2dx_manual.cpp @@ -5900,7 +5900,7 @@ static int lua_cocos2dx_GLProgramState_setVertexAttribPointer(lua_State* tolua_S if(!ok) return 0; - cobj->setVertexAttribPointer(arg0, arg1, arg2, arg3, arg4, (void*)arg5); + cobj->setVertexAttribPointer(arg0, arg1, arg2, arg3, arg4, (void*)&arg5); return 0; } else if (argc == 7) @@ -6090,7 +6090,8 @@ int lua_cocos2dx_TMXLayer_getTileGIDAt(lua_State* tolua_S) return 0; unsigned int ret = cobj->getTileGIDAt(arg0); tolua_pushnumber(tolua_S,(lua_Number)ret); - return 1; + tolua_pushnumber(tolua_S,(lua_Number)0); + return 2; } if (argc == 2) { @@ -6105,7 +6106,8 @@ int lua_cocos2dx_TMXLayer_getTileGIDAt(lua_State* tolua_S) unsigned int ret = cobj->getTileGIDAt(arg0, (cocos2d::TMXTileFlags*)&arg1); tolua_pushnumber(tolua_S,(lua_Number)ret); - return 1; + tolua_pushnumber(tolua_S,(lua_Number)arg1); + return 2; } CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "getTileGIDAt",argc, 1); return 0; @@ -6436,6 +6438,149 @@ static void extendApplication(lua_State* tolua_S) lua_pop(tolua_S, 1); } +static int lua_cocos2dx_FastTMXLayer_getTileGIDAt(lua_State* tolua_S) +{ + int argc = 0; + cocos2d::FastTMXLayer* cobj = nullptr; + bool ok = true; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; +#endif + + +#if COCOS2D_DEBUG >= 1 + if (!tolua_isusertype(tolua_S,1,"cc.FastTMXLayer",0,&tolua_err)) goto tolua_lerror; +#endif + + cobj = (cocos2d::FastTMXLayer*)tolua_tousertype(tolua_S,1,0); + +#if COCOS2D_DEBUG >= 1 + if (!cobj) + { + tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_FastTMXLayer_getTileGIDAt'", nullptr); + return 0; + } +#endif + + argc = lua_gettop(tolua_S)-1; + if (argc == 1) + { + cocos2d::Vec2 arg0; + + ok &= luaval_to_vec2(tolua_S, 2, &arg0); + if(!ok) + return 0; + int ret = cobj->getTileGIDAt(arg0); + tolua_pushnumber(tolua_S,(lua_Number)ret); + tolua_pushnumber(tolua_S,(lua_Number)0); + return 2; + } + if (argc == 2) + { + cocos2d::Vec2 arg0; + int arg1 = 0; + + ok &= luaval_to_vec2(tolua_S, 2, &arg0); + ok &= luaval_to_int32(tolua_S, 3, &arg1); + + if(!ok) + return 0; + + unsigned int ret = cobj->getTileGIDAt(arg0, (cocos2d::TMXTileFlags*)&arg1); + tolua_pushnumber(tolua_S,(lua_Number)ret); + tolua_pushnumber(tolua_S,(lua_Number)arg1); + return 2; + } + CCLOG("%s has wrong number of arguments: %d, was expecting %d \n", "getTileGIDAt",argc, 1); + return 0; + +#if COCOS2D_DEBUG >= 1 +tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_FastTMXLayer_getTileGIDAt'.",&tolua_err); +#endif + + return 0; +} + +static void extendFastTMXLayer(lua_State* tolua_S) +{ + lua_pushstring(tolua_S, "cc.FastTMXLayer"); + lua_rawget(tolua_S, LUA_REGISTRYINDEX); + if (lua_istable(tolua_S,-1)) + { + tolua_function(tolua_S, "getTileGIDAt", lua_cocos2dx_FastTMXLayer_getTileGIDAt); + } + lua_pop(tolua_S, 1); +} + +static int lua_cocos2dx_TextureCache_addImageAsync(lua_State* tolua_S) +{ + if (nullptr == tolua_S) + return 0 ; + + int argc = 0; + TextureCache* self = nullptr; + +#if COCOS2D_DEBUG >= 1 + tolua_Error tolua_err; + if (!tolua_isusertype(tolua_S,1,"cc.TextureCache",0,&tolua_err)) goto tolua_lerror; +#endif + + self = static_cast(tolua_tousertype(tolua_S,1,0)); + +#if COCOS2D_DEBUG >= 1 + if (nullptr == self) { + tolua_error(tolua_S,"invalid 'self' in function 'lua_cocos2dx_TextureCache_addImageAsync'\n", NULL); + return 0; + } +#endif + argc = lua_gettop(tolua_S) - 1; + + if (2 == argc) + { +#if COCOS2D_DEBUG >= 1 + if (!tolua_isstring(tolua_S, 2, 0, &tolua_err) || + !toluafix_isfunction(tolua_S,3,"LUA_FUNCTION",0,&tolua_err)) + { + goto tolua_lerror; + } +#endif + const char* configFilePath = tolua_tostring(tolua_S, 2, ""); + LUA_FUNCTION handler = ( toluafix_ref_function(tolua_S, 3, 0)); + + + self->addImageAsync(configFilePath, [=](Texture2D* tex){ + int ID = (tex) ? (int)tex->_ID : -1; + int* luaID = (tex) ? &tex->_luaID : nullptr; + toluafix_pushusertype_ccobject(tolua_S, ID, luaID, (void*)tex, "cc.Texture2D"); + LuaEngine::getInstance()->getLuaStack()->executeFunctionByHandler(handler,1); + LuaEngine::getInstance()->removeScriptHandler(handler); + }); + + return 0; + } + + CCLOG("'addImageAsync' function of TextureCache has wrong number of arguments: %d, was expecting %d\n", argc, 1); + +#if COCOS2D_DEBUG >= 1 +tolua_lerror: + tolua_error(tolua_S,"#ferror in function 'addImageAsync'.",&tolua_err); +#endif + return 0; +} + +static void extendTextureCache(lua_State* tolua_S) +{ + lua_pushstring(tolua_S, "cc.TextureCache"); + lua_rawget(tolua_S, LUA_REGISTRYINDEX); + if (lua_istable(tolua_S,-1)) + { + tolua_function(tolua_S, "addImageAsync", lua_cocos2dx_TextureCache_addImageAsync); + } + lua_pop(tolua_S, 1); +} + int register_all_cocos2dx_manual(lua_State* tolua_S) { if (NULL == tolua_S) @@ -6489,6 +6634,8 @@ int register_all_cocos2dx_manual(lua_State* tolua_S) extendTMXLayer(tolua_S); extendEventListenerFocus(tolua_S); extendApplication(tolua_S); + extendFastTMXLayer(tolua_S); + extendTextureCache(tolua_S); return 0; } diff --git a/cocos/scripting/lua-bindings/manual/lua_cocos2dx_spine_manual.cpp b/cocos/scripting/lua-bindings/manual/lua_cocos2dx_spine_manual.cpp index 5e2bc3f8bf..003e5527a2 100644 --- a/cocos/scripting/lua-bindings/manual/lua_cocos2dx_spine_manual.cpp +++ b/cocos/scripting/lua-bindings/manual/lua_cocos2dx_spine_manual.cpp @@ -136,8 +136,8 @@ static int lua_cocos2dx_CCSkeletonAnimation_createWithFile(lua_State* L) #if COCOS2D_DEBUG >= 1 tolua_lerror: tolua_error(L,"#ferror in function 'createWithFile'.",&tolua_err); - return 0; #endif + return 0; } int tolua_Cocos2d_CCSkeletonAnimation_registerSpineEventHandler00(lua_State* tolua_S) diff --git a/cocos/scripting/lua-bindings/proj.ios_mac/cocos2d_lua_bindings.xcodeproj/project.pbxproj b/cocos/scripting/lua-bindings/proj.ios_mac/cocos2d_lua_bindings.xcodeproj/project.pbxproj index 8306a270c4..a21824a6b7 100644 --- a/cocos/scripting/lua-bindings/proj.ios_mac/cocos2d_lua_bindings.xcodeproj/project.pbxproj +++ b/cocos/scripting/lua-bindings/proj.ios_mac/cocos2d_lua_bindings.xcodeproj/project.pbxproj @@ -211,6 +211,7 @@ 2905FAD718CF143800240AA3 /* lua_cocos2dx_ui_manual.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2905FAD418CF143800240AA3 /* lua_cocos2dx_ui_manual.cpp */; }; 2905FAD818CF143800240AA3 /* lua_cocos2dx_ui_manual.hpp in Headers */ = {isa = PBXBuildFile; fileRef = 2905FAD518CF143800240AA3 /* lua_cocos2dx_ui_manual.hpp */; }; 2905FAD918CF143800240AA3 /* lua_cocos2dx_ui_manual.hpp in Headers */ = {isa = PBXBuildFile; fileRef = 2905FAD518CF143800240AA3 /* lua_cocos2dx_ui_manual.hpp */; }; + C08D4F731974E00F00C87690 /* liblua.a in Frameworks */ = {isa = PBXBuildFile; fileRef = C0D9BAFA1974D30000EC35BB /* liblua.a */; }; C0FEF4D618BE0E70001F446C /* lua_debugger.c in Sources */ = {isa = PBXBuildFile; fileRef = C0FEF4D418BE0E70001F446C /* lua_debugger.c */; }; C0FEF4D718BE0E70001F446C /* lua_debugger.c in Sources */ = {isa = PBXBuildFile; fileRef = C0FEF4D418BE0E70001F446C /* lua_debugger.c */; }; C0FEF4D818BE0E70001F446C /* lua_debugger.h in Headers */ = {isa = PBXBuildFile; fileRef = C0FEF4D518BE0E70001F446C /* lua_debugger.h */; }; @@ -325,6 +326,7 @@ 2905FACF18CF12E600240AA3 /* lua_cocos2dx_ui_auto.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = lua_cocos2dx_ui_auto.hpp; sourceTree = ""; }; 2905FAD418CF143800240AA3 /* lua_cocos2dx_ui_manual.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = lua_cocos2dx_ui_manual.cpp; sourceTree = ""; }; 2905FAD518CF143800240AA3 /* lua_cocos2dx_ui_manual.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = lua_cocos2dx_ui_manual.hpp; sourceTree = ""; }; + C0D9BAFA1974D30000EC35BB /* liblua.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = liblua.a; path = ../../../../external/lua/lua/prebuilt/ios/liblua.a; sourceTree = ""; }; C0FEF4D418BE0E70001F446C /* lua_debugger.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = lua_debugger.c; sourceTree = ""; }; C0FEF4D518BE0E70001F446C /* lua_debugger.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = lua_debugger.h; sourceTree = ""; }; /* End PBXFileReference section */ @@ -334,6 +336,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + C08D4F731974E00F00C87690 /* liblua.a in Frameworks */, 1ABCA1F418CD8F540087CE3A /* libluajit.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; @@ -362,6 +365,7 @@ 1551A334158F2AB200E66CFE = { isa = PBXGroup; children = ( + C0D9BAFA1974D30000EC35BB /* liblua.a */, 1ABCA1E218CD8F230087CE3A /* external */, 1AACE74818BC45C200215002 /* auto */, 1AACE75B18BC45C200215002 /* manual */, @@ -959,7 +963,6 @@ "$(SRCROOT)/../../../../external/lua/luajit/prebuilt/ios", "$(SRCROOT)/../../../../external/lua/lua/prebuilt/ios", ); - "OTHER_LDFLAGS[arch=arm64]" = "-llua"; "OTHER_LDFLAGS[sdk=iphonesimulator7.1]" = "-llua"; "OTHER_LDFLAGS[sdk=iphonesimulator8.0]" = "-llua"; SDKROOT = iphoneos; @@ -985,7 +988,6 @@ "$(SRCROOT)/../../../../external/lua/luajit/prebuilt/ios", "$(SRCROOT)/../../../../external/lua/lua/prebuilt/ios", ); - "OTHER_LDFLAGS[arch=arm64]" = "-llua"; "OTHER_LDFLAGS[sdk=iphonesimulator7.1]" = "-llua"; "OTHER_LDFLAGS[sdk=iphonesimulator8.0]" = "-llua"; SDKROOT = iphoneos; diff --git a/cocos/scripting/lua-bindings/script/Cocos2dConstants.lua b/cocos/scripting/lua-bindings/script/Cocos2dConstants.lua index 85279e9c30..efcac61305 100644 --- a/cocos/scripting/lua-bindings/script/Cocos2dConstants.lua +++ b/cocos/scripting/lua-bindings/script/Cocos2dConstants.lua @@ -349,6 +349,14 @@ cc.Handler.EVENT_PHYSICS_CONTACT_BEGIN = 53 cc.Handler.EVENT_PHYSICS_CONTACT_PRESOLVE = 54 cc.Handler.EVENT_PHYSICS_CONTACT_POSTSOLVE = 55 cc.Handler.EVENT_PHYSICS_CONTACT_SEPERATE = 56 +cc.Handler.EVENT_FOCUS = 57 +cc.Handler.EVENT_CONTROLLER_CONNECTED = 58 +cc.Handler.EVENT_CONTROLLER_DISCONNECTED = 59 +cc.Handler.EVENT_CONTROLLER_KEYDOWN = 60 +cc.Handler.EVENT_CONTROLLER_KEYUP = 61 +cc.Handler.EVENT_CONTROLLER_KEYREPEAT = 62 +cc.Handler.EVENT_CONTROLLER_AXIS = 63 + cc.EVENT_UNKNOWN = 0 cc.EVENT_TOUCH_ONE_BY_ONE = 1 @@ -569,5 +577,38 @@ cc.EventCode = CANCELLED = 3, } +cc.ControllerKey = +{ + JOYSTICK_LEFT_X = 1000, + JOYSTICK_LEFT_Y = 1001, + JOYSTICK_RIGHT_X = 1002, + JOYSTICK_RIGHT_Y = 1003, + BUTTON_A = 1004, + BUTTON_B = 1005, + BUTTON_C = 1006, + BUTTON_X = 1007, + BUTTON_Y = 1008, + BUTTON_Z = 1009, + + BUTTON_DPAD_UP = 1010, + BUTTON_DPAD_DOWN = 1011, + BUTTON_DPAD_LEFT = 1012, + BUTTON_DPAD_RIGHT = 1013, + BUTTON_DPAD_CENTER = 1014, + BUTTON_LEFT_SHOULDER = 1015, + BUTTON_RIGHT_SHOULDER = 1016, + + AXIS_LEFT_TRIGGER = 1017, + AXIS_RIGHT_TRIGGER = 1018, + + BUTTON_LEFT_THUMBSTICK = 1019, + BUTTON_RIGHT_THUMBSTICK = 1020, + + BUTTON_START = 1021, + BUTTON_SELECT = 1022, + + BUTTON_PAUSE = 1023, + KEY_MAX = 1024, +} diff --git a/cocos/scripting/lua-bindings/script/bitExtend.lua b/cocos/scripting/lua-bindings/script/bitExtend.lua new file mode 100644 index 0000000000..1f152bb895 --- /dev/null +++ b/cocos/scripting/lua-bindings/script/bitExtend.lua @@ -0,0 +1,95 @@ +-- bit operation + +bit = bit or {} +bit.data32 = {} +for i=1,32 do + bit.data32[i]=2^(32-i) +end + +function bit._b2d(arg) + local nr=0 + for i=1,32 do + if arg[i] ==1 then + nr=nr+bit.data32[i] + end + end + return nr +end + +function bit._d2b(arg) + arg = arg >= 0 and arg or (0xFFFFFFFF + arg + 1) + local tr={} + for i=1,32 do + if arg >= bit.data32[i] then + tr[i]=1 + arg=arg-bit.data32[i] + else + tr[i]=0 + end + end + return tr +end + +function bit._and(a,b) + local op1=bit._d2b(a) + local op2=bit._d2b(b) + local r={} + + for i=1,32 do + if op1[i]==1 and op2[i]==1 then + r[i]=1 + else + r[i]=0 + end + end + return bit._b2d(r) + +end + +function bit._rshift(a,n) + local op1=bit._d2b(a) + n = n <= 32 and n or 32 + n = n >= 0 and n or 0 + + for i=32, n+1, -1 do + op1[i] = op1[i-n] + end + for i=1, n do + op1[i] = 0 + end + + return bit._b2d(op1) +end + +function bit._not(a) + local op1=bit._d2b(a) + local r={} + + for i=1,32 do + if op1[i]==1 then + r[i]=0 + else + r[i]=1 + end + end + return bit._b2d(r) +end + +function bit._or(a,b) + local op1=bit._d2b(a) + local op2=bit._d2b(b) + local r={} + + for i=1,32 do + if op1[i]==1 or op2[i]==1 then + r[i]=1 + else + r[i]=0 + end + end + return bit._b2d(r) +end + +bit.band = bit.band or bit._and +bit.rshift = bit.rshift or bit._rshift +bit.bnot = bit.bnot or bit._not \ No newline at end of file diff --git a/cocos/ui/UIButton.h b/cocos/ui/UIButton.h index 82ba742fb3..0510717c56 100644 --- a/cocos/ui/UIButton.h +++ b/cocos/ui/UIButton.h @@ -80,7 +80,7 @@ public: * * @param disabled disabled state texture name. * - * @param texType @see UI_TEX_TYPE_LOCAL + * @param texType @see TextureResType */ void loadTextures(const std::string& normal, const std::string& selected, @@ -92,7 +92,7 @@ public: * * @param normal normal state texture. * - * @param texType @see UI_TEX_TYPE_LOCAL + * @param texType @see TextureResType */ void loadTextureNormal(const std::string& normal, TextureResType texType = TextureResType::LOCAL); @@ -101,7 +101,7 @@ public: * * @param selected selected state texture. * - * @param texType @see UI_TEX_TYPE_LOCAL + * @param texType @see TextureResType */ void loadTexturePressed(const std::string& selected, TextureResType texType = TextureResType::LOCAL); @@ -110,7 +110,7 @@ public: * * @param disabled dark state texture. * - * @param texType @see UI_TEX_TYPE_LOCAL + * @param texType @see TextureResType */ void loadTextureDisabled(const std::string& disabled, TextureResType texType = TextureResType::LOCAL); diff --git a/cocos/ui/UICheckBox.h b/cocos/ui/UICheckBox.h index b1b6a28177..db7900fcbf 100644 --- a/cocos/ui/UICheckBox.h +++ b/cocos/ui/UICheckBox.h @@ -86,7 +86,7 @@ public: * * @param frontCrossDisabled cross dark state texture. * - * @param texType @see UI_TEX_TYPE_LOCAL + * @param texType @see TextureResType */ static CheckBox* create(const std::string& backGround, const std::string& backGroundSeleted, @@ -106,7 +106,7 @@ public: * * @param frontCrossDisabled cross dark state texture. * - * @param texType @see UI_TEX_TYPE_LOCAL + * @param texType @see TextureResType */ void loadTextures(const std::string& backGround, const std::string& backGroundSelected, @@ -120,7 +120,7 @@ public: * * @param backGround backGround texture. * - * @param texType @see UI_TEX_TYPE_LOCAL + * @param texType @see TextureResType */ void loadTextureBackGround(const std::string& backGround,TextureResType type = TextureResType::LOCAL); @@ -129,7 +129,7 @@ public: * * @param backGroundSelected backGround selected state texture. * - * @param texType @see UI_TEX_TYPE_LOCAL + * @param texType @see TextureResType */ void loadTextureBackGroundSelected(const std::string& backGroundSelected,TextureResType texType = TextureResType::LOCAL); @@ -138,7 +138,7 @@ public: * * @param cross cross texture. * - * @param texType @see UI_TEX_TYPE_LOCAL + * @param texType @see TextureResType */ void loadTextureFrontCross(const std::string&,TextureResType texType = TextureResType::LOCAL); @@ -147,7 +147,7 @@ public: * * @param backGroundDisabled backGroundDisabled texture. * - * @param texType @see UI_TEX_TYPE_LOCAL + * @param texType @see TextureResType */ void loadTextureBackGroundDisabled(const std::string& backGroundDisabled,TextureResType texType = TextureResType::LOCAL); @@ -156,7 +156,7 @@ public: * * @param frontCrossDisabled frontCrossDisabled texture. * - * @param texType @see UI_TEX_TYPE_LOCAL + * @param texType @see TextureResType */ void loadTextureFrontCrossDisabled(const std::string& frontCrossDisabled,TextureResType texType = TextureResType::LOCAL); diff --git a/cocos/ui/UIImageView.h b/cocos/ui/UIImageView.h index 8afa3514bb..ada869b34a 100644 --- a/cocos/ui/UIImageView.h +++ b/cocos/ui/UIImageView.h @@ -61,7 +61,7 @@ public: * * @param imageFileName file name of texture. * - * @param texType @see UI_TEX_TYPE_LOCAL + * @param texType @see TextureResType */ static ImageView* create(const std::string& imageFileName, TextureResType texType = TextureResType::LOCAL); @@ -71,7 +71,7 @@ public: * * @param fileName file name of texture. * - * @param texType @see UI_TEX_TYPE_LOCAL + * @param texType @see TextureResType */ void loadTexture(const std::string& fileName,TextureResType texType = TextureResType::LOCAL); diff --git a/cocos/ui/UILayout.cpp b/cocos/ui/UILayout.cpp index 7064ec73d5..50074ae5ae 100644 --- a/cocos/ui/UILayout.cpp +++ b/cocos/ui/UILayout.cpp @@ -1137,7 +1137,7 @@ float Layout::calculateNearestDistance(Widget* baseWidget) return distance; } -float Layout::calculateFarestDistance(cocos2d::ui::Widget *baseWidget) +float Layout::calculateFarthestDistance(cocos2d::ui::Widget *baseWidget) { float distance = -FLT_MAX; @@ -1147,7 +1147,7 @@ float Layout::calculateFarestDistance(cocos2d::ui::Widget *baseWidget) Layout *layout = dynamic_cast(node); int length; if (layout) { - length = layout->calculateFarestDistance(baseWidget); + length = layout->calculateFarthestDistance(baseWidget); } else { @@ -1231,7 +1231,7 @@ int Layout::findNearestChildWidgetIndex(FocusDirection direction, Widget* baseWi return 0; } -int Layout::findFarestChildWidgetIndex(FocusDirection direction, cocos2d::ui::Widget *baseWidget) +int Layout::findFarthestChildWidgetIndex(FocusDirection direction, cocos2d::ui::Widget *baseWidget) { if (baseWidget == nullptr || baseWidget == this) { @@ -1256,7 +1256,7 @@ int Layout::findFarestChildWidgetIndex(FocusDirection direction, cocos2d::ui::Wi Layout *layout = dynamic_cast(w); if (layout) { - length = layout->calculateFarestDistance(baseWidget); + length = layout->calculateFarthestDistance(baseWidget); } else { @@ -1337,11 +1337,11 @@ void Layout::findProperSearchingFunctor(FocusDirection dir, Widget* baseWidget) onPassFocusToChild = CC_CALLBACK_2(Layout::findNearestChildWidgetIndex, this); } else{ - onPassFocusToChild = CC_CALLBACK_2(Layout::findFarestChildWidgetIndex, this); + onPassFocusToChild = CC_CALLBACK_2(Layout::findFarthestChildWidgetIndex, this); } }else if(dir == FocusDirection::RIGHT){ if (previousWidgetPosition.x > widgetPosition.x) { - onPassFocusToChild = CC_CALLBACK_2(Layout::findFarestChildWidgetIndex, this); + onPassFocusToChild = CC_CALLBACK_2(Layout::findFarthestChildWidgetIndex, this); } else{ onPassFocusToChild = CC_CALLBACK_2(Layout::findNearestChildWidgetIndex, this); @@ -1350,13 +1350,13 @@ void Layout::findProperSearchingFunctor(FocusDirection dir, Widget* baseWidget) if (previousWidgetPosition.y > widgetPosition.y) { onPassFocusToChild = CC_CALLBACK_2(Layout::findNearestChildWidgetIndex, this); }else{ - onPassFocusToChild = CC_CALLBACK_2(Layout::findFarestChildWidgetIndex, this); + onPassFocusToChild = CC_CALLBACK_2(Layout::findFarthestChildWidgetIndex, this); } }else if(dir == FocusDirection::UP){ if (previousWidgetPosition.y < widgetPosition.y) { onPassFocusToChild = CC_CALLBACK_2(Layout::findNearestChildWidgetIndex, this); }else{ - onPassFocusToChild = CC_CALLBACK_2(Layout::findFarestChildWidgetIndex, this); + onPassFocusToChild = CC_CALLBACK_2(Layout::findFarthestChildWidgetIndex, this); } }else{ CCASSERT(0, "invalid direction!"); diff --git a/cocos/ui/UILayout.h b/cocos/ui/UILayout.h index e2c9798d37..e43df22522 100644 --- a/cocos/ui/UILayout.h +++ b/cocos/ui/UILayout.h @@ -110,7 +110,7 @@ public: * * @param fileName image file path. * - * @param texType @see TextureResType. UI_TEX_TYPE_LOCAL means local file, UI_TEX_TYPE_PLIST means sprite frame. + * @param texType @see TextureResType. TextureResType::LOCAL means local file, TextureResType::PLIST means sprite frame. */ void setBackGroundImage(const std::string& fileName,TextureResType texType = TextureResType::LOCAL); @@ -143,7 +143,7 @@ public: bool isBackGroundImageScale9Enabled()const; /** - * Sets background color for layout, if color type is LAYOUT_COLOR_SOLID + * Sets background color for layout, if color type is BackGroundColorType::SOLIDE * * @param color */ @@ -152,7 +152,7 @@ public: const Color3B& getBackGroundColor()const; /** - * Sets background color for layout, if color type is LAYOUT_COLOR_GRADIENT + * Sets background color for layout, if color type is BackGroundColorType::GRADIENT * * @param start color * @@ -174,7 +174,7 @@ public: GLubyte getBackGroundColorOpacity()const; /** - * Sets background color vector for layout, if color type is LAYOUT_COLOR_GRADIENT + * Sets background color vector for layout, if color type is BackGroundColorType::GRADIENT * * @param vector */ @@ -365,11 +365,11 @@ protected: /** * When the layout get focused, it the layout pass the focus to its child, it will use this method to determine which child - * will get the focus. The current algorithm to determine which child will get focus is farest-distance-priority algorithm + * will get the focus. The current algorithm to determine which child will get focus is farthest-distance-priority algorithm *@param dir next focused widget direction *@return The index of child widget in the container */ - int findFarestChildWidgetIndex(FocusDirection direction, Widget* baseWidget); + int findFarthestChildWidgetIndex(FocusDirection direction, Widget* baseWidget); /** * caculate the nearest distance between the baseWidget and the children of the layout @@ -379,15 +379,15 @@ protected: float calculateNearestDistance(Widget* baseWidget); /** - * caculate the farest distance between the baseWidget and the children of the layout + * caculate the farthest distance between the baseWidget and the children of the layout *@param the base widget which will be used to caculate the distance between the layout's children and itself - *@return return the farest distance between the baseWidget and the layout's children + *@return return the farthest distance between the baseWidget and the layout's children */ - float calculateFarestDistance(Widget* baseWidget); + float calculateFarthestDistance(Widget* baseWidget); /** - * when a layout pass the focus to it's child, use this method to determine which algorithm to use, nearest or farest distance algorithm or not + * when a layout pass the focus to it's child, use this method to determine which algorithm to use, nearest or farthest distance algorithm or not */ void findProperSearchingFunctor(FocusDirection dir, Widget* baseWidget); diff --git a/cocos/ui/UIListView.h b/cocos/ui/UIListView.h index 2409bd3763..53737812a6 100644 --- a/cocos/ui/UIListView.h +++ b/cocos/ui/UIListView.h @@ -180,9 +180,9 @@ public: /** * Changes scroll direction of scrollview. * - * @see SCROLLVIEW_DIR SCROLLVIEW_DIR_VERTICAL means vertical scroll, SCROLLVIEW_DIR_HORIZONTAL means horizontal scroll + * @see Direction Direction::VERTICAL means vertical scroll, Direction::HORIZONTAL means horizontal scroll * - * @param SCROLLVIEW_DIR + * @param dir, set the list view's scroll direction */ virtual void setDirection(Direction dir) override; diff --git a/cocos/ui/UILoadingBar.h b/cocos/ui/UILoadingBar.h index 1a0d6cbe6a..6fe4910130 100644 --- a/cocos/ui/UILoadingBar.h +++ b/cocos/ui/UILoadingBar.h @@ -89,7 +89,7 @@ public: * * @param texture file name of texture. * - * @param texType @see UI_TEX_TYPE_LOCAL + * @param texType @see TextureResType */ void loadTexture(const std::string& texture,TextureResType texType = TextureResType::LOCAL); diff --git a/cocos/ui/UIPageView.h b/cocos/ui/UIPageView.h index 70c764ee6a..fc439f9b79 100644 --- a/cocos/ui/UIPageView.h +++ b/cocos/ui/UIPageView.h @@ -127,8 +127,7 @@ public: */ ssize_t getCurPageIndex() const; - //TODO: add Vector member variables into UIPageView, but it only used for reference purpose, - //all the pages are added into proteced node, so does scrollview, listview + Vector& getPages(); Layout* getPage(ssize_t index); diff --git a/cocos/ui/UIScrollView.h b/cocos/ui/UIScrollView.h index c02d68fd1e..ae2bd6ab43 100644 --- a/cocos/ui/UIScrollView.h +++ b/cocos/ui/UIScrollView.h @@ -95,18 +95,18 @@ public: /** * Changes scroll direction of scrollview. * - * @see SCROLLVIEW_DIR SCROLLVIEW_DIR_VERTICAL means vertical scroll, SCROLLVIEW_DIR_HORIZONTAL means horizontal scroll + * @see Direction Direction::VERTICAL means vertical scroll, Direction::HORIZONTAL means horizontal scroll * - * @param SCROLLVIEW_DIR + * @param dir */ virtual void setDirection(Direction dir); /** * Gets scroll direction of scrollview. * - * @see SCROLLVIEW_DIR SCROLLVIEW_DIR_VERTICAL means vertical scroll, SCROLLVIEW_DIR_HORIZONTAL means horizontal scroll + * @see Direction Direction::VERTICAL means vertical scroll, Direction::HORIZONTAL means horizontal scroll * - * @return SCROLLVIEW_DIR + * @return Direction */ Direction getDirection()const; diff --git a/cocos/ui/UISlider.h b/cocos/ui/UISlider.h index f8a711dcf1..de8ed765b2 100644 --- a/cocos/ui/UISlider.h +++ b/cocos/ui/UISlider.h @@ -76,7 +76,7 @@ public: * * @param fileName file name of texture. * - * @param texType @see UI_TEX_TYPE_LOCAL + * @param texType @see TextureResType */ void loadBarTexture(const std::string& fileName,TextureResType texType = TextureResType::LOCAL); @@ -123,7 +123,7 @@ public: * * @param slider ball disabled dark state texture. * - * @param texType @see UI_TEX_TYPE_LOCAL + * @param texType @see TextureResType */ void loadSlidBallTextures(const std::string& normal, const std::string& pressed, @@ -135,7 +135,7 @@ public: * * @param normal normal state texture. * - * @param texType @see UI_TEX_TYPE_LOCAL + * @param texType @see TextureResType */ void loadSlidBallTextureNormal(const std::string& normal,TextureResType texType = TextureResType::LOCAL); @@ -144,7 +144,7 @@ public: * * @param selected selected state texture. * - * @param texType @see UI_TEX_TYPE_LOCAL + * @param texType @see TextureResType */ void loadSlidBallTexturePressed(const std::string& pressed,TextureResType texType = TextureResType::LOCAL); @@ -153,7 +153,7 @@ public: * * @param disabled dark state texture. * - * @param texType @see UI_TEX_TYPE_LOCAL + * @param texType @see TextureResType */ void loadSlidBallTextureDisabled(const std::string& disabled,TextureResType texType = TextureResType::LOCAL); @@ -162,7 +162,7 @@ public: * * @param fileName file path of texture. * - * @param texType @see UI_TEX_TYPE_LOCAL + * @param texType @see TextureResType */ void loadProgressBarTexture(const std::string& fileName, TextureResType texType = TextureResType::LOCAL); diff --git a/cocos/ui/UIText.cpp b/cocos/ui/UIText.cpp index e0d0f1ae38..2a0cd717b8 100644 --- a/cocos/ui/UIText.cpp +++ b/cocos/ui/UIText.cpp @@ -296,7 +296,6 @@ void Text::labelScaleChangedWithSize() { if (_ignoreSize) { - _labelRenderer->setDimensions(0,0); _labelRenderer->setScale(1.0f); _normalScaleValueX = _normalScaleValueY = 1.0f; } diff --git a/cocos/ui/UITextField.cpp b/cocos/ui/UITextField.cpp index 7d6cf660f7..90fb9bc472 100644 --- a/cocos/ui/UITextField.cpp +++ b/cocos/ui/UITextField.cpp @@ -23,6 +23,7 @@ THE SOFTWARE. ****************************************************************************/ #include "ui/UITextField.h" +#include "platform/CCFileUtils.h" NS_CC_BEGIN @@ -366,7 +367,10 @@ _textFieldEventListener(nullptr), _textFieldEventSelector(nullptr), _eventCallback(nullptr), _passwordStyleText(""), -_textFieldRendererAdaptDirty(true) +_textFieldRendererAdaptDirty(true), +_fontName("Thonburi"), +_fontSize(10), +_fontType(FontType::SYSTEM) { } @@ -541,26 +545,44 @@ const std::string& TextField::getPlaceHolder()const void TextField::setFontSize(int size) { - _textFieldRenderer->setSystemFontSize(size); + if (_fontType == FontType::SYSTEM) { + _textFieldRenderer->setSystemFontSize(size); + } else { + TTFConfig config = _textFieldRenderer->getTTFConfig(); + config.fontSize = size; + _textFieldRenderer->setTTFConfig(config); + } + _fontSize = size; _textFieldRendererAdaptDirty = true; updateContentSizeWithTextureSize(_textFieldRenderer->getContentSize()); } int TextField::getFontSize()const { - return _textFieldRenderer->getSystemFontSize(); + return _fontSize; } void TextField::setFontName(const std::string& name) { - _textFieldRenderer->setSystemFontName(name); + if(FileUtils::getInstance()->isFileExist(name)) + { + TTFConfig config = _textFieldRenderer->getTTFConfig(); + config.fontFilePath = name; + config.fontSize = _fontSize; + _textFieldRenderer->setTTFConfig(config); + _fontType = FontType::TTF; + } else { + _textFieldRenderer->setSystemFontName(name); + _fontType = FontType::SYSTEM; + } + _fontName = name; _textFieldRendererAdaptDirty = true; updateContentSizeWithTextureSize(_textFieldRenderer->getContentSize()); } const std::string& TextField::getFontName()const { - return _textFieldRenderer->getSystemFontName(); + return _fontName; } void TextField::didNotSelectSelf() @@ -831,8 +853,8 @@ void TextField::copySpecialProperties(Widget *widget) { setText(textField->_textFieldRenderer->getString()); setPlaceHolder(textField->getStringValue()); - setFontSize(textField->_textFieldRenderer->getSystemFontSize()); - setFontName(textField->_textFieldRenderer->getSystemFontName()); + setFontSize(textField->_fontSize); + setFontName(textField->_fontName); setMaxLengthEnabled(textField->isMaxLengthEnabled()); setMaxLength(textField->getMaxLength()); setPasswordEnabled(textField->isPasswordEnabled()); diff --git a/cocos/ui/UITextField.h b/cocos/ui/UITextField.h index cc7ef355a8..b26456fd33 100644 --- a/cocos/ui/UITextField.h +++ b/cocos/ui/UITextField.h @@ -228,6 +228,16 @@ protected: std::string _passwordStyleText; bool _textFieldRendererAdaptDirty; +private: + enum class FontType + { + SYSTEM, + TTF + }; + + std::string _fontName; + int _fontSize; + FontType _fontType; }; } diff --git a/cocos/ui/UIWidget.h b/cocos/ui/UIWidget.h index 935d6f8628..8c809e45b7 100644 --- a/cocos/ui/UIWidget.h +++ b/cocos/ui/UIWidget.h @@ -236,7 +236,6 @@ public: CC_DEPRECATED_ATTRIBUTE void addTouchEventListener(Ref* target,SEL_TouchEvent selector); void addTouchEventListener(ccWidgetTouchCallback callback); - //cocos2d property /** * Changes the position (x,y) of the widget in OpenGL coordinates @@ -249,10 +248,7 @@ public: virtual void setPosition(const Vec2 &pos) override; /** - * Changes the position (x,y) of the widget in OpenGL coordinates - * - * Usually we use p(x,y) to compose Vec2 object. - * The original point (0,0) is at the left-bottom corner of screen. + * Set the percent(x,y) of the widget in OpenGL coordinates * * @param percent The percent (x,y) of the widget in OpenGL coordinates */ @@ -456,16 +452,18 @@ public: /** - * Ignore the widget size * - * @param ignore, true that widget will ignore it's size, use texture size, false otherwise. Default value is true. + * Note: when you set _ignoreSize to true, no matther you call setContentSize or not, + * the widget size is always equal to the return value of the member function getVirtualRendererSize. + * + * @param ignore, set member variabl _ignoreSize to ignore */ virtual void ignoreContentAdaptWithSize(bool ignore); /** - * Gets the widget if is ignore it's size. + * Query whether the widget ignores user deinfed content size or not * - * @param ignore, true that widget will ignore it's size, use texture size, false otherwise. Default value is true. + * @return bool */ bool isIgnoreContentAdaptWithSize() const; @@ -485,15 +483,9 @@ public: */ virtual Node* getVirtualRenderer(); -// /** -// * Gets the content size of widget. -// * -// * Content size is widget's texture size. -// */ -// virtual const Size& getContentSize() const; + virtual const Size& getVirtualRendererSize() const; - /** * Returns the "class name" of widget. diff --git a/docs/RELEASE_NOTES.md b/docs/RELEASE_NOTES.md index 0ebf4815cd..5c0f66fa93 100644 --- a/docs/RELEASE_NOTES.md +++ b/docs/RELEASE_NOTES.md @@ -1,8 +1,8 @@ -# cocos2d-x v3.2rc0 Release Notes # +# cocos2d-x v3.2 Release Notes # **Table of Contents** *generated with [DocToc](http://doctoc.herokuapp.com/)* -- [cocos2d-x v3.2rc0 Release Notes](#user-content-cocos2d-x-v32rc0-release-notes) +- [cocos2d-x v3.2 Release Notes](#user-content-cocos2d-x-v32-release-notes) - [Misc Information](#user-content-misc-information) - [Requirements](#user-content-requirements) - [Runtime Requirements](#user-content-runtime-requirements) @@ -13,21 +13,23 @@ - [Windows](#user-content-windows) - [Linux](#user-content-linux) - [How to start a new game](#user-content-how-to-start-a-new-game) -- [Highlights of v3.2rc0](#user-content-highlights-of-v32rc0) +- [Highlights of v3.2](#user-content-highlights-of-v32) +- [Documents](#user-content-documents) - [Toolchain requirement changed](#user-content-toolchain-requirement-changed) - [Features in detail](#user-content-features-in-detail) - - [Sprite3d](#user-content-sprite3d) + - [Sprite3D & Animation3D](#user-content-sprite3d--animation3d) - [fbx-conv usage](#user-content-fbx-conv-usage) - - [Controller support](#user-content-controller-support) + - [Game controller](#user-content-game-controller) - [Fast tilemap](#user-content-fast-tilemap) - [Node::enumerateChildren](#user-content-nodeenumeratechildren) - [utils::findChildren](#user-content-utilsfindchildren) + - [Node::setNormalizedPosition](#user-content-nodesetnormalizedposition) # Misc Information -* Download: http://cdn.cocos2d-x.org/cocos2d-x-3.2rc0.zip -* Full Changelog: https://github.com/cocos2d/cocos2d-x/blob/cocos2d-x-3.2rc0/CHANGELOG -* API Reference: http://www.cocos2d-x.org/reference/native-cpp/V3.2rc0/index.html +* Download: http://cdn.cocos2d-x.org/cocos2d-x-3.2.zip +* Full Changelog: https://github.com/cocos2d/cocos2d-x/blob/cocos2d-x-3.2/CHANGELOG +* API Reference: http://www.cocos2d-x.org/reference/native-cpp/V3.2/index.html * v3.0 Release Notes can be found here: [v3.0 Release Notes](https://github.com/cocos2d/cocos2d-x/blob/cocos2d-x-3.0/docs/RELEASE_NOTES.md) # Requirements @@ -114,14 +116,22 @@ Run Please refer to this document: [ReadMe](../README.md) -# Highlights of v3.2rc0 +# Highlights of v3.2 -* `fbx-conv` support generating binary format, and `Sprite3D` support it -* about 20% performance improved in `Sprite3D` -* game controller support -* fast tilemap support, it is faster for static tilemap -* physics body supports scale and rotation -* added Node::enumearteChildren(), and support c++ 11 regular expression +* `Animation3D`/`Animate3D`, new nodes for 3d animation +* `fbx-conv` supports generating binary format which is supported by `Sprite3D` +* Game controller support +* Fast tilemap support +* Added `utils::cpatureScreen` to take screenshot +* Physics body supports scale and rotation +* Added `Node::enumerateChildren` and `utils::findChildren`, and support c++ 11 regular expression +* Added `Node::setNormalizedPosition`, `Node`'s position in pixel will be calculated according its parent's content size + +# Documents + +* [Sprite3D & Animation3D](http://cocos2d-x.org/wiki/Sprite3D) +* [Game controller](http://www.cocos2d-x.org/wiki/Game_Controller) +* [How to compile shader on WP8](http://cocos2d-x.org/wiki/How_to_update_wp8_shader) # Toolchain requirement changed @@ -133,14 +143,19 @@ Please refer to this document: [ReadMe](../README.md) # Features in detail -## Sprite3d +## Sprite3D & Animation3D Sample code to use binary version ```c++ auto sprite3d = Sprite3D::create("filename.c3b"); addChild(sprite3d); + +auto animation3d = Animation3D("filename.c3b"); +auto animate3d = Animate3D::create(animation3d); +sprite3d->runAction(RepeatForEver::create(animate)); ``` +Detail information please refer to [Sprite3D & Animation3D](http://cocos2d-x.org/wiki/Sprite3D). ### `fbx-conv` usage @@ -164,19 +179,43 @@ Options: * -b: export binary format * -t: export text format -## Controller support +## Game controller Supported controller type: -* amazon tv +* Android standard controllers +* Amazon tv * OUYA * Moga * Nibiru * iOS standard controllers -In order to use controller on Android, you should refer to this Android project(`COCOS2DX_ROOT/cocos/platform/android/ControllerManualAdapter`). +Sample codes +```c++ +// register event listener +auto listener = EventListenerController::create(); +listner->onKeyDown = ... +... +eventDispatcher->addEventListenerWithSceneGraphPriority(listener, this); -Full demo please refer to `COCOS2DX_ROOT/tests/game-controler-test`. +// start connecting controller +Controller::startDiscoveryController(); + +// handler key down/ key up event +void GameControllerTest::onKeyDown(Controller *controller, int keyCode, Event *event) +{ + switch (keyCode) + { + case Controller::Key::BUTTON_A: + ... + break; + + ... + } +} +``` + +Detail information please refer to [Game controller](http://www.cocos2d-x.org/wiki/Game_Controller). ## Fast tilemap @@ -192,7 +231,7 @@ Full demo please refer to `COCOS2DX_ROOT/tests/cpp-tests/Classes/TileMapTest/Til ## Node::enumerateChildren -This functions is used to enumerate children of a `Node` recursively. It supports c++ 11 regular expression. +This functions is used to enumerate children of a `Node`. It supports c++ 11 regular expression. ```c++ // Find nodes whose name is 'nameToFind' and end with digits. @@ -200,6 +239,12 @@ node->enumerateChildren("nameToFind[[:digit:]]+", [](Node* node) -> bool { ... return false; // return true to stop at first match }); + +// Find nodes whose name is 'nameToFind' and end with digits recursively. +node->enumerateChildren("nameToFind[[:digit:]]+", [](Node* node) -> bool { + ... + return false; // return true to stop at first match +}); ``` Full test please refer to `NodeNameTest` in `COCOS2DX_ROOT/tests/cpp-tests/NodeTest/NodeTest.cpp`. @@ -215,3 +260,18 @@ auto children = utils::findChildren(node, "nameToFind"); ... ``` + +## Node::setNormalizedPosition + +Can use this function to set Node's position(x,y) using value between 0 and 1. `Can use this function when it has a parent node.` The positions in pixels is calculated like the following: + +```c++ +// pseudo code +void setNormalizedPosition(Vec2 pos) +{ + Size s = getParent()->getContentSize(); + _position = pos * s; +} +``` + +Full test please refer to `NodeNormalizedPositionTest1/2` in `tests/cpp-tests/Classes/NodeTest/NodeTest.cpp`. diff --git a/extensions/GUI/CCEditBox/CCEditBoxImplMac.mm b/extensions/GUI/CCEditBox/CCEditBoxImplMac.mm index fbeed2ee37..8ca0fd5d25 100644 --- a/extensions/GUI/CCEditBox/CCEditBoxImplMac.mm +++ b/extensions/GUI/CCEditBox/CCEditBoxImplMac.mm @@ -404,11 +404,15 @@ void EditBoxImplMac::setText(const char* pText) { NSString *string = [NSString stringWithUTF8String:pText]; _sysEdit.textField.stringValue = string; - _sysEdit.textField.stringValue = string; + _sysEdit.secureTextField.stringValue = string; } const char* EditBoxImplMac::getText(void) { + if (_sysEdit.secureTextField.superview) { + return [_sysEdit.secureTextField.stringValue UTF8String]; + } + return [_sysEdit.textField.stringValue UTF8String]; } diff --git a/external/config.json b/external/config.json index 69d401fe6e..4fd1120e81 100644 --- a/external/config.json +++ b/external/config.json @@ -1,5 +1,5 @@ { - "version":"v3-deps-4", + "version":"v3-deps-5", "zip_file_size":"57171285", "repo_name":"cocos2d-x-3rd-party-libs-bin", "repo_parent":"https://github.com/cocos2d/" diff --git a/setup.py b/setup.py index e4343529d9..49f67ba7ff 100755 --- a/setup.py +++ b/setup.py @@ -218,7 +218,7 @@ class SetEnvVar(object): return ret def _find_environment_variable(self, var): - print(" ->Find environment variable %s..." % var) + print(" ->Search for environment variable %s..." % var) ret = None try: ret = os.environ[var] @@ -529,49 +529,31 @@ class SetEnvVar(object): return ret def _get_ant_path(self): - print(" ->Find command ant in system...") - ret = None - if not self._isWindows(): - import commands - state, result = commands.getstatusoutput("which ant") - if state == 0: - ret = os.path.dirname(result) - - if ret is not None: - print(" ->Path \"%s\" was found\n" % ret) - else: - print(" ->Command ant not found\n") - return ret + return self._get_sdkpath_for_cmd("ant", False) def _get_androidsdk_path(self): - print(" ->Find command android in system...") - ret = None - if not self._isWindows(): - import commands - state, result = commands.getstatusoutput("which android") - if state == 0: - ret = os.path.dirname(result) - - if ret is not None: - ret = os.path.abspath(os.path.join(ret,os.pardir)) - print(" ->Path \"%s\" was found\n" % ret) - else: - print(" ->Command android not found\n") - return ret + return self._get_sdkpath_for_cmd("android") def _get_ndkbuild_path(self): - print(" ->Find command ndk-build in system...") + return self._get_sdkpath_for_cmd("ndk-build", False) + + def _get_sdkpath_for_cmd(self, cmd, has_bin_folder=True): ret = None + print(" ->Search for command " + cmd + " in system...") if not self._isWindows(): import commands - state, result = commands.getstatusoutput("which ndk-build") + state, result = commands.getstatusoutput("which " + cmd) if state == 0: - ret = os.path.dirname(result) + ret = os.path.realpath(result) + ret = os.path.dirname(ret) + # Use parent folder if has_bin_folder was set + if has_bin_folder: + ret = os.path.dirname(ret) if ret is not None: - print(" ->Path \"%s\" was found\n" % ret) + print(" ->Path " + ret + " was found\n") else: - print(" ->Command ndk-build not found\n") + print(" ->Command " + ret + " not found\n") return ret def _find_value_from_sys(self, var_name): diff --git a/templates/cocos2dx_files.json b/templates/cocos2dx_files.json index 9729fc1397..30678f6672 100644 --- a/templates/cocos2dx_files.json +++ b/templates/cocos2dx_files.json @@ -1323,7 +1323,6 @@ "external/curl/prebuilt/android/armeabi/libcurl.a", "external/curl/prebuilt/android/x86/libcurl.a", "external/curl/prebuilt/ios/libcurl.a", - "external/curl/prebuilt/ios/libcurl_arm64.a", "external/curl/prebuilt/win32/libcurl.dll", "external/curl/prebuilt/win32/libcurl_imp.lib", "external/curl/prebuilt/wp8/arm/libcurl.dll", @@ -1923,7 +1922,6 @@ "external/freetype2/prebuilt/android/armeabi/libfreetype.a", "external/freetype2/prebuilt/android/x86/libfreetype.a", "external/freetype2/prebuilt/ios/libfreetype.a", - "external/freetype2/prebuilt/ios/libfreetype_arm64.a", "external/freetype2/prebuilt/linux/32-bit/libfreetype.a", "external/freetype2/prebuilt/linux/64-bit/libfreetype.a", "external/freetype2/prebuilt/mac/libfreetype.a", @@ -1978,7 +1976,6 @@ "external/jpeg/prebuilt/android/armeabi/libjpeg.a", "external/jpeg/prebuilt/android/x86/libjpeg.a", "external/jpeg/prebuilt/ios/libjpeg.a", - "external/jpeg/prebuilt/ios/libjpeg_arm64.a", "external/jpeg/prebuilt/linux/32-bit/libjpeg.a", "external/jpeg/prebuilt/linux/64-bit/libjpeg.a", "external/jpeg/prebuilt/mac/libjpeg.a", @@ -2055,7 +2052,6 @@ "external/png/prebuilt/android/armeabi/libpng.a", "external/png/prebuilt/android/x86/libpng.a", "external/png/prebuilt/ios/libpng.a", - "external/png/prebuilt/ios/libpng_arm64.a", "external/png/prebuilt/mac/libpng.a", "external/png/prebuilt/win32/libpng.lib", "external/png/prebuilt/winrt/ARM/libpng.lib", @@ -2108,7 +2104,6 @@ "external/tiff/prebuilt/android/armeabi/libtiff.a", "external/tiff/prebuilt/android/x86/libtiff.a", "external/tiff/prebuilt/ios/libtiff.a", - "external/tiff/prebuilt/ios/libtiff_arm64.a", "external/tiff/prebuilt/linux/32-bit/libtiff.a", "external/tiff/prebuilt/linux/64-bit/libtiff.a", "external/tiff/prebuilt/mac/libtiff.a", @@ -2147,7 +2142,6 @@ "external/webp/prebuilt/android/armeabi/libwebp.a", "external/webp/prebuilt/android/x86/libwebp.a", "external/webp/prebuilt/ios/libwebp.a", - "external/webp/prebuilt/ios/libwebp_arm64.a", "external/webp/prebuilt/linux/32-bit/libwebp.a", "external/webp/prebuilt/linux/64-bit/libwebp.a", "external/webp/prebuilt/mac/libwebp.a", @@ -2177,7 +2171,6 @@ "external/websockets/prebuilt/android/armeabi/libwebsockets.a", "external/websockets/prebuilt/android/x86/libwebsockets.a", "external/websockets/prebuilt/ios/libwebsockets.a", - "external/websockets/prebuilt/ios/libwebsockets_arm64.a", "external/websockets/prebuilt/linux/32-bit/libwebsockets.a", "external/websockets/prebuilt/linux/64-bit/libwebsockets.a", "external/websockets/prebuilt/mac/libwebsockets.a", @@ -3631,6 +3624,7 @@ "cocos/scripting/lua-bindings/auto/api/ControlSlider.lua", "cocos/scripting/lua-bindings/auto/api/ControlStepper.lua", "cocos/scripting/lua-bindings/auto/api/ControlSwitch.lua", + "cocos/scripting/lua-bindings/auto/api/Controller.lua", "cocos/scripting/lua-bindings/auto/api/DelayTime.lua", "cocos/scripting/lua-bindings/auto/api/Director.lua", "cocos/scripting/lua-bindings/auto/api/DisplayData.lua", @@ -3676,6 +3670,7 @@ "cocos/scripting/lua-bindings/auto/api/EditBox.lua", "cocos/scripting/lua-bindings/auto/api/Event.lua", "cocos/scripting/lua-bindings/auto/api/EventAcceleration.lua", + "cocos/scripting/lua-bindings/auto/api/EventController.lua", "cocos/scripting/lua-bindings/auto/api/EventCustom.lua", "cocos/scripting/lua-bindings/auto/api/EventDispatcher.lua", "cocos/scripting/lua-bindings/auto/api/EventFocus.lua", @@ -3683,6 +3678,7 @@ "cocos/scripting/lua-bindings/auto/api/EventKeyboard.lua", "cocos/scripting/lua-bindings/auto/api/EventListener.lua", "cocos/scripting/lua-bindings/auto/api/EventListenerAcceleration.lua", + "cocos/scripting/lua-bindings/auto/api/EventListenerController.lua", "cocos/scripting/lua-bindings/auto/api/EventListenerCustom.lua", "cocos/scripting/lua-bindings/auto/api/EventListenerFocus.lua", "cocos/scripting/lua-bindings/auto/api/EventListenerKeyboard.lua", @@ -3702,6 +3698,8 @@ "cocos/scripting/lua-bindings/auto/api/FadeOutTRTiles.lua", "cocos/scripting/lua-bindings/auto/api/FadeOutUpTiles.lua", "cocos/scripting/lua-bindings/auto/api/FadeTo.lua", + "cocos/scripting/lua-bindings/auto/api/FastTMXLayer.lua", + "cocos/scripting/lua-bindings/auto/api/FastTMXTiledMap.lua", "cocos/scripting/lua-bindings/auto/api/FileUtils.lua", "cocos/scripting/lua-bindings/auto/api/FiniteTimeAction.lua", "cocos/scripting/lua-bindings/auto/api/FlipX.lua", @@ -3938,6 +3936,7 @@ "cocos/scripting/lua-bindings/auto/api/Widget.lua", "cocos/scripting/lua-bindings/auto/api/ZOrderFrame.lua", "cocos/scripting/lua-bindings/auto/api/lua_cocos2dx_auto_api.lua", + "cocos/scripting/lua-bindings/auto/api/lua_cocos2dx_controller_auto_api.lua", "cocos/scripting/lua-bindings/auto/api/lua_cocos2dx_experimental_video_auto_api.lua", "cocos/scripting/lua-bindings/auto/api/lua_cocos2dx_extension_auto_api.lua", "cocos/scripting/lua-bindings/auto/api/lua_cocos2dx_physics_auto_api.lua", @@ -3946,6 +3945,8 @@ "cocos/scripting/lua-bindings/auto/api/lua_cocos2dx_ui_auto_api.lua", "cocos/scripting/lua-bindings/auto/lua_cocos2dx_auto.cpp", "cocos/scripting/lua-bindings/auto/lua_cocos2dx_auto.hpp", + "cocos/scripting/lua-bindings/auto/lua_cocos2dx_controller_auto.cpp", + "cocos/scripting/lua-bindings/auto/lua_cocos2dx_controller_auto.hpp", "cocos/scripting/lua-bindings/auto/lua_cocos2dx_experimental_video_auto.cpp", "cocos/scripting/lua-bindings/auto/lua_cocos2dx_experimental_video_auto.hpp", "cocos/scripting/lua-bindings/auto/lua_cocos2dx_extension_auto.cpp", @@ -3982,6 +3983,8 @@ "cocos/scripting/lua-bindings/manual/Lua_web_socket.h", "cocos/scripting/lua-bindings/manual/lua_cocos2dx_coco_studio_manual.cpp", "cocos/scripting/lua-bindings/manual/lua_cocos2dx_coco_studio_manual.hpp", + "cocos/scripting/lua-bindings/manual/lua_cocos2dx_controller_manual.cpp", + "cocos/scripting/lua-bindings/manual/lua_cocos2dx_controller_manual.hpp", "cocos/scripting/lua-bindings/manual/lua_cocos2dx_deprecated.cpp", "cocos/scripting/lua-bindings/manual/lua_cocos2dx_deprecated.h", "cocos/scripting/lua-bindings/manual/lua_cocos2dx_experimental_video_manual.cpp", @@ -4028,6 +4031,7 @@ "cocos/scripting/lua-bindings/script/Opengl.lua", "cocos/scripting/lua-bindings/script/OpenglConstants.lua", "cocos/scripting/lua-bindings/script/StudioConstants.lua", + "cocos/scripting/lua-bindings/script/bitExtend.lua", "cocos/scripting/lua-bindings/script/experimentalConstants.lua", "cocos/scripting/lua-bindings/script/extern.lua", "cocos/scripting/lua-bindings/script/json.lua", @@ -4413,6 +4417,7 @@ "tools/bindings-generator/tools/win32/cygwin1.dll", "tools/tolua/README.mdown", "tools/tolua/cocos2dx.ini", + "tools/tolua/cocos2dx_controller.ini", "tools/tolua/cocos2dx_experimental_video.ini", "tools/tolua/cocos2dx_extension.ini", "tools/tolua/cocos2dx_physics.ini", diff --git a/templates/cpp-template-default/CMakeLists.txt b/templates/cpp-template-default/CMakeLists.txt index 8a79be8465..cfc1fb578e 100644 --- a/templates/cpp-template-default/CMakeLists.txt +++ b/templates/cpp-template-default/CMakeLists.txt @@ -127,6 +127,7 @@ link_directories( elseif(UNIX) #assumed linux include_directories( /usr/local/include/GLFW + /usr/include/GLFW ${COCOS2D_ROOT} ${COCOS2D_ROOT}/cocos ${COCOS2D_ROOT}/cocos/audio/include diff --git a/templates/cpp-template-default/proj.ios_mac/HelloCpp.xcodeproj/project.pbxproj b/templates/cpp-template-default/proj.ios_mac/HelloCpp.xcodeproj/project.pbxproj index 20dc740a62..15fe6d6f6b 100644 --- a/templates/cpp-template-default/proj.ios_mac/HelloCpp.xcodeproj/project.pbxproj +++ b/templates/cpp-template-default/proj.ios_mac/HelloCpp.xcodeproj/project.pbxproj @@ -941,6 +941,7 @@ "$(SRCROOT)/../cocos2d/external", "$(SRCROOT)/../cocos2d/external/chipmunk/include/chipmunk", ); + MACOSX_DEPLOYMENT_TARGET = 10.7; ONLY_ACTIVE_ARCH = YES; PRODUCT_NAME = "$(TARGET_NAME)"; SDKROOT = macosx; @@ -969,6 +970,7 @@ "$(SRCROOT)/../cocos2d/external", "$(SRCROOT)/../cocos2d/external/chipmunk/include/chipmunk", ); + MACOSX_DEPLOYMENT_TARGET = 10.7; OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1"; PRODUCT_NAME = "$(TARGET_NAME)"; SDKROOT = macosx; diff --git a/templates/cpp-template-default/proj.wp8-xaml/AppComponent/src/Cocos2dRenderer.cpp b/templates/cpp-template-default/proj.wp8-xaml/AppComponent/src/Cocos2dRenderer.cpp index 608a524861..4e74c6f298 100644 --- a/templates/cpp-template-default/proj.wp8-xaml/AppComponent/src/Cocos2dRenderer.cpp +++ b/templates/cpp-template-default/proj.wp8-xaml/AppComponent/src/Cocos2dRenderer.cpp @@ -67,8 +67,8 @@ void Cocos2dRenderer::CreateGLResources() cocos2d::ShaderCache::getInstance()->reloadDefaultGLPrograms(); cocos2d::DrawPrimitives::init(); cocos2d::VolatileTextureMgr::reloadAllTextures(); - cocos2d::EventCustom foregroundEvent(EVENT_COME_TO_FOREGROUND); - director->getEventDispatcher()->dispatchEvent(&foregroundEvent); + cocos2d::EventCustom recreatedEvent(EVENT_RENDERER_RECREATED); + director->getEventDispatcher()->dispatchEvent(&recreatedEvent); cocos2d::Application::getInstance()->applicationWillEnterForeground(); director->setGLDefaultValues(); } diff --git a/templates/lua-template-default/frameworks/runtime-src/Classes/AppDelegate.cpp b/templates/lua-template-default/frameworks/runtime-src/Classes/AppDelegate.cpp index b5a2e4f34e..7e99c14a37 100644 --- a/templates/lua-template-default/frameworks/runtime-src/Classes/AppDelegate.cpp +++ b/templates/lua-template-default/frameworks/runtime-src/Classes/AppDelegate.cpp @@ -19,23 +19,6 @@ AppDelegate::~AppDelegate() bool AppDelegate::applicationDidFinishLaunching() { - // initialize director - auto director = Director::getInstance(); - auto glview = director->getOpenGLView(); - if(!glview) { - glview = GLView::createWithRect("HelloLua", Rect(0,0,900,640)); - director->setOpenGLView(glview); - } - - glview->setDesignResolutionSize(480, 320, ResolutionPolicy::NO_BORDER); - - // turn on display FPS - director->setDisplayStats(true); - - // set FPS. the default value is 1.0/60 if you don't call this - director->setAnimationInterval(1.0 / 60); - - auto engine = LuaEngine::getInstance(); ScriptEngineManager::getInstance()->setScriptEngine(engine); if (engine->executeScriptFile("src/main.lua")) { diff --git a/templates/lua-template-default/src/main.lua b/templates/lua-template-default/src/main.lua index fb0ada253a..b33be1cbca 100644 --- a/templates/lua-template-default/src/main.lua +++ b/templates/lua-template-default/src/main.lua @@ -20,8 +20,25 @@ local function main() -- avoid memory leak collectgarbage("setpause", 100) collectgarbage("setstepmul", 5000) - cc.FileUtils:getInstance():addSearchResolutionsOrder("src"); - cc.FileUtils:getInstance():addSearchResolutionsOrder("res"); + + -- initialize director + local director = cc.Director:getInstance() + local glview = director:getOpenGLView() + if nil == glview then + glview = cc.GLView:createWithRect("HelloLua", cc.rect(0,0,900,640)) + director:setOpenGLView(glview) + end + + glview:setDesignResolutionSize(480, 320, cc.ResolutionPolicy.NO_BORDER) + + --turn on display FPS + director:setDisplayStats(true) + + --set FPS. the default value is 1.0/60 if you don't call this + director:setAnimationInterval(1.0 / 60) + + cc.FileUtils:getInstance():addSearchPath("src") + cc.FileUtils:getInstance():addSearchPath("res") local schedulerID = 0 --support debug local targetPlatform = cc.Application:getInstance():getTargetPlatform() diff --git a/templates/lua-template-runtime/src/main.lua b/templates/lua-template-runtime/src/main.lua index e7dc27fb9e..a270259bf4 100644 --- a/templates/lua-template-runtime/src/main.lua +++ b/templates/lua-template-runtime/src/main.lua @@ -21,8 +21,8 @@ local function main() collectgarbage("setpause", 100) collectgarbage("setstepmul", 5000) cc.Director:getInstance():getOpenGLView():setDesignResolutionSize(480, 320, 0) - cc.FileUtils:getInstance():addSearchResolutionsOrder("src"); - cc.FileUtils:getInstance():addSearchResolutionsOrder("res"); + cc.FileUtils:getInstance():addSearchPath("src") + cc.FileUtils:getInstance():addSearchPath("res") local schedulerID = 0 --support debug local targetPlatform = cc.Application:getInstance():getTargetPlatform() diff --git a/tests/cpp-tests/Android.mk b/tests/cpp-tests/Android.mk index 063ef2513f..af90d53565 100644 --- a/tests/cpp-tests/Android.mk +++ b/tests/cpp-tests/Android.mk @@ -63,6 +63,8 @@ Classes/ExtensionsTest/CocoStudioComponentsTest/ProjectileController.cpp \ Classes/ExtensionsTest/CocoStudioComponentsTest/SceneController.cpp \ Classes/UITest/CocoStudioGUITest/CocoStudioGUITest.cpp \ Classes/UITest/CocoStudioGUITest/CocosGUIScene.cpp \ +Classes/UITest/CocoStudioGUITest/CocostudioParserTest/CocostudioParserJsonTest.cpp \ +Classes/UITest/CocoStudioGUITest/CocostudioParserTest.cpp \ Classes/UITest/CocoStudioGUITest/GUIEditorTest.cpp \ Classes/UITest/CocoStudioGUITest/CustomGUIScene.cpp \ Classes/UITest/CocoStudioGUITest/UIScene.cpp \ diff --git a/tests/cpp-tests/CMakeLists.txt b/tests/cpp-tests/CMakeLists.txt index c8e1788bfd..48267493f4 100644 --- a/tests/cpp-tests/CMakeLists.txt +++ b/tests/cpp-tests/CMakeLists.txt @@ -81,6 +81,8 @@ set(SAMPLE_SRC Classes/UITest/CocoStudioGUITest/CustomGUIScene.cpp Classes/UITest/CocoStudioGUITest/UIScene.cpp Classes/UITest/CocoStudioGUITest/UISceneManager.cpp + Classes/UITest/CocoStudioGUITest/CocostudioParserTest/CocostudioParserJsonTest.cpp + Classes/UITest/CocoStudioGUITest/CocostudioParserTest.cpp Classes/UITest/CocoStudioGUITest/UIButtonTest/UIButtonTest.cpp Classes/UITest/CocoStudioGUITest/UIFocusTest/UIFocusTest.cpp Classes/UITest/CocoStudioGUITest/UICheckBoxTest/UICheckBoxTest.cpp diff --git a/tests/cpp-tests/Classes/ExtensionsTest/CocoStudioSceneTest/SceneEditorTest.cpp b/tests/cpp-tests/Classes/ExtensionsTest/CocoStudioSceneTest/SceneEditorTest.cpp index 453b2189f9..0d6931120d 100644 --- a/tests/cpp-tests/Classes/ExtensionsTest/CocoStudioSceneTest/SceneEditorTest.cpp +++ b/tests/cpp-tests/Classes/ExtensionsTest/CocoStudioSceneTest/SceneEditorTest.cpp @@ -820,7 +820,6 @@ void TriggerTest::onEnter() listener->onTouchCancelled = CC_CALLBACK_2(SceneEditorTestLayer::onTouchCancelled, this); dispatcher->addEventListenerWithFixedPriority(listener, 1); _touchListener = listener; - sendEvent(TRIGGEREVENT_ENTERSCENE); } @@ -879,4 +878,5 @@ cocos2d::Node* TriggerTest::createGameScene() } void TriggerTest::defaultPlay() { + sendEvent(TRIGGEREVENT_ENTERSCENE); } diff --git a/tests/cpp-tests/Classes/MenuTest/MenuTest.cpp b/tests/cpp-tests/Classes/MenuTest/MenuTest.cpp index 3fba8b87f5..762fc02754 100644 --- a/tests/cpp-tests/Classes/MenuTest/MenuTest.cpp +++ b/tests/cpp-tests/Classes/MenuTest/MenuTest.cpp @@ -445,7 +445,7 @@ MenuLayer4::MenuLayer4() item3, item4, back, nullptr ); // 9 items. - menu->alignItemsInColumns(2, 2, 2, 2, 1, nullptr); + menu->alignItemsInColumns(2, 2, 2, 2, 1, NULL); addChild( menu ); diff --git a/tests/cpp-tests/Classes/ShaderTest/ShaderTest.cpp b/tests/cpp-tests/Classes/ShaderTest/ShaderTest.cpp index 346a62eef3..b3c4c76249 100644 --- a/tests/cpp-tests/Classes/ShaderTest/ShaderTest.cpp +++ b/tests/cpp-tests/Classes/ShaderTest/ShaderTest.cpp @@ -132,7 +132,7 @@ ShaderNode* ShaderNode::shaderNodeWithVertex(const std::string &vert, const std: bool ShaderNode::initWithVertex(const std::string &vert, const std::string &frag) { #if CC_ENABLE_CACHE_TEXTURE_DATA - auto listener = EventListenerCustom::create(EVENT_COME_TO_FOREGROUND, [this](EventCustom* event){ + auto listener = EventListenerCustom::create(EVENT_RENDERER_RECREATED, [this](EventCustom* event){ this->setGLProgramState(nullptr); loadShaderVertex(_vertFileName, _fragFileName); }); @@ -458,7 +458,7 @@ bool SpriteBlur::initWithTexture(Texture2D* texture, const Rect& rect) if( Sprite::initWithTexture(texture, rect) ) { #if CC_ENABLE_CACHE_TEXTURE_DATA - auto listener = EventListenerCustom::create(EVENT_COME_TO_FOREGROUND, [this](EventCustom* event){ + auto listener = EventListenerCustom::create(EVENT_RENDERER_RECREATED, [this](EventCustom* event){ setGLProgram(nullptr); initGLProgram(); }); diff --git a/tests/cpp-tests/Classes/ShaderTest/ShaderTest2.cpp b/tests/cpp-tests/Classes/ShaderTest/ShaderTest2.cpp index 8667a0294b..780abace13 100644 --- a/tests/cpp-tests/Classes/ShaderTest/ShaderTest2.cpp +++ b/tests/cpp-tests/Classes/ShaderTest/ShaderTest2.cpp @@ -222,7 +222,7 @@ Effect::Effect() : _glprogramstate(nullptr) { #if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) - _backgroundListener = EventListenerCustom::create(EVENT_COME_TO_FOREGROUND, + _backgroundListener = EventListenerCustom::create(EVENT_RENDERER_RECREATED, [this](EventCustom*) { auto glProgram = _glprogramstate->getGLProgram(); diff --git a/tests/cpp-tests/Classes/Sprite3DTest/Sprite3DTest.cpp b/tests/cpp-tests/Classes/Sprite3DTest/Sprite3DTest.cpp index d442d51ab1..6ee4a01e83 100644 --- a/tests/cpp-tests/Classes/Sprite3DTest/Sprite3DTest.cpp +++ b/tests/cpp-tests/Classes/Sprite3DTest/Sprite3DTest.cpp @@ -325,7 +325,7 @@ Effect3DOutline::Effect3DOutline() , _sprite(nullptr) { #if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) - _backToForegroundListener = EventListenerCustom::create(EVENT_COME_TO_FOREGROUND, + _backToForegroundListener = EventListenerCustom::create(EVENT_RENDERER_RECREATED, [this](EventCustom*) { auto glProgram = _glProgramState->getGLProgram(); diff --git a/tests/cpp-tests/Classes/Texture2dTest/Texture2dTest.cpp b/tests/cpp-tests/Classes/Texture2dTest/Texture2dTest.cpp index eb3a4e1e65..ebc10b503e 100644 --- a/tests/cpp-tests/Classes/Texture2dTest/Texture2dTest.cpp +++ b/tests/cpp-tests/Classes/Texture2dTest/Texture2dTest.cpp @@ -1978,36 +1978,20 @@ void TextureMemoryAlloc::updateImage(cocos2d::Ref *sender) switch (tag) { case 0: - file = "Images/background.png"; + file = "Images/test_image.png"; break; -#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) - // android can not pack .gz file into apk file case 1: - file = "Images/fire_rgba8888.pvr"; + file = "Images/test_image_rgba8888.pvr"; break; case 2: - file = "Images/grossini_pvr_rgba8888.pvr"; + file = "Images/test_image_rgb888.pvr"; break; case 3: - file = "Images/grossini_pvr_rgba4444.pvr"; + file = "Images/test_image_rgba4444.pvr"; break; case 4: file = "Images/test_image_a8.pvr"; break; -#else - case 1: - file = "Images/test_image_rgba4444.pvr.gz"; - break; - case 2: - file = "Images/test_image_rgba4444.pvr.gz"; - break; - case 3: - file = "Images/test_image_rgba4444.pvr.gz"; - break; - case 4: - file = "Images/test_image_rgba4444.pvr.gz"; - break; -#endif } _background = Sprite::create(file.c_str()); diff --git a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CocoStudioGUITest.cpp b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CocoStudioGUITest.cpp index 86e911a64a..c6e0083a63 100644 --- a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CocoStudioGUITest.cpp +++ b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CocoStudioGUITest.cpp @@ -7,6 +7,7 @@ #include "CustomGUIScene.h" #include "controller.h" #include "cocostudio/CocoStudio.h" +#include "CocostudioParserTest.h" enum { @@ -48,6 +49,15 @@ g_guisTests[] = scene->release(); } }, + { + "Cocostudio Parser Test", + [](Ref* sender) + { + CocostudioParserTestScene* scene = new CocostudioParserTestScene(); + scene->runThisTest(); + scene->release(); + } + }, }; static const int g_maxTests = sizeof(g_guisTests) / sizeof(g_guisTests[0]); diff --git a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CocosGUIScene.cpp b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CocosGUIScene.cpp index e413761014..7f56938d5e 100644 --- a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CocosGUIScene.cpp +++ b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CocosGUIScene.cpp @@ -147,7 +147,7 @@ g_guisTests[] = UISceneManager* sceneManager = UISceneManager::sharedUISceneManager(); sceneManager->setCurrentUISceneId(kUITextFieldTest); sceneManager->setMinUISceneId(kUITextFieldTest); - sceneManager->setMaxUISceneId(kUITextFieldTest_LineWrap); + sceneManager->setMaxUISceneId(kUITextFieldTest_TrueTypeFont); Scene* scene = sceneManager->currentUIScene(); Director::getInstance()->replaceScene(scene); } diff --git a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CocosGUIScene.h b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CocosGUIScene.h index c8dd312d8e..543ff8e52a 100644 --- a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CocosGUIScene.h +++ b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CocosGUIScene.h @@ -56,28 +56,5 @@ public: void BackCallback(Ref* pSender); }; -/* -class CocosGUITestScene : public TestScene -{ -public: - CocosGUITestScene(bool portrait = false); - virtual ~CocosGUITestScene(); - virtual void runThisTest(); - - // The CallBack for back to the main menu scene - virtual void MainMenuCallback(Ref* sender); - - void load(Ref* pSender, int count); - void loadTextureCallBack(Ref *obj); - - void menuCallback(Ref* pSender); - - UILayer* _ul; - - LabelTTF* _label; - - Menu* _itemMenu; -}; - */ #endif /* defined(__TestCpp__CocosGUIScene__) */ diff --git a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CocostudioParserTest.cpp b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CocostudioParserTest.cpp new file mode 100644 index 0000000000..7b600324aa --- /dev/null +++ b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CocostudioParserTest.cpp @@ -0,0 +1,155 @@ +/**************************************************************************** + Copyright (c) 2013-2014 Chukong Technologies Inc. + + http://www.cocos2d-x.org + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + ****************************************************************************/ + +#include "CocostudioParserTest.h" + +#include "CocoStudioGUITest.h" +#include "CocostudioParserTest/CocostudioParserJsonTest.h" + +enum +{ + LINE_SPACE = 40, + kItemTagBasic = 1000, +}; + +static struct +{ + const char *name; + std::function callback; +} +g_guisTests[] = +{ + { + "cocostudio 1.3", + [](Ref* sender) + { + CocostudioParserJsonScene* pScene = new CocostudioParserJsonScene("cocosui/UIEditorTest/cocostudio1_3/CocostudioV1_3_1.ExportJson"); + pScene->runThisTest(); + pScene->release(); + } + }, + { + "cocostudio 1.4", + [](Ref* sender) + { + CocostudioParserJsonScene* pScene = new CocostudioParserJsonScene("cocosui/UIEditorTest/cocostudio1_4/Cocostudio1_4_1.ExportJson"); + pScene->runThisTest(); + pScene->release(); + } + }, + { + "cocostudio 1.5", + [](Ref* sender) + { + CocostudioParserJsonScene* pScene = new CocostudioParserJsonScene("cocosui/UIEditorTest/cocostudio1_5/Cocostudio1_5_1.ExportJson"); + pScene->runThisTest(); + pScene->release(); + } + }, + +}; + +static const int g_maxTests = sizeof(g_guisTests) / sizeof(g_guisTests[0]); + +//////////////////////////////////////////////////////// +// +// CocostudioParserTestMainLayer +// +//////////////////////////////////////////////////////// + +static Vec2 _curPos = Vec2::ZERO; + + +void CocostudioParserTestMainLayer::onEnter() +{ + Layer::onEnter(); + + auto s = Director::getInstance()->getWinSize(); + + _itemMenu = Menu::create(); + _itemMenu->setPosition( _curPos ); + MenuItemFont::setFontName("fonts/arial.ttf"); + MenuItemFont::setFontSize(24); + for (int i = 0; i < g_maxTests; ++i) + { + auto pItem = MenuItemFont::create(g_guisTests[i].name, g_guisTests[i].callback); + // pItem->setPosition(Vec2(s.width / 2, s.height / 2)); + pItem->setPosition(Vec2(s.width / 2, s.height - (i + 1) * LINE_SPACE)); + _itemMenu->addChild(pItem, kItemTagBasic + i); + } + + auto listener = EventListenerTouchAllAtOnce::create(); + listener->onTouchesBegan = CC_CALLBACK_2(CocostudioParserTestMainLayer::onTouchesBegan, this); + listener->onTouchesMoved = CC_CALLBACK_2(CocostudioParserTestMainLayer::onTouchesMoved, this); + + _eventDispatcher->addEventListenerWithSceneGraphPriority(listener, this); + + addChild(_itemMenu); +} + +void CocostudioParserTestMainLayer::onTouchesBegan(const std::vector &touches, cocos2d::Event *event) +{ + auto touch = static_cast(touches[0]); + + _beginPos = touch->getLocation(); +} + + +//////////////////////////////////////////////////////// +// +// CocostudioParserTestScene +// +//////////////////////////////////////////////////////// + +void CocostudioParserTestScene::onEnter() +{ + CCScene::onEnter(); + + auto label = Label::createWithTTF("Back", "fonts/arial.ttf", 20); + //#endif + MenuItemLabel* pMenuItem = MenuItemLabel::create(label, CC_CALLBACK_1(CocostudioParserTestScene::BackCallback, this)); + + Menu* pMenu = Menu::create(pMenuItem, NULL); + + pMenu->setPosition( Vec2::ZERO ); + pMenuItem->setPosition( Vec2( VisibleRect::right().x - 50, VisibleRect::bottom().y + 25) ); + + addChild(pMenu, 1); +} + +void CocostudioParserTestScene::runThisTest() +{ + Layer* pLayer = new CocostudioParserTestMainLayer(); + addChild(pLayer); + pLayer->release(); + + CCDirector::getInstance()->replaceScene(this); +} + +void CocostudioParserTestScene::BackCallback(Ref* pSender) +{ + CocoStudioGUITestScene* pScene = new CocoStudioGUITestScene(); + pScene->runThisTest(); + pScene->release(); +} \ No newline at end of file diff --git a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CocostudioParserTest.h b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CocostudioParserTest.h new file mode 100644 index 0000000000..5563542427 --- /dev/null +++ b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CocostudioParserTest.h @@ -0,0 +1,58 @@ +/**************************************************************************** + Copyright (c) 2013-2014 Chukong Technologies Inc. + + http://www.cocos2d-x.org + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + ****************************************************************************/ + +#ifndef __cocos2d_tests__CocostudioParserTest__ +#define __cocos2d_tests__CocostudioParserTest__ + +#include "cocos2d.h" +#include "extensions/cocos-ext.h" +#include "../../testBasic.h" +#include "ui/CocosGUI.h" + +USING_NS_CC; +USING_NS_CC_EXT; +using namespace cocos2d::ui; + +class CocostudioParserTestMainLayer : public Layer +{ +public: + virtual void onEnter(); + void onTouchesBegan(const std::vector& touches, Event *event); + + void touchEvent(Ref* pSender, Widget::TouchEventType type); + +private: + Vec2 _beginPos; + Menu* _itemMenu; +}; + +class CocostudioParserTestScene : public TestScene +{ +public: + virtual void onEnter(); + virtual void runThisTest(); + void BackCallback(Ref* pSender); +}; + +#endif /* defined(__cocos2d_tests__CocostudioParserTest__) */ diff --git a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CocostudioParserTest/CocostudioParserJsonTest.cpp b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CocostudioParserTest/CocostudioParserJsonTest.cpp new file mode 100644 index 0000000000..689b3e1e4f --- /dev/null +++ b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CocostudioParserTest/CocostudioParserJsonTest.cpp @@ -0,0 +1,101 @@ +/**************************************************************************** + Copyright (c) 2013-2014 Chukong Technologies Inc. + + http://www.cocos2d-x.org + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + ****************************************************************************/ + +#include "CocostudioParserJsonTest.h" +#include "cocostudio/CCSGUIReader.h" +#include "ui/CocosGUI.h" +#include "../CocostudioParserTest.h" +#include "../CustomWidget/CustomImageView.h" +#include "../CustomWidget/CustomImageViewReader.h" +#include "../CustomWidget/CustomParticleWidgetReader.h" +#include "../CustomWidget/CustomParticleWidget.h" + + +USING_NS_CC; +using namespace cocostudio; +using namespace cocos2d::ui; + +// CustomImageLayer +CocostudioParserJsonLayer::CocostudioParserJsonLayer(std::string jsonFile) +{ + _jsonFile = jsonFile; +} + +void CocostudioParserJsonLayer::onEnter() +{ + Layer::onEnter(); + + GUIReader* guiReader = GUIReader::getInstance(); + guiReader->registerTypeAndCallBack("CustomImageView", + &CustomImageView::createInstance, + CustomImageViewReader::getInstance(), + parseselector(CustomImageViewReader::setProperties)); + guiReader->registerTypeAndCallBack("CustomParticleWidget", + &CustomParticleWidget::createInstance, + CustomParticleWidgetReader::getInstance(), + parseselector(CustomParticleWidgetReader::setProperties)); + + Layout* layout = static_cast(guiReader->widgetFromJsonFile(_jsonFile.c_str())); + layout->setScale(0.5); + addChild(layout); +} + + +// CocostudioParserJsonScene +CocostudioParserJsonScene::CocostudioParserJsonScene(std::string jsonFile) +{ + _jsonFile = jsonFile; +} + +void CocostudioParserJsonScene::onEnter() +{ + CCScene::onEnter(); + + auto label = Label::createWithTTF("Back", "fonts/arial.ttf", 20); + //#endif + MenuItemLabel* pMenuItem = MenuItemLabel::create(label, CC_CALLBACK_1(CocostudioParserJsonScene::BackCallback, this)); + + Menu* pMenu = Menu::create(pMenuItem, NULL); + + pMenu->setPosition( Vec2::ZERO ); + pMenuItem->setPosition( Vec2( VisibleRect::right().x - 50, VisibleRect::bottom().y + 25) ); + + addChild(pMenu, 1); +} + +void CocostudioParserJsonScene::runThisTest() +{ + Layer* pLayer = new CocostudioParserJsonLayer(_jsonFile); + addChild(pLayer); + pLayer->release(); + + CCDirector::getInstance()->replaceScene(this); +} + +void CocostudioParserJsonScene::BackCallback(Ref* pSender) +{ + CocostudioParserTestScene* pScene = new CocostudioParserTestScene(); + pScene->runThisTest(); + pScene->release(); +} \ No newline at end of file diff --git a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CocostudioParserTest/CocostudioParserJsonTest.h b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CocostudioParserTest/CocostudioParserJsonTest.h new file mode 100644 index 0000000000..4606d0ada9 --- /dev/null +++ b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CocostudioParserTest/CocostudioParserJsonTest.h @@ -0,0 +1,53 @@ +/**************************************************************************** + Copyright (c) 2013-2014 Chukong Technologies Inc. + + http://www.cocos2d-x.org + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + ****************************************************************************/ + +#ifndef __cocos2d_tests__CocostudioParserJsonTest__ +#define __cocos2d_tests__CocostudioParserJsonTest__ + +#include "cocos2d.h" +#include "../../../testBasic.h" + +class CocostudioParserJsonLayer : public cocos2d::Layer +{ +public: + CocostudioParserJsonLayer(std::string jsonFile); + ~CocostudioParserJsonLayer(){} + virtual void onEnter(); +private: + std::string _jsonFile; +}; + +class CocostudioParserJsonScene : public TestScene +{ +public: + CocostudioParserJsonScene(std::string jsonFile); + ~CocostudioParserJsonScene(){} + virtual void onEnter(); + virtual void runThisTest(); + void BackCallback(cocos2d::Ref* pSender); +private: + std::string _jsonFile; +}; + +#endif /* defined(__cocos2d_tests__CocostudioParserJsonTest__) */ diff --git a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CustomWidget/CustomImageViewReader.cpp b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CustomWidget/CustomImageViewReader.cpp index b2d9e6586e..c5067b7a0e 100644 --- a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CustomWidget/CustomImageViewReader.cpp +++ b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CustomWidget/CustomImageViewReader.cpp @@ -34,7 +34,9 @@ void CustomImageViewReader::setProperties(const std::string& classType, cocos2d: CustomImageView* custom = static_cast(widget); const char* StringTest = DICTOOL->getStringValue_json(customOptions, "StringTest"); - custom->setText(StringTest); + if (StringTest) { + custom->setText(StringTest); + } } diff --git a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CustomWidget/CustomParticleWidget.cpp b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CustomWidget/CustomParticleWidget.cpp index 0faa26e259..43ec7bcc2d 100644 --- a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CustomWidget/CustomParticleWidget.cpp +++ b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CustomWidget/CustomParticleWidget.cpp @@ -74,8 +74,10 @@ void CustomParticleWidget::setParticlePlist(const char *plist) _emitter->removeFromParent(); _emitter = ParticleSystemQuad::create(plist); } - Node::addChild(_emitter , getLocalZOrder() + 1, -1); - + //Warning!!! don't forget to set the position + addProtectedChild(_emitter , getLocalZOrder() + 1, -1); + this->setParticlePosition(Vec2::ZERO); + _emitterPlist = plist; } diff --git a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CustomWidget/CustomParticleWidgetReader.cpp b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CustomWidget/CustomParticleWidgetReader.cpp index 8105b7669f..09079bdf7a 100644 --- a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CustomWidget/CustomParticleWidgetReader.cpp +++ b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/CustomWidget/CustomParticleWidgetReader.cpp @@ -51,5 +51,6 @@ void CustomParticleWidgetReader::setProperties(const std::string& classType, std::string PlistFilePath = guiReader->getFilePath(); PlistFilePath.append(PlistFile); custom->setParticlePlist(PlistFilePath.c_str()); + } } diff --git a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UILoadingBarTest/UILoadingBarTest_Editor.cpp b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UILoadingBarTest/UILoadingBarTest_Editor.cpp index d651621990..96081b975e 100644 --- a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UILoadingBarTest/UILoadingBarTest_Editor.cpp +++ b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UILoadingBarTest/UILoadingBarTest_Editor.cpp @@ -19,6 +19,7 @@ UILoadingBarTest_Editor::~UILoadingBarTest_Editor() void UILoadingBarTest_Editor::switchLoadMethod(cocos2d::Ref *pSender) { MenuItemToggle *item = (MenuItemToggle*)pSender; + _count = 0; if (item->getSelectedIndex() == 0){ _layout->removeFromParentAndCleanup(true); diff --git a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UISceneManager.cpp b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UISceneManager.cpp index 69ad20c90a..edbecf2bd2 100644 --- a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UISceneManager.cpp +++ b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UISceneManager.cpp @@ -83,6 +83,7 @@ static const char* s_testArray[] = "UITextFieldTest_MaxLength", "UITextFieldTest_Password", "UITextFieldTest_LineWrap", + "UITextFieldTest_TrueTypeFont", "UILayoutTest", "UILayoutTest_Color", "UILayoutTest_Gradient", @@ -159,7 +160,6 @@ Scene *UISceneManager::nextUIScene() { _currentUISceneId = _minUISceneId; } -// _currentUISceneId = (_currentUISceneId + 1) % kUITestMax; return currentUIScene(); } @@ -171,13 +171,6 @@ Scene *UISceneManager::previousUIScene() { _currentUISceneId = _maxUISceneId; } - /* - _currentUISceneId = _currentUISceneId - 1; - if (_currentUISceneId < 0) - { - _currentUISceneId = kUITestMax - 1; - } - */ return currentUIScene(); } @@ -207,22 +200,6 @@ Scene *UISceneManager::currentUIScene() case kUISliderTest_Scale9: return UISliderTest_Scale9::sceneWithTitle(s_testArray[_currentUISceneId]); - /* - case kUIPotentiometerTest: - return UIPotentiometerTest::sceneWithTitle(s_testArray[_currentUISceneId]); - */ - - /* - case kUISwitchTest_Horizontal: - return UISwitchTest_Horizontal::sceneWithTitle(s_testArray[_currentUISceneId]); - - case kUISwitchTest_Vertical: - return UISwitchTest_Vertical::sceneWithTitle(s_testArray[_currentUISceneId]); - - case kUISwitchTest_VerticalAndTitleVertical: - return UISwitchTest_VerticalAndTitleVertical::sceneWithTitle(s_testArray[_currentUISceneId]); - */ - case kUIImageViewTest: return UIImageViewTest::sceneWithTitle(s_testArray[_currentUISceneId]); @@ -241,29 +218,6 @@ Scene *UISceneManager::currentUIScene() case kUILoadingBarTest_Right_Scale9: return UILoadingBarTest_Right_Scale9::sceneWithTitle(s_testArray[_currentUISceneId]); - /* - case kUIProgressTimerTest_Radial: - return UIProgressTimerTest_Radial::sceneWithTitle(s_testArray[_currentUISceneId]); - - case kUIProgressTimerTest_Horizontal: - return UIProgressTimerTest_Horizontal::sceneWithTitle(s_testArray[_currentUISceneId]); - - case kUIProgressTimerTest_Vertical: - return UIProgressTimerTest_Vertical::sceneWithTitle(s_testArray[_currentUISceneId]); - - case kUIProgressTimerTest_RadialMidpointChanged: - return UIProgressTimerTest_RadialMidpointChanged::sceneWithTitle(s_testArray[_currentUISceneId]); - - case kUIProgressTimerTest_BarVarious: - return UIProgressTimerTest_BarVarious::sceneWithTitle(s_testArray[_currentUISceneId]); - - case kUIProgressTimerTest_BarTintAndFade: - return UIProgressTimerTest_BarTintAndFade::sceneWithTitle(s_testArray[_currentUISceneId]); - - case kUIProgressTimerTest_WithSpriteFrame: - return UIProgressTimerTest_WithSpriteFrame::sceneWithTitle(s_testArray[_currentUISceneId]); - */ - case kUITextAtlasTest: return UITextAtlasTest::sceneWithTitle(s_testArray[_currentUISceneId]); @@ -295,7 +249,9 @@ Scene *UISceneManager::currentUIScene() case kUITextFieldTest_LineWrap: return UITextFieldTest_LineWrap::sceneWithTitle(s_testArray[_currentUISceneId]); - + case kUITextFieldTest_TrueTypeFont: + return UITextFieldTest_TrueTypeFont::sceneWithTitle(s_testArray[_currentUISceneId]); + case kUILayoutTest: return UILayoutTest::sceneWithTitle(s_testArray[_currentUISceneId]); @@ -323,11 +279,6 @@ Scene *UISceneManager::currentUIScene() case kUILayoutTest_Layout_Relative_Location: return UILayoutTest_Layout_Relative_Location::sceneWithTitle(s_testArray[_currentUISceneId]); - /* - case kUILayoutTest_Layout_Grid: - return UILayoutTest_Layout_Grid::sceneWithTitle(s_testArray[_currentUISceneId]); - */ - case kUIScrollViewTest_Vertical: return UIScrollViewTest_Vertical::sceneWithTitle(s_testArray[_currentUISceneId]); @@ -353,22 +304,6 @@ Scene *UISceneManager::currentUIScene() case kUIListViewTest_Horizontal: return UIListViewTest_Horizontal::sceneWithTitle(s_testArray[_currentUISceneId]); - /* - case kUIGridViewTest_Mode_Column: - return UIGridViewTest_Mode_Column::sceneWithTitle(s_testArray[_currentUISceneId]); - - case kUIGridViewTest_Mode_Row: - return UIGridViewTest_Mode_Row::sceneWithTitle(s_testArray[_currentUISceneId]); - */ - - /* - case kUIPickerViewTest_Vertical: - return UIPickerViewTest_Vertical::sceneWithTitle(s_testArray[_currentUISceneId]); - - case kUIPickerViewTest_Horizontal: - return UIPickerViewTest_Horizontal::sceneWithTitle(s_testArray[_currentUISceneId]); - */ - case kUIWidgetAddNodeTest: return UIWidgetAddNodeTest::sceneWithTitle(s_testArray[_currentUISceneId]); diff --git a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UISceneManager.h b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UISceneManager.h index 7201d4422d..0dd94ad395 100644 --- a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UISceneManager.h +++ b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UISceneManager.h @@ -72,6 +72,7 @@ enum kUITextFieldTest_MaxLength, kUITextFieldTest_Password, kUITextFieldTest_LineWrap, + kUITextFieldTest_TrueTypeFont, kUILayoutTest, kUILayoutTest_Color, kUILayoutTest_Gradient, diff --git a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UITextFieldTest/UITextFieldTest.cpp b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UITextFieldTest/UITextFieldTest.cpp index 97d56c47b3..22cbebc1b4 100644 --- a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UITextFieldTest/UITextFieldTest.cpp +++ b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UITextFieldTest/UITextFieldTest.cpp @@ -328,3 +328,80 @@ void UITextFieldTest_LineWrap::textFieldEvent(Ref *pSender, TextField::EventType break; } } + +// UITextFieldTest_TrueTypeFont +UITextFieldTest_TrueTypeFont::UITextFieldTest_TrueTypeFont() +: _displayValueLabel(nullptr) +{ + +} + +UITextFieldTest_TrueTypeFont::~UITextFieldTest_TrueTypeFont() +{ +} + +bool UITextFieldTest_TrueTypeFont::init() +{ + if (UIScene::init()) + { + Size widgetSize = _widget->getContentSize(); + + // Add a label in which the textfield events will be displayed + _displayValueLabel = Text::create("True Type Font Test - No Event","fonts/Marker Felt.ttf",32); + _displayValueLabel->setAnchorPoint(Vec2(0.5f, -1.0f)); + _displayValueLabel->setPosition(Vec2(widgetSize.width / 2.0f, widgetSize.height / 2.0f + _displayValueLabel->getContentSize().height * 1.5f)); + _uiLayer->addChild(_displayValueLabel); + + // Add the alert + Text* alert = Text::create("TextField","fonts/Marker Felt.ttf",30); + alert->setPosition(Vec2(widgetSize.width / 2.0f, widgetSize.height / 2.0f - alert->getContentSize().height * 3.075f)); + _uiLayer->addChild(alert); + + // Create the textfield + TextField* textField = TextField::create("input words here","fonts/A Damn Mess.ttf",30); + + textField->setPosition(Vec2(widgetSize.width / 2.0f, widgetSize.height / 2.0f)); + textField->addEventListener(CC_CALLBACK_2(UITextFieldTest_TrueTypeFont::textFieldEvent, this)); + _uiLayer->addChild(textField); + + + return true; + } + return false; +} + +void UITextFieldTest_TrueTypeFont::textFieldEvent(Ref *pSender, TextField::EventType type) +{ + switch (type) + { + case TextField::EventType::ATTACH_WITH_IME: + { + TextField* textField = dynamic_cast(pSender); + Size screenSize = CCDirector::getInstance()->getWinSize(); + textField->runAction(CCMoveTo::create(0.225f, + Vec2(screenSize.width / 2.0f, screenSize.height / 2.0f + textField->getContentSize().height / 2.0f))); + _displayValueLabel->setString(String::createWithFormat("attach with IME")->getCString()); + } + break; + + case TextField::EventType::DETACH_WITH_IME: + { + TextField* textField = dynamic_cast(pSender); + Size screenSize = CCDirector::getInstance()->getWinSize(); + textField->runAction(CCMoveTo::create(0.175f, Vec2(screenSize.width / 2.0f, screenSize.height / 2.0f))); + _displayValueLabel->setString(String::createWithFormat("detach with IME")->getCString()); + } + break; + + case TextField::EventType::INSERT_TEXT: + _displayValueLabel->setString(String::createWithFormat("insert words")->getCString()); + break; + + case TextField::EventType::DELETE_BACKWARD: + _displayValueLabel->setString(String::createWithFormat("delete word")->getCString()); + break; + + default: + break; + } +} diff --git a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UITextFieldTest/UITextFieldTest.h b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UITextFieldTest/UITextFieldTest.h index 0515b51bfb..e44798cb7f 100644 --- a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UITextFieldTest/UITextFieldTest.h +++ b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UITextFieldTest/UITextFieldTest.h @@ -78,4 +78,17 @@ protected: UI_SCENE_CREATE_FUNC(UITextFieldTest_LineWrap) Text* _displayValueLabel; }; + +class UITextFieldTest_TrueTypeFont : public UIScene +{ +public: + UITextFieldTest_TrueTypeFont(); + ~UITextFieldTest_TrueTypeFont(); + bool init(); + void textFieldEvent(Ref* pSender, TextField::EventType type); + +protected: + UI_SCENE_CREATE_FUNC(UITextFieldTest_TrueTypeFont) + Text* _displayValueLabel; +}; #endif /* defined(__TestCpp__UITextFieldTest__) */ diff --git a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UITextTest/UITextTest.cpp b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UITextTest/UITextTest.cpp index 98dcbfba44..3496c455b2 100644 --- a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UITextTest/UITextTest.cpp +++ b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UITextTest/UITextTest.cpp @@ -40,10 +40,25 @@ bool UITextTest_LineWrap::init() _uiLayer->addChild(alert); // Create the line wrap - Text* text = Text::create("Text can line wrap","AmericanTypewriter",32); + Text* text = Text::create("TextArea Widget can line wrap","AmericanTypewriter",32); text->ignoreContentAdaptWithSize(false); text->setContentSize(Size(280, 150)); text->setTextHorizontalAlignment(TextHAlignment::CENTER); + text->setTouchScaleChangeEnabled(true); + text->setTouchEnabled(true); + text->addTouchEventListener([=](Ref* sender, Widget::TouchEventType type) + { + if (type == Widget::TouchEventType::ENDED) + { + if ((int)text->getContentSize().width == 280) + { + text->setContentSize(Size(380,100)); + }else + { + text->setContentSize(Size(280, 150)); + } + } + }); text->setPosition(Vec2(widgetSize.width / 2.0f, widgetSize.height / 2.0f - text->getContentSize().height / 8.0f)); _uiLayer->addChild(text); diff --git a/tests/cpp-tests/Classes/controller.cpp b/tests/cpp-tests/Classes/controller.cpp index b11d648d94..e02aed5089 100644 --- a/tests/cpp-tests/Classes/controller.cpp +++ b/tests/cpp-tests/Classes/controller.cpp @@ -34,7 +34,6 @@ Controller g_aTestNames[] = { // TESTS MUST BE ORDERED ALPHABETICALLY // violators will be prosecuted // - { "3D: Sprite3D", [](){ return new Sprite3DTestScene(); }}, { "ActionManager", [](){return new ActionManagerTestScene(); } }, { "Actions - Basic", [](){ return new ActionsTestScene(); } }, { "Actions - Ease", [](){return new ActionsEaseTestScene();} }, @@ -51,15 +50,7 @@ Controller g_aTestNames[] = { #endif #if (CC_TARGET_PLATFORM != CC_PLATFORM_WINRT) -#if (CC_TARGET_PLATFORM != CC_PLATFORM_EMSCRIPTEN) -#if (CC_TARGET_PLATFORM != CC_PLATFORM_NACL) -#if (CC_TARGET_PLATFORM != CC_PLATFORM_MARMALADE) -#if (CC_TARGET_PLATFORM != CC_PLATFORM_BADA) { "Curl", []() { return new CurlTestScene(); } }, -#endif -#endif -#endif -#endif #endif { "Current Language", []() { return new CurrentLanguageTestScene(); } }, { "EventDispatcher", []() { return new EventDispatcherTestScene(); } }, @@ -84,6 +75,7 @@ Controller g_aTestNames[] = { { "Node: Scene", [](){return new SceneTestScene();} }, { "Node: Spine", []() { return new SpineTestScene(); } }, { "Node: Sprite", [](){return new SpriteTestScene(); } }, + { "Node: Sprite3D", [](){ return new Sprite3DTestScene(); }}, { "Node: TileMap", [](){return new TileMapTestScene(); } }, { "Node: FastTileMap", [](){return new TileMapTestSceneNew(); } }, { "Node: Text Input", [](){return new TextInputTestScene(); } }, diff --git a/tests/cpp-tests/proj.win32/cpp-tests.vcxproj b/tests/cpp-tests/proj.win32/cpp-tests.vcxproj index 6e59447926..b842c9b028 100644 --- a/tests/cpp-tests/proj.win32/cpp-tests.vcxproj +++ b/tests/cpp-tests/proj.win32/cpp-tests.vcxproj @@ -187,6 +187,8 @@ + + @@ -370,6 +372,8 @@ + + diff --git a/tests/cpp-tests/proj.win32/cpp-tests.vcxproj.filters b/tests/cpp-tests/proj.win32/cpp-tests.vcxproj.filters index 399fe8f162..3404238b21 100644 --- a/tests/cpp-tests/proj.win32/cpp-tests.vcxproj.filters +++ b/tests/cpp-tests/proj.win32/cpp-tests.vcxproj.filters @@ -849,6 +849,12 @@ Classes\TileMapTest + + Classes\UITest\CocostudioGUISceneTest + + + Classes\UITest\CocostudioGUISceneTest + @@ -1568,5 +1574,11 @@ Classes\TileMapTest + + Classes\UITest\CocostudioGUISceneTest + + + Classes\UITest\CocostudioGUISceneTest + \ 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 f81bb0d720..f360d9d55e 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 @@ -233,6 +233,8 @@ + + @@ -431,6 +433,8 @@ + + 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 7f73aa616c..7cc4e29a0a 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 @@ -849,6 +849,12 @@ Classes\TileMapTest + + Classes\UITest\CocosStudioGUITest + + + Classes\UITest\CocosStudioGUITest + @@ -1572,6 +1578,12 @@ Classes\TileMapTest + + Classes\UITest\CocosStudioGUITest + + + Classes\UITest\CocosStudioGUITest + diff --git a/tests/game-controller-test/proj.android/src/org/cocos2dx/game_controller_test/AppActivity.java b/tests/game-controller-test/proj.android/src/org/cocos2dx/game_controller_test/AppActivity.java index c4a4b68f7d..4aa184e14c 100644 --- a/tests/game-controller-test/proj.android/src/org/cocos2dx/game_controller_test/AppActivity.java +++ b/tests/game-controller-test/proj.android/src/org/cocos2dx/game_controller_test/AppActivity.java @@ -37,8 +37,8 @@ public class AppActivity extends GameControllerActivity { //The standard controller,without doing anything special. e.g: Amazon Fire TV //Manually specify an adapter. - //this.connectController(DRIVERTYPE_NIBIRU); - //this.connectController(DRIVERTYPE_MOGA); - //this.connectController(DRIVERTYPE_OUYA); + this.connectController(DRIVERTYPE_NIBIRU); + this.connectController(DRIVERTYPE_MOGA); + this.connectController(DRIVERTYPE_OUYA); } } diff --git a/tests/lua-empty-test/project/Classes/AppDelegate.cpp b/tests/lua-empty-test/project/Classes/AppDelegate.cpp index ce16e51490..8b650561ab 100644 --- a/tests/lua-empty-test/project/Classes/AppDelegate.cpp +++ b/tests/lua-empty-test/project/Classes/AppDelegate.cpp @@ -22,24 +22,6 @@ AppDelegate::~AppDelegate() bool AppDelegate::applicationDidFinishLaunching() { - // initialize director - auto director = Director::getInstance(); - auto glview = director->getOpenGLView(); - if(!glview) { - glview = GLView::create("Lua Empty Test"); - director->setOpenGLView(glview); - } - - director->setOpenGLView(glview); - - glview->setDesignResolutionSize(480, 320, ResolutionPolicy::NO_BORDER); - - // turn on display FPS - director->setDisplayStats(true); - - // set FPS. the default value is 1.0/60 if you don't call this - director->setAnimationInterval(1.0 / 60); - // register lua engine LuaEngine* engine = LuaEngine::getInstance(); ScriptEngineManager::getInstance()->setScriptEngine(engine); diff --git a/tests/lua-empty-test/src/hello.lua b/tests/lua-empty-test/src/hello.lua index df80dd04da..d9ab1b2a8d 100644 --- a/tests/lua-empty-test/src/hello.lua +++ b/tests/lua-empty-test/src/hello.lua @@ -14,11 +14,32 @@ function __G__TRACKBACK__(msg) cclog("----------------------------------------") end +local function initGLView() + local director = cc.Director:getInstance() + local glView = director:getOpenGLView() + if nil == glView then + glView = cc.GLView:create("Lua Empty Test") + director:setOpenGLView(glView) + end + + director:setOpenGLView(glView) + + glView:setDesignResolutionSize(480, 320, cc.ResolutionPolicy.NO_BORDER) + + --turn on display FPS + director:setDisplayStats(true) + + --set FPS. the default value is 1.0/60 if you don't call this + director:setAnimationInterval(1.0 / 60) +end + local function main() -- avoid memory leak collectgarbage("setpause", 100) collectgarbage("setstepmul", 5000) + initGLView() + --support debug,when used on ios7.1 64bit,these codes should be commented local targetPlatform = cc.Application:getInstance():getTargetPlatform() if (cc.PLATFORM_OS_IPHONE == targetPlatform) or (cc.PLATFORM_OS_IPAD == targetPlatform) or @@ -58,7 +79,7 @@ local function main() ]]-- local animation = cc.Animation:createWithSpriteFrames({frame0,frame1}, 0.5) - local animate = cc.Animate:create(animation); + local animate = cc.Animate:create(animation) spriteDog:runAction(cc.RepeatForever:create(animate)) -- moving dog at every frame @@ -101,7 +122,7 @@ local function main() local frameCrop = cc.SpriteFrame:create("res/crop.png", cc.rect(0, 0, 105, 95)) for i = 0, 3 do for j = 0, 1 do - local spriteCrop = cc.Sprite:createWithSpriteFrame(frameCrop); + local spriteCrop = cc.Sprite:createWithSpriteFrame(frameCrop) spriteCrop:setPosition(10 + 200 + j * 180 - i % 2 * 90, 30 + 10 + i * 95 / 2) layerFarm:addChild(spriteCrop) end diff --git a/tests/lua-game-controller-test/.cocos-project.json b/tests/lua-game-controller-test/.cocos-project.json new file mode 100644 index 0000000000..570b02f99b --- /dev/null +++ b/tests/lua-game-controller-test/.cocos-project.json @@ -0,0 +1,12 @@ +{ + "ios_cfg": { + "project_path": "../../build", + "project_file": "cocos2d_tests.xcodeproj", + "target_name": "lua-game-controller-test iOS" + }, + "project_type": "lua", + "has_native": true, + "android_cfg": { + "project_path": "project/proj.android" + } +} diff --git a/tests/lua-game-controller-test/project/Classes/AppDelegate.cpp b/tests/lua-game-controller-test/project/Classes/AppDelegate.cpp new file mode 100644 index 0000000000..ca92bd541c --- /dev/null +++ b/tests/lua-game-controller-test/project/Classes/AppDelegate.cpp @@ -0,0 +1,59 @@ +#include "cocos2d.h" +#include "AppDelegate.h" +#include "audio/include/SimpleAudioEngine.h" +#include "base/CCScriptSupport.h" +#include "CCLuaEngine.h" +#include "scripting/lua-bindings/auto/lua_cocos2dx_controller_auto.hpp" +#include "scripting/lua-bindings/manual/lua_cocos2dx_controller_manual.hpp" + +USING_NS_CC; +using namespace CocosDenshion; + +AppDelegate::AppDelegate() +{ + // fixed me + //_CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_DF|_CRTDBG_LEAK_CHECK_DF); +} + +AppDelegate::~AppDelegate() +{ + // end simple audio engine here, or it may crashed on win32 + SimpleAudioEngine::getInstance()->end(); + //CCScriptEngineManager::destroyInstance(); +} + +bool AppDelegate::applicationDidFinishLaunching() +{ + LuaEngine* engine = LuaEngine::getInstance(); + ScriptEngineManager::getInstance()->setScriptEngine(engine); + LuaStack* stack = engine->getLuaStack(); + lua_State* L = stack->getLuaState(); + +#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID ||CC_TARGET_PLATFORM == CC_PLATFORM_IOS ) + lua_getglobal(L, "_G"); + if (lua_istable(L,-1))//stack:...,_G, + { + register_all_cocos2dx_controller(L); + register_all_cocos2dx_controller_manual(L); + } + lua_pop(L, 1);//statck:... +#endif + + engine->executeString("require 'src/main.lua'"); + + return true; +} + +// This function will be called when the app is inactive. When comes a phone call,it's be invoked too +void AppDelegate::applicationDidEnterBackground() +{ + Director::getInstance()->stopAnimation(); + SimpleAudioEngine::getInstance()->pauseBackgroundMusic(); +} + +// this function will be called when the app is active again +void AppDelegate::applicationWillEnterForeground() +{ + Director::getInstance()->startAnimation(); + SimpleAudioEngine::getInstance()->resumeBackgroundMusic(); +} diff --git a/tests/lua-game-controller-test/project/Classes/AppDelegate.h b/tests/lua-game-controller-test/project/Classes/AppDelegate.h new file mode 100644 index 0000000000..b708f4bdca --- /dev/null +++ b/tests/lua-game-controller-test/project/Classes/AppDelegate.h @@ -0,0 +1,38 @@ +#ifndef _APP_DELEGATE_H_ +#define _APP_DELEGATE_H_ + +#include "CCApplication.h" + +/** +@brief The cocos2d Application. + +The reason for implement as private inheritance is to hide some interface call by Director. +*/ +class AppDelegate : private cocos2d::Application +{ +public: + AppDelegate(); + virtual ~AppDelegate(); + + /** + @brief Implement Director and Scene init code here. + @return true Initialize success, app continue. + @return false Initialize failed, app terminate. + */ + virtual bool applicationDidFinishLaunching(); + + /** + @brief The function be called when the application enter background + @param the pointer of the application + */ + virtual void applicationDidEnterBackground(); + + /** + @brief The function be called when the application enter foreground + @param the pointer of the application + */ + virtual void applicationWillEnterForeground(); +}; + +#endif // _APP_DELEGATE_H_ + diff --git a/tests/lua-game-controller-test/project/proj.android/.classpath b/tests/lua-game-controller-test/project/proj.android/.classpath new file mode 100644 index 0000000000..51769745b2 --- /dev/null +++ b/tests/lua-game-controller-test/project/proj.android/.classpath @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/tests/lua-game-controller-test/project/proj.android/.project b/tests/lua-game-controller-test/project/proj.android/.project new file mode 100644 index 0000000000..e9471a8678 --- /dev/null +++ b/tests/lua-game-controller-test/project/proj.android/.project @@ -0,0 +1,43 @@ + + + LuaGameControllerTest + + + + + + com.android.ide.eclipse.adt.ResourceManagerBuilder + + + + + com.android.ide.eclipse.adt.PreCompilerBuilder + + + + + org.eclipse.jdt.core.javabuilder + + + + + com.android.ide.eclipse.adt.ApkBuilder + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + com.android.ide.eclipse.adt.AndroidNature + org.eclipse.jdt.core.javanature + org.eclipse.cdt.core.cnature + org.eclipse.cdt.core.ccnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/tests/lua-game-controller-test/project/proj.android/AndroidManifest.xml b/tests/lua-game-controller-test/project/proj.android/AndroidManifest.xml new file mode 100644 index 0000000000..6d44373625 --- /dev/null +++ b/tests/lua-game-controller-test/project/proj.android/AndroidManifest.xml @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/lua-game-controller-test/project/proj.android/ant.properties b/tests/lua-game-controller-test/project/proj.android/ant.properties new file mode 100644 index 0000000000..b0971e891e --- /dev/null +++ b/tests/lua-game-controller-test/project/proj.android/ant.properties @@ -0,0 +1,17 @@ +# This file is used to override default values used by the Ant build system. +# +# This file must be checked into Version Control Systems, as it is +# integral to the build system of your project. + +# This file is only used by the Ant script. + +# You can use this to override default values such as +# 'source.dir' for the location of your java source folder and +# 'out.dir' for the location of your output folder. + +# You can also use it define how the release builds are signed by declaring +# the following properties: +# 'key.store' for the location of your keystore and +# 'key.alias' for the name of the key to use. +# The password will be asked during the build when you use the 'release' target. + diff --git a/tests/lua-game-controller-test/project/proj.android/build-cfg.json b/tests/lua-game-controller-test/project/proj.android/build-cfg.json new file mode 100644 index 0000000000..3c8431066f --- /dev/null +++ b/tests/lua-game-controller-test/project/proj.android/build-cfg.json @@ -0,0 +1,35 @@ +{ + "ndk_module_path" :[ + "../../../..", + "../../../../cocos", + "../../../../external" + ], + "copy_resources": [ + { + "from": "../../src", + "to": "src" + }, + { + "from": "../../res", + "to": "res" + }, + { + "from": "../../../../cocos/scripting/lua-bindings/script", + "to": "" + }, + { + "from": "../../../../external/lua/luasocket", + "to": "", + "include": [ + "*.lua" + ] + }, + { + "from": "../../../game-controller-test/Resources", + "to": "res", + "exclude": [ + "*.gz" + ] + } + ] +} diff --git a/tests/lua-game-controller-test/project/proj.android/build.xml b/tests/lua-game-controller-test/project/proj.android/build.xml new file mode 100644 index 0000000000..365cbd97bc --- /dev/null +++ b/tests/lua-game-controller-test/project/proj.android/build.xml @@ -0,0 +1,83 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/lua-game-controller-test/project/proj.android/jni/Android.mk b/tests/lua-game-controller-test/project/proj.android/jni/Android.mk new file mode 100644 index 0000000000..005ca87198 --- /dev/null +++ b/tests/lua-game-controller-test/project/proj.android/jni/Android.mk @@ -0,0 +1,25 @@ +LOCAL_PATH := $(call my-dir) + +include $(CLEAR_VARS) + +LOCAL_MODULE := lua_game_controller_test_shared + +LOCAL_MODULE_FILENAME := liblua_game_controller + +LOCAL_SRC_FILES := main.cpp \ + ../../Classes/AppDelegate.cpp \ + ../../../../../cocos/scripting/lua-bindings/auto/lua_cocos2dx_controller_auto.cpp \ + ../../../../../cocos/scripting/lua-bindings/manual/lua_cocos2dx_controller_manual.cpp \ + +LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes \ + $(LOCAL_PATH)/../../../../../external/lua/tolua \ + $(LOCAL_PATH)/../../../../../cocos/scripting/lua-bindings/auto \ + $(LOCAL_PATH)/../../../../../cocos/scripting/lua-bindings/manual \ + $(LOCAL_PATH)/../../../../../cocos/base + +LOCAL_WHOLE_STATIC_LIBRARIES := cocos_lua_static + + +include $(BUILD_SHARED_LIBRARY) + +$(call import-module,scripting/lua-bindings) diff --git a/tests/lua-game-controller-test/project/proj.android/jni/Application.mk b/tests/lua-game-controller-test/project/proj.android/jni/Application.mk new file mode 100644 index 0000000000..362124d303 --- /dev/null +++ b/tests/lua-game-controller-test/project/proj.android/jni/Application.mk @@ -0,0 +1,15 @@ +APP_STL := c++_static +NDK_TOOLCHAIN_VERSION=clang + +APP_CPPFLAGS := -frtti -DCC_ENABLE_CHIPMUNK_INTEGRATION=1 -std=c++11 -fsigned-char +APP_LDFLAGS := -latomic + + +APP_DEBUG := $(strip $(NDK_DEBUG)) +ifeq ($(APP_DEBUG),1) + APP_CPPFLAGS += -DCOCOS2D_DEBUG=1 + APP_OPTIM := debug +else + APP_CPPFLAGS += -DNDEBUG + APP_OPTIM := release +endif diff --git a/tests/lua-game-controller-test/project/proj.android/jni/main.cpp b/tests/lua-game-controller-test/project/proj.android/jni/main.cpp new file mode 100644 index 0000000000..5199d12ab4 --- /dev/null +++ b/tests/lua-game-controller-test/project/proj.android/jni/main.cpp @@ -0,0 +1,15 @@ +#include "AppDelegate.h" +#include "cocos2d.h" +#include "platform/android/jni/JniHelper.h" +#include +#include + +#define LOG_TAG "main" +#define LOGD(...) __android_log_print(ANDROID_LOG_DEBUG,LOG_TAG,__VA_ARGS__) + +using namespace cocos2d; + +void cocos_android_app_init (JNIEnv* env, jobject thiz) { + LOGD("cocos_android_app_init"); + AppDelegate *pAppDelegate = new AppDelegate(); +} diff --git a/tests/lua-game-controller-test/project/proj.android/proguard-project.txt b/tests/lua-game-controller-test/project/proj.android/proguard-project.txt new file mode 100644 index 0000000000..f2fe1559a2 --- /dev/null +++ b/tests/lua-game-controller-test/project/proj.android/proguard-project.txt @@ -0,0 +1,20 @@ +# To enable ProGuard in your project, edit project.properties +# to define the proguard.config property as described in that file. +# +# Add project specific ProGuard rules here. +# By default, the flags in this file are appended to flags specified +# in ${sdk.dir}/tools/proguard/proguard-android.txt +# You can edit the include path and order by changing the ProGuard +# include property in project.properties. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# Add any project specific keep options here: + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} diff --git a/tests/lua-game-controller-test/project/proj.android/project.properties b/tests/lua-game-controller-test/project/proj.android/project.properties new file mode 100644 index 0000000000..73aaa86542 --- /dev/null +++ b/tests/lua-game-controller-test/project/proj.android/project.properties @@ -0,0 +1,13 @@ +# This file is automatically generated by Android Tools. +# Do not modify this file -- YOUR CHANGES WILL BE ERASED! +# +# This file must be checked in Version Control Systems. +# +# To customize properties used by the Ant build system use, +# "ant.properties", and override values to adapt the script to your +# project structure. + +# Project target. +target=android-16 + +android.library.reference.1=../../../../cocos/platform/android/ControllerManualAdapter diff --git a/tests/lua-game-controller-test/project/proj.android/res/drawable-hdpi/icon.png b/tests/lua-game-controller-test/project/proj.android/res/drawable-hdpi/icon.png new file mode 100644 index 0000000000..8aa4767c2f Binary files /dev/null and b/tests/lua-game-controller-test/project/proj.android/res/drawable-hdpi/icon.png differ diff --git a/tests/lua-game-controller-test/project/proj.android/res/drawable-ldpi/icon.png b/tests/lua-game-controller-test/project/proj.android/res/drawable-ldpi/icon.png new file mode 100644 index 0000000000..17ce11a085 Binary files /dev/null and b/tests/lua-game-controller-test/project/proj.android/res/drawable-ldpi/icon.png differ diff --git a/tests/lua-game-controller-test/project/proj.android/res/drawable-mdpi/icon.png b/tests/lua-game-controller-test/project/proj.android/res/drawable-mdpi/icon.png new file mode 100644 index 0000000000..3780aac46c Binary files /dev/null and b/tests/lua-game-controller-test/project/proj.android/res/drawable-mdpi/icon.png differ diff --git a/tests/lua-game-controller-test/project/proj.android/res/values/strings.xml b/tests/lua-game-controller-test/project/proj.android/res/values/strings.xml new file mode 100644 index 0000000000..1bc7340a07 --- /dev/null +++ b/tests/lua-game-controller-test/project/proj.android/res/values/strings.xml @@ -0,0 +1,4 @@ + + + LuaGameControllerTest + diff --git a/tests/lua-game-controller-test/project/proj.android/src/org/cocos2dx/LuaGameControllerTest/AppActivity.java b/tests/lua-game-controller-test/project/proj.android/src/org/cocos2dx/LuaGameControllerTest/AppActivity.java new file mode 100644 index 0000000000..475cb39a5b --- /dev/null +++ b/tests/lua-game-controller-test/project/proj.android/src/org/cocos2dx/LuaGameControllerTest/AppActivity.java @@ -0,0 +1,20 @@ +package org.cocos2dx.LuaGameControllerTest; + +import org.cocos2dx.lib.GameControllerActivity; + +import android.os.Bundle; + +public class AppActivity extends GameControllerActivity { + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + + //The standard controller,without doing anything special. e.g: Amazon Fire TV + + //Manually specify an adapter. + this.connectController(DRIVERTYPE_NIBIRU); + //this.connectController(DRIVERTYPE_MOGA); + //this.connectController(DRIVERTYPE_OUYA); + } +} diff --git a/tests/lua-game-controller-test/project/proj.ios/AppController.h b/tests/lua-game-controller-test/project/proj.ios/AppController.h new file mode 100644 index 0000000000..3d51064ca0 --- /dev/null +++ b/tests/lua-game-controller-test/project/proj.ios/AppController.h @@ -0,0 +1,33 @@ +/**************************************************************************** + Copyright (c) 2010 cocos2d-x.org + + http://www.cocos2d-x.org + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + ****************************************************************************/ + +@class RootViewController; + +@interface AppController : NSObject { + UIWindow *window; + RootViewController *viewController; +} + +@end + diff --git a/tests/lua-game-controller-test/project/proj.ios/AppController.mm b/tests/lua-game-controller-test/project/proj.ios/AppController.mm new file mode 100644 index 0000000000..9f38038aed --- /dev/null +++ b/tests/lua-game-controller-test/project/proj.ios/AppController.mm @@ -0,0 +1,139 @@ +/**************************************************************************** + Copyright (c) 2010 cocos2d-x.org + + http://www.cocos2d-x.org + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + ****************************************************************************/ +#import +#import "AppController.h" +#import "cocos2d.h" +#import "CCEAGLView.h" +#import "AppDelegate.h" + +#import "RootViewController.h" + +@implementation AppController + +#pragma mark - +#pragma mark Application lifecycle + +// cocos2d application instance +static AppDelegate s_sharedApplication; + +- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { + + // Override point for customization after application launch. + + // Add the view controller's view to the window and display. + window = [[UIWindow alloc] initWithFrame: [[UIScreen mainScreen] bounds]]; + CCEAGLView *eaglView = [CCEAGLView viewWithFrame: [window bounds] + pixelFormat: kEAGLColorFormatRGBA8 + depthFormat: GL_DEPTH_COMPONENT16 + preserveBackbuffer: NO + sharegroup: nil + multiSampling: NO + numberOfSamples: 0 ]; + + // Use RootViewController manage CCEAGLView + viewController = [[RootViewController alloc] initWithNibName:nil bundle:nil]; + viewController.wantsFullScreenLayout = YES; + viewController.view = eaglView; + + // Set RootViewController to window + if ( [[UIDevice currentDevice].systemVersion floatValue] < 6.0) + { + // warning: addSubView doesn't work on iOS6 + [window addSubview: viewController.view]; + } + else + { + // use this method on ios6 + [window setRootViewController:viewController]; + } + + [window makeKeyAndVisible]; + + [[UIApplication sharedApplication] setStatusBarHidden: YES]; + + // IMPORTANT: Setting the GLView should be done after creating the RootViewController + cocos2d::GLView *glview = cocos2d::GLView::createWithEAGLView(eaglView); + cocos2d::Director::getInstance()->setOpenGLView(glview); + + cocos2d::Application *app = cocos2d::Application::getInstance(); + app->run(); + return YES; +} + + +- (void)applicationWillResignActive:(UIApplication *)application { + /* + Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. + Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game. + */ + cocos2d::Director::getInstance()->pause(); +} + +- (void)applicationDidBecomeActive:(UIApplication *)application { + /* + Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. + */ + cocos2d::Director::getInstance()->resume(); +} + +- (void)applicationDidEnterBackground:(UIApplication *)application { + /* + Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. + If your application supports background execution, called instead of applicationWillTerminate: when the user quits. + */ + cocos2d::Application::getInstance()->applicationDidEnterBackground(); +} + +- (void)applicationWillEnterForeground:(UIApplication *)application { + /* + Called as part of transition from the background to the inactive state: here you can undo many of the changes made on entering the background. + */ + cocos2d::Application::getInstance()->applicationWillEnterForeground(); +} + +- (void)applicationWillTerminate:(UIApplication *)application { + /* + Called when the application is about to terminate. + See also applicationDidEnterBackground:. + */ +} + + +#pragma mark - +#pragma mark Memory management + +- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application { + /* + Free up as much memory as possible by purging cached data objects that can be recreated (or reloaded from disk) later. + */ +} + + +- (void)dealloc { + [super dealloc]; +} + + +@end + diff --git a/tests/lua-game-controller-test/project/proj.ios/Default-568h@2x.png b/tests/lua-game-controller-test/project/proj.ios/Default-568h@2x.png new file mode 100644 index 0000000000..66c6d1cead Binary files /dev/null and b/tests/lua-game-controller-test/project/proj.ios/Default-568h@2x.png differ diff --git a/tests/lua-game-controller-test/project/proj.ios/Default.png b/tests/lua-game-controller-test/project/proj.ios/Default.png new file mode 100644 index 0000000000..dcb80725de Binary files /dev/null and b/tests/lua-game-controller-test/project/proj.ios/Default.png differ diff --git a/tests/lua-game-controller-test/project/proj.ios/Default@2x.png b/tests/lua-game-controller-test/project/proj.ios/Default@2x.png new file mode 100644 index 0000000000..84689888a1 Binary files /dev/null and b/tests/lua-game-controller-test/project/proj.ios/Default@2x.png differ diff --git a/tests/lua-game-controller-test/project/proj.ios/HelloLua_Prefix.pch b/tests/lua-game-controller-test/project/proj.ios/HelloLua_Prefix.pch new file mode 100644 index 0000000000..b4311a0a3d --- /dev/null +++ b/tests/lua-game-controller-test/project/proj.ios/HelloLua_Prefix.pch @@ -0,0 +1,8 @@ +// +// Prefix header for all source files of the 'HelloLua' target in the 'HelloLua' project +// + +#ifdef __OBJC__ + #import + #import +#endif diff --git a/tests/lua-game-controller-test/project/proj.ios/Icon-114.png b/tests/lua-game-controller-test/project/proj.ios/Icon-114.png new file mode 100644 index 0000000000..c3807861ad Binary files /dev/null and b/tests/lua-game-controller-test/project/proj.ios/Icon-114.png differ diff --git a/tests/lua-game-controller-test/project/proj.ios/Icon-120.png b/tests/lua-game-controller-test/project/proj.ios/Icon-120.png new file mode 100644 index 0000000000..a5b49ccbb1 Binary files /dev/null and b/tests/lua-game-controller-test/project/proj.ios/Icon-120.png differ diff --git a/tests/lua-game-controller-test/project/proj.ios/Icon-144.png b/tests/lua-game-controller-test/project/proj.ios/Icon-144.png new file mode 100644 index 0000000000..1526615c02 Binary files /dev/null and b/tests/lua-game-controller-test/project/proj.ios/Icon-144.png differ diff --git a/tests/lua-game-controller-test/project/proj.ios/Icon-152.png b/tests/lua-game-controller-test/project/proj.ios/Icon-152.png new file mode 100644 index 0000000000..8aa82506d0 Binary files /dev/null and b/tests/lua-game-controller-test/project/proj.ios/Icon-152.png differ diff --git a/tests/lua-game-controller-test/project/proj.ios/Icon-57.png b/tests/lua-game-controller-test/project/proj.ios/Icon-57.png new file mode 100644 index 0000000000..4fcc6fddff Binary files /dev/null and b/tests/lua-game-controller-test/project/proj.ios/Icon-57.png differ diff --git a/tests/lua-game-controller-test/project/proj.ios/Icon-72.png b/tests/lua-game-controller-test/project/proj.ios/Icon-72.png new file mode 100644 index 0000000000..2c573c8df4 Binary files /dev/null and b/tests/lua-game-controller-test/project/proj.ios/Icon-72.png differ diff --git a/tests/lua-game-controller-test/project/proj.ios/Icon-76.png b/tests/lua-game-controller-test/project/proj.ios/Icon-76.png new file mode 100644 index 0000000000..8a1fa1850c Binary files /dev/null and b/tests/lua-game-controller-test/project/proj.ios/Icon-76.png differ diff --git a/tests/lua-game-controller-test/project/proj.ios/Info.plist b/tests/lua-game-controller-test/project/proj.ios/Info.plist new file mode 100644 index 0000000000..12ee63ab86 --- /dev/null +++ b/tests/lua-game-controller-test/project/proj.ios/Info.plist @@ -0,0 +1,61 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleDisplayName + ${PRODUCT_NAME} + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIconFile + Icon-57.png + CFBundleIcons + + CFBundlePrimaryIcon + + CFBundleIconFiles + + + Icon.png + Icon-57.png + Icon-114.png + Icon-72.png + Icon-144.png + + UIPrerenderedIcon + + + + CFBundleIdentifier + org.cocos2dx.${PRODUCT_NAME:rfc1034identifier} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + APPL + CFBundleSignature + ???? + CFBundleVersion + 1.0 + LSRequiresIPhoneOS + + UIPrerenderedIcon + + UIRequiredDeviceCapabilities + + accelerometer + + opengles-1 + + + UIStatusBarHidden + + UISupportedInterfaceOrientations + + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + + diff --git a/tests/lua-game-controller-test/project/proj.ios/RootViewController.h b/tests/lua-game-controller-test/project/proj.ios/RootViewController.h new file mode 100644 index 0000000000..11dfc4bf88 --- /dev/null +++ b/tests/lua-game-controller-test/project/proj.ios/RootViewController.h @@ -0,0 +1,33 @@ +/**************************************************************************** + Copyright (c) 2010-2011 cocos2d-x.org + Copyright (c) 2010 Ricardo Quesada + + http://www.cocos2d-x.org + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + ****************************************************************************/ + +#import + + +@interface RootViewController : UIViewController { + +} +- (BOOL)prefersStatusBarHidden; +@end diff --git a/tests/lua-game-controller-test/project/proj.ios/RootViewController.mm b/tests/lua-game-controller-test/project/proj.ios/RootViewController.mm new file mode 100644 index 0000000000..a00da00584 --- /dev/null +++ b/tests/lua-game-controller-test/project/proj.ios/RootViewController.mm @@ -0,0 +1,96 @@ +/**************************************************************************** + Copyright (c) 2010-2011 cocos2d-x.org + Copyright (c) 2010 Ricardo Quesada + + http://www.cocos2d-x.org + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + ****************************************************************************/ + +#import "RootViewController.h" + + +@implementation RootViewController + +/* + // The designated initializer. Override if you create the controller programmatically and want to perform customization that is not appropriate for viewDidLoad. +- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil { + if ((self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil])) { + // Custom initialization + } + return self; +} +*/ + +/* +// Implement loadView to create a view hierarchy programmatically, without using a nib. +- (void)loadView { +} +*/ + +/* +// Implement viewDidLoad to do additional setup after loading the view, typically from a nib. +- (void)viewDidLoad { + [super viewDidLoad]; +} + +*/ +// Override to allow orientations other than the default portrait orientation. +// This method is deprecated on ios6 +- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { + return UIInterfaceOrientationIsLandscape( interfaceOrientation ); +} + +// For ios6, use supportedInterfaceOrientations & shouldAutorotate instead +- (NSUInteger) supportedInterfaceOrientations{ +#ifdef __IPHONE_6_0 + return UIInterfaceOrientationMaskAllButUpsideDown; +#endif +} + +- (BOOL) shouldAutorotate { + return YES; +} + +//fix not hide status on ios7 +- (BOOL)prefersStatusBarHidden +{ + return YES; +} + +- (void)didReceiveMemoryWarning { + // Releases the view if it doesn't have a superview. + [super didReceiveMemoryWarning]; + + // Release any cached data, images, etc that aren't in use. +} + +- (void)viewDidUnload { + [super viewDidUnload]; + // Release any retained subviews of the main view. + // e.g. self.myOutlet = nil; +} + + +- (void)dealloc { + [super dealloc]; +} + + +@end diff --git a/tests/lua-game-controller-test/project/proj.ios/main.m b/tests/lua-game-controller-test/project/proj.ios/main.m new file mode 100644 index 0000000000..27ca9796f7 --- /dev/null +++ b/tests/lua-game-controller-test/project/proj.ios/main.m @@ -0,0 +1,16 @@ +// +// main.m +// HelloLua +// +// Created by Walzer on 11-6-15. +// Copyright __MyCompanyName__ 2011. All rights reserved. +// + +#import + +int main(int argc, char *argv[]) { + NSAutoreleasePool *pool = [NSAutoreleasePool new]; + int retVal = UIApplicationMain(argc, argv, nil, @"AppController"); + [pool release]; + return retVal; +} diff --git a/tests/lua-game-controller-test/res/.gitignore b/tests/lua-game-controller-test/res/.gitignore new file mode 100644 index 0000000000..1d65afe366 --- /dev/null +++ b/tests/lua-game-controller-test/res/.gitignore @@ -0,0 +1,2 @@ +#Do now ignore Marmalade icf files +!*.icf diff --git a/tests/lua-game-controller-test/src/GameControllerTest.lua b/tests/lua-game-controller-test/src/GameControllerTest.lua new file mode 100644 index 0000000000..ca87a39bef --- /dev/null +++ b/tests/lua-game-controller-test/src/GameControllerTest.lua @@ -0,0 +1,403 @@ + +local ControllerHolder = class("ControllerHolder") + +function ControllerHolder:ctor() + self.controller = nil + self._holderNode = nil + + self._leftJoystick = nil + self._rightJoystick = nil + + self._dpadLeft = nil + self._dpadRight = nil + self._dpadUp = nil + self._dpadDown = nil + + self._buttonX = nil + self._buttonY = nil + self._buttonA = nil + self._buttonB = nil + + self._buttonL1 = nil + self._buttonR1 = nil + self._buttonL2 = nil + self._buttonR2 = nil + + self.deviceLabel = nil + self.externalKeyLabel = nil +end + + +local GameControllerTest = class("GameControllerTest", function() + return cc.Layer:create() +end) + +function GameControllerTest:ctor() + self:init() +end + +function GameControllerTest:createControllerSprite(holder) + + holder._holderNode = cc.Node:create() + holder._holderNode:setContentSize(cc.size(998,1000)) + + local controllerBg1 = cc.Sprite:create("controller-1.png") + controllerBg1:setPosition(cc.p(0, 0)) + controllerBg1:setAnchorPoint(cc.p(0, 0)) + holder._holderNode:addChild(controllerBg1) + + local controllerBg2 = cc.Sprite:create("controller-2.png") + controllerBg2:setPosition(cc.p(499,1000)) + controllerBg2:setAnchorPoint(cc.p(0.5, 1.0)) + holder._holderNode:addChild(controllerBg2) + + holder._leftJoystick = cc.Sprite:create("joystick.png") + holder._leftJoystick:setPosition(cc.p(238,460)) + holder._holderNode:addChild(holder._leftJoystick) + + holder._rightJoystick = cc.Sprite:create("joystick.png") + holder._rightJoystick:setPosition(cc.p(606,293)) + holder._holderNode:addChild(holder._rightJoystick) + + holder._deviceLabel = cc.Label:createWithTTF("Disconnected","fonts/Marker Felt.ttf",36) + holder._deviceLabel:setPosition(cc.p(499,650)) + holder._deviceLabel:setTextColor(cc.c4b(255, 0, 0, 255)) + holder._holderNode:addChild(holder._deviceLabel) + + holder._externalKeyLabel = cc.Label:createWithTTF("Key event","fonts/Marker Felt.ttf",36) + holder._externalKeyLabel:setPosition(cc.p(499,500)) + holder._externalKeyLabel:setTextColor(cc.c4b(255, 0, 0, 255)) + holder._holderNode:addChild(holder._externalKeyLabel) + ------------------------------------------------------------------- + local dPadTexture = cc.Director:getInstance():getTextureCache():addImage("dPad.png") + + local dPadCenter = cc.Sprite:createWithTexture(dPadTexture,cc.rect(60,60,68,68)) + dPadCenter:setPosition(cc.p(371,294)) + holder._holderNode:addChild(dPadCenter) + + holder._dpadLeft = cc.Sprite:createWithTexture(dPadTexture,cc.rect(0,60,60,60)) + holder._dpadLeft:setPosition(cc.p(371 - 64,296)) + holder._holderNode:addChild(holder._dpadLeft) + + holder._dpadRight = cc.Sprite:createWithTexture(dPadTexture,cc.rect(128,60,60,60)) + holder._dpadRight:setPosition(cc.p(371 + 64,296)) + holder._holderNode:addChild(holder._dpadRight) + + holder._dpadUp = cc.Sprite:createWithTexture(dPadTexture,cc.rect(60,0,60,60)) + holder._dpadUp:setPosition(cc.p(369,294 + 64)) + holder._holderNode:addChild(holder._dpadUp) + + holder._dpadDown = cc.Sprite:createWithTexture(dPadTexture,cc.rect(60,128,60,60)) + holder._dpadDown:setPosition(cc.p(369,294 - 64)) + holder._holderNode:addChild(holder._dpadDown) + ------------------------------------------------------------------- + holder._buttonL1 = cc.Sprite:create("L1.png") + holder._buttonL1:setPosition(cc.p(290,792)) + holder._holderNode:addChild(holder._buttonL1) + + holder._buttonR1 = cc.Sprite:create("R1.png") + holder._buttonR1:setPosition(cc.p(998 - 290,792)) + holder._holderNode:addChild(holder._buttonR1) + + local buttonL2 = cc.Sprite:create("L2.png") + buttonL2:setPosition(cc.p(220,910)) + holder._holderNode:addChild(buttonL2) + + local buttonR2 = cc.Sprite:create("R2.png") + buttonR2:setPosition(cc.p(998-220,910)) + holder._holderNode:addChild(buttonR2) + + holder._buttonL2 = cc.Sprite:create("L2.png") + holder._buttonL2:setOpacity(0) + holder._buttonL2:setColor(cc.c3b(255,0,0)) + holder._buttonL2:setPosition(cc.p(220,910)) + holder._holderNode:addChild(holder._buttonL2) + + holder._buttonR2 = cc.Sprite:create("R2.png") + holder._buttonR2:setOpacity(0) + holder._buttonR2:setColor(cc.c3b(255,0,0)) + holder._buttonR2:setPosition(cc.p(998-220,910)) + holder._holderNode:addChild(holder._buttonR2) + ------------------------------------------------------------------- + holder._buttonX = cc.Sprite:create("X.png") + holder._buttonX:setPosition(cc.p(750 - 70,460)) + holder._holderNode:addChild(holder._buttonX) + + holder._buttonY = cc.Sprite:create("Y.png") + holder._buttonY:setPosition(cc.p(750,460 + 70)) + holder._holderNode:addChild(holder._buttonY) + + holder._buttonA = cc.Sprite:create("A.png") + holder._buttonA:setPosition(cc.p(750,460 - 70)) + holder._holderNode:addChild(holder._buttonA) + + holder._buttonB = cc.Sprite:create("B.png") + holder._buttonB:setPosition(cc.p(750 + 70,460)) + holder._holderNode:addChild(holder._buttonB) +end + +function GameControllerTest:registerControllerListener() + + local function resetControllerHolderState(holder) + holder._buttonA:setColor(cc.c3b(255, 255, 255)) + holder._buttonB:setColor(cc.c3b(255, 255, 255)) + holder._buttonX:setColor(cc.c3b(255, 255, 255)) + holder._buttonY:setColor(cc.c3b(255, 255, 255)) + holder._dpadUp:setColor(cc.c3b(255, 255, 255)) + holder._dpadDown:setColor(cc.c3b(255, 255, 255)) + holder._dpadLeft:setColor(cc.c3b(255, 255, 255)) + holder._dpadRight:setColor(cc.c3b(255, 255, 255)) + holder._buttonL1:setColor(cc.c3b(255, 255, 255)) + holder._buttonR1:setColor(cc.c3b(255, 255, 255)) + + holder._leftJoystick:setPosition(cc.p(238,460)) + holder._rightJoystick:setPosition(cc.p(606,293)) + holder._deviceLabel:setString("Disconnected") + end + + local function onConnectController(controller, event) + if controller == nil or controller == self._firstHolder.controller or controller == self._secondHolder.controller then + return + end + + local targetPlatform = cc.Application:getInstance():getTargetPlatform() + if targetPlatform == cc.PLATFORM_OS_ANDROID then + --do sth + -- //receive back key + -- controller:receiveExternalKeyEvent(4,true) + -- //receive menu key + -- controller:receiveExternalKeyEvent(82,true) + end + + local deviceInfo = string.format("%s id:%d", controller:getDeviceName(), controller:getDeviceId()) + print(deviceInfo) + + + if self._firstHolder.controller == nil and self._secondHolder.controller == nil then + if self._firstHolder._holderNode then + self._firstHolder.controller = controller + self._firstHolder._deviceLabel:setString(deviceInfo) + else + self._secondHolder.controller = controller + self._secondHolder._deviceLabel:setString(deviceInfo) + end + elseif self._secondHolder.controller == nil then + self._secondHolder.controller = controller + if self._secondHolder._holderNode == nil then + createControllerSprite(self._secondHolder) + + self._firstHolder._holderNode:runAction(cc.ScaleTo:create(0.3, 0.5, 0.5)) + self._firstHolder._holderNode:runAction(cc.MoveTo:create(0.3,cc.p(self._visibleQuarterX, self_visibleCentreY))) + + self._secondHolder._holderNode:setAnchorPoint(cc.p(0.5, 0.5)) + self._secondHolder._holderNode:setScale(0.1) + self._secondHolder._holderNode:runAction(cc.ScaleTo:create(0.3, 0.5, 0.5)) + self._secondHolder._holderNode:setPosition(cc.p(self._visibleThreeQuarterX, self._visibleCentreY)) + self:addChild(self._secondHolder._holderNode) + end + + self._secondHolder._deviceLabel:setString(deviceInfo) + else + self._firstHolder.controller = controller + if self._firstHolder._holderNode == nil then + createControllerSprite(self._firstHolder) + + self._secondHolder._holderNode:runAction(cc.ScaleTo:create(0.3, 0.5, 0.5)) + self._secondHolder._holderNode:runAction(cc.MoveTo:create(0.3, cc.p(self._visibleQuarterX, self._visibleCentreY))) + + self._firstHolder._holderNode:setAnchorPoint(cc.p(0.5, 0.5)) + self._firstHolder._holderNode:setScale(0.1) + self._firstHolder._holderNode:runAction(cc.ScaleTo:create(0.3, 0.5,0.5)) + self._firstHolder._holderNode:setPosition(cc.p(self._visibleThreeQuarterX, self._visibleCentreY)) + self:addChild(self._firstHolder._holderNode) + end + + self._firstHolder._deviceLabel:setString(deviceInfo) + end + end + + local function onDisconnectedController(controller, event) + print("onDisconnectedController:",controller:getDeviceId()) + if self._firstHolder.controller == controller then + self._firstHolder.controller = nil + + if self._secondHolder.controller ~= nil then + self._firstHolder._holderNode:runAction(cc.MoveBy:create(0.3,cc.p(0,self._visibleSize.height))) + + self._secondHolder._holderNode:runAction(cc.MoveTo:create(0.3, cc.p(self._visibleCentreX, self._visibleCentreY) )) + self._secondHolder._holderNode:runAction(cc.ScaleTo:create(0.3, 1.0,1.0)) + else + resetControllerHolderState(self._firstHolder) + end + elseif self._secondHolder.controller == controller then + self._secondHolder.controller = nil + + if self._firstHolder.controller ~= nil then + self._secondHolder._holderNode:runAction(cc.MoveBy:create(0.3, cc.p(0, self._visibleSize.height))) + + self._firstHolder._holderNode:runAction(cc.MoveTo:create(0.3, cc.p(self._visibleCentreX, self._visibleCentreY))) + self._firstHolder._holderNode:runAction(cc.ScaleTo:create(0.3, 1.0,1.0)) + else + resetControllerHolderState(self._secondHolder) + end + end + end + + local function showButtonState(controller, keyCode, isPressed) + onConnectController(controller, nil) + local holder = nil + + if controller == self._firstHolder.controller then + holder = self._firstHolder + elseif controller == self._secondHolder.controller then + holder = self._secondHolder + else + return + end + + if isPressed then + if keyCode == cc.ControllerKey.BUTTON_A then + holder._buttonA:setColor(cc.c3b(250,103,93)) + elseif keyCode == cc.ControllerKey.BUTTON_B then + holder._buttonB:setColor(cc.c3b(92,214,183)) + elseif keyCode == cc.ControllerKey.BUTTON_X then + holder._buttonX:setColor(cc.c3b(96,113,192)) + elseif keyCode == cc.ControllerKey.BUTTON_Y then + holder._buttonY:setColor(cc.c3b(199,222,118)) + elseif keyCode == cc.ControllerKey.BUTTON_DPAD_UP then + holder._dpadUp:setColor(cc.c3b(0,115,158)) + elseif keyCode == cc.ControllerKey.BUTTON_DPAD_DOWN then + holder._dpadDown:setColor(cc.c3b(0,115,158)) + elseif keyCode == cc.ControllerKey.BUTTON_DPAD_LEFT then + holder._dpadLeft:setColor(cc.c3b(170,216,0)) + elseif keyCode == cc.ControllerKey.BUTTON_DPAD_RIGHT then + holder._dpadRight:setColor(cc.c3b(170,216,0)) + elseif keyCode == cc.ControllerKey.BUTTON_LEFT_SHOULDER then + holder._buttonL1:setColor(cc.c3b(19,231,238)) + elseif keyCode == cc.ControllerKey.BUTTON_RIGHT_SHOULDER then + holder._buttonR1:setColor(cc.c3b(19,231,238)) + else + local ketStatus = string.format("Key Down:%d",keyCode) + holder._externalKeyLabel:setString(ketStatus) + end + else + if keyCode == cc.ControllerKey.BUTTON_A then + holder._buttonA:setColor(cc.c3b(250,255,255)) + elseif keyCode == cc.ControllerKey.BUTTON_B then + holder._buttonB:setColor(cc.c3b(250,255,255)) + elseif keyCode == cc.ControllerKey.BUTTON_X then + holder._buttonX:setColor(cc.c3b(250,255,255)) + elseif keyCode == cc.ControllerKey.BUTTON_Y then + holder._buttonY:setColor(cc.c3b(250,255,255)) + elseif keyCode == cc.ControllerKey.BUTTON_DPAD_UP then + holder._dpadUp:setColor(cc.c3b(250,255,255)) + elseif keyCode == cc.ControllerKey.BUTTON_DPAD_DOWN then + holder._dpadDown:setColor(cc.c3b(250,255,255)) + elseif keyCode == cc.ControllerKey.BUTTON_DPAD_LEFT then + holder._dpadLeft:setColor(cc.c3b(250,255,255)) + elseif keyCode == cc.ControllerKey.BUTTON_DPAD_RIGHT then + holder._dpadRight:setColor(cc.c3b(250,255,255)) + elseif keyCode == cc.ControllerKey.BUTTON_LEFT_SHOULDER then + holder._buttonL1:setColor(cc.c3b(250,255,255)) + elseif keyCode == cc.ControllerKey.BUTTON_RIGHT_SHOULDER then + holder._buttonR1:setColor(cc.c3b(250,255,255)) + else + local ketStatus = string.format("Key Up:%d",keyCode) + holder._externalKeyLabel:setString(ketStatus) + end + + end + end + + local function onKeyDown(controller, keyCode, event) + showButtonState(controller, keyCode, true) + end + + local function onKeyUp(controller, keyCode, event) + showButtonState(controller, keyCode, false) + end + + local function onAxisEvent(controller, keyCode, event) + local holder = nil + + if controller == self._firstHolder.controller then + holder = self._firstHolder + elseif controller == self._secondHolder.controller then + holder = self._secondHolder + else + return + end + + local ketStatus = controller:getKeyStatus(keyCode) + if keyCode == cc.ControllerKey.JOYSTICK_LEFT_X then + holder._leftJoystick:setPositionX(238 + ketStatus.value * 24) + elseif keyCode == cc.ControllerKey.JOYSTICK_LEFT_Y then + holder._leftJoystick:setPositionY(460 - ketStatus.value * 24) + elseif keyCode == cc.ControllerKey.JOYSTICK_RIGHT_X then + holder._rightJoystick:setPositionX(606 + ketStatus.value * 24) + elseif keyCode == cc.ControllerKey.JOYSTICK_RIGHT_Y then + holder._rightJoystick:setPositionY(293 - ketStatus.value * 24) + elseif keyCode == cc.ControllerKey.AXIS_LEFT_TRIGGER then + holder._buttonL2:setOpacity(200 * controller:getKeyStatus(keyCode).value) + elseif keyCode == cc.ControllerKey.AXIS_RIGHT_TRIGGER then + holder._buttonR2:setOpacity(200 * controller:getKeyStatus(keyCode).value) + else + --do nothing + end + end + + -- body + self._listener = cc.EventListenerController:create() + self._listener:registerScriptHandler(onConnectController, cc.Handler.EVENT_CONTROLLER_CONNECTED) + self._listener:registerScriptHandler(onDisconnectedController, cc.Handler.EVENT_CONTROLLER_DISCONNECTED) + + self._listener:registerScriptHandler(onKeyDown, cc.Handler.EVENT_CONTROLLER_KEYDOWN) + self._listener:registerScriptHandler(onKeyUp, cc.Handler.EVENT_CONTROLLER_KEYUP) + self._listener:registerScriptHandler(onAxisEvent, cc.Handler.EVENT_CONTROLLER_AXIS) + + local eventDispatcher = self:getEventDispatcher() + eventDispatcher:addEventListenerWithSceneGraphPriority(self._listener, self) + + cc.Controller:startDiscoveryController() +end + + + +function GameControllerTest:init() + self._currControllerCount = 0 + self._visibleSize = cc.Director:getInstance():getVisibleSize() + self._visibleOrigin = cc.Director:getInstance():getVisibleOrigin() + + local tmpPos = cc.p(self._visibleSize.width / 2 + self._visibleOrigin.x, self._visibleSize.height / 2 + self._visibleOrigin.y) + + self._visibleCentreX = self._visibleOrigin.x + self._visibleSize.width / 2 + self._visibleCentreY = self._visibleOrigin.y + self._visibleSize.height / 2 + self._visibleQuarterX = self._visibleOrigin.x + self._visibleSize.width / 4 + self._visibleThreeQuarterX = self._visibleOrigin.x + self._visibleSize.width * 0.75 + + self._firstHolder = ControllerHolder.new() + self._secondHolder = ControllerHolder.new() + self._firstHolder.controller = nil + self._secondHolder.controller = nil + + self:createControllerSprite(self._firstHolder) + self._firstHolder._holderNode:setAnchorPoint(cc.p(0.5, 0.5)) + self._firstHolder._holderNode:setPosition(tmpPos) + self:addChild(self._firstHolder._holderNode) + + self:registerControllerListener() + + -- local function menuCloseCallback(tag, sender) + + -- end + -- local closeItem = cc.MenuItemImage:create("CloseNormal.png", "CloseSelected.png") + -- closeItem:setPosition(cc.p(self._visibleOrigin.x + self._visibleSize.width - closeItem:getContentSize().width / 2, self._visibleOrigin.y + self._visibleSize.height - closeItem:getContentSize().height / 2)) + + -- local menu = cc.Menu:create() + -- menu:addChild(closeItem) + + +end + + +return GameControllerTest \ No newline at end of file diff --git a/tests/lua-game-controller-test/src/main.lua b/tests/lua-game-controller-test/src/main.lua new file mode 100644 index 0000000000..cdc55801c3 --- /dev/null +++ b/tests/lua-game-controller-test/src/main.lua @@ -0,0 +1,60 @@ +require("Cocos2d") +require("Cocos2dConstants") + +collectgarbage("setpause", 100) +collectgarbage("setstepmul", 5000) + +local mediumResource = +{ + size = cc.size(960, 540), + directory = "ipad", +} + +local largeResource = +{ + size = cc.size(1920, 1080), + directory = "ipadhd", +} + +local director = cc.Director:getInstance() +local glView = director:getOpenGLView() +if nil == glView then + glView = cc.GLView:create("Game Controller Test") + director:setOpenGLView(glView) +end + +director:setOpenGLView(glView) + +local designResolutionSize = cc.size(1920, 1080) + +glView:setDesignResolutionSize(designResolutionSize.width, designResolutionSize.height, cc.ResolutionPolicy.SHOW_ALL) + +local frameSize = glView:getFrameSize() + +local targetPlatform = cc.Application:getInstance():getTargetPlatform() +local resPrefix = "" +if targetPlatform == cc.PLATFORM_OS_ANDROID then + resPrefix = "res/" +end + +local fileUtils = cc.FileUtils:getInstance() +local searchPaths = fileUtils:getSearchPaths() + +table.insert(searchPaths, 1, resPrefix) +if frameSize.height > mediumResource.size.height then + table.insert(searchPaths, 1, resPrefix..largeResource.directory) + cc.Director:getInstance():setContentScaleFactor(math.min(largeResource.size.height/designResolutionSize.height, largeResource.size.width/designResolutionSize.width)) +else + table.insert(searchPaths, 1, resPrefix..mediumResource.directory) + cc.Director:getInstance():setContentScaleFactor(math.min(mediumResource.size.height/designResolutionSize.height, mediumResource.size.width/designResolutionSize.width)) +end + +fileUtils:setSearchPaths(searchPaths) + +local scene = cc.Scene:create() +scene:addChild(require("src/GameControllerTest").new()) +if cc.Director:getInstance():getRunningScene() then + cc.Director:getInstance():replaceScene(scene) +else + cc.Director:getInstance():runWithScene(scene) +end \ No newline at end of file diff --git a/tests/lua-tests/project/Classes/AppDelegate.cpp b/tests/lua-tests/project/Classes/AppDelegate.cpp index 3bad5648b8..ce312026d4 100644 --- a/tests/lua-tests/project/Classes/AppDelegate.cpp +++ b/tests/lua-tests/project/Classes/AppDelegate.cpp @@ -19,31 +19,6 @@ AppDelegate::~AppDelegate() bool AppDelegate::applicationDidFinishLaunching() { - auto director = Director::getInstance(); - auto glview = director->getOpenGLView(); - if(!glview) { - glview = GLView::createWithRect("Lua Tests", Rect(0,0,900,640)); - director->setOpenGLView(glview); - } - - // turn on display FPS - director->setDisplayStats(true); - - // set FPS. the default value is 1.0/60 if you don't call this - director->setAnimationInterval(1.0 / 60); - - auto screenSize = glview->getFrameSize(); - - auto designSize = Size(480, 320); - - if (screenSize.height > 320) - { - auto resourceSize = Size(960, 640); - director->setContentScaleFactor(resourceSize.height/designSize.height); - } - - glview->setDesignResolutionSize(designSize.width, designSize.height, ResolutionPolicy::FIXED_HEIGHT); - // register lua engine LuaEngine* pEngine = LuaEngine::getInstance(); ScriptEngineManager::getInstance()->setScriptEngine(pEngine); diff --git a/tests/lua-tests/src/CocoStudioTest/CocoStudioGUITest/CocoStudioGUITest.lua b/tests/lua-tests/src/CocoStudioTest/CocoStudioGUITest/CocoStudioGUITest.lua index e2a6b31408..bac936d12f 100644 --- a/tests/lua-tests/src/CocoStudioTest/CocoStudioGUITest/CocoStudioGUITest.lua +++ b/tests/lua-tests/src/CocoStudioTest/CocoStudioGUITest/CocoStudioGUITest.lua @@ -1,5 +1,6 @@ local guiSceneManager = {} guiSceneManager.currentUISceneIdx = 1 +local font_TextName = "fonts/Marker Felt.ttf" local UIScene = class("UIScene") UIScene.__index = UIScene @@ -106,7 +107,7 @@ function UIButtonTest:initExtend() self._displayValueLabel = ccui.Text:create() self._displayValueLabel:setString("No Event") - self._displayValueLabel:setFontName(font_UIButtonTest) + self._displayValueLabel:setFontName(font_TextName) self._displayValueLabel:setFontSize(32) self._displayValueLabel:setAnchorPoint(cc.p(0.5, -1)) self._displayValueLabel:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0)) @@ -114,7 +115,7 @@ function UIButtonTest:initExtend() local alert = ccui.Text:create() alert:setString("Button") - alert:setFontName(font_UIButtonTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) @@ -170,7 +171,7 @@ function UIButtonScale9Test:initExtend() self._displayValueLabel = ccui.Text:create() self._displayValueLabel:setString("No Event") - self._displayValueLabel:setFontName(font_UIButtonTest) + self._displayValueLabel:setFontName(font_TextName) self._displayValueLabel:setFontSize(32) self._displayValueLabel:setAnchorPoint(cc.p(0.5, -1)) self._displayValueLabel:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0)) @@ -178,7 +179,7 @@ function UIButtonScale9Test:initExtend() local alert = ccui.Text:create() alert:setString("Button scale9 render") - alert:setFontName(font_UIButtonTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 1.75)) @@ -236,7 +237,7 @@ function UIButtonPressedActionTest:initExtend() self._displayValueLabel = ccui.Text:create() self._displayValueLabel:setString("No Event") - self._displayValueLabel:setFontName(font_UIButtonTest) + self._displayValueLabel:setFontName(font_TextName) self._displayValueLabel:setFontSize(32) self._displayValueLabel:setAnchorPoint(cc.p(0.5, -1)) self._displayValueLabel:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0)) @@ -244,7 +245,7 @@ function UIButtonPressedActionTest:initExtend() local alert = ccui.Text:create() alert:setString("Button Pressed Action") - alert:setFontName(font_UIButtonTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 1.75)) @@ -301,7 +302,7 @@ function UITextButtonTest:initExtend() self._displayValueLabel = ccui.Text:create() self._displayValueLabel:setString("No Event") - self._displayValueLabel:setFontName(font_UIButtonTest) + self._displayValueLabel:setFontName(font_TextName) self._displayValueLabel:setFontSize(32) self._displayValueLabel:setAnchorPoint(cc.p(0.5, -1)) self._displayValueLabel:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0)) @@ -309,7 +310,7 @@ function UITextButtonTest:initExtend() local alert = ccui.Text:create() alert:setString("TextButton") - alert:setFontName(font_UIButtonTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 1.75)) @@ -365,7 +366,7 @@ function UITextButtonScale9Test:initExtend() self._displayValueLabel = ccui.Text:create() self._displayValueLabel:setString("No Event") - self._displayValueLabel:setFontName(font_UIButtonTest) + self._displayValueLabel:setFontName(font_TextName) self._displayValueLabel:setFontSize(32) self._displayValueLabel:setAnchorPoint(cc.p(0.5, -1)) self._displayValueLabel:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0)) @@ -373,7 +374,7 @@ function UITextButtonScale9Test:initExtend() local alert = ccui.Text:create() alert:setString("TextButton scale9 render") - alert:setFontName(font_UIButtonTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 1.75)) @@ -431,7 +432,7 @@ function UICheckBoxTest:initExtend() self._displayValueLabel = ccui.Text:create() self._displayValueLabel:setString("No Event") - self._displayValueLabel:setFontName(font_UIButtonTest) + self._displayValueLabel:setFontName(font_TextName) self._displayValueLabel:setFontSize(32) self._displayValueLabel:setAnchorPoint(cc.p(0.5, -1)) self._displayValueLabel:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0)) @@ -439,7 +440,7 @@ function UICheckBoxTest:initExtend() local alert = ccui.Text:create() alert:setString("CheckBox") - alert:setFontName(font_UICheckBoxTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 1.75)) @@ -496,7 +497,7 @@ function UISliderTest:initExtend() self._displayValueLabel = ccui.Text:create() self._displayValueLabel:setString("Move the slider thumb") - self._displayValueLabel:setFontName(font_UISliderTest) + self._displayValueLabel:setFontName(font_TextName) self._displayValueLabel:setFontSize(32) self._displayValueLabel:setAnchorPoint(cc.p(0.5, -1)) self._displayValueLabel:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0)) @@ -504,7 +505,7 @@ function UISliderTest:initExtend() local alert = ccui.Text:create() alert:setString("Slider") - alert:setFontName(font_UISliderTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 1.75)) @@ -558,7 +559,7 @@ function UISliderScale9Test:initExtend() self._displayValueLabel = ccui.Text:create() self._displayValueLabel:setString("Move the slider thumb") - self._displayValueLabel:setFontName(font_UISliderTest) + self._displayValueLabel:setFontName(font_TextName) self._displayValueLabel:setFontSize(32) self._displayValueLabel:setAnchorPoint(cc.p(0.5, -1)) self._displayValueLabel:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0)) @@ -566,7 +567,7 @@ function UISliderScale9Test:initExtend() local alert = ccui.Text:create() alert:setString("Slider scale9 render") - alert:setFontName(font_UISliderTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 1.75)) @@ -622,7 +623,7 @@ function UIImageViewTest:initExtend() local alert = ccui.Text:create() alert:setString("ImageView") - alert:setFontName(font_UIImageViewTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 1.75)) @@ -663,7 +664,7 @@ function UIImageViewScale9Test:initExtend() local alert = ccui.Text:create() alert:setString("ImageView scale9 render") - alert:setFontName(font_UIImageViewTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 1.75)) @@ -716,7 +717,7 @@ function UILoadingBarLeftTest:initExtend() local alert = ccui.Text:create() alert:setString("LoadingBar") - alert:setFontName(font_UILoadingBarTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 1.75)) @@ -842,7 +843,7 @@ function UILoadingBarRightTest:initExtend() local alert = ccui.Text:create() alert:setString("LoadingBar") - alert:setFontName(font_UILoadingBarTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 1.75)) @@ -969,7 +970,7 @@ function UILoadingBarLeftScale9Test:initExtend() local alert = ccui.Text:create() alert:setString("LoadingBar Scale9 Render") - alert:setFontName(font_UILoadingBarTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 1.75)) @@ -1098,7 +1099,7 @@ function UILoadingBarRightScale9Test:initExtend() local alert = ccui.Text:create() alert:setString("LoadingBar Scale9 Render") - alert:setFontName(font_UILoadingBarTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 1.75)) @@ -1216,7 +1217,7 @@ function UILabelAtlasTest:initExtend() local alert = ccui.Text:create() alert:setString("LabelAtlas") - alert:setFontName(font_UILabelAtlasTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 1.75)) @@ -1257,7 +1258,7 @@ function UILabelBMFontTest:initExtend() local alert = ccui.Text:create() alert:setString("LabelBMFont") - alert:setFontName(font_UILabelBMFontTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 1.75)) @@ -1299,7 +1300,7 @@ function UILabelTest:initExtend() local alert = ccui.Text:create() alert:setString("Label") - alert:setFontName(font_UILabelTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 1.75)) @@ -1340,7 +1341,7 @@ function UITextAreaTest:initExtend() local alert = ccui.Text:create() alert:setString("TextArea") - alert:setFontName(font_UITextAreaTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 1.75)) @@ -1384,7 +1385,7 @@ function UITextFieldTest:initExtend() self._displayValueLabel = ccui.Text:create() self._displayValueLabel:setString("No Event") - self._displayValueLabel:setFontName(font_UITextFieldTest) + self._displayValueLabel:setFontName(font_TextName) self._displayValueLabel:setFontSize(32) self._displayValueLabel:setAnchorPoint(cc.p(0.5, -1)) self._displayValueLabel:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 + self._displayValueLabel:getContentSize().height * 1.5)) @@ -1392,7 +1393,7 @@ function UITextFieldTest:initExtend() local alert = ccui.Text:create() alert:setString("TextField") - alert:setFontName(font_UITextFieldTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 1.75)) @@ -1418,7 +1419,7 @@ function UITextFieldTest:initExtend() local textField = ccui.TextField:create() textField:setTouchEnabled(true) - textField:setFontName(font_UITextFieldTest) + textField:setFontName(font_TextName) textField:setFontSize(30) textField:setPlaceHolder("input words here") textField:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0)) @@ -1454,7 +1455,7 @@ function UITextFieldMaxLengthTest:initExtend() self._displayValueLabel = ccui.Text:create() self._displayValueLabel:setString("No Event") - self._displayValueLabel:setFontName(font_UITextFieldTest) + self._displayValueLabel:setFontName(font_TextName) self._displayValueLabel:setFontSize(32) self._displayValueLabel:setAnchorPoint(cc.p(0.5, -1)) self._displayValueLabel:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 + self._displayValueLabel:getContentSize().height * 1.5)) @@ -1462,7 +1463,7 @@ function UITextFieldMaxLengthTest:initExtend() local alert = ccui.Text:create() alert:setString("TextField max length") - alert:setFontName(font_UITextFieldTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 1.75)) @@ -1496,7 +1497,7 @@ function UITextFieldMaxLengthTest:initExtend() textField:setMaxLengthEnabled(true) textField:setMaxLength(3) textField:setTouchEnabled(true) - textField:setFontName(font_UITextFieldTest) + textField:setFontName(font_TextName) textField:setFontSize(30) textField:setPlaceHolder("input words here") textField:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0)) @@ -1532,7 +1533,7 @@ function UITextFieldPasswordTest:initExtend() self._displayValueLabel = ccui.Text:create() self._displayValueLabel:setString("No Event") - self._displayValueLabel:setFontName(font_UITextFieldTest) + self._displayValueLabel:setFontName(font_TextName) self._displayValueLabel:setFontSize(32) self._displayValueLabel:setAnchorPoint(cc.p(0.5, -1)) self._displayValueLabel:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 + self._displayValueLabel:getContentSize().height * 1.5)) @@ -1540,7 +1541,7 @@ function UITextFieldPasswordTest:initExtend() local alert = ccui.Text:create() alert:setString("TextField password") - alert:setFontName(font_UITextFieldTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 1.75)) @@ -1568,7 +1569,7 @@ function UITextFieldPasswordTest:initExtend() textField:setPasswordEnabled(true) textField:setPasswordStyleText("*") textField:setTouchEnabled(true) - textField:setFontName(font_UITextFieldTest) + textField:setFontName(font_TextName) textField:setFontSize(30) textField:setPlaceHolder("input password here") textField:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0)) @@ -1604,7 +1605,7 @@ function UIPanelTest:initExtend() local alert = ccui.Text:create() alert:setString("Panel") - alert:setFontName(font_UIPanelTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 1.75)) @@ -1672,7 +1673,7 @@ function UIPanelColorTest:initExtend() local alert = ccui.Text:create() alert:setString("Panel color render") - alert:setFontName(font_UIPanelTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 2.925)) @@ -1742,7 +1743,7 @@ function UIPanelGradientTest:initExtend() local alert = ccui.Text:create() alert:setString("Panel color Gradient") - alert:setFontName(font_UIPanelTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 2.925)) @@ -1812,7 +1813,7 @@ function UIPanelBackGroundImageTest:initExtend() local alert = ccui.Text:create() alert:setString("Panel background image") - alert:setFontName(font_UIPanelTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 2.925)) @@ -1882,7 +1883,7 @@ function UIPanelBackGroundImageScale9Test:initExtend() local alert = ccui.Text:create() alert:setString("Panel background image scale9") - alert:setFontName(font_UIPanelTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 2.925)) @@ -1952,7 +1953,7 @@ function UIPanelLayoutLinearVerticalTest:initExtend() local alert = ccui.Text:create() alert:setString("Panel Layout Linear Vertical") - alert:setFontName(font_UIPanelTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 2.925)) @@ -2035,7 +2036,7 @@ function UIPanelLayoutLinearHorizontalTest:initExtend() local alert = ccui.Text:create() alert:setString("Panel Layout Linear Horizontal") - alert:setFontName(font_UIPanelTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 2.925)) @@ -2120,7 +2121,7 @@ function UIScrollViewVerticalTest:initExtend() self._displayValueLabel = ccui.Text:create() self._displayValueLabel:setString("Move by vertical direction") - self._displayValueLabel:setFontName(font_UIScrollViewTest) + self._displayValueLabel:setFontName(font_TextName) self._displayValueLabel:setFontSize(32) self._displayValueLabel:setAnchorPoint(cc.p(0.5, -1)) self._displayValueLabel:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 + self._displayValueLabel:getContentSize().height * 1.5)) @@ -2128,7 +2129,7 @@ function UIScrollViewVerticalTest:initExtend() local alert = ccui.Text:create() alert:setString("ScrollView") - alert:setFontName(font_UIScrollViewTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 2.925)) @@ -2209,7 +2210,7 @@ function UIScrollViewHorizontalTest:initExtend() self._displayValueLabel = ccui.Text:create() self._displayValueLabel:setString("Move by horizontal direction") - self._displayValueLabel:setFontName(font_UIScrollViewTest) + self._displayValueLabel:setFontName(font_TextName) self._displayValueLabel:setFontSize(32) self._displayValueLabel:setAnchorPoint(cc.p(0.5, -1)) self._displayValueLabel:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 + self._displayValueLabel:getContentSize().height * 1.5)) @@ -2217,7 +2218,7 @@ function UIScrollViewHorizontalTest:initExtend() local alert = ccui.Text:create() alert:setString("ScrollView") - alert:setFontName(font_UIScrollViewTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 2.925)) @@ -2305,7 +2306,7 @@ function UIPageViewTest:initExtend() self._displayValueLabel = ccui.Text:create() self._displayValueLabel:setString("Move by horizontal direction") - self._displayValueLabel:setFontName(font_UIPageViewTest) + self._displayValueLabel:setFontName(font_TextName) self._displayValueLabel:setFontSize(32) self._displayValueLabel:setAnchorPoint(cc.p(0.5, -1)) self._displayValueLabel:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 + self._displayValueLabel:getContentSize().height * 1.5)) @@ -2313,7 +2314,7 @@ function UIPageViewTest:initExtend() local alert = ccui.Text:create() alert:setString("PageView") - alert:setFontName(font_UIPageViewTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 2.925)) @@ -2346,7 +2347,7 @@ function UIPageViewTest:initExtend() local label = ccui.Text:create() local pageInfo = string.format("page %d", i) label:setString(pageInfo) - label:setFontName(font_UIPageViewTest) + label:setFontName(font_TextName) label:setFontSize(30) label:setColor(cc.c3b(192, 192, 192)) label:setPosition(cc.p(layout:getContentSize().width / 2, layout:getContentSize().height / 2)) @@ -2399,7 +2400,7 @@ function UIListViewVerticalTest:initExtend() self._displayValueLabel = ccui.Text:create() self._displayValueLabel:setString("Move by vertical direction") - self._displayValueLabel:setFontName(font_UIListViewTest) + self._displayValueLabel:setFontName(font_TextName) self._displayValueLabel:setFontSize(32) self._displayValueLabel:setAnchorPoint(cc.p(0.5, -1)) self._displayValueLabel:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 + self._displayValueLabel:getContentSize().height * 1.5)) @@ -2407,7 +2408,7 @@ function UIListViewVerticalTest:initExtend() local alert = ccui.Text:create() alert:setString("ListView") - alert:setFontName(font_UIListViewTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 2.925)) @@ -2567,7 +2568,7 @@ function UIListViewHorizontalTest:initExtend() self._displayValueLabel = ccui.Text:create() self._displayValueLabel:setString("Move by vertical direction") - self._displayValueLabel:setFontName(font_UIListViewTest) + self._displayValueLabel:setFontName(font_TextName) self._displayValueLabel:setFontSize(32) self._displayValueLabel:setAnchorPoint(cc.p(0.5, -1)) self._displayValueLabel:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 + self._displayValueLabel:getContentSize().height * 1.5)) @@ -2575,7 +2576,7 @@ function UIListViewHorizontalTest:initExtend() local alert = ccui.Text:create() alert:setString("ListView") - alert:setFontName(font_UIListViewTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 2.925)) @@ -2723,7 +2724,7 @@ function UIDragPanelTest:initExtend() self._displayValueLabel = ccui.Text:create() self._displayValueLabel:setString("No Event") - self._displayValueLabel:setFontName(font_UIDragPanelTest) + self._displayValueLabel:setFontName(font_TextName) self._displayValueLabel:setFontSize(32) self._displayValueLabel:setAnchorPoint(cc.p(0.5, -1)) self._displayValueLabel:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 + self._displayValueLabel:getContentSize().height * 1.5)) @@ -2731,7 +2732,7 @@ function UIDragPanelTest:initExtend() local alert = ccui.Text:create() alert:setString("DragPanel") - alert:setFontName(font_UIDragPanelTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 2.925)) @@ -2782,7 +2783,7 @@ function UIDragPanelBounceTest:initExtend() self._displayValueLabel = ccui.Text:create() self._displayValueLabel:setString("No Event") - self._displayValueLabel:setFontName(font_UIDragPanelTest) + self._displayValueLabel:setFontName(font_TextName) self._displayValueLabel:setFontSize(32) self._displayValueLabel:setAnchorPoint(cc.p(0.5, -1)) self._displayValueLabel:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 + self._displayValueLabel:getContentSize().height * 1.5)) @@ -2791,7 +2792,7 @@ function UIDragPanelBounceTest:initExtend() local alert = ccui.Text:create() alert:setString("DragPanel Bounce") - alert:setFontName(font_UIDragPanelTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 2.925)) @@ -2839,10 +2840,10 @@ function UINodeContainerTest:initExtend() self:init() local widgetSize = self._widget:getContentSize() - + print("setFontName before") self._displayValueLabel = ccui.Text:create() self._displayValueLabel:setString("NodeContainer Add CCNode") - self._displayValueLabel:setFontName(font_UINodeContainerTest) + self._displayValueLabel:setFontName(font_TextName) self._displayValueLabel:setFontSize(32) self._displayValueLabel:setAnchorPoint(cc.p(0.5, -1)) self._displayValueLabel:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 + self._displayValueLabel:getContentSize().height * 1.5)) @@ -2850,7 +2851,7 @@ function UINodeContainerTest:initExtend() local alert = ccui.Text:create() alert:setString("NodeContainer") - alert:setFontName(font_UINodeContainerTest) + alert:setFontName(font_TextName) alert:setFontSize(30) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 1.75)) @@ -2892,7 +2893,7 @@ function UIRichTextTest:initExtend() local widgetSize = self._widget:getContentSize() local alert = ccui.Text:create("RichText", "fonts/Marker Felt.ttf", 30) - alert:setFontName(font_UINodeContainerTest) + alert:setFontName(font_TextName) alert:setColor(cc.c3b(159, 168, 176)) alert:setPosition(cc.p(widgetSize.width / 2.0, widgetSize.height / 2.0 - alert:getContentSize().height * 3.125)) self._widget:addChild(alert) diff --git a/tests/lua-tests/src/CocoStudioTest/CocoStudioSceneTest/CocoStudioSceneTest.lua b/tests/lua-tests/src/CocoStudioTest/CocoStudioSceneTest/CocoStudioSceneTest.lua index b64aad32b8..8e4e375b97 100644 --- a/tests/lua-tests/src/CocoStudioTest/CocoStudioSceneTest/CocoStudioSceneTest.lua +++ b/tests/lua-tests/src/CocoStudioTest/CocoStudioSceneTest/CocoStudioSceneTest.lua @@ -25,6 +25,15 @@ SceneEditorTestLayer.title = "Trigger Test", } +SceneEditorTestLayer.loadtypeStr= +{ + "change to load \nwith binary file", + "change to load \nwith json file" +} + +SceneEditorTestLayer.fileName = "" +SceneEditorTestLayer.rootNode = nil + function SceneEditorTestLayer.extend(target) local t = tolua.getpeer(target) if not t then @@ -70,9 +79,44 @@ function SceneEditorTestLayer:createTitle() title:setPosition( cc.p(VisibleRect:center().x, VisibleRect:top().y - 30)) end +function SceneEditorTestLayer:loadFileChangeHelper(filePathName) + local indexTable = {} + local index = 0 + + while true do + index = string.find(filePathName, "%.", index + 1) + if nil == index then + break + end + + indexTable[#indexTable + 1] = index + end + + if #indexTable == 0 then + return filePathName + end + + local lastIndex = indexTable[#indexTable] + if lastIndex == 1 then + return filePathName + end + local renamePathName= string.sub(filePathName, 1, lastIndex - 1) + + if self.isCsbLoad then + renamePathName = renamePathName .. ".csb" + else + renamePathName = renamePathName .. ".json" + end + print("renamePath is", renamePathName) + return renamePathName +end + +function SceneEditorTestLayer:defaultPlay() + +end + function SceneEditorTestLayer:createMenu() local menu = cc.Menu:create() - local function pre() local scene = cc.Scene:create() scene:addChild(backSceneEditorTest()) @@ -118,6 +162,41 @@ function SceneEditorTestLayer:createMenu() end end + self.isCsbLoad = false + self.loadtypeLabel = cc.Label:createWithSystemFont(self.loadtypeStr[1], "Arial", 12) + local function changeLoadTypeCallback(tag,sender) + self.isCsbLoad = not self.isCsbLoad + if self.isCsbLoad then + self.loadtypeLabel:setString(self.loadtypeStr[2]) + else + self.loadtypeLabel:setString(self.loadtypeStr[1]) + end + + if sceneEditorTestIdx == #SceneEditorTestLayer.title then + self:unscheduleUpdate() + end + + SceneEditorTestLayer.fileName = self:loadFileChangeHelper(SceneEditorTestLayer.fileName) + + if SceneEditorTestLayer.rootNode ~= nil then + self:removeChild(SceneEditorTestLayer.rootNode, true) + SceneEditorTestLayer.rootNode = ccs.SceneReader:getInstance():createNodeWithSceneFile(SceneEditorTestLayer.fileName) + if SceneEditorTestLayer.rootNode == nil then + return + end + self:defaultPlay() + self:addChild(SceneEditorTestLayer.rootNode, 0, 1) + end + end + + local loadTypeItem = cc.MenuItemLabel:create(self.loadtypeLabel) + loadTypeItem:registerScriptTapHandler(changeLoadTypeCallback) + local loadtypeMenu = cc.Menu:create() + loadtypeMenu:addChild(loadTypeItem) + loadtypeMenu:setPosition(cc.p(0,0)) + loadTypeItem:setPosition(cc.p(VisibleRect:rightTop().x -80,VisibleRect:rightTop().y -30)) + self:addChild(loadtypeMenu, 100) + local backMenu = cc.Menu:create() cc.MenuItemFont:setFontName("Arial") cc.MenuItemFont:setFontSize(24) @@ -145,9 +224,16 @@ end function LoadSceneEdtiorFileTest:createGameScene() local node = ccs.SceneReader:getInstance():createNodeWithSceneFile("scenetest/LoadSceneEdtiorFileTest/FishJoy2.json") + SceneEditorTestLayer.fileName = "scenetest/LoadSceneEdtiorFileTest/FishJoy2.json" + SceneEditorTestLayer.rootNode = node + self:defaultPlay() return node end +function LoadSceneEdtiorFileTest:defaultPlay() + +end + function LoadSceneEdtiorFileTest:onEnter() self:createMenu() self:createTitle() @@ -191,13 +277,9 @@ end function SpriteComponentTest:createGameScene() local node = ccs.SceneReader:getInstance():createNodeWithSceneFile("scenetest/SpriteComponentTest/SpriteComponentTest.json") if nil ~= node then - local action1 = cc.Blink:create(2, 10) - local action2 = cc.Blink:create(2, 5) - - local sister1 = node:getChildByTag(10003):getComponent("CCSprite") - sister1:getNode():runAction(action1) - local sister2 = node:getChildByTag(10004):getComponent("CCSprite") - sister2:getNode():runAction(action2) + SceneEditorTestLayer.fileName = "scenetest/SpriteComponentTest/SpriteComponentTest.json" + SceneEditorTestLayer.rootNode = node + self:defaultPlay() end return node @@ -209,8 +291,19 @@ function SpriteComponentTest:onEnter() local root = self:createGameScene() if nil ~= root then self:addChild(root, 0, 1) + end +end + +function SpriteComponentTest:defaultPlay() + if SceneEditorTestLayer.rootNode ~= nil then + local action1 = cc.Blink:create(2, 10) + local action2 = cc.Blink:create(2, 5) + + local sister1 = SceneEditorTestLayer.rootNode:getChildByTag(10003):getComponent("CCSprite") + sister1:getNode():runAction(action1) + local sister2 = SceneEditorTestLayer.rootNode:getChildByTag(10004):getComponent("CCSprite") + sister2:getNode():runAction(action2) end - end function SpriteComponentTest.create() @@ -246,14 +339,23 @@ end function ArmatureComponentTest:createGameScene() local node = ccs.SceneReader:getInstance():createNodeWithSceneFile("scenetest/ArmatureComponentTest/ArmatureComponentTest.json") if nil ~= node then + SceneEditorTestLayer.fileName = "scenetest/ArmatureComponentTest/ArmatureComponentTest.json" + SceneEditorTestLayer.rootNode = node + + self:defaultPlay() + end + + return node +end + +function ArmatureComponentTest:defaultPlay() + if SceneEditorTestLayer.rootName ~= nil then local blowFish = node:getChildByTag(10007):getComponent("CCArmature") blowFish:getNode():runAction(cc.MoveBy:create(10.0, cc.p(-1000.0, 0))) local butterflyfish = node:getChildByTag(10008):getComponent("CCArmature") - butterflyfish:getNode():runAction(CCMoveBy:create(10.0, cc.p(-1000.0, 0))) + butterflyfish:getNode():runAction(cc.MoveBy:create(10.0, cc.p(-1000.0, 0))) end - - return node end function ArmatureComponentTest:onEnter() @@ -299,23 +401,31 @@ end function UIComponentTest:createGameScene() local node = ccs.SceneReader:getInstance():createNodeWithSceneFile("scenetest/UIComponentTest/UIComponentTest.json") if nil ~= node then - local render = node:getChildByTag(10025):getComponent("GUIComponent") + SceneEditorTestLayer.fileName = "scenetest/UIComponentTest/UIComponentTest.json" + SceneEditorTestLayer.rootNode = node + self:defaultPlay() + end + + return node +end + +function UIComponentTest:defaultPlay() + if SceneEditorTestLayer.rootNode ~= nil then + local render = SceneEditorTestLayer.rootNode:getChildByTag(10025):getComponent("GUIComponent") local widget = render:getNode() local button = widget:getChildByName("Button_156") local function onTouch(sender, eventType) if eventType == ccui.TouchEventType.began then - local blowFish = node:getChildByTag(10010):getComponent("CCArmature") + local blowFish = SceneEditorTestLayer.rootNode:getChildByTag(10010):getComponent("CCArmature") blowFish:getNode():runAction(cc.MoveBy:create(10.0, cc.p(-1000.0, 0))) - local butterflyfish = node:getChildByTag(10011):getComponent("CCArmature") + local butterflyfish = SceneEditorTestLayer.rootNode:getChildByTag(10011):getComponent("CCArmature") butterflyfish:getNode():runAction(cc.MoveBy:create(10.0, cc.p(-1000.0, 0))) end end button:addTouchEventListener(onTouch) end - - return node end function UIComponentTest:onEnter() @@ -361,7 +471,18 @@ end function TmxMapComponentTest:createGameScene() local node = ccs.SceneReader:getInstance():createNodeWithSceneFile("scenetest/TmxMapComponentTest/TmxMapComponentTest.json") if nil ~= node then - local tmxMap = node:getChildByTag(10015):getComponent("CCTMXTiledMap") + SceneEditorTestLayer.fileName = "scenetest/TmxMapComponentTest/TmxMapComponentTest.json" + SceneEditorTestLayer.rootNode = node + + self:defaultPlay() + end + + return node +end + +function TmxMapComponentTest:defaultPlay() + if SceneEditorTestLayer.rootNode ~= nil then + local tmxMap = SceneEditorTestLayer.rootNode:getChildByTag(10015):getComponent("CCTMXTiledMap") local actionTo = cc.SkewTo:create(2, 0.0, 2.0) local rotateTo = cc.RotateTo:create(2, 61.0) local actionScaleTo = cc.ScaleTo:create(2, -0.44, 0.47) @@ -374,8 +495,6 @@ function TmxMapComponentTest:createGameScene() tmxMap:getNode():runAction(cc.Sequence:create(rotateTo, rotateToBack)) tmxMap:getNode():runAction(cc.Sequence:create(actionScaleTo, actionScaleToBack)) end - - return node end function TmxMapComponentTest:onEnter() @@ -421,13 +540,22 @@ end function ParticleComponentTest:createGameScene() local node = ccs.SceneReader:getInstance():createNodeWithSceneFile("scenetest/ParticleComponentTest/ParticleComponentTest.json") if nil ~= node then - local particle = node:getChildByTag(10020):getComponent("CCParticleSystemQuad") + SceneEditorTestLayer.fileName = "scenetest/ParticleComponentTest/ParticleComponentTest.json" + SceneEditorTestLayer.rootNode = node + + self:defaultPlay() + end + + return node +end + +function ParticleComponentTest:defaultPlay() + if SceneEditorTestLayer.rootNode ~= nil then + local particle = SceneEditorTestLayer.rootNode:getChildByTag(10020):getComponent("CCParticleSystemQuad") local jump = cc.JumpBy:create(5, cc.p(-500,0), 50, 4) local action = cc.Sequence:create( jump, jump:reverse()) particle:getNode():runAction(action) end - - return node end function ParticleComponentTest:onEnter() @@ -473,13 +601,24 @@ end function EffectComponentTest:createGameScene() local node = ccs.SceneReader:getInstance():createNodeWithSceneFile("scenetest/EffectComponentTest/EffectComponentTest.json") if nil ~= node then - local render = node:getChildByTag(10015):getComponent("CCArmature") + SceneEditorTestLayer.fileName = "scenetest/EffectComponentTest/EffectComponentTest.json" + SceneEditorTestLayer.rootNode = node + + self:defaultPlay() + end + + return node +end + +function EffectComponentTest:defaultPlay() + if SceneEditorTestLayer.rootNode ~= nil then + local render = SceneEditorTestLayer.rootNode:getChildByTag(10015):getComponent("CCArmature") local armature = render:getNode() local function animationEvent(armatureBack,movementType,movementID) local id = movementID if movementType == ccs.MovementEventType.loopComplete then if id == "Fire" then - local audio = node:getChildByTag(10015):getComponent("CCComAudio") + local audio = SceneEditorTestLayer.rootNode:getChildByTag(10015):getComponent("CCComAudio") audio:playEffect() end end @@ -487,8 +626,6 @@ function EffectComponentTest:createGameScene() armature:getAnimation():setMovementEventCallFunc(animationEvent) end - - return node end function EffectComponentTest:onEnter() @@ -534,13 +671,22 @@ end function BackgroundComponentTest:createGameScene() local node = ccs.SceneReader:getInstance():createNodeWithSceneFile("scenetest/BackgroundComponentTest/BackgroundComponentTest.json") if nil ~= node then - local audio = node:getComponent("CCBackgroundAudio") - audio:playBackgroundMusic() + SceneEditorTestLayer.fileName = "scenetest/BackgroundComponentTest/BackgroundComponentTest.json" + SceneEditorTestLayer.rootNode = node + + self:defaultPlay() end return node end +function BackgroundComponentTest:defaultPlay() + if SceneEditorTestLayer.rootNode ~= nil then + local audio = SceneEditorTestLayer.rootNode:getComponent("CCBackgroundAudio") + audio:playBackgroundMusic() + end +end + function BackgroundComponentTest:onEnter() self:createMenu() self:createTitle() @@ -583,11 +729,21 @@ end function AttributeComponentTest:createGameScene() local node = ccs.SceneReader:getInstance():createNodeWithSceneFile("scenetest/AttributeComponentTest/AttributeComponentTest.json") - local attribute = node:getChildByTag(10015):getComponent("CCComAttribute") - print(string.format("Name: %s, HP: %f, MP: %f", attribute:getString("name"), attribute:getFloat("maxHP"), attribute:getFloat("maxMP"))) + if nil ~= node then + SceneEditorTestLayer.fileName = "scenetest/AttributeComponentTest/AttributeComponentTest.json" + SceneEditorTestLayer.rootNode = node + self:defaultPlay() + end return node end +function AttributeComponentTest:defaultPlay() + if SceneEditorTestLayer.rootNode ~= nil then + local attribute = SceneEditorTestLayer.rootNode:getChildByTag(10015):getComponent("CCComAttribute") + print(string.format("Name: %s, HP: %f, MP: %f", attribute:getString("name"), attribute:getFloat("maxHP"), attribute:getFloat("maxMP"))) + end +end + function AttributeComponentTest:onEnter() self:createMenu() self:createTitle() @@ -631,7 +787,12 @@ end function TriggerTest:createGameScene() local node = ccs.SceneReader:getInstance():createNodeWithSceneFile("scenetest/TriggerTest/TriggerTest.json") + if nil ~= node then + SceneEditorTestLayer.fileName = "scenetest/TriggerTest/TriggerTest.json" + SceneEditorTestLayer.rootNode = node + self:defaultPlay() + end return node end @@ -658,6 +819,17 @@ function TriggerTest:onEnter() local root = self:createGameScene() if nil ~= root then self:addChild(root, 0, 1) + local function onTouchEvent(touch, event) + if eventType == "began" then + return self:onTouchBegan(touch, event) + elseif eventType == "moved" then + self:onTouchMoved(touch, event) + elseif eventType == "ended" then + self:onTouchEnded(touch, event) + elseif eventType == "cancelled" then + self:onTouchCancelled(touch, event) + end + end self._touchListener = nil local listener = cc.EventListenerTouchOneByOne:create() listener:setSwallowTouches(true) @@ -668,20 +840,27 @@ function TriggerTest:onEnter() local eventDispatcher = self:getEventDispatcher() eventDispatcher:addEventListenerWithSceneGraphPriority(listener, self) self._touchListener = listener + + self:unscheduleUpdate() local function update(dt) ccs.sendTriggerEvent(triggerEventDef.TRIGGEREVENT_UPDATESCENE) end self:scheduleUpdateWithPriorityLua(update,0) + ccs.sendTriggerEvent(triggerEventDef.TRIGGEREVENT_ENTERSCENE) - end - + end +end + +function TriggerTest:defaultPlay() + end function TriggerTest:onExit() - ccs.sendTriggerEvent(triggerEventDef.TRIGGEREVENT_LEAVESCENE) self:unscheduleUpdate() + ccs.sendTriggerEvent(triggerEventDef.TRIGGEREVENT_LEAVESCENE) local dispatcher = self:getEventDispatcher() dispatcher:removeEventListener(self._touchListener) + self._touchListener = nil ccs.TriggerMng.destroyInstance() ccs.ArmatureDataManager:destroyInstance() ccs.SceneReader:destroyInstance() diff --git a/tests/lua-tests/src/ExtensionTest/ExtensionTest.lua b/tests/lua-tests/src/ExtensionTest/ExtensionTest.lua index 22cf4fad6a..d0b5b72def 100644 --- a/tests/lua-tests/src/ExtensionTest/ExtensionTest.lua +++ b/tests/lua-tests/src/ExtensionTest/ExtensionTest.lua @@ -1,6 +1,5 @@ require "src/ExtensionTest/CocosBuilderTest" require "src/ExtensionTest/WebProxyTest" -require "src/ExtensionTest/SceneEditorTest" local LINE_SPACE = 40 local kItemTagBasic = 1000 @@ -14,8 +13,7 @@ local ExtensionTestEnum = TEST_EDITBOX = 4, TEST_TABLEVIEW = 5, TEST_SCROLLVIEW = 6, - TEST_STUDIOSCENE = 7, - TEST_MAX_COUNT = 8, + TEST_MAX_COUNT = 7, } local testsName = @@ -27,7 +25,6 @@ local testsName = "EditBoxTest", "TableViewTest", "ScrollViewTest", - "CocoStudioSceneTest", } @@ -1190,7 +1187,6 @@ local CreateExtensionsTestTable = runEditBoxTest, runTableViewTest, runScrollViewTest, - runStudioSceneTest, } diff --git a/tests/lua-tests/src/ExtensionTest/SceneEditorTest.lua b/tests/lua-tests/src/ExtensionTest/SceneEditorTest.lua deleted file mode 100644 index 625db70527..0000000000 --- a/tests/lua-tests/src/ExtensionTest/SceneEditorTest.lua +++ /dev/null @@ -1,270 +0,0 @@ -require "CCBReaderLoad" - -function SceneEditorTestLayer(filename) - - local layer = cc.Layer:create() - local isCsbLoad = false; - local loadtypeStr = {"change to load \nwith binary file","change to load \nwith json file"} - local loadtypelb = cc.Label:createWithSystemFont(loadtypeStr[1], "Arial", 12); - local filePath = filename - layer.rootNode = nil - function layer:defaultPlay()end - - local loadFileChangeHelper = function(filename) - if filename ~= nil then - if isCsbLoad then - return filename .. ".csb" - else - return filename .. ".json" - end - end - - return filename - end - - local changeLoadTypeCallback = function(sender) - isCsbLoad = not isCsbLoad - loadtypelb:setString(loadtypeStr[isCsbLoad == false and 1 or 2]) - local file = loadFileChangeHelper(filePath) - - if layer.rootNode ~= nil then - layer:removeChild(layer.rootNode) - layer.rootNode = SceneReader:getInstance():createNodeWithSceneFile(file) - layer:addChild(layer.rootNode, 0, 1) - layer:defaultPlay() - end - end - - function layer:enter() - layer.rootNode = SceneReader:getInstance():createNodeWithSceneFile(loadFileChangeHelper(filePath)) - layer:addChild(layer.rootNode, 0, 1) - layer:defaultPlay() - end - - function layer:exit() - ccs.ArmatureDataManager:destroyInstance() - ccs.SceneReader:destroyInstance() - ccs.ActionManagerEx:destroyInstance() - ccs.GUIReader:destroyInstance() - end - - local function onNodeEvent(event) - if "enter" == event then - layer:enter() - elseif "exit" == event then - layer:exit() - end - end - layer:registerScriptHandler(onNodeEvent) - - local itemlb = cc.MenuItemLabel:create(loadtypelb) - itemlb:registerScriptTapHandler(changeLoadTypeCallback) - local loadtypemenu = cc.Menu:create(itemlb) - loadtypemenu:setPosition(cc.p(VisibleRect:rightTop().x -50,VisibleRect:rightTop().y -20)); - layer:addChild(loadtypemenu,100); - - Helper.initWithLayer(layer) - Helper.titleLabel:setString("SceneReader Test LoadSceneEditorFile") - return layer -end - -function LoadSceneEdtiorFileTest() - local layer = SceneEditorTestLayer("scenetest/LoadSceneEdtiorFileTest/FishJoy2") - Helper.titleLabel:setString("loadSceneEdtiorFile Test") - - return layer -end - -function SpriteComponentTest() - local layer = SceneEditorTestLayer("scenetest/SpriteComponentTest/SpriteComponentTest") - Helper.titleLabel:setString("Sprite Component Test") - - function layer:defaultPlay() - layer.rootNode:getChildByTag(10003):getComponent("CCSprite"):getNode():runAction(cc.Blink:create(2, 10)); - layer.rootNode:getChildByTag(10004):getComponent("CCSprite"):getNode():runAction(cc.Blink:create(2, 5)); - end - - return layer -end - -function ArmatureComponentTest() - local layer = SceneEditorTestLayer("scenetest/ArmatureComponentTest/ArmatureComponentTest") - Helper.titleLabel:setString("Armature Component Test") - - function layer:defaultPlay() - layer.rootNode:getChildByTag(10007):getComponent("CCArmature"):getNode():runAction(cc.MoveBy:create(10.0, cc.p(-1000.0, 0))) - layer.rootNode:getChildByTag(10008):getComponent("CCArmature"):getNode():runAction(cc.MoveBy:create(10.0, cc.p(-1000.0, 0))) - end - - return layer -end - -function UIComponentTest() - local layer = SceneEditorTestLayer("scenetest/UIComponentTest/UIComponentTest") - Helper.titleLabel:setString("UI Component Test") - - local function touchEvent(sender,eventType) - if eventType == ccui.TouchEventType.began then - layer.rootNode:getChildByTag(10010):getComponent("CCArmature"):getNode():runAction(cc.MoveBy:create(10.0, cc.p(-1000.0, 0))) - layer.rootNode:getChildByTag(10011):getComponent("CCArmature"):getNode():runAction(cc.MoveBy:create(10.0, cc.p(-1000.0, 0))) - end - end - - function layer:defaultPlay() - local render = layer.rootNode:getChildByTag(10025):getComponent("GUIComponent") - local widget = render:getNode() - local button = widget:getChildByName("Button_156") - button:addTouchEventListener(touchEvent) - end - - return layer -end - -function TmxMapComponentTest() - local layer = SceneEditorTestLayer("scenetest/TmxMapComponentTest/TmxMapComponentTest") - Helper.titleLabel:setString("TmxMap Component Test") - - function layer:defaultPlay() - local render = layer.rootNode:getChildByTag(10015):getComponent("CCTMXTiledMap") - - local skewTo = cc.SkewTo:create(2, 0, 2); - local rotateTo = cc.RotateTo:create(2, 61); - local scaleTo = cc.ScaleTo:create(2, -0.44, 0.47); - local scaleBack = cc.ScaleTo:create(2, 1, 1); - local rotateBack = cc.RotateTo:create(2, 0); - local skewBack = cc.SkewTo:create(2, 0, 0); - render:getNode():runAction(cc.Sequence:create(skewTo, skewBack)); - render:getNode():runAction(cc.Sequence:create(rotateTo, rotateBack)); - render:getNode():runAction(cc.Sequence:create(scaleTo, scaleBack)); - end - - return layer -end - -function ParticleComponentTest() - local layer = SceneEditorTestLayer("scenetest/ParticleComponentTest/ParticleComponentTest") - Helper.titleLabel:setString("Particle Component Test") - - function layer:defaultPlay() - local render = layer.rootNode:getChildByTag(10020):getComponent("CCParticleSystemQuad") - - local action = cc.JumpBy:create(5, cc.p(-500,0), 50, 4); - render:getNode():runAction(cc.Sequence:create(action, action:reverse())) - end - - return layer -end - -function EffectComponentTest() - local layer = SceneEditorTestLayer("scenetest/EffectComponentTest/EffectComponentTest") - Helper.titleLabel:setString("Effect Component Test") - - local animationEvent = function(armature,movementType,movementID) - if movementType == ccs.MovementEventType.loopComplete then - if movementID == "Fire" then - layer.rootNode:getChildByTag(10015):getComponent("CCComAudio"):playEffect() - end - end - end - - function layer:defaultPlay() - local render = layer.rootNode:getChildByTag(10015):getComponent("CCArmature") - - render:getNode():getAnimation():setMovementEventCallFunc(animationEvent); - end - - return layer -end - -function BackgroundComponentTest() - local layer = SceneEditorTestLayer("scenetest/BackgroundComponentTest/BackgroundComponentTest") - Helper.titleLabel:setString("Background Component Test") - - function layer:defaultPlay() - layer.rootNode:getComponent("CCBackgroundAudio"):playBackgroundMusic(); - end - - return layer -end - -function AttributeComponentTest() - local layer = SceneEditorTestLayer("scenetest/AttributeComponentTest/AttributeComponentTest") - Helper.titleLabel:setString("Attribute Component Test") - - function layer:defaultPlay() - local attribute = layer.rootNode:getChildByTag(10015):getComponent("CCComAttribute") - cclog("Name: " .. attribute:getString("name") .. ", HP: " .. attribute:getFloat("maxHP") .. ", MP: " .. attribute:getFloat("maxMP")) - end - - return layer -end - -function TriggerTest() - local layer = SceneEditorTestLayer("scenetest/TriggerTest/TriggerTest") - Helper.titleLabel:setString("Trigger Test") - - local function onTouchBegan(touch, event) - ccs.sendTriggerEvent(triggerEventDef.TRIGGEREVENT_TOUCHBEGAN) - end - local function onTouchMoved(touch, event) - ccs.sendTriggerEvent(triggerEventDef.TRIGGEREVENT_TOUCHMOVED) - end - local function onTouchEnded(touch, event) - ccs.sendTriggerEvent(triggerEventDef.TRIGGEREVENT_TOUCHENDED) - end - local function onTouchCancelled(touch, event) - ccs.sendTriggerEvent(triggerEventDef.TRIGGEREVENT_TOUCHCANCELLED) - end - - - local touchListener = cc.EventListenerTouchOneByOne:create() - touchListener:setSwallowTouches(true) - touchListener:registerScriptHandler(onTouchBegan, cc.Handler.EVENT_TOUCH_BEGAN) - touchListener:registerScriptHandler(onTouchMoved, cc.Handler.EVENT_TOUCH_MOVED) - touchListener:registerScriptHandler(onTouchEnded, cc.Handler.EVENT_TOUCH_ENDED) - touchListener:registerScriptHandler(onTouchCancelled, cc.Handler.EVENT_TOUCH_CANCELLED) - local eventDispatcher = layer:getEventDispatcher() - eventDispatcher:addEventListenerWithFixedPriority(touchListener, 1) - - - local function gameLogic(dt) - ccs.sendTriggerEvent(triggerEventDef.TRIGGEREVENT_UPDATESCENE) - end - - local layerExit = layer.exit - function layer:exit() - ccs.sendTriggerEvent(triggerEventDef.TRIGGEREVENT_LEAVESCENE) - layer:unschedule(gameLogic) - eventDispatcher:removeEventListener(touchListener) - layerExit(layer) - end - - schedule(layer,gameLogic) - - function layer:defaultPlay() - ccs.sendTriggerEvent(triggerEventDef.TRIGGEREVENT_ENTERSCENE); - end - - return layer -end - -function runStudioSceneTest() - local scene = cc.Scene:create() - - Helper.createFunctionTable = { - LoadSceneEdtiorFileTest, - SpriteComponentTest, - ArmatureComponentTest, - UIComponentTest, - TmxMapComponentTest, - ParticleComponentTest, - EffectComponentTest, - BackgroundComponentTest, - AttributeComponentTest, - TriggerTest, - } - - scene:addChild(Helper.createFunctionTable[1]()) - scene:addChild(CreateBackMenuItem()) - return scene -end diff --git a/tests/lua-tests/src/FastTiledMapTest/FastTiledMapTest.lua b/tests/lua-tests/src/FastTiledMapTest/FastTiledMapTest.lua new file mode 100644 index 0000000000..d3ee245bd5 --- /dev/null +++ b/tests/lua-tests/src/FastTiledMapTest/FastTiledMapTest.lua @@ -0,0 +1,1186 @@ +local size = cc.Director:getInstance():getWinSize() +local scheduler = cc.Director:getInstance():getScheduler() + +local kTagTileMap = 1 + + +local function createTileDemoLayer(title, subtitle) + local layer = cc.Layer:create() + Helper.initWithLayer(layer) + local titleStr = title == nil and "No title" or title + local subTitleStr = subtitle == nil and "drag the screen" or subtitle + Helper.titleLabel:setString(titleStr) + Helper.subtitleLabel:setString(subTitleStr) + + local function onTouchesMoved(touches, event ) + local diff = touches[1]:getDelta() + local node = layer:getChildByTag(kTagTileMap) + local currentPosX, currentPosY= node:getPosition() + node:setPosition(cc.p(currentPosX + diff.x, currentPosY + diff.y)) + end + + local listener = cc.EventListenerTouchAllAtOnce:create() + listener:registerScriptHandler(onTouchesMoved,cc.Handler.EVENT_TOUCHES_MOVED ) + local eventDispatcher = layer:getEventDispatcher() + eventDispatcher:addEventListenerWithSceneGraphPriority(listener, layer) + + return layer +end +-------------------------------------------------------------------- +-- +-- TileMapTest +-- +-------------------------------------------------------------------- +local function TileMapTest() + local layer = createTileDemoLayer("TileMapAtlas") + + local map = cc.TileMapAtlas:create(s_TilesPng, s_LevelMapTga, 16, 16) + -- Convert it to "alias" (GL_LINEAR filtering) + map:getTexture():setAntiAliasTexParameters() + + local s = map:getContentSize() + cclog("ContentSize: %f, %f", s.width,s.height) + + -- If you are not going to use the Map, you can free it now + -- NEW since v0.7 + map:releaseMap() + + layer:addChild(map, 0, kTagTileMap) + + map:setAnchorPoint( cc.p(0, 0.5) ) + + local scale = cc.ScaleBy:create(4, 0.8) + local scaleBack = scale:reverse() + + local seq = cc.Sequence:create(scale, scaleBack) + + map:runAction(cc.RepeatForever:create(seq)) + + return layer +end + +-------------------------------------------------------------------- +-- +-- TileMapEditTest +-- +-------------------------------------------------------------------- +local function TileMapEditTest() + local layer = createTileDemoLayer("Editable TileMapAtlas") + local map = cc.TileMapAtlas:create(s_TilesPng, s_LevelMapTga, 16, 16) + -- Create an Aliased Atlas + map:getTexture():setAliasTexParameters() + + local s = map:getContentSize() + cclog("ContentSize: %f, %f", s.width,s.height) + + -- If you are not going to use the Map, you can free it now + -- [tilemap releaseMap) + -- And if you are going to use, it you can access the data with: + local function updateMap(dt) + + -- IMPORTANT + -- The only limitation is that you cannot change an empty, or assign an empty tile to a tile + -- The value 0 not rendered so don't assign or change a tile with value 0 + + local tilemap = layer:getChildByTag(kTagTileMap) + + -- + -- For example you can iterate over all the tiles + -- using this code, but try to avoid the iteration + -- over all your tiles in every frame. It's very expensive + -- for(int x=0 x < tilemap.tgaInfo:width x++) + -- for(int y=0 y < tilemap.tgaInfo:height y++) + -- Color3B c =[tilemap getTileAt:local Make(x,y)) + -- if( c.r != 0 ) + -- --------cclog("%d,%d = %d", x,y,c.r) + -- end + -- end + -- end + + -- NEW since v0.7 + local c = tilemap:getTileAt(cc.p(13,21)) + c.r = c.r + 1 + c.r = c.r % 50 + + if( c.r==0) then + c.r=1 + end + -- NEW since v0.7 + tilemap:setTile(c, cc.p(13,21) ) + end + + local schedulerEntry = nil + local function onNodeEvent(event) + if event == "enter" then + schedulerEntry = scheduler:scheduleScriptFunc(updateMap, 0.2, false) + elseif event == "exit" then + scheduler:unscheduleScriptEntry(schedulerEntry) + end + end + + layer:registerScriptHandler(onNodeEvent) + + layer:addChild(map, 0, kTagTileMap) + + map:setAnchorPoint( cc.p(0, 0) ) + map:setPosition( cc.p(-20,-200) ) + + return layer +end + + +-------------------------------------------------------------------- +-- +-- TMXOrthoTest +-- +-------------------------------------------------------------------- +local function TMXOrthoTest() + local layer = createTileDemoLayer("TMX Orthogonal test") + -- + -- Test orthogonal with 3d camera and anti-alias textures + -- + -- it should not flicker. No artifacts should appear + -- + --local color = cc.LayerColor:create( cc.c4b(64,64,64,255) ) + --addChild(color, -1) + + local map = cc.FastTMXTiledMap:create("TileMaps/orthogonal-test2.tmx") + layer:addChild(map, 0, kTagTileMap) + + local s = map:getContentSize() + cclog("ContentSize: %f, %f", s.width,s.height) + + local scale = cc.ScaleBy:create(10, 0.1) + local back = scale:reverse() + local seq = cc.Sequence:create(scale, back) + local repeatAction = cc.RepeatForever:create(seq) + map:runAction(repeatAction) + + local function onNodeEvent(event) + if event == "enter" then + cc.Director:getInstance():setProjection(cc.DIRECTOR_PROJECTION3_D ) + elseif event == "exit" then + cc.Director:getInstance():setProjection(cc.DIRECTOR_PROJECTION_DEFAULT ) + end + end + + layer:registerScriptHandler(onNodeEvent) + + + return layer +end + +-------------------------------------------------------------------- +-- +-- TMXOrthoTest2 +-- +-------------------------------------------------------------------- +local function TMXOrthoTest2() + local layer = createTileDemoLayer("TMX Ortho test2") + + local map = cc.FastTMXTiledMap:create("TileMaps/orthogonal-test1.tmx") + layer:addChild(map, 0, kTagTileMap) + + local s = map:getContentSize() + cclog("ContentSize: %f, %f", s.width,s.height) + + map:runAction( cc.ScaleBy:create(2, 0.5) ) + return layer +end + +-------------------------------------------------------------------- +-- +-- TMXOrthoTest3 +-- +-------------------------------------------------------------------- +local function TMXOrthoTest3() + local layer = createTileDemoLayer("TMX anchorPoint test") + local map = cc.FastTMXTiledMap:create("TileMaps/orthogonal-test3.tmx") + layer:addChild(map, 0, kTagTileMap) + + local s = map:getContentSize() + cclog("ContentSize: %f, %f", s.width,s.height) + + map:setScale(0.2) + map:setAnchorPoint( cc.p(0.5, 0.5) ) + return layer +end + + +-------------------------------------------------------------------- +-- +-- TMXOrthoTest4 +-- +-------------------------------------------------------------------- +local function TMXOrthoTest4() + local ret = createTileDemoLayer("TMX width/height test") + local map = cc.FastTMXTiledMap:create("TileMaps/orthogonal-test4.tmx") + ret:addChild(map, 0, kTagTileMap) + + local s1 = map:getContentSize() + cclog("ContentSize: %f, %f", s1.width,s1.height) + + map:setAnchorPoint(cc.p(0, 0)) + + local layer = map:getLayer("Layer 0") + local s = layer:getLayerSize() + + local sprite = layer:getTileAt(cc.p(0,0)) + sprite:setScale(2) + sprite = layer:getTileAt(cc.p(s.width-1,0)) + sprite:setScale(2) + sprite = layer:getTileAt(cc.p(0,s.height-1)) + sprite:setScale(2) + sprite = layer:getTileAt(cc.p(s.width-1,s.height-1)) + sprite:setScale(2) + + local schedulerEntry = nil + + local function removeSprite(dt) + scheduler:unscheduleScriptEntry(schedulerEntry) + schedulerEntry = nil + local map = ret:getChildByTag(kTagTileMap) + local layer0 = map:getLayer("Layer 0") + local s = layer0:getLayerSize() + + local sprite = layer0:getTileAt(cc.p(s.width-1,0)) + layer0:removeChild(sprite, true) + local sprite2 = layer0:getTileAt(cc.p(s.width-1, s.height - 1)) + local sprite3 = layer0:getTileAt(cc.p(2, s.height - 1)) + layer0:removeChild(sprite3, true) + layer0:removeChild(sprite2, true) + end + + + local function onNodeEvent(event) + if event == "enter" then + schedulerEntry = scheduler:scheduleScriptFunc(removeSprite, 2, false) + elseif event == "exit" and schedulerEntry ~= nil then + scheduler:unscheduleScriptEntry(schedulerEntry) + end + end + + ret:registerScriptHandler(onNodeEvent) + return ret +end + +-------------------------------------------------------------------- +-- +-- TMXReadWriteTest +-- +-------------------------------------------------------------------- +local SID_UPDATECOL = 100 +local SID_REPAINTWITHGID = 101 +local SID_REMOVETILES = 102 + +local function TMXReadWriteTest() + local ret = createTileDemoLayer("TMX Read/Write test") + local m_gid = 0 + local m_gid2 = 0 + local map = cc.FastTMXTiledMap:create("TileMaps/orthogonal-test2.tmx") + ret:addChild(map, 0, kTagTileMap) + + local s = map:getContentSize() + cclog("ContentSize: %f, %f", s.width,s.height) + + + local layer = map:getLayer("Layer 0") + map:setScale( 1 ) + + local tile0 = layer:getTileAt(cc.p(1,63)) + local tile1 = layer:getTileAt(cc.p(2,63)) + local tile2 = layer:getTileAt(cc.p(3,62))--cc.p(1,62)) + local tile3 = layer:getTileAt(cc.p(2,62)) + tile0:setAnchorPoint( cc.p(0.5, 0.5) ) + tile1:setAnchorPoint( cc.p(0.5, 0.5) ) + tile2:setAnchorPoint( cc.p(0.5, 0.5) ) + tile3:setAnchorPoint( cc.p(0.5, 0.5) ) + + local move = cc.MoveBy:create(0.5, cc.p(0,160)) + local rotate = cc.RotateBy:create(2, 360) + local scale = cc.ScaleBy:create(2, 5) + local opacity = cc.FadeOut:create(2) + local fadein = cc.FadeIn:create(2) + local scaleback = cc.ScaleTo:create(1, 1) + + local function removeSprite(sender) + --------cclog("removing tile: %x", sender) + local node = sender + if nil == node then + print("Errro node is nil") + end + local p = node:getParent() + + if p ~= nil then + p:removeChild(node, true) + end + ----------cclog("atlas quantity: %d", p:textureAtlas():totalQuads()) + end + + local finish = cc.CallFunc:create(removeSprite) + local seq0 = cc.Sequence:create(move, rotate, scale, opacity, fadein, scaleback, finish) + local seq1 = seq0:clone() + local seq2 = seq0:clone() + local seq3 = seq0:clone() + + tile0:runAction(seq0) + tile1:runAction(seq1) + tile2:runAction(seq2) + tile3:runAction(seq3) + + + m_gid = layer:getTileGIDAt(cc.p(0,63)) + --------cclog("Tile GID at:(0,63) is: %d", m_gid) + local updateColScheduler = nil + local repainWithGIDScheduler = nil + local removeTilesScheduler = nil + + local function updateCol(dt) + + local map = ret:getChildByTag(kTagTileMap) + local layer = map:getChildByTag(0) + + --------cclog("++++atlas quantity: %d", layer:textureAtlas():getTotalQuads()) + --------cclog("++++children: %d", layer:getChildren():count() ) + + + local s = layer:getLayerSize() + local y = 0 + for y=0, s.height-1, 1 do + layer:setTileGID(m_gid2, cc.p(3, y)) + end + + m_gid2 = (m_gid2 + 1) % 80 + end + + local function repaintWithGID(dt) + -- unschedule:_cmd) + local map = ret:getChildByTag(kTagTileMap) + local layer = map:getChildByTag(0) + + local s = layer:getLayerSize() + local x = 0 + for x=0, s.width-1, 1 do + local y = s.height-1 + local tmpgid = layer:getTileGIDAt( cc.p(x, y) ) + layer:setTileGID(tmpgid+1, cc.p(x, y)) + end + end + + local function removeTiles(dt) + scheduler:unscheduleScriptEntry(removeTilesScheduler) + removeTilesScheduler = nil + local map = ret:getChildByTag(kTagTileMap) + local layer = map:getChildByTag(0) + local s = layer:getLayerSize() + local y = 0 + for y=0, s.height-1, 1 do + layer:removeTileAt( cc.p(5.0, y) ) + end + end + + local function onNodeEvent(event) + if event == "enter" then + updateColScheduler = scheduler:scheduleScriptFunc(updateCol, 2, false) + repainWithGIDScheduler = scheduler:scheduleScriptFunc(repaintWithGID, 2.05, false) + removeTilesScheduler = scheduler:scheduleScriptFunc(removeTiles, 1.0, false) + elseif event == "exit" then + if updateColScheduler ~= nil then + scheduler:unscheduleScriptEntry(updateColScheduler) + end + + if repainWithGIDScheduler ~= nil then + scheduler:unscheduleScriptEntry(repainWithGIDScheduler) + end + + if removeTilesScheduler ~= nil then + scheduler:unscheduleScriptEntry(removeTilesScheduler) + end + + end + end + + ret:registerScriptHandler(onNodeEvent) + --------cclog("++++atlas quantity: %d", layer:textureAtlas():getTotalQuads()) + --------cclog("++++children: %d", layer:getChildren():count() ) + + m_gid2 = 0 + return ret +end + + +-------------------------------------------------------------------- +-- +-- TMXHexTest +-- +-------------------------------------------------------------------- +local function TMXHexTest() + local ret = createTileDemoLayer("TMX Hex tes") + local color = cc.LayerColor:create( cc.c4b(64,64,64,255) ) + ret:addChild(color, -1) + + local map = cc.TMXTiledMap:create("TileMaps/hexa-test.tmx") + ret:addChild(map, 0, kTagTileMap) + + local s = map:getContentSize() + cclog("ContentSize: %f, %f", s.width,s.height) + return ret +end + +-------------------------------------------------------------------- +-- +-- TMXIsoTest +-- +-------------------------------------------------------------------- +local function TMXIsoTest() + local ret = createTileDemoLayer("TMX Isometric test 0") + local color = cc.LayerColor:create( cc.c4b(64,64,64,255) ) + ret:addChild(color, -1) + + local map = cc.FastTMXTiledMap:create("TileMaps/iso-test.tmx") + ret:addChild(map, 0, kTagTileMap) + + -- move map to the center of the screen + local ms = map:getMapSize() + local ts = map:getTileSize() + map:runAction( cc.MoveTo:create(1.0, cc.p( -ms.width * ts.width/2, -ms.height * ts.height/2 )) ) + return ret +end + +-------------------------------------------------------------------- +-- +-- TMXIsoTest1 +-- +-------------------------------------------------------------------- +local function TMXIsoTest1() + local ret = createTileDemoLayer("TMX Isometric test + anchorPoint") + local color = cc.LayerColor:create( cc.c4b(64,64,64,255) ) + ret:addChild(color, -1) + + local map = cc.FastTMXTiledMap:create("TileMaps/iso-test1.tmx") + ret:addChild(map, 0, kTagTileMap) + + local s = map:getContentSize() + cclog("ContentSize: %f, %f", s.width,s.height) + + map:setAnchorPoint(cc.p(0.5, 0.5)) + return ret +end + +-------------------------------------------------------------------- +-- +-- TMXIsoTest2 +-- +-------------------------------------------------------------------- +local function TMXIsoTest2() + local ret = createTileDemoLayer("TMX Isometric test 2") + local color = cc.LayerColor:create( cc.c4b(64,64,64,255) ) + ret:addChild(color, -1) + + local map = cc.FastTMXTiledMap:create("TileMaps/iso-test2.tmx") + ret:addChild(map, 0, kTagTileMap) + + local s = map:getContentSize() + cclog("ContentSize: %f, %f", s.width,s.height) + + -- move map to the center of the screen + local ms = map:getMapSize() + local ts = map:getTileSize() + map:runAction( cc.MoveTo:create(1.0, cc.p( -ms.width * ts.width/2, -ms.height * ts.height/2 ) )) + return ret +end + +-------------------------------------------------------------------- +-- +-- TMXUncompressedTest +-- +-------------------------------------------------------------------- +local function TMXUncompressedTest() + local ret = createTileDemoLayer("TMX Uncompressed test") + local color = cc.LayerColor:create( cc.c4b(64,64,64,255) ) + ret:addChild(color, -1) + + local map = cc.FastTMXTiledMap:create("TileMaps/iso-test2-uncompressed.tmx") + ret:addChild(map, 0, kTagTileMap) + + local s = map:getContentSize() + cclog("ContentSize: %f, %f", s.width,s.height) + + -- move map to the center of the screen + local ms = map:getMapSize() + local ts = map:getTileSize() + map:runAction(cc.MoveTo:create(1.0, cc.p( -ms.width * ts.width/2, -ms.height * ts.height/2 ) )) + + return ret +end + +-------------------------------------------------------------------- +-- +-- TMXTilesetTest +-- +-------------------------------------------------------------------- +local function TMXTilesetTest() + local ret = createTileDemoLayer("TMX Tileset test") + local map = cc.FastTMXTiledMap:create("TileMaps/orthogonal-test5.tmx") + ret:addChild(map, 0, kTagTileMap) + + local s = map:getContentSize() + cclog("ContentSize: %f, %f", s.width,s.height) + + return ret +end + +-------------------------------------------------------------------- +-- +-- TMXOrthoObjectsTest +-- +-------------------------------------------------------------------- +local function TMXOrthoObjectsTest() + local ret = createTileDemoLayer("TMX Ortho object test", "You should see a white box around the 3 platforms") + local map = cc.FastTMXTiledMap:create("TileMaps/ortho-objects.tmx") + ret:addChild(map, -1, kTagTileMap) + + local s = map:getContentSize() + cclog("ContentSize: %f, %f", s.width,s.height) + + --------cclog("---: Iterating over all the group objets") + local group = map:getObjectGroup("Object Group 1") + local objects = group:getObjects() + + local dict = nil + local i = 0 + local len = table.getn(objects) + + for i = 0, len-1, 1 do + dict = objects[i + 1] + + if dict == nil then + break + end + --------cclog("object: %x", dict) + end + + --------cclog("---: Fetching 1 object by name") + -- local platform = group:objectNamed("platform") + --------cclog("platform: %x", platform) + return ret +end + +local function draw() + + local map = tolua.cast(getChildByTag(kTagTileMap), "cc.TMXTiledMap") + local group = map:getObjectGroup("Object Group 1") + + local objects = group:getObjects() + local dict = nil + local i = 0 + local len = table.getn(objects) + for i = 0, len-1, 1 do + dict = objects[i + 1] + + if dict == nil then + break + end + + local key = "x" + local x = dict["x"] + key = "y" + local y = dict["y"]--dynamic_cast(dict:objectForKey("y")):getNumber() + key = "width" + local width = dict["width"]--dynamic_cast(dict:objectForKey("width")):getNumber() + key = "height" + local height = dict["height"]--dynamic_cast(dict:objectForKey("height")):getNumber() + + glLineWidth(3) + + cc.DrawPrimitives.drawLine( cc.p(x, y), cc.p((x+width), y) ) + cc.DrawPrimitives.drawLine( cc.p((x+width), y), cc.p((x+width), (y+height)) ) + cc.DrawPrimitives.drawLine( cc.p((x+width), (y+height)), cc.p(x, (y+height)) ) + cc.DrawPrimitives.drawLine( cc.p(x, (y+height)), cc.p(x, y) ) + + glLineWidth(1) + end +end + +-------------------------------------------------------------------- +-- +-- TMXIsoObjectsTest +-- +-------------------------------------------------------------------- + +local function TMXIsoObjectsTest() + local ret = createTileDemoLayer("TMX Iso object test", "You need to parse them manually. See bug #810") + local map = cc.FastTMXTiledMap:create("TileMaps/iso-test-objectgroup.tmx") + ret:addChild(map, -1, kTagTileMap) + + local s = map:getContentSize() + cclog("ContentSize: %f, %f", s.width,s.height) + + local group = map:getObjectGroup("Object Group 1") + + --UxMutableArray* objects = group:objects() + local objects = group:getObjects() + --UxMutableDictionary* dict + local dict = nil + local i = 0 + local len = table.getn(objects) + for i = 0, len-1, 1 do + -- dict = tolua.cast(objects[i + 1], "cc.Dictionary") + + -- if dict == nil then + -- break + -- end + --------cclog("object: %x", dict) + end + return ret +end + +local function draw() + + local map = tolua.cast(getChildByTag(kTagTileMap), "cc.TMXTiledMap") + local group = map:getObjectGroup("Object Group 1") + + local objects = group:getObjects() + local dict = nil + local i = 0 + local len = table.getn(objects) + for i = 0, len-1, 1 do + dict = tolua.cast(objects[i + 1], "cc.Dictionary") + + if dict == nil then + break + end + + local key = "x" + local x = (tolua.cast(dict:objectForKey(key), "cc.String")):intValue()--dynamic_cast(dict:objectForKey("x")):getNumber() + key = "y" + local y = (tolua.cast(dict:objectForKey(key), "cc.String")):intValue()--dynamic_cast(dict:objectForKey("y")):getNumber() + key = "width" + local width = (tolua.cast(dict:objectForKey(key), "cc.String")):intValue()--dynamic_cast(dict:objectForKey("width")):getNumber() + key = "height" + local height = (tolua.cast(dict:objectForKey(key), "cc.String")):intValue()--dynamic_cast(dict:objectForKey("height")):getNumber() + + glLineWidth(3) + + cc.DrawPrimitives.drawLine( cc.p(x,y), cc.p(x+width,y) ) + cc.DrawPrimitives.drawLine( cc.p(x+width,y), cc.p(x+width,y+height) ) + cc.DrawPrimitives.drawLine( cc.p(x+width,y+height), cc.p(x,y+height) ) + cc.DrawPrimitives.drawLine( cc.p(x,y+height), cc.p(x,y) ) + + glLineWidth(1) + end +end + +-------------------------------------------------------------------- +-- +-- TMXResizeTest +-- +-------------------------------------------------------------------- + +local function TMXResizeTest() + local ret = createTileDemoLayer("TMX resize test", "Should not crash. Testing issue #740") + local map = cc.FastTMXTiledMap:create("TileMaps/orthogonal-test5.tmx") + ret:addChild(map, 0, kTagTileMap) + + local s = map:getContentSize() + cclog("ContentSize: %f, %f", s.width,s.height) + + local layer = map:getLayer("Layer 0") + local ls = layer:getLayerSize() + local x = 0 + local y = 0 + for y = 0, ls.height-1, 1 do + for x = 0, ls.width-1, 1 do + layer:setTileGID(1, cc.p( x, y ) ) + end + end + return ret +end + +-------------------------------------------------------------------- +-- +-- TMXIsoZorder +-- +-------------------------------------------------------------------- +local function TMXIsoZorder() + local m_tamara = nil + local ret = createTileDemoLayer("TMX Iso Zorder", "Sprite should hide behind the trees") + local map = cc.FastTMXTiledMap:create("TileMaps/iso-test-zorder.tmx") + ret:addChild(map, 0, kTagTileMap) + + local s = map:getContentSize() + cclog("ContentSize: %f, %f", s.width,s.height) + map:setPosition(cc.p(-s.width/2,0)) + + m_tamara = cc.Sprite:create(s_pPathSister1) + map:addChild(m_tamara, table.getn(map:getChildren())) + m_tamara:retain() + local mapWidth = map:getMapSize().width * map:getTileSize().width + m_tamara:setPosition(CC_POINT_PIXELS_TO_POINTS(cc.p( mapWidth/2,0))) + m_tamara:setAnchorPoint(cc.p(0.5,0)) + + local move = cc.MoveBy:create(10, cc.p(300,250)) + local back = move:reverse() + local seq = cc.Sequence:create(move, back) + m_tamara:runAction( cc.RepeatForever:create(seq) ) + + local function repositionSprite(dt) + local p = cc.p(m_tamara:getPosition()) + p = CC_POINT_POINTS_TO_PIXELS(p) + local map = ret:getChildByTag(kTagTileMap) + + -- there are only 4 layers. (grass and 3 trees layers) + -- if tamara < 48, z=4 + -- if tamara < 96, z=3 + -- if tamara < 144,z=2 + + local newZ = 4 - (p.y / 48) + newZ = math.max(newZ,0) + + map:reorderChild(m_tamara, newZ) + end + + local schedulerEntry = nil + local function onNodeEvent(event) + if event == "enter" then + schedulerEntry = scheduler:scheduleScriptFunc(repositionSprite, 0, false) + elseif event == "exit" then + if m_tamara ~= nil then + m_tamara:release() + end + scheduler:unscheduleScriptEntry(schedulerEntry) + end + end + + ret:registerScriptHandler(onNodeEvent) + + return ret +end + +-------------------------------------------------------------------- +-- +-- TMXOrthoZorder +-- +-------------------------------------------------------------------- +local function TMXOrthoZorder() + local m_tamara = nil + local ret = createTileDemoLayer("TMX Ortho Zorder", "Sprite should hide behind the trees") + local map = cc.FastTMXTiledMap:create("TileMaps/orthogonal-test-zorder.tmx") + ret:addChild(map, 0, kTagTileMap) + + local s = map:getContentSize() + cclog("ContentSize: %f, %f", s.width,s.height) + + m_tamara = cc.Sprite:create(s_pPathSister1) + map:addChild(m_tamara, table.getn(map:getChildren())) + m_tamara:retain() + m_tamara:setAnchorPoint(cc.p(0.5,0)) + + + local move = cc.MoveBy:create(10, cc.p(400,450)) + local back = move:reverse() + local seq = cc.Sequence:create(move, back) + m_tamara:runAction( cc.RepeatForever:create(seq)) + + local function repositionSprite(dt) + local p = cc.p(m_tamara:getPosition()) + p = CC_POINT_POINTS_TO_PIXELS(p) + local map = ret:getChildByTag(kTagTileMap) + + -- there are only 4 layers. (grass and 3 trees layers) + -- if tamara < 81, z=4 + -- if tamara < 162, z=3 + -- if tamara < 243,z=2 + + -- -10: customization for this particular sample + local newZ = 4 - ( (p.y-10) / 81) + newZ = math.max(newZ,0) + map:reorderChild(m_tamara, newZ) + end + + local schedulerEntry = nil + local function onNodeEvent(event) + if event == "enter" then + schedulerEntry = scheduler:scheduleScriptFunc(repositionSprite, 0, false) + elseif event == "exit" then + if m_tamara ~= nil then + m_tamara:release() + end + scheduler:unscheduleScriptEntry(schedulerEntry) + end + end + + ret:registerScriptHandler(onNodeEvent) + + return ret +end + +-------------------------------------------------------------------- +-- +-- TMXIsoVertexZ +-- +-------------------------------------------------------------------- +local function TMXIsoVertexZ() + local m_tamara = nil + local ret = createTileDemoLayer("TMX Iso VertexZ", "Sprite should hide behind the trees") + local map = cc.FastTMXTiledMap:create("TileMaps/iso-test-vertexz.tmx") + ret:addChild(map, 0, kTagTileMap) + + local s = map:getContentSize() + map:setPosition( cc.p(-s.width/2,0) ) + cclog("ContentSize: %f, %f", s.width,s.height) + + -- because I'm lazy, I'm reusing a tile as an sprite, but since this method uses vertexZ, you + -- can use any cc.Sprite and it will work OK. + local layer = map:getLayer("Trees") + m_tamara = layer:getTileAt( cc.p(29,29) ) + m_tamara:retain() + + local move = cc.MoveBy:create(10, cc.pMul( cc.p(300,250), 1/CC_CONTENT_SCALE_FACTOR() ) ) + local back = move:reverse() + local seq = cc.Sequence:create(move, back) + m_tamara:runAction( cc.RepeatForever:create(seq) ) + local function repositionSprite(dt) + + -- tile height is 64x32 + -- map size: 30x30 + local p = cc.p(m_tamara:getPosition()) + p = CC_POINT_POINTS_TO_PIXELS(p) + local newZ = -(p.y+32) /16 + m_tamara:setPositionZ( newZ ) + end + + local schedulerEntry = nil + local function onNodeEvent(event) + if event == "enter" then + -- TIP: 2d projection should be used + cc.Director:getInstance():setProjection(cc.DIRECTOR_PROJECTION2_D ) + schedulerEntry = scheduler:scheduleScriptFunc(repositionSprite, 0, false) + elseif event == "exit" then + -- At exit use any other projection. + cc.Director:getInstance():setProjection(cc.DIRECTOR_PROJECTION_DEFAULT ) + if m_tamara ~= nil then + m_tamara:release() + end + scheduler:unscheduleScriptEntry(schedulerEntry) + end + end + + ret:registerScriptHandler(onNodeEvent) + return ret +end + +-------------------------------------------------------------------- +-- +-- TMXOrthoVertexZ +-- +-------------------------------------------------------------------- +local function TMXOrthoVertexZ() + local m_tamara = nil + local ret = createTileDemoLayer("TMX Ortho vertexZ", "Sprite should hide behind the trees") + local map = cc.FastTMXTiledMap:create("TileMaps/orthogonal-test-vertexz.tmx") + ret:addChild(map, 0, kTagTileMap) + + local s = map:getContentSize() + cclog("ContentSize: %f, %f", s.width,s.height) + + -- because I'm lazy, I'm reusing a tile as an sprite, but since this method uses vertexZ, you + -- can use any cc.Sprite and it will work OK. + local layer = map:getLayer("trees") + m_tamara = layer:getTileAt(cc.p(0,11)) + cclog("vertexZ:"..m_tamara:getPositionZ()) + m_tamara:retain() + + local move = cc.MoveBy:create(10, cc.pMul( cc.p(400,450), 1/CC_CONTENT_SCALE_FACTOR())) + local back = move:reverse() + local seq = cc.Sequence:create(move, back) + m_tamara:runAction( cc.RepeatForever:create(seq)) + + local function repositionSprite(dt) + -- tile height is 101x81 + -- map size: 12x12 + local p = cc.p(m_tamara:getPosition()) + p = CC_POINT_POINTS_TO_PIXELS(p) + m_tamara:setPositionZ( -( (p.y+81) /81) ) + end + + local schedulerEntry = nil + local function onNodeEvent(event) + if event == "enter" then + -- TIP: 2d projection should be used + cc.Director:getInstance():setProjection(cc.DIRECTOR_PROJECTION2_D ) + schedulerEntry = scheduler:scheduleScriptFunc(repositionSprite, 0, false) + elseif event == "exit" then + -- At exit use any other projection. + cc.Director:getInstance():setProjection(cc.DIRECTOR_PROJECTION_DEFAULT ) + if m_tamara ~= nil then + m_tamara:release() + end + scheduler:unscheduleScriptEntry(schedulerEntry) + end + end + + ret:registerScriptHandler(onNodeEvent) + + return ret +end + +-------------------------------------------------------------------- +-- +-- TMXIsoMoveLayer +-- +-------------------------------------------------------------------- +local function TMXIsoMoveLayer() + local ret = createTileDemoLayer("TMX Iso Move Layer", "Trees should be horizontally aligned") + local map = cc.FastTMXTiledMap:create("TileMaps/iso-test-movelayer.tmx") + ret:addChild(map, 0, kTagTileMap) + + map:setPosition(cc.p(-700,-50)) + + local s = map:getContentSize() + cclog("ContentSize: %f, %f", s.width,s.height) + return ret +end + + +-------------------------------------------------------------------- +-- +-- TMXOrthoMoveLayer +-- +-------------------------------------------------------------------- +local function TMXOrthoMoveLayer() + local ret = createTileDemoLayer("TMX Ortho Move Layer", "Trees should be horizontally aligned") + local map = cc.FastTMXTiledMap:create("TileMaps/orthogonal-test-movelayer.tmx") + ret:addChild(map, 0, kTagTileMap) + + local s = map:getContentSize() + cclog("ContentSize: %f, %f", s.width,s.height) + return ret +end + +-------------------------------------------------------------------- +-- +-- TMXTilePropertyTest +-- +-------------------------------------------------------------------- + +local function TMXTilePropertyTest() + local ret = createTileDemoLayer("TMX Tile Property Test", "In the console you should see tile properties") + local map = cc.TMXTiledMap:create("TileMaps/ortho-tile-property.tmx") + ret:addChild(map ,0 ,kTagTileMap) + local i = 0 + for i=1, 20, 1 do + cclog("GID:%i, Properties:", i)--, map:getPropertiesForGID(i)) + end + return ret +end + +-------------------------------------------------------------------- +-- +-- TMXOrthoFlipTest +-- +-------------------------------------------------------------------- + +local function TMXOrthoFlipTest() + local ret = createTileDemoLayer("TMX tile flip test") + local map = cc.FastTMXTiledMap:create("TileMaps/ortho-rotation-test.tmx") + ret:addChild(map, 0, kTagTileMap) + + local s = map:getContentSize() + cclog("ContentSize: %f, %f", s.width,s.height) + + local action = cc.ScaleBy:create(2, 0.5) + map:runAction(action) + return ret +end + +-------------------------------------------------------------------- +-- +-- TMXOrthoFlipRunTimeTest +-- +-------------------------------------------------------------------- + +local function TMXOrthoFlipRunTimeTest() + local ret = createTileDemoLayer("TMX tile flip run time test", "in 2 sec bottom left tiles will flip") + local map = cc.FastTMXTiledMap:create("TileMaps/ortho-rotation-test.tmx") + ret:addChild(map, 0, kTagTileMap) + + local s = map:getContentSize() + cclog("ContentSize: %f, %f", s.width,s.height) + + local action = cc.ScaleBy:create(2, 0.5) + map:runAction(action) + local function flipIt(dt) + + local map = ret:getChildByTag(kTagTileMap) + local layer = map:getLayer("Layer 0") + + local tileCoord = cc.p(1, 10) + local flags = 0 + local GID, flags = layer:getTileGIDAt(tileCoord, flags) + if 0 ~= bit._and(flags, cc.TMX_TILE_VERTICAL_FLAG) then + flags = bit._and(flags, bit._not(cc.TMX_TILE_VERTICAL_FLAG)) + else + flags = bit._or(flags, cc.TMX_TILE_VERTICAL_FLAG) + end + layer:setTileGID(GID, tileCoord, flags) + + tileCoord = cc.p(1,8) + GID, flags = layer:getTileGIDAt(tileCoord, flags) + if 0 ~= bit._and(flags, cc.TMX_TILE_VERTICAL_FLAG) then + flags = bit._and(flags, bit._not(cc.TMX_TILE_VERTICAL_FLAG)) + else + flags = bit._or(flags, cc.TMX_TILE_VERTICAL_FLAG) + end + layer:setTileGID(GID ,tileCoord, flags) + + tileCoord = cc.p(2,8) + GID, flags = layer:getTileGIDAt(tileCoord, flags) + -- Horizontal + if 0~= bit._and(flags, cc.TMX_TILE_HORIZONTAL_FLAG) then + flags = bit._and(flags, bit._not(cc.TMX_TILE_HORIZONTAL_FLAG)) + else + flags = bit._or(flags, cc.TMX_TILE_HORIZONTAL_FLAG) + end + layer:setTileGID(GID, tileCoord, flags) + end + local schedulerEntry = nil + local function onNodeEvent(event) + if event == "enter" then + schedulerEntry = scheduler:scheduleScriptFunc(flipIt, 1.0, false) + elseif event == "exit" then + scheduler:unscheduleScriptEntry(schedulerEntry) + end + end + + ret:registerScriptHandler(onNodeEvent) + + return ret +end + + +-------------------------------------------------------------------- +-- +-- TMXOrthoFromXMLTest +-- +-------------------------------------------------------------------- + +local function TMXOrthoFromXMLTest() + local ret = createTileDemoLayer("TMX created from XML test") + local resources = "TileMaps" -- partial paths are OK as resource paths. + local file = resources.."/orthogonal-test1.tmx" + + local str = cc.FileUtils:getInstance():getStringFromFile(file) + -- cc.ASSERT(str != NULL, "Unable to open file") + if (str == nil) then + cclog("Unable to open file") + end + + local map = cc.FastTMXTiledMap:createWithXML(str ,resources) + ret:addChild(map, 0, kTagTileMap) + + local s = map:getContentSize() + cclog("ContentSize: %f, %f", s.width,s.height) + + local action = cc.ScaleBy:create(2, 0.5) + map:runAction(action) + return ret +end + +-------------------------------------------------------------------- +-- +-- TMXOrthoXMLFormatTest +-- +-------------------------------------------------------------------- + +local function TMXOrthoXMLFormatTest() + local ret = createTileDemoLayer("you should see blue, green and yellow in console.") + + local map = cc.FastTMXTiledMap:create("TileMaps/xml-test.tmx") + ret:addChild(map, 0, kTagTileMap) + + local s = map:getContentSize() + cclog("ContentSize: %f, %f", s.width,s.height) + + for i = 24, 26 do + cclog("GID:%d, Properties:%s", i, map:getPropertiesForGID(i)["name"]) + end + + local action = cc.ScaleBy:create(2, 0.5) + map:runAction(action) + return ret +end + +-------------------------------------------------------------------- +-- +-- TMXBug987 +-- +-------------------------------------------------------------------- +local function TMXBug987() + local ret = createTileDemoLayer("TMX Bug 987", "You should see an square") + local map = cc.FastTMXTiledMap:create("TileMaps/orthogonal-test6.tmx") + ret:addChild(map, 0, kTagTileMap) + + local s1 = map:getContentSize() + cclog("ContentSize: %f, %f", s1.width,s1.height) + + map:setAnchorPoint(cc.p(0, 0)) + local layer = map:getLayer("Tile Layer 1") + layer:setTileGID(3, cc.p(2,2)) + return ret +end + +-------------------------------------------------------------------- +-- +-- TMXBug787 +-- +-------------------------------------------------------------------- +local function TMXBug787() + local ret = createTileDemoLayer("TMX Bug 787", "You should see a map") + local map = cc.FastTMXTiledMap:create("TileMaps/iso-test-bug787.tmx") + ret:addChild(map, 0, kTagTileMap) + map:setScale(0.25) + return ret +end + +function FastTiledMapTestMain() + cclog("FastTiledMapTestMain") + Helper.index = 1 + cc.Director:getInstance():setDepthTest(true) + local scene = cc.Scene:create() + + Helper.createFunctionTable = { + TMXIsoZorder, + TMXOrthoZorder, + TMXIsoVertexZ, + TMXOrthoVertexZ, + TMXOrthoTest, + TMXOrthoTest2, + TMXOrthoTest3, + TMXOrthoTest4, + TMXIsoTest, + TMXIsoTest1, + TMXIsoTest2, + TMXUncompressedTest, + -- TMXHexTest, + TMXReadWriteTest, + TMXTilesetTest, + TMXOrthoObjectsTest, + TMXIsoObjectsTest, + TMXResizeTest, + TMXIsoMoveLayer, + TMXOrthoMoveLayer, + TMXOrthoFlipTest, + TMXOrthoFlipRunTimeTest, + TMXOrthoFromXMLTest, + TMXOrthoXMLFormatTest, + -- TileMapTest, + -- TileMapEditTest, + TMXBug987, + TMXBug787, + -- TMXGIDObjectsTestNew, + } + scene:addChild(TMXIsoZorder()) + scene:addChild(CreateBackMenuItem()) + return scene +end diff --git a/tests/lua-tests/src/LabelTestNew/LabelTestNew.lua b/tests/lua-tests/src/LabelTestNew/LabelTestNew.lua index dd01031fa1..74ccbb576f 100644 --- a/tests/lua-tests/src/LabelTestNew/LabelTestNew.lua +++ b/tests/lua-tests/src/LabelTestNew/LabelTestNew.lua @@ -531,7 +531,7 @@ function LabelTTFUnicodeChinese.create() local s = cc.Director:getInstance():getWinSize() local ttfConfig = {} - ttfConfig.fontFilePath="fonts/wt021.ttf" + ttfConfig.fontFilePath="fonts/HKYuanMini.ttf" ttfConfig.fontSize=28 ttfConfig.glyphs=cc.GLYPHCOLLECTION_CUSTOM ttfConfig.customGlyphs="美好的一天啊" @@ -858,7 +858,7 @@ function LabelTTFUnicodeNew.create() layer:addChild(label2) label2:setPosition(cc.p(s.width/2, vSize - vStep * 5.5)) - ttfConfig.fontFilePath = "fonts/wt021.ttf" + ttfConfig.fontFilePath = "fonts/HKYuanMini.ttf" ttfConfig.glyphs = cc.GLYPHCOLLECTION_CUSTOM ttfConfig.customGlyphs = "美好的一天" local label3 = cc.Label:createWithTTF(ttfConfig, "美好的一天", cc.TEXT_ALIGNMENT_CENTER, s.width) @@ -1022,7 +1022,7 @@ function LabelTTFCJKWrappingTest.create() local size = cc.Director:getInstance():getVisibleSize() local ttfConfig = {} - ttfConfig.fontFilePath = "fonts/wt021.ttf" + ttfConfig.fontFilePath = "fonts/HKYuanMini.ttf" ttfConfig.fontSize = 25 ttfConfig.glyphs = cc.GLYPHCOLLECTION_DYNAMIC ttfConfig.customGlyphs = nil @@ -1296,32 +1296,6 @@ function LabelCrashTest.create() return layer end - - - --------------------------------------------------------- ------ LabelTTFLargeText --------------------------------------------------------- -local LabelTTFLargeText = {} -function LabelTTFLargeText.create() - local layer = cc.Layer:create() - Helper.initWithLayer(layer) - Helper.titleLabel:setString("New Label + .TTF") - Helper.subtitleLabel:setString("Uses the new Label with TTF. Testing large text") - - local ttfConfig = {} - ttfConfig.fontFilePath = "fonts/wt021.ttf" - ttfConfig.fontSize = 18 - ttfConfig.glyphs = cc.GLYPHCOLLECTION_DYNAMIC - local s = cc.Director:getInstance():getWinSize() - local text = cc.FileUtils:getInstance():getStringFromFile("commonly_used_words.txt") - local label = cc.Label:createWithTTF(ttfConfig, text, cc.TEXT_ALIGNMENT_CENTER, s.width) - label:setPosition( cc.p(s.width/2, s.height/2) ) - layer:addChild(label) - - return layer -end - -------------------------------------------------------- ----- LabelShadowTest -------------------------------------------------------- @@ -1751,7 +1725,6 @@ function LabelTestNew() LabelFNTOffset.create, LabelFNTColor.create, LabelTTFLongLineWrapping.create, - LabelTTFLargeText.create, LabelTTFColor.create, LabelFNTHundredLabels.create, LabelFNTMultiLine.create, diff --git a/tests/lua-tests/src/OpenGLTest/OpenGLTest.lua b/tests/lua-tests/src/OpenGLTest/OpenGLTest.lua index f6c6860efb..428ba1d3aa 100644 --- a/tests/lua-tests/src/OpenGLTest/OpenGLTest.lua +++ b/tests/lua-tests/src/OpenGLTest/OpenGLTest.lua @@ -20,6 +20,8 @@ local vertDefaultSource = "\n".."\n" .. " v_texCoord = a_texCoord;\n" .. "} \n" +local scaleFactor = cc.Director:getInstance():getContentScaleFactor() + local function OpenGLTestMainLayer() local kItemTagBasic = 1000 local testCount = 16 @@ -231,6 +233,8 @@ local function OpenGLTestMainLayer() time = 0 majorLayer:addChild(glNode,-10) glNode:setPosition( size.width/2, size.height/2) + local center = cc.p( size.width / 2 * scaleFactor, size.height / 2 * scaleFactor) + glNode:getGLProgramState():setUniformVec2("center", center) return majorLayer end @@ -272,6 +276,8 @@ local function OpenGLTestMainLayer() time = 0 mandelbrotLayer:addChild(glNode,-10) glNode:setPosition( size.width/2, size.height/2) + local center = cc.p( size.width / 2 * scaleFactor, size.height / 2 * scaleFactor) + glNode:getGLProgramState():setUniformVec2("center", center) return mandelbrotLayer end @@ -314,6 +320,8 @@ local function OpenGLTestMainLayer() time = 0 heartLayer:addChild(glNode,-10) glNode:setPosition( size.width/2, size.height/2) + local center = cc.p( size.width / 2 * scaleFactor, size.height / 2 * scaleFactor) + glNode:getGLProgramState():setUniformVec2("center", center) return heartLayer end @@ -357,6 +365,8 @@ local function OpenGLTestMainLayer() time = 0 plasmaLayer:addChild(glNode,-10) glNode:setPosition( size.width/2, size.height/2) + local center = cc.p( size.width / 2 * scaleFactor, size.height / 2 * scaleFactor) + glNode:getGLProgramState():setUniformVec2("center", center) return plasmaLayer end @@ -399,6 +409,8 @@ local function OpenGLTestMainLayer() time = 0 flowerLayer:addChild(glNode,-10) glNode:setPosition( size.width/2, size.height/2) + local center = cc.p( size.width / 2 * scaleFactor, size.height / 2 * scaleFactor) + glNode:getGLProgramState():setUniformVec2("center", center) return flowerLayer end @@ -441,6 +453,8 @@ local function OpenGLTestMainLayer() time = 0 juliaLayer:addChild(glNode,-10) glNode:setPosition( size.width/2, size.height/2) + local center = cc.p( size.width / 2 * scaleFactor, size.height / 2 * scaleFactor) + glNode:getGLProgramState():setUniformVec2("center", center) return juliaLayer end @@ -545,7 +559,7 @@ local function OpenGLTestMainLayer() shader:setUniformsForBuiltins(transform) gl.bindTexture(gl.TEXTURE_2D, texture.texture_id) - gl.glEnableVertexAttribs(cc.VERTEX_ATTRIB_FLAG_TEX_COORDS or cc.VERTEX_ATTRIB_FLAG_POSITION) + gl.glEnableVertexAttribs(bit._or(cc.VERTEX_ATTRIB_FLAG_TEX_COORDS, cc.VERTEX_ATTRIB_FLAG_POSITION)) gl.bindBuffer(gl.ARRAY_BUFFER, squareVertexPositionBuffer.buffer_id) gl.vertexAttribPointer(cc.VERTEX_ATTRIB_POSITION,2,gl.FLOAT,false,0,0) diff --git a/tests/lua-tests/src/PhysicsTest/PhysicsTest.lua b/tests/lua-tests/src/PhysicsTest/PhysicsTest.lua index 9043a42c8d..725744fe5d 100644 --- a/tests/lua-tests/src/PhysicsTest/PhysicsTest.lua +++ b/tests/lua-tests/src/PhysicsTest/PhysicsTest.lua @@ -16,89 +16,6 @@ local function range(from, to, step) end, nil, from - step end --- bit operation - -bit = bit or {} -bit.data32 = {} -for i=1,32 do - bit.data32[i]=2^(32-i) -end - -function bit._b2d(arg) - local nr=0 - for i=1,32 do - if arg[i] ==1 then - nr=nr+bit.data32[i] - end - end - return nr -end - -function bit._d2b(arg) - arg = arg >= 0 and arg or (0xFFFFFFFF + arg + 1) - local tr={} - for i=1,32 do - if arg >= bit.data32[i] then - tr[i]=1 - arg=arg-bit.data32[i] - else - tr[i]=0 - end - end - return tr -end - -function bit._and(a,b) - local op1=bit._d2b(a) - local op2=bit._d2b(b) - local r={} - - for i=1,32 do - if op1[i]==1 and op2[i]==1 then - r[i]=1 - else - r[i]=0 - end - end - return bit._b2d(r) - -end - -function bit._rshift(a,n) - local op1=bit._d2b(a) - n = n <= 32 and n or 32 - n = n >= 0 and n or 0 - - for i=32, n+1, -1 do - op1[i] = op1[i-n] - end - for i=1, n do - op1[i] = 0 - end - - return bit._b2d(op1) -end - -function bit._not(a) - local op1=bit._d2b(a) - local r={} - - for i=1,32 do - if op1[i]==1 then - r[i]=0 - else - r[i]=1 - end - end - return bit._b2d(r) -end - -bit.band = bit.band or bit._and -bit.rshift = bit.rshift or bit._rshift -bit.bnot = bit.bnot or bit._not - --- bit operation end - local function initWithLayer(layer, callback) curLayer = layer layer.spriteTexture = cc.SpriteBatchNode:create("Images/grossini_dance_atlas.png", 100):getTexture() diff --git a/tests/lua-tests/src/Sprite3DTest/Sprite3DTest.lua b/tests/lua-tests/src/Sprite3DTest/Sprite3DTest.lua index 19298ad2e2..6e41219035 100644 --- a/tests/lua-tests/src/Sprite3DTest/Sprite3DTest.lua +++ b/tests/lua-tests/src/Sprite3DTest/Sprite3DTest.lua @@ -79,18 +79,27 @@ function Sprite3DWithSkinTest.addNewSpriteWithCoords(parent,x,y) sprite:setPosition(cc.p(x, y)) parent:addChild(sprite) - local animation = cc.Animation3D:getOrCreate("Sprite3DTest/orc.c3b") + local animation = cc.Animation3D:create("Sprite3DTest/orc.c3b") if nil ~= animation then local animate = cc.Animate3D:create(animation) - if math.random() < (1/3) then - animate:setPlayBack(true) + local inverse = false + if math.random() == 0 then + inverse = true end local rand2 = math.random() + local speed = 1.0 + if rand2 < 1/3 then - animate:setSpeed(animate:getSpeed() + math.random()) + speed = animate:getSpeed() + math.random() elseif rand2 < 2/3 then - animate:setSpeed(animate:getSpeed() - 0.5 * math.random()) + speed = animate:getSpeed() - 0.5 * math.random() + end + + if inverse then + animate:setSpeed(-speed) + else + animate:setSpeed(speed) end sprite:runAction(cc.RepeatForever:create(animate)) @@ -226,7 +235,7 @@ function Animate3DTest:addSprite3D() self._sprite = sprite - local animation = cc.Animation3D:getOrCreate(fileName) + local animation = cc.Animation3D:create(fileName) if nil ~= animation then local animate = cc.Animate3D:create(animation, 0.0, 1.933) sprite:runAction(cc.RepeatForever:create(animate)) diff --git a/tests/lua-tests/src/Texture2dTest/Texture2dTest.lua b/tests/lua-tests/src/Texture2dTest/Texture2dTest.lua index 680d3e77b1..c54fc74691 100644 --- a/tests/lua-tests/src/Texture2dTest/Texture2dTest.lua +++ b/tests/lua-tests/src/Texture2dTest/Texture2dTest.lua @@ -969,23 +969,16 @@ local function TextureAsync() local seq = cc.Sequence:create(scale, scale_back) label:runAction(cc.RepeatForever:create(seq)) - local function imageLoaded(pObj) - local tex = pObj + local function imageLoaded(texture) local director = cc.Director:getInstance() - --cc.ASSERT( [NSThread currentThread] == [director runningThread], @"FAIL. Callback should be on cocos2d thread") - - -- IMPORTANT: The order on the callback is not guaranteed. Don't depend on the callback - - -- This test just creates a sprite based on the Texture - - local sprite = cc.Sprite:createWithTexture(tex) + local sprite = cc.Sprite:createWithTexture(texture) sprite:setAnchorPoint(cc.p(0,0)) ret:addChild(sprite, -1) local size = director:getWinSize() local i = m_nImageOffset * 32 - sprite:setPosition(cc.p( i % size.width, (i / size.width) * 32 )) + sprite:setPosition(cc.p( i % size.width, math.floor((i / size.width)) * 32 )) m_nImageOffset = m_nImageOffset + 1 cclog("Image loaded:...")-- %p", tex) @@ -1008,14 +1001,15 @@ local function TextureAsync() cc.Director:getInstance():getTextureCache():addImageAsync("Images/background.png", imageLoaded) cc.Director:getInstance():getTextureCache():addImageAsync("Images/atlastest.png", imageLoaded) cc.Director:getInstance():getTextureCache():addImageAsync("Images/grossini_dance_atlas.png",imageLoaded) + + ret:unscheduleUpdate() end - local schedulerEntry = nil local function onNodeEvent(event) if event == "enter" then - schedulerEntry = scheduler:scheduleScriptFunc(loadImages, 1.0, false) + ret:scheduleUpdateWithPriorityLua(loadImages,0) elseif event == "exit" then - scheduler:unscheduleScriptEntry(schedulerEntry) + ret:unscheduleUpdate() cc.Director:getInstance():getTextureCache():removeAllTextures() end end @@ -1266,31 +1260,17 @@ local function TextureMemoryAlloc() local targetPlatform = cc.Application:getInstance():getTargetPlatform() local file = "" - if targetPlatform == cc.PLATFORM_OS_ANDROID then - if tag == 0 then - file = "Images/background.png" + if tag == 0 then + file = "Images/test_image.png" elseif tag == 1 then - file = "Images/fire_rgba8888.pvr" + file = "Images/test_image_rgba8888.pvr" elseif tag == 2 then - file = "Images/grossini_pvr_rgba8888.pvr" + file = "Images/test_image_rgb888.pvr" elseif tag == 3 then - file = "Images/grossini_pvr_rgba4444.pvr" + file = "Images/test_image_rgba4444.pvr" elseif tag == 4 then file = "Images/test_image_a8.pvr" end - else - if tag == 0 then - file = "Images/background.png" - elseif tag == 1 then - file = "Images/test_image_rgba4444.pvr.gz" - elseif tag == 2 then - file = "Images/test_image_rgba4444.pvr.gz" - elseif tag == 3 then - file = "Images/test_image_rgba4444.pvr.gz" - elseif tag == 4 then - file = "Images/test_image_rgba4444.pvr.gz" - end - end m_pBackground = cc.Sprite:create(file) ret:addChild(m_pBackground, -10) diff --git a/tests/lua-tests/src/TileMapTest/TileMapTest.lua b/tests/lua-tests/src/TileMapTest/TileMapTest.lua index b356b7cdf9..54c138e87c 100644 --- a/tests/lua-tests/src/TileMapTest/TileMapTest.lua +++ b/tests/lua-tests/src/TileMapTest/TileMapTest.lua @@ -1106,41 +1106,40 @@ local function TMXOrthoFlipRunTimeTest() local action = cc.ScaleBy:create(2, 0.5) map:runAction(action) local function flipIt(dt) + local map = ret:getChildByTag(kTagTileMap) + local layer = map:getLayer("Layer 0") - -- local map = tolua.cast(ret:getChildByTag(kTagTileMap), "TMXTiledMap") - -- local layer = map:getLayer("Layer 0") + local tileCoord = cc.p(1, 10) + local flags = 0 + local GID, flags = layer:getTileGIDAt(tileCoord, flags) - -- --blue diamond - -- local tileCoord = cc.p(1,10) - -- local flags = 0 - -- local GID = layer:getTileGIDAt(tileCoord, (ccTMXTileFlags*)&flags) - -- -- Vertical - -- if( flags & kcc.TMXTileVerticalFlag ) - -- flags &= ~kcc.TMXTileVerticalFlag - -- else - -- flags |= kcc.TMXTileVerticalFlag - -- layer:setTileGID(GID ,tileCoord, (ccTMXTileFlags)flags) + if 0 ~= bit._and(flags, cc.TMX_TILE_VERTICAL_FLAG) then + flags = bit._and(flags, bit._not(cc.TMX_TILE_VERTICAL_FLAG)) + else + flags = bit._or(flags, cc.TMX_TILE_VERTICAL_FLAG) + end + layer:setTileGID(GID, tileCoord, flags) + tileCoord = cc.p(1,8) + GID, flags = layer:getTileGIDAt(tileCoord, flags) + if 0 ~= bit._and(flags, cc.TMX_TILE_VERTICAL_FLAG) then + flags = bit._and(flags, bit._not(cc.TMX_TILE_VERTICAL_FLAG)) + else + flags = bit._or(flags, cc.TMX_TILE_VERTICAL_FLAG) + end + layer:setTileGID(GID ,tileCoord, flags) - -- tileCoord = cc.p(1,8) - -- GID = layer:getTileGIDAt(tileCoord, (ccTMXTileFlags*)&flags) - -- -- Vertical - -- if( flags & kcc.TMXTileVerticalFlag ) - -- flags &= ~kcc.TMXTileVerticalFlag - -- else - -- flags |= kcc.TMXTileVerticalFlag - -- layer:setTileGID(GID ,tileCoord, (ccTMXTileFlags)flags) - - - -- tileCoord = cc.p(2,8) - -- GID = layer:getTileGIDAt(tileCoord, (ccTMXTileFlags*)&flags) - -- -- Horizontal - -- if( flags & kcc.TMXTileHorizontalFlag ) - -- flags &= ~kcc.TMXTileHorizontalFlag - -- else - -- flags |= kcc.TMXTileHorizontalFlag - -- layer:setTileGID(GID, tileCoord, (ccTMXTileFlags)flags) + tileCoord = cc.p(2,8) + GID, flags = layer:getTileGIDAt(tileCoord, flags) + -- Horizontal + if 0~= bit._and(flags, cc.TMX_TILE_HORIZONTAL_FLAG) then + flags = bit._and(flags, bit._not(cc.TMX_TILE_HORIZONTAL_FLAG)) + else + flags = bit._or(flags, cc.TMX_TILE_HORIZONTAL_FLAG) + end + layer:setTileGID(GID, tileCoord, flags) end + local schedulerEntry = nil local function onNodeEvent(event) if event == "enter" then @@ -1149,6 +1148,9 @@ local function TMXOrthoFlipRunTimeTest() scheduler:unscheduleScriptEntry(schedulerEntry) end end + + ret:registerScriptHandler(onNodeEvent) + return ret end diff --git a/tests/lua-tests/src/controller.lua b/tests/lua-tests/src/controller.lua index 02aa9ca067..1e89841d68 100644 --- a/tests/lua-tests/src/controller.lua +++ b/tests/lua-tests/src/controller.lua @@ -6,25 +6,31 @@ collectgarbage("setstepmul", 5000) ---------------- -- run +local director = cc.Director:getInstance() +local glView = director:getOpenGLView() +if nil == glView then + glView = cc.GLView:createWithRect("Lua Tests", cc.rect(0,0,900,640)) + director:setOpenGLView(glView) +end -local glView = cc.Director:getInstance():getOpenGLView() +--turn on display FPS +director:setDisplayStats(true) + +--set FPS. the default value is 1.0/60 if you don't call this +director:setAnimationInterval(1.0 / 60) local screenSize = glView:getFrameSize() + local designSize = {width = 480, height = 320} -local fileUtils = cc.FileUtils:getInstance() - - -local targetPlatform = cc.Application:getInstance():getTargetPlatform() - -local dd = glView:getDesignResolutionSize() if screenSize.height > 320 then local resourceSize = {width = 960, height = 640} - local rate = resourceSize.height/screenSize.height - cc.Director:getInstance():setContentScaleFactor(resourceSize.height/designSize.height); + cc.Director:getInstance():setContentScaleFactor(resourceSize.height/designSize.height) end -glView:setDesignResolutionSize(designSize.width, designSize.height, 3); - + +glView:setDesignResolutionSize(designSize.width, designSize.height, cc.ResolutionPolicy.FIXED_HEIGHT) + +local fileUtils = cc.FileUtils:getInstance() local function addSearchPath(resPrefix, height) local searchPaths = fileUtils:getSearchPaths() table.insert(searchPaths, 1, resPrefix) diff --git a/tests/lua-tests/src/mainMenu.lua b/tests/lua-tests/src/mainMenu.lua index e52de85e36..858aad51b9 100644 --- a/tests/lua-tests/src/mainMenu.lua +++ b/tests/lua-tests/src/mainMenu.lua @@ -4,6 +4,7 @@ require "Opengl" require "OpenglConstants" require "StudioConstants" require "GuiConstants" +require "bitExtend" require "src/helper" require "src/testResource" require "src/VisibleRect" @@ -55,6 +56,7 @@ require "src/XMLHttpRequestTest/XMLHttpRequestTest" require "src/PhysicsTest/PhysicsTest" require "src/CaptureScreenTest/CaptureScreenTest" require "src/VideoPlayerTest/VideoPlayerTest" +require "src/FastTiledMapTest/FastTiledMapTest" local LINE_SPACE = 40 @@ -85,6 +87,7 @@ local _allTests = { { isSupported = true, name = "EffectsTest" , create_func = EffectsTest }, { isSupported = true, name = "EffectAdvancedTest" , create_func = EffectAdvancedTestMain }, { isSupported = true, name = "ExtensionsTest" , create_func= ExtensionsTestMain }, + { isSupported = true, name = "FastTiledMapTest" , create_func = FastTiledMapTestMain}, { isSupported = true, name = "FontTest" , create_func = FontTestMain }, { isSupported = true, name = "IntervalTest" , create_func = IntervalTestMain }, { isSupported = true, name = "KeypadTest" , create_func= KeypadTestMain }, diff --git a/tools/cocos2d-console b/tools/cocos2d-console index ce3e25bcd2..728515cc5e 160000 --- a/tools/cocos2d-console +++ b/tools/cocos2d-console @@ -1 +1 @@ -Subproject commit ce3e25bcd273eaacd516d179587997ce8f62df70 +Subproject commit 728515cc5e9b54a12b31e61785f355fc3c057007 diff --git a/tools/jenkins-scripts/pull-request-builder.py b/tools/jenkins-scripts/pull-request-builder.py index eb36154c49..a64d6e0403 100755 --- a/tools/jenkins-scripts/pull-request-builder.py +++ b/tools/jenkins-scripts/pull-request-builder.py @@ -201,6 +201,12 @@ def main(): local_apk = sample_dir + 'bin/CppTests-debug.apk' backup_apk = os.environ['BACKUP_PATH'] + 'CppTests_' + str(pr_num) + '.apk' os.system('cp ' + local_apk + ' ' + backup_apk) + ret = os.system("python build/android-build.py -p 10 -b release cpp-empty-test") + if(ret == 0): + _path = 'tests/cpp-empty-test/proj.android/libs/armeabi/libcpp_empty_test.so' + filesize = os.path.getsize(_path) + pr_desc = pr_desc + '

size of libcpp_empty_test.so is:' + str(filesize/1024) + 'kb

' + set_description(pr_desc, target_url) elif(node_name == 'win32_win7'): ret = subprocess.call('"%VS110COMNTOOLS%..\IDE\devenv.com" "build\cocos2d-win32.vc2012.sln" /Build "Debug|Win32"', shell=True) elif(node_name == 'ios_mac'): diff --git a/tools/tolua/cocos2dx.ini b/tools/tolua/cocos2dx.ini index 704d9d79ad..71eec29a40 100644 --- a/tools/tolua/cocos2dx.ini +++ b/tools/tolua/cocos2dx.ini @@ -26,7 +26,7 @@ headers = %(cocosdir)s/cocos/cocos2d.h %(cocosdir)s/cocos/audio/include/SimpleAu # what classes to produce code for. You can use regular expressions here. When testing the regular # expression, it will be enclosed in "^$", like this: "^Menu*$". -classes = New.* Sprite.* Scene Node.* Director Layer.* Menu.* Touch .*Action.* Move.* Rotate.* Blink.* Tint.* Sequence Repeat.* Fade.* Ease.* Scale.* Transition.* Spawn Animat.* Flip.* Delay.* Skew.* Jump.* Place.* Show.* Progress.* PointArray ToggleVisibility.* RemoveSelf Hide Particle.* Label.* Atlas.* TextureCache.* Texture2D Cardinal.* CatmullRom.* ParallaxNode TileMap.* TMX.* CallFunc RenderTexture GridAction Grid3DAction GridBase$ .+Grid Shaky3D Waves3D FlipX3D FlipY3D Speed ActionManager Set SimpleAudioEngine Scheduler Timer Orbit.* Follow.* Bezier.* CardinalSpline.* Camera.* DrawNode .*3D$ Liquid$ Waves$ ShuffleTiles$ TurnOffTiles$ Split.* Twirl$ FileUtils$ GLProgram ShaderCache Application ClippingNode MotionStreak ^Ref$ UserDefault GLViewProtocol GLView Image Event(?!.*(Physics).*).* Component ProtectedNode Console Mesh GLProgramCache GLProgramState +classes = New.* Sprite.* Scene Node.* Director Layer.* Menu.* Touch .*Action.* Move.* Rotate.* Blink.* Tint.* Sequence Repeat.* Fade.* Ease.* Scale.* Transition.* Spawn Animat.* Flip.* Delay.* Skew.* Jump.* Place.* Show.* Progress.* PointArray ToggleVisibility.* RemoveSelf Hide Particle.* Label.* Atlas.* TextureCache.* Texture2D Cardinal.* CatmullRom.* ParallaxNode TileMap.* .*TMX.* CallFunc RenderTexture GridAction Grid3DAction GridBase$ .+Grid Shaky3D Waves3D FlipX3D FlipY3D Speed ActionManager Set SimpleAudioEngine Scheduler Timer Orbit.* Follow.* Bezier.* CardinalSpline.* Camera.* DrawNode .*3D$ Liquid$ Waves$ ShuffleTiles$ TurnOffTiles$ Split.* Twirl$ FileUtils$ GLProgram ShaderCache Application ClippingNode MotionStreak ^Ref$ UserDefault GLViewProtocol GLView Image Event(?!.*(Physics).*).* Component ProtectedNode Console Mesh GLProgramCache GLProgramState # what should we skip? in the format ClassName::[function function] # ClassName is a regular expression, but will be used like this: "^ClassName$" functions are also @@ -35,7 +35,7 @@ classes = New.* Sprite.* Scene Node.* Director Layer.* Menu.* Touch .*Action.* M # will apply to all class names. This is a convenience wildcard to be able to skip similar named # functions from all classes. -skip = Node::[setGLServerState description getUserObject .*UserData getGLServerState .*schedule getPosition$ setContentSize setAnchorPoint enumerateChildren], +skip = Node::[setGLServerState description getUserObject .*UserData getGLServerState .*schedule getPosition$ setContentSize setAnchorPoint enumerateChildren getonEnterTransitionDidFinishCallback getOnEnterCallback getOnExitCallback getonExitTransitionDidStartCallback], Sprite::[getQuad getBlendFunc ^setPosition$ setBlendFunc], SpriteBatchNode::[getBlendFunc setBlendFunc getDescendants], MotionStreak::[getBlendFunc setBlendFunc draw update], @@ -130,7 +130,9 @@ skip = Node::[setGLServerState description getUserObject .*UserData getGLServerS Sprite3D::[getSkin], Animation3D::[getBoneCurveByName], Animation3DCache::[*], - Sprite3DMaterialCache::[*] + Sprite3DMaterialCache::[*], + Bone3D::[*], + FastTMXLayer::[(g|s)etTiles getTileGIDAt] rename_functions = SpriteFrameCache::[addSpriteFramesWithFile=addSpriteFrames getSpriteFrameByName=getSpriteFrame], ProgressTimer::[setReverseProgress=setReverseDirection], diff --git a/tools/tolua/cocos2dx_controller.ini b/tools/tolua/cocos2dx_controller.ini new file mode 100644 index 0000000000..d80733b677 --- /dev/null +++ b/tools/tolua/cocos2dx_controller.ini @@ -0,0 +1,61 @@ +[cocos2dx_controller] +# the prefix to be added to the generated functions. You might or might not use this in your own +# templates +prefix = cocos2dx_controller + +# create a target namespace (in javascript, this would create some code like the equiv. to `ns = ns || {}`) +# all classes will be embedded in that namespace +target_namespace = cc + +macro_judgement = #if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID || CC_TARGET_PLATFORM == CC_PLATFORM_IOS) + +android_headers = -I%(androidndkdir)s/platforms/android-14/arch-arm/usr/include -I%(androidndkdir)s/sources/cxx-stl/gnu-libstdc++/4.7/libs/armeabi-v7a/include -I%(androidndkdir)s/sources/cxx-stl/gnu-libstdc++/4.7/include -I%(androidndkdir)s/sources/cxx-stl/gnu-libstdc++/4.8/libs/armeabi-v7a/include -I%(androidndkdir)s/sources/cxx-stl/gnu-libstdc++/4.8/include +android_flags = -D_SIZE_T_DEFINED_ + +clang_headers = -I%(clangllvmdir)s/lib/clang/3.3/include +clang_flags = -nostdinc -x c++ -std=c++11 + +cocos_headers = -I%(cocosdir)s/cocos -I%(cocosdir)s/cocos/base -I%(cocosdir)s/cocos/platform/android +cocos_flags = -DANDROID + +cxxgenerator_headers = + +# extra arguments for clang +extra_arguments = %(android_headers)s %(clang_headers)s %(cxxgenerator_headers)s %(cocos_headers)s %(android_flags)s %(clang_flags)s %(cocos_flags)s %(extra_flags)s + +# what headers to parse +headers = %(cocosdir)s/cocos/base/CCGameController.h + +# what classes to produce code for. You can use regular expressions here. When testing the regular +# expression, it will be enclosed in "^$", like this: "^Menu*$". +classes = Controller EventController EventListenerController + +# what should we skip? in the format ClassName::[function function] +# ClassName is a regular expression, but will be used like this: "^ClassName$" functions are also +# regular expressions, they will not be surrounded by "^$". If you want to skip a whole class, just +# add a single "*" as functions. See bellow for several examples. A special class name is "*", which +# will apply to all class names. This is a convenience wildcard to be able to skip similar named +# functions from all classes. + +skip = Controller::[getAllController getKeyStatus] + +rename_functions = + +rename_classes = + +# for all class names, should we remove something when registering in the target VM? +remove_prefix = + +# classes for which there will be no "parent" lookup +classes_have_no_parents = + +# base classes which will be skipped when their sub-classes found them. +base_classes_to_skip = + +# classes that create no constructor +# Set is special and we will use a hand-written constructor +abstract_classes = + +# Determining whether to use script object(js object) to control the lifecycle of native(cpp) object or the other way around. Supported values are 'yes' or 'no'. +script_control_cpp = no + diff --git a/tools/tolua/cocos2dx_spine.ini b/tools/tolua/cocos2dx_spine.ini index 5d1e6743c0..9ab910e8a2 100644 --- a/tools/tolua/cocos2dx_spine.ini +++ b/tools/tolua/cocos2dx_spine.ini @@ -37,7 +37,7 @@ classes = Skeleton SkeletonAnimation # functions from all classes. skip = Skeleton::[findBone findSlot getAttachment setAttachment update draw createWith.*], - SkeletonAnimation::[addAnimationState setAnimationStateData update createWith.* (s|g)etBlendFunc addAnimation getCurrent setAnimation] + SkeletonAnimation::[addAnimationState setAnimationStateData update createWith.* (s|g)etBlendFunc addAnimation getCurrent setAnimation onAnimationStateEvent] rename_functions = diff --git a/tools/tolua/cocos2dx_studio.ini b/tools/tolua/cocos2dx_studio.ini index ca654b59ad..32baa60dae 100644 --- a/tools/tolua/cocos2dx_studio.ini +++ b/tools/tolua/cocos2dx_studio.ini @@ -45,13 +45,12 @@ skip = *::[^visit$ copyWith.* onEnter.* onExit.* ^description$ getObjectType .* Skin::[(s|g)etSkinData], ArmatureAnimation::[updateHandler updateFrameData frameEvent setMovementEventCallFunc setFrameEventCallFunc], Bone::[(s|g)etIgnoreMovementBoneData], - ActionManagerEx::[initWithDictionary], - ActionObject::[initWithDictionary], + ActionManagerEx::[initWithDictionary initWithBinary], DisplayManager::[initDisplayList (s|g)etCurrentDecorativeDisplay getDecorativeDisplayByIndex], Tween::[(s|g)etMovementBoneData], GUIReader::[storeFileDesignSize getFileDesignSize getParseCallBackMap getParseObjectMap], ActionNode::[initWithDictionary], - ActionObject::[initWithDictionary], + ActionObject::[initWithDictionary initWithBinary], BaseData::[copy subtract], NodeReader::[getInstance], ActionTimelineCache::[getInstance] diff --git a/tools/tolua/genbindings.py b/tools/tolua/genbindings.py index 1fc2d34868..1c72481ff5 100755 --- a/tools/tolua/genbindings.py +++ b/tools/tolua/genbindings.py @@ -133,6 +133,7 @@ def main(): 'cocos2dx_spine.ini' : ('cocos2dx_spine', 'lua_cocos2dx_spine_auto'), \ 'cocos2dx_physics.ini' : ('cocos2dx_physics', 'lua_cocos2dx_physics_auto'), \ 'cocos2dx_experimental_video.ini' : ('cocos2dx_experimental_video', 'lua_cocos2dx_experimental_video_auto'), \ + 'cocos2dx_controller.ini' : ('cocos2dx_controller', 'lua_cocos2dx_controller_auto'), \ } target = 'lua' generator_py = '%s/generator.py' % cxx_generator_root