变量具有相同的值,pygame的

我试图做一个游戏在pygame的,但由于某些原因的演员和InP具有相同的价值。 我试图让他们成为数组而不是类,但它并没有解决问题。

import pygame, sys from pygame.locals import * pygame.init() screen=pygame.display.set_mode((640,360),0,32) a=pygame.image.load('a.png') class xy: x=0 y=0 jump=0 actor=xy inp=xy def events(): for event in pygame.event.get(): if event.type == QUIT: pygame.quit() sys.exit() return elif event.type == KEYDOWN: if event.key==K_LEFT: inp.x=-1 elif event.key==K_RIGHT: inp.x=1 elif event.key==K_UP: inp.y=-1 elif event.key==K_DOWN: inp.y=1 elif event.key==K_SPACE: inp.jump=True elif event.type==KEYUP: if event.key==K_LEFT: inp.x=0 elif event.key==K_RIGHT: inp.x=0 elif event.key==K_UP: inp.y=0 elif event.key==K_DOWN: inp.y=0 elif event.key==K_SPACE: inp.jump=False return def controller(): if inp.x<0: actor.x-=1 elif inp.x>0: actor.x+=1 if inp.y<0: actor.y-=1 elif inp.y>0: actor.y+=1 ## actor.x+=inp.x ## actor.y+=inp.y return def screen_update(): pygame.draw.rect(screen, 0x006633, ((0,0),(640,360)),0) screen.blit(a, (actor.x,actor.y)) pygame.display.update() if __name__ == '__main__': while True: events() print 'inp='+str(inp.x)+','+str(inp.y) print 'actor='+str(actor.x)+','+str(inp.y) controller() screen_update()

为什么不能的事情我做正常工作? :(

--------------解决方案-------------

简单地说,你正在做的类完全错误

class xy:
def __init__(self):
self.x = 0
self.y = 0
self.jump = 0

actor = xy()
inp = xy()

分类:蟒蛇 时间:2015-03-15 人气:0
本文关键词: 蟒蛇,类变量,pygame的
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 1.970 (s). 10 q(s)