【发布时间】:2013-01-08 17:12:36
【问题描述】:
我有一个游戏,里面有 xml 文件。我的游戏可以在 iPad 和 iPhone 上运行,我需要相应地对这些 xml 文件进行一些更改,但是 xml 文件是原始文件,我不希望它们更改,所以我想要的是在编译时自动更改我的 xml 文件.为此,我有一个 ruby 脚本可以满足我的需要。 假设这个脚本是 level_converter.rb 我可以按如下方式执行(在终端中):
for f in Resources/*.xml; do ruby level_converter.rb "$f"; done
所以我以这种方式将此代码添加到构建阶段以运行脚本,这确实按预期工作,它确实正确更改了所有 xml 文件,但它当然会更改资源文件夹中的原始 xml 文件。所以说如果我运行两次 - 我将这些文件更改两次。我想要的是这些文件保持不变,但只有那些部署的文件应该改变。所以我需要某种 $(PROJECT_DISTRIBUTION_AND_DEVELOPEMENT_TEMP_FOLDER) 或类似的东西,而不是简单的 Resorces/*.xml 例如。
for f in $(PROJ_DISTRIB_AND_DEV_TMP_FLDE)/*.xml; do ruby level_converter.rb "$f"; done
编辑:我的问题一定不是很清楚,所以我改写了它
问候, 伊戈尔
【问题讨论】:
-
避免两次更改文件的一种简单方法是对原始文件(如 original_1.xml、original_2.xml)进行一些命名约定,并且可以创建创建的文件_1.xml 等。有趣的问题。
-
本质上不是 - xcode 将内容放入某个分发/部署平台文件夹,如果这些文件在那里更改 - 应该没有问题。问题是那个文件夹到底是什么,它应该是一些环境变量或smth
-
能否请标记我的问题 -1 的人解释原因?是我问你不喜欢的方式,还是我想做的只是看起来不对?
标签: ios cocos2d-iphone xcode4.5