-
Notifications
You must be signed in to change notification settings - Fork 0
/
game.py
74 lines (56 loc) · 1.67 KB
/
game.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
from player import Player
from lepton import default_system
from world import World
import rabbyt
import os
from pyglet import clock, image, app, resource
from pyglet.gl import *
import zmq
import sys
global sub_socket
#---------------------------------------
#OPEN GL STUFF THAT HARDLY MAKES SENSE
#---------------------------------------
glEnable(GL_BLEND)
glShadeModel(GL_SMOOTH)
glBlendFunc(GL_SRC_ALPHA,GL_ONE)
glHint(GL_PERSPECTIVE_CORRECTION_HINT,GL_NICEST);
glDisable(GL_DEPTH_TEST)
#----------------------------------
# CREATE THE PLAYER THEN THE WORLD
#----------------------------------
tank = Player('Mac', 'tanktop', 'tankbot', 100, 100)
world = World()
world.connectServer()
world.selectLevel('city1')
world.addPlayer(tank, main=True)
#---------------------------------------------------
# RABBYT THAT NEEDS TO HAPPEN AFTER WORLD GENERATION
#---------------------------------------------------
rabbyt.set_default_attribs()
rabbyt.data_directory = os.path.dirname(__file__)
#------
# CRAP that needs to move
#------
fps_display = clock.ClockDisplay()
#---------------------------------
# WINDOW EVENTS. MOSTLY MOUSE
#---------------------------------
@world.window.event
def on_draw():
world.window.clear()
#render your bg here if you want to see the shapes
#world.bgimage.blit(0,0)
for obj in world.map_objects:
obj.render()
world.bgimage.blit(0,0)
for n, obj in world.players.items():
obj.render()
world.displayScore()
glLoadIdentity()
default_system.draw()
fps_display.draw()
if __name__=='__main__':
clock.schedule(world.gameUpdate)
clock.schedule_interval(world.p1.send, 1.0/30)
app.run()