在变量中捕获最后一个位置的对象?
Posted
技术标签:
【中文标题】在变量中捕获最后一个位置的对象?【英文标题】:Capturing last location's object in a variable? 【发布时间】:2016-02-16 07:15:12 【问题描述】:现在我有大约 10x10 的方格,玩家可以一次移动 1 个方格。 当他们跳到一个正方形时,我需要一个动画来播放基于他们跳到的正方形的 sprite_index 和他们刚刚来自的那个正方形。 我已经解决了“跳转到”的问题。 在玩家和方格(这里的其他方格)发生碰撞事件中:
with(other)
if sprite_index = sGreenH
instance_create(x,y,oGreenPlayerAni)
(还有更好的方法来完成上述操作吗?我可以删除它/替换它然后放置一些东西,而不是在上面生成它吗?)
所以现在我正在尝试从角色离开的方块播放动画。我可以通过带有正方形的玩家碰撞来做到这一点:
xx = xprevious and yy = yprevious
instance_create(xx,yy, someanimation)
问题是我无法自定义播放的动画。有 4 种可能的动画颜色可用于 4 个不同的颜色方块。 所以我尝试在我的广场上发生碰撞事件,让玩家制作一个变量,例如
if sprite_index = sGreen
global.previousColor = 1
我的每一种颜色。然后在我的玩家与广场的碰撞事件中,我又遇到了
if global.previousColor = 1
instance_create(xx,yy, oGreenHollowAni)
然后我在移动时出现错误。
代码方块与玩家碰撞(玩家在方块上):http://puu.sh/n9zCY/2f226b6d3c.png
代码播放器与方块碰撞:http://puu.sh/n9zK6/deac1a09f5.png
错误:http://puu.sh/n9zPj/ea84a9a943.png
【问题讨论】:
【参考方案1】:我不确定我是否正确理解了您的问题。据我所知,你总是在玩家移动时创建一个新实例?
如果是这样,那就不好了。当您创建 10x10 的正方形网格时,我猜您创建了一个数组,您将在其中放置显示哪种颜色的正方形的信息 fe。 array[x][y] = color.green ...然后您可以创建一个枚举并定义 green = 1, blue = 2 ... 这个数组将是一个全局数组。 然后从玩家类别中检查您当前所在的方格,如果您移动,则检查您将在哪个方格上。使用这些信息,您可以定义动画。
如果这就是你的意思,请告诉我。
埃里克
【讨论】:
以上是关于在变量中捕获最后一个位置的对象?的主要内容,如果未能解决你的问题,请参考以下文章