actionscript-3 - 如何优化多个 if-else 语句 AS3?
问题描述
所以我的函数characterBooleanFunction
包含 30 多个 if-else 语句。当我运行 Scout 来检查性能时,它指向这个函数,该函数也由 ENTER_FRAME 事件运行。Scout 向我展示了该gotoAndStop
声明的成本非常高。我不确定每次运行游戏时如何解决这个问题,它只是可怕地滞后。用户滚动屏幕上的字符,当他们点击一个标记时,它会激活该characterBooleanFunction
功能。有任何想法吗?这是代码:
private function characterBooleanFunction():void
{
if (scrollCharacters.mcRandom.hit.hitTestObject(storeScreen.mcMarker) )
{
scrollCharacters.mcRandom.gotoAndStop(2);
//booleans
bRandom = true;
}else
{
scrollCharacters.mcRandom.gotoAndStop(1);
bRandom = false;
}
if (scrollCharacters.mcChinese.hit.hitTestObject(storeScreen.mcMarker) )
{
scrollCharacters.mcChinese.gotoAndStop(2);
trace("HIT CHINESE");
//booleans
bChinese = true;
}else
{
scrollCharacters.mcChinese.gotoAndStop(1);
bChinese = false;
}
if (scrollCharacters.mcPizza.hit.hitTestObject(storeScreen.mcMarker) )
{
scrollCharacters.mcPizza.gotoAndStop(2);
trace("HIT PIZZA");
//booleans
bPizza = true;
}else
{
scrollCharacters.mcPizza.gotoAndStop(1);
bPizza = false;
}
if (scrollCharacters.mcBurger.hit.hitTestObject(storeScreen.mcMarker) )
{
scrollCharacters.mcBurger.gotoAndStop(2);
//booleans
bBurger = true;
}else
{
scrollCharacters.mcBurger.gotoAndStop(1);
bBurger = false;
}
……等等等等。
提前致谢!
解决方案
推荐阅读
- php - PHP 中 Microsoft SQL Server 的连接参数
- php - 为什么我的代码会引发 HTTP 500 错误?
- c# - 带有矩形的 C# ReadXML
- xpages - Xpages - 自定义控件从另一个自定义控件获取自定义属性
- php - 如何转换为数组或 json php soap __dorequest 响应?
- php - 更新查询不起作用
- spring - REST API 中的错误处理:最佳实践
- c++ - mapviewofile 问题不能多次使用?
- python - 从帖子 instagram python 中获得喜欢
- cordova - 运行 ionic cordova build ios 时找不到包含的文件