小的基本重置形状位置后退出屏幕

  • 本文关键字:位置 退出 屏幕 smallbasic
  • 更新时间 :
  • 英文 :


请帮忙!!!

我在小基本方面遇到了一点问题

我想做一个小游戏,让不明飞行物避开小行星,我做了一个小行星并制作了动画,然后我想让它的y位置回到0 wen,它通过了屏幕。

meteimg = "C:UsersuserDesktopmeteo.png"
meteorite = Shapes.AddImage(meteimg)
meteoriteX = Math.GetRandomNumber(GraphicsWindow.Width)
Shapes.Move(meteorite, meteoriteX, 0)
Shapes.Animate(meteorite, meteoriteX, GraphicsWindow.Height,Math.GetRandomNumber(2000))

然后我应该添加类似的东西

if meteorite's y position > graphicsWindow.height then
shapes.move(meteorite, meteoriteX, 0)
endif

你不应该为此使用 shapes.animate。您无法在对象移动时获取对象的位置。以下是天体流星雨的一些代码:

NumAstroids = 10
For i = 1 To NumAstroids
Astroid[i] = Shapes.AddEllipse(20,20)
AstroidX[i] = Math.GetRandomNumber(GraphicsWindow.Width-20)
AstroidY[i] = -Math.GetRandomNumber(GraphicsWindow.Height)
AstroidSpeed[i] = Math.GetRandomNumber(4) + 1 '<- Min speed is 1
EndFor
While 1 = 1
Program.Delay(10)
For i = 1 To NumAstroids
Shapes.Move(Astroid[i],AstroidX[i],AstroidY[i])
AstroidY[i] = AstroidY[i] + AstroidSpeed[i]
 If AstroidY[i] > GraphicsWindow.Height Then
  AstroidX[i] = Math.GetRandomNumber(GraphicsWindow.Width-20)
  AstroidY[i] = -Math.GetRandomNumber(50)-20
  AstroidSpeed[i] = Math.GetRandomNumber(4) + 1 '<- Min speed is 1
 EndIf
EndFor
EndWhile
meteorite's y position

据我所知等于

Shapes.GetTop(meteorite)

你需要在一个循环中检查它是否会四处移动。

相关内容

  • 没有找到相关文章

最新更新