我想通過編寫一個蛇遊戲來學習Python(我有2.5.4),但是我被卡住了。 一些整數變成花車和不斷隨機變化,至少從我的角度:)Python改變整數浮點本身
的問題是,Snake.spawnPoint
得到由Cam.move()
print Snake.spawnPoint # first time, this returns '[25, 20]' ,which is good.
Cam.Move()
print Snake.spawnPoint # after the method, the value is '[26.0, 21.0]', and that's bad
之後改變了,他們只是在周圍漂移。
這是方法:(它無關的spawnPoint
def Move(self):
self.vel[0]+=(self.target[0]-self.cen[0])*self.k
self.vel[1]+=(self.target[1]-self.cen[1])*self.k
if self.vel[0] > self.friction: self.vel[0]-= self.friction
elif self.vel[0] < self.friction: self.vel[0]+= self.friction
else: self.vel[0] = 0
if self.vel[1] > self.friction: self.vel[1]-= self.friction
elif self.vel[1] < self.friction: self.vel[1]+= self.friction
else: self.vel[1]=0
self.cen[0]+=self.vel[0]
self.cen[1]+=self.vel[1]
的spawnPoint
是一個常數,我追加到蛇的身體,當他產卵我想這是一個列表,因爲它有蛇的身體做名單,並渲染方法使用index()
做的東西。
的代碼似乎並不適合這裏,所以我拉上了。 有人可以來看看嗎?謝謝 http://www.mediafire.com/?zdcx5s93q9hxz4o
請儘量減少代碼到一個顯示你的問題的最小例子(這也可能幫助你自己找到問題) – second 2010-09-13 14:55:25
嗯,我不能減少它,因爲我不知道什麼是錯的,但我知道' Snake.spawnPoint'被'Cam.move()'改變了,我忘了在描述中提到這個 – andrewrocks 2010-09-13 15:06:33
@andrew:當整數變成float時,你可以在這個地方放兩個print語句來看看是否確實發生了。你在那裏做分區嗎? – SilentGhost 2010-09-14 11:06:21