【发布时间】:2014-05-02 20:08:33
【问题描述】:
我最近在这里发布了一个问题
Randomly generated tunnel walls that don't jump around from one to the next
这几乎可以说是由于缺乏算法,我得到了一条“醉酒行走”隧道,而不是一条相关的隧道。
答案在一定程度上适用于我尝试创建的内容,但我无法弄清楚如何为我的游戏正确实施算法。
我相信第一步是为成对的墙壁创建偏移量。我希望屏幕两侧出现的图像(命名为:“Left1”和“Right1”、“Left2 和“Right2”......“Left41”和 Right41”)“重新生成”稍微偏移到左或右相互连续,以在外观上产生隧道的错觉。我尝试使用答案中提供给我的代码为我的一组墙创建偏移量,但在尝试构建时几乎没有错误。它首先告诉我“Left1”的本地声明隐藏了实例变量,我相信这是因为它已经在我的函数中被声明为变量?那出现了两次。除此之外,我还有一个错误,指出从不兼容的类型“float”分配给“UIImageView *__strong”。我该如何解决这些问题?还是我在其他地方做错了什么?
由于语义问题,我不知道如何真正重新排列它。
我可以回答有关该计划的任何问题,以便更轻松地评估情况。
-(void) TunnelMovement{
CGFloat Left1 = 14;
for( int i = 0; i < 41; i++ ){
CGFloat offset = (CGFloat)arc4random_uniform(2*100) - 100;
Left1 += offset;
Right1 = Left1 + 14;
//...
}
}
这正是我在尝试填写给出的答案中的空白后在我的代码中所拥有的内容。不确定我是否放入了所有必需品或什么。谢谢。
【问题讨论】:
-
正如您已经被告知(在您已删除的帖子中),“从不兼容的类型 'float' 分配给 'UIImageView *__strong'。”是由于将 float 类型的变量分配给 UIImageView 类型的变量。由于您在几天后无法解决这个小的单行错误消息,这只能意味着您根本没有编程经验。我可以建议您在继续之前抽出时间阅读一些有关编程基础知识的基本教程,否则您将继续不理解和/或应用给您的任何答案,除非被灌输
-
但是请随意发布显示错误的代码行,我很乐意更正它(它可能是右上角的最后一行 - 所以您也需要在此之前发布代码,一个包含声明或 Right1)
-
错误来自 Right1 = Left1 + 14;其他 2 个黄色警告来自该行及其上方的行
-
您需要在此之前显示代码,您必须在此处未显示的代码中将 Right1 声明为 UIImageView。
-
是的,我已将其声明为 IBOutlet UIImageView
标签: ios methods uiimageview correlated