rendered paste body#! /usr/bin/env python
import pygame
from pygame.locals import *
from twisted.internet.protocol import DatagramProtocol
from twisted.internet import reactor, task
class Network(DatagramProtocol):
def datagramReceived(self, data, (host, port)):
print "received %r from %s:%d" % (data, host, port)
class Player(pygame.sprite.Sprite):
def __init__(self):
pygame.sprite.Sprite.__init__(self, self.containers)
self.image = pygame.Surface((32, 32))
clr=75
for i in range(32):
clr += 4
self.image.fill((clr, 0, 0), (i, 0, 1, 32))
self.rect = self.image.get_rect()
def update(self):
self.rect.center = pygame.mouse.get_pos()
#Network.transport.write(self.rect.x, ('208.101.16.146', 9999))
class Other(pygame.sprite.Sprite):
def __init__(self):
pygame.sprite.Sprite.__init__(self, self.containers)
self.image = pygame.Surface((32, 32))
clr=75
for i in range(32):
clr += 4
self.image.fill((0, clr, 0), (i, 0, 1, 32))
self.rect = self.image.get_rect()
def setCenter(self, pos):
self.rect.center = pos
class Game:
def __init__(self):
pygame.init()
event_loop = task.LoopingCall(self.pygame_loop)
event_loop.start(0.2, now=True)
self.display_loop = task.LoopingCall(self.update)
def pygame_loop(self):
for event in pygame.event.get():
#print event
if((event.type == KEYDOWN and event.key == K_ESCAPE) or
event.type == QUIT):
reactor.stop()
def update(self):
print "lol"
pygame.display.set_caption("Online Test Thingy")
self.screen = pygame.display.set_mode((640, 480), HWSURFACE|DOUBLEBUF)
self.sprites = pygame.sprite.RenderUpdates()
Player.containers = self.sprites
Other.containers = self.sprites
self.other = Other()
self.player = Player()
pygame.mouse.set_visible(0)
self.other.setCenter((320, 240))
self.screen.fill((0, 0, 255))
clr=55
for i in range(65):
clr += 3
self.screen.fill((0, 0, clr), (i*10, 0, 10, 480))
self.sprites.draw(self.screen)
self.sprites.update()
pygame.display.flip()
if __name__ == "__main__":
Game()
reactor.listenUDP(0, Network())
reactor.run()