在Objective-C iPhone游戏中编译错误

时间:2013-11-23 03:53:26

标签: ios iphone objective-c cocos2d-iphone lua

我正在使用Cocos 2D和Kobold 2D制作游戏,当我今天打开Xcode时,我得到了这个奇怪的OSACompile错误。

OSACompile Projectfiles/Resources/config.lua
    cd /Users/shalinvs/Kobold2D/Kobold2D-2.1.0/targeted
    setenv PATH "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
    /usr/bin/osacompile -l AppleScript -d -o /Users/shalinvs/Library/Developer/Xcode/DerivedData/Kobold2D-fpbpczqvlbltxpalqzlddxzetvpq/Build/Products/Debug-iphoneos/targeted-iOS.app/config.scpt Projectfiles/Resources/config.lua

Projectfiles/Resources/config.lua:2: error: Expected end of line, etc. but found “*”. (-2741)
Command /usr/bin/osacompile failed with exit code 1

这是我的配置文件:

--[[
* Kobold2D™ --- http://www.kobold2d.org
* Copyright (c) 2010-2011 Steffen Itterheim.
* Released under MIT License in Germany (LICENSE-Kobold2D.txt).
--]]


--[[
* Need help with the KKStartupConfig settings?
* ------ http://www.kobold2d.com/x/ygMO ------
--]]


local config =
{
KKStartupConfig =
{
-- load first scene from a class with this name, or from a Lua script with this name with .lua appended
FirstSceneClassName = "Title",

MaxFrameRate = 60,
DisplayFPS = YES,

EnableUserInteraction = YES,
EnableMultiTouch = NO,

-- Render settings
DefaultTexturePixelFormat = TexturePixelFormat.RGBA8888,
GLViewColorFormat = GLViewColorFormat.RGB565,
GLViewDepthFormat = GLViewDepthFormat.DepthNone,
GLViewMultiSampling = NO,
GLViewNumberOfSamples = 0,

Enable2DProjection = NO,
EnableRetinaDisplaySupport = YES,
EnableGLViewNodeHitTesting = NO,
EnableStatusBar = NO,

-- Orientation & Autorotation
-- Kobold2D uses the supported orientations from the Target's Summary pane: http://cl.ly/2l132Z2f463H2O3r0M1O
-- (same as Info.plist key UISupportedInterfaceOrientations aka "Supported interface orientations")

-- iAd setup
EnableAdBanner = YES,
PlaceBannerOnBottom = NO,
LoadOnlyPortraitBanners = NO,
LoadOnlyLandscapeBanners = NO,
AdProviders = "iAd, AdMob", -- comma seperated list -> "iAd, AdMob" means: use iAd if available, otherwise AdMob
AdMobRefreshRate = 15,
AdMobFirstAdDelay = 5,
AdMobPublisherID = "YOUR_ADMOB_PUBLISHER_ID", -- how to get an AdMob Publisher ID: http://developer.admob.com/wiki/PublisherSetup
AdMobTestMode = YES,

-- Mac OS specific settings
AutoScale = NO,
AcceptsMouseMovedEvents = NO,
EnableFullScreen = NO,
},

-- you can create your own config sections using the same mechanism and use KKConfig to access the parameters
-- or use the KKConfig injectPropertiesFromKeyPath method
HelloWorldSettings =
{
HelloWorldString = "Hello Kobold2D!",
HelloWorldFontName = "Marker Felt",
HelloWorldFontSize = 50,
},
}

return config

我不确定为什么会收到此错误。有什么办法可以解决这个问题吗?非常感谢你的时间。

1 个答案:

答案 0 :(得分:1)

Xcode显然希望将Lua脚本编译为AppleScript。在Kobold2D中,lua文件类型设置为“Applescript preconpiled”以获得更好的语法突出显示。如果您将文件类型设置为“Applescript source”,则可能是原因。

检查lua文件是否仅在复制包资源Build Phase中,而不在编译源下。同样在构建规则下,.lua文件应该没有规则。并验证lua文件类型。