Exemplo n.º 1
0
    def __init__(self, screen, pos, chengchi, db):
        """ pos=屏幕位置 name=城池名称 db=DB数据"""
        easy_pygame.GameObject.__init__(self)

        self.screen = screen
        self.pos = pos
        self.db = db
        self.chengchi = chengchi
        self.size = (800, 560)
        self.taishou = self.db.info_chengchi[chengchi]['太守']
        self.sf = pygame.Surface(self.size)
        wj_list = db.shili[db.info_chengchi[chengchi]['势力']][chengchi]
        self.wjlist = WujiangList(self.sf, (250, 10),
                                  db.get_wujiang(wj_list),
                                  size=(550, 500),
                                  radio=True)
        self.wjlist.set_checked(self.taishou)
        self.img = self.db.info_wujiang[self.taishou]['大身像']
        self.info = easy_pygame.Label(self.sf, (10, 260),
                                      size=(240, 300),
                                      alpha=200,
                                      touch=True)
        self.update()
Exemplo n.º 2
0
    def __init__(self,screen,pos,chengchi,db):
        """ pos=屏幕位置 name=城池名称 db=DB数据"""
        easy_pygame.GameObject.__init__(self)

        self.screen=screen
        self.pos=pos
        self.db=db
        self.chengchi=chengchi
        self.size=(800,560)
        self.taishou=self.db.info_chengchi[chengchi]['太守']
        self.sf=pygame.Surface(self.size)
        wj_list=db.shili[db.info_chengchi[chengchi]['势力']][chengchi]
        self.wjlist=WujiangList(self.sf,(250,10),db.get_wujiang(wj_list),size=(550,500),radio=True)
        self.wjlist.set_checked(self.taishou)
        self.img=self.db.info_wujiang[self.taishou]['大身像']
        self.info=easy_pygame.Label(self.sf,(10,260),size=(240,300),alpha=200,touch=True)
        self.update()
Exemplo n.º 3
0
class Taishou(easy_pygame.GameObject):
    def __init__(self, screen, pos, chengchi, db):
        """ pos=屏幕位置 name=城池名称 db=DB数据"""
        easy_pygame.GameObject.__init__(self)

        self.screen = screen
        self.pos = pos
        self.db = db
        self.chengchi = chengchi
        self.size = (800, 560)
        self.taishou = self.db.info_chengchi[chengchi]['太守']
        self.sf = pygame.Surface(self.size)
        wj_list = db.shili[db.info_chengchi[chengchi]['势力']][chengchi]
        self.wjlist = WujiangList(self.sf, (250, 10),
                                  db.get_wujiang(wj_list),
                                  size=(550, 500),
                                  radio=True)
        self.wjlist.set_checked(self.taishou)
        self.img = self.db.info_wujiang[self.taishou]['大身像']
        self.info = easy_pygame.Label(self.sf, (10, 260),
                                      size=(240, 300),
                                      alpha=200,
                                      touch=True)
        self.update()

    def update(self):
        self.img = self.db.info_wujiang[self.taishou]['大身像']

        ts = self.db.info_wujiang[self.taishou]
        cc = self.db.info_chengchi[self.chengchi]
        self.info.clear()
        self.info.set_font(('../wqy-zenhei.ttc', 18))
        self.info.add(self.chengchi, (255, 255, 0))
        self.info.add('太守:')
        self.info.add(self.taishou, (255, 255, 0))
        self.info.endl(3)

        zz = cc['农业资源'] * (ts['智力'] - 50) / 50.0
        zz = int(zz)
        zs = cc['农业资源'] + zz
        self.info.add('农业资源:' + str(zs))
        if zz >= 0:
            self.info.add(' (+' + str(zz) + ')', (255, 0, 0))
        else:
            self.info.add(' (' + str(zz) + ')', (255, 255, 0))
        self.info.endl(3)

        zz = cc['商业资源'] * (ts['智力'] - 50) / 50.0
        zz = int(zz)
        zs = cc['商业资源'] + zz
        self.info.add('商业资源:' + str(zs))
        if zz >= 0:
            self.info.add(' (+' + str(zz) + ')', (255, 0, 0))
        else:
            self.info.add(' (' + str(zz) + ')', (255, 255, 0))
        self.info.endl(3)

        self.info.add('城池防御: 15%')
        self.info.add('+' + str(ts['武力'] / 10) + '%', (255, 0, 0))
        self.info.endl(3)

    def Show(self):
        self.sf.blit(self.img, (10, 10))
        self.wjlist.Show()
        self.info.Show()
        self.screen.blit(self.sf, self.pos)

    def Event(self, event):

        if self.info.Event(event):
            return True
        if self.wjlist.Event(event):
            wj = self.wjlist.get_checked()
            if wj != self.taishou:
                self.taishou = wj
                self.update()
            return True
Exemplo n.º 4
0
class Taishou(easy_pygame.GameObject):
    def __init__(self,screen,pos,chengchi,db):
        """ pos=屏幕位置 name=城池名称 db=DB数据"""
        easy_pygame.GameObject.__init__(self)

        self.screen=screen
        self.pos=pos
        self.db=db
        self.chengchi=chengchi
        self.size=(800,560)
        self.taishou=self.db.info_chengchi[chengchi]['太守']
        self.sf=pygame.Surface(self.size)
        wj_list=db.shili[db.info_chengchi[chengchi]['势力']][chengchi]
        self.wjlist=WujiangList(self.sf,(250,10),db.get_wujiang(wj_list),size=(550,500),radio=True)
        self.wjlist.set_checked(self.taishou)
        self.img=self.db.info_wujiang[self.taishou]['大身像']
        self.info=easy_pygame.Label(self.sf,(10,260),size=(240,300),alpha=200,touch=True)
        self.update()

    def update(self):
        self.img=self.db.info_wujiang[self.taishou]['大身像']

        ts=self.db.info_wujiang[self.taishou]
        cc=self.db.info_chengchi[self.chengchi]
        self.info.clear()
        self.info.set_font(('../wqy-zenhei.ttc',18))
        self.info.add(self.chengchi,(255,255,0))
        self.info.add('太守:')
        self.info.add(self.taishou,(255,255,0))
        self.info.endl(3)
    
        zz=cc['农业资源']*(ts['智力']-50)/50.0
        zz=int(zz)
        zs=cc['农业资源']+zz
        self.info.add('农业资源:'+str(zs))
        if zz>=0:
            self.info.add(' (+'+str(zz)+')',(255,0,0))
        else:
            self.info.add(' ('+str(zz)+')',(255,255,0))
        self.info.endl(3)
        
        zz=cc['商业资源']*(ts['智力']-50)/50.0
        zz=int(zz)
        zs=cc['商业资源']+zz
        self.info.add('商业资源:'+str(zs))
        if zz>=0:
            self.info.add(' (+'+str(zz)+')',(255,0,0))
        else:
            self.info.add(' ('+str(zz)+')',(255,255,0))
        self.info.endl(3)

        self.info.add('城池防御: 15%')
        self.info.add('+'+str(ts['武力']/10)+'%',(255,0,0))
        self.info.endl(3)
        
    def Show(self):
        self.sf.blit(self.img,(10,10))
        self.wjlist.Show()
        self.info.Show()
        self.screen.blit(self.sf,self.pos)

    def Event(self,event):

        if self.info.Event(event):
            return True
        if self.wjlist.Event(event):
            wj=self.wjlist.get_checked()
            if wj!=self.taishou:
                self.taishou=wj
                self.update()
            return True