Changeset 38
- Timestamp:
- 24/03/08 00:12:50 (10 months ago)
- Location:
- muckaround/freetower
- Files:
-
- 4 modified
-
source/game.py (modified) (1 diff)
-
source/level.py (modified) (4 diffs)
-
source/people.py (modified) (2 diffs)
-
test.py (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
muckaround/freetower/source/game.py
r37 r38 17 17 def think(self, dt): 18 18 self.current_time += dt 19 self.level.think(dt) 19 20 20 21 def input(self): -
muckaround/freetower/source/level.py
r37 r38 5 5 6 6 from structures import * 7 from transports import TransportExit 7 8 8 9 … … 48 49 self.transport_exits = [] 49 50 51 def think(self, dt): 52 53 # for transport in self.transports: 54 # transport.think(dt) 55 56 for person in self.people: 57 person.think(dt) 58 50 59 def set_section(self, level, section, struct, *args, **kwargs): 51 60 … … 69 78 if not person_type: 70 79 person_type = NormalPerson 71 person = person_type(self, level=0, section=0,*args, **kwargs)80 person = person_type(self, *args, **kwargs) 72 81 self.people.append(person) 82 return person 73 83 74 84 def add_transport(self, transport, *args, **kwargs): … … 186 196 transport.render() 187 197 198 for person in self.people: 199 person.render() 200 188 201 def render_path(self, p): 189 202 glColor3f(0.2, 0.7, 0.2) -
muckaround/freetower/source/people.py
r37 r38 1 import random 2 3 from pyglet.gl import * 4 5 from transports import TransportExit 6 1 7 class Person(object): 2 8 … … 16 22 self.state = None 17 23 18 def think(self): 19 if not self.state: 20 self.think_of_something() 24 def think(self, dt): 25 #if not self.state: 26 # self.think_of_something() 27 if self.destination: 28 assert(self.path) 29 if self.destination.dst.section > self.section: 30 direction = 1 31 else: 32 direction - 1 33 self.section += direction 34 print 'zing' 21 35 22 36 def think_of_something(self): 23 37 pass 38 39 def find_path(self, level, section): 40 target = TransportExit(None, level, section) 41 self.path = self.levelobj.find_path( 42 TransportExit(None, self.level, self.section), 43 target, 44 maxcost=100, 45 ) 46 self.target = target 47 self.destination = self.path[0] 48 49 50 def render(self): 51 glBegin(GL_LINES) 52 glVertex2f(self.section + random.random(), self.level + 0.3) 53 glVertex2f(self.section + random.random(), self.level + 0.5) 54 glEnd() 55 24 56 25 57 class NormalPerson(Person): -
muckaround/freetower/test.py
r37 r38 10 10 from source.transports import * 11 11 from source.game import Game 12 from source.people import * 12 13 13 14 def main(): … … 28 29 level.add_transport(Stairs, 0, 30, direction=1) 29 30 level.add_transport(Lift, 0, 20, height=6) 31 p = level.add_person(person_type=Person, level=0, section=0) 32 p.find_path(0, 10) 30 33 31 34 t = time.time() … … 40 43 print frames / (time.time() - t) 41 44 42 43 45 if __name__ == '__main__': 44 46 sys.exit(main())