示例#1
0
 def __init__(self):
   core.wm.set_screen("inventory")
   Window.__init__(self,core.screen.get_rect())
   core.wm.set_screen("main")
   self.fg = color.Color('white')
   self.bg = color.Color('Blue')
   self.font = font.Font(None, 20)
   self.equipped_icon = self.font.render("E", True, self.fg)
   self.character_fields = \
       ['level','hp','max_hp','strength','agility','vitality','thaco','ac','gold','exp']
示例#2
0
文件: dialog.py 项目: bpa/renegade
    def __init__(self, width=170, height=40, x=5, y=5):
        rect = Rect(x,y,width,height)
        Window.__init__(self, rect, 0)
        self.x = x
        self.y = y
        self.render = pygame.font.Font(None, 16).render
        self.fg = pygame.color.Color('yellow')
        self.bg = pygame.color.Color('black')
        self.tr = pygame.color.Color('red')

        self.bgwin = core.wm.window(width,height,x,y,z=1,name="FPS background")
        self.bgwin.image.fill(self.bg)
        self.bgwin.image.set_alpha(128)
示例#3
0
文件: map.py 项目: bpa/renegade
    def __init__(self, width, height, default_tile_name='floor'):
        Window.__init__(self,None,10)
        self.save_data = SaveObject()
        self.tile_manager = TileManager()
        default_tile = self.tile_manager.get_tile(default_tile_name)
        self.tiles = []
        for x in range(width):
            col = []
            self.tiles.append(col)
            for y in range(height):
                location = MapLocation(self, (x,y), default_tile)
                col.append(location)
        self.width = width
        self.height = height
        tiles_x = core.screen.get_width() / 32
        tiles_y = core.screen.get_height() / 32
        self.dimentions = Rect(0,0,width,height)
        self.character = None
        self.entities = RenderEntity()
        self.non_passable_entities = RenderEntity()
        self.viewport = Rect(0,0,tiles_x,tiles_y)
        self.offset = Rect(0,0,0,0)
        self.map_tile_coverage = Rect(0,0,tiles_x+5,tiles_y+5)
        if self.map_tile_coverage.width > width:
            self.map_tile_coverage.width = width
        if self.map_tile_coverage.height > height:
            self.map_tile_coverage.height = height
        self.map_non_scroll_region = \
                    self.viewport.inflate(SCROLL_EDGE*-2,SCROLL_EDGE*-2)
        self.action_listeners = {}
        self.entry_listeners = {}
        self.movement_listeners = []
        self.scrolling = False
        self.frame = 0
        self.map_frames_dirty = [True,True,True,True]
        self.map_frames = []
        self.heal_points = 0
        self.regen_rate = 2000000000
        self.sound = core.mixer.Sound('%s/sounds/beep.wav' % DATA_DIR)
        for f in range(4):
#TODO Add non hardcoded values for buffer
#TODO Make sure we don't make a larger surface than we need
#TODO   Ex: 5x5 map
            self.map_frames.append(Surface(((1+width) * TILE_SIZE, \
                    (1+height) * TILE_SIZE)))