def createGame(self): # create layout l, s = Layout(self), self.s # set window self.setSize(l.XM + 10 * l.XS, l.YM + 5 * l.YS) # create stacks x, y, = l.XM + 3 * l.XS, l.YM for i in range(4): s.foundations.append(RK_FoundationStack(x, y, self, max_move=0)) x += l.XS for i in range(2): y = l.YM + (i * 2 + 3) * l.YS / 2 for j in range(4): x = l.XM + (j * 5) * l.XS / 2 stack = RK_RowStack(x, y, self, base_rank=NO_RANK, max_move=1) stack.CARD_XOFFSET, stack.CARD_YOFFSET = l.XOFFSET, 0 s.rows.append(stack) x, y, = l.XM + 3 * l.XS, l.YM + 4 * l.YS s.talon = Bristol_Talon(x, y, self) l.createText(s.talon, "sw") x += l.XS for i in range(3): stack = WasteStack(x, y, self) l.createText(stack, 'n') s.reserves.append(stack) x += l.XS # define stack-groups self.sg.openstacks = s.foundations + s.rows self.sg.talonstacks = [s.talon] self.sg.dropstacks = s.rows + s.reserves
def createGame(self): # create layout l, s = Layout(self), self.s # set window self.setSize(l.XM + 10*l.XS, l.YM + 5*l.YS) # create stacks x, y, = l.XM + 3*l.XS, l.YM for i in range(4): s.foundations.append(RK_FoundationStack(x, y, self, max_move=0)) x += l.XS for i in range(2): y = l.YM + (i*2+3)*l.YS//2 for j in range(4): x = l.XM + (j*5)*l.XS//2 stack = RK_RowStack(x, y, self, base_rank=NO_RANK, max_move=1) stack.CARD_XOFFSET, stack.CARD_YOFFSET = l.XOFFSET, 0 s.rows.append(stack) x, y, = l.XM + 3*l.XS, l.YM + 4*l.YS s.talon = Bristol_Talon(x, y, self) l.createText(s.talon, "sw") x += l.XS for i in range(3): stack = WasteStack(x, y, self) l.createText(stack, 'n') s.reserves.append(stack) x += l.XS # define stack-groups self.sg.openstacks = s.foundations + s.rows self.sg.talonstacks = [s.talon] self.sg.dropstacks = s.rows + s.reserves
def createGame(self): # create layout lay, s = Layout(self), self.s # set window playcards = 8 w0 = lay.XS + playcards * lay.XOFFSET w = lay.XM + lay.XS // 2 + max(10 * lay.XS, lay.XS + 4 * w0) h = lay.YM + 5 * lay.YS + lay.TEXT_HEIGHT self.setSize(w, h) # extra settings self.base_card = None # create stacks x, y = lay.XM, lay.YM s.talon = WasteTalonStack(x, y, self, max_rounds=1) lay.createText(s.talon, 's') x += lay.XS s.waste = WasteStack(x, y, self) lay.createText(s.waste, 's') x = self.width - 8 * lay.XS for i in range(8): s.foundations.append( SS_FoundationStack(x, y, self, suit=i % 4, mod=13)) x += lay.XS tx, ty, ta, tf = lay.getTextAttr(None, "ss") tx, ty = x - lay.XS + tx, y + ty font = self.app.getFont("canvas_default") self.texts.info = MfxCanvasText(self.canvas, tx, ty, anchor=ta, font=font) x, y = lay.XM, lay.YM + lay.YS + lay.TEXT_HEIGHT for i in range(4): s.reserves.append(ReserveStack(x, y, self)) y += lay.YS y = lay.YM + lay.YS + lay.TEXT_HEIGHT for i in range(4): x = lay.XM + lay.XS + lay.XS // 2 for j in range(4): stack = RK_RowStack(x, y, self, max_move=1, mod=13) s.rows.append(stack) stack.CARD_XOFFSET, stack.CARD_YOFFSET = lay.XOFFSET, 0 x += w0 y += lay.YS # define stack-groups lay.defaultStackGroups()
def createGame(self): # create layout lay, s = Layout(self), self.s # set window playcards = 8 w0 = lay.XS+playcards*lay.XOFFSET w = lay.XM+lay.XS//2+max(10*lay.XS, lay.XS+4*w0) h = lay.YM+5*lay.YS+lay.TEXT_HEIGHT self.setSize(w, h) # extra settings self.base_card = None # create stacks x, y = lay.XM, lay.YM s.talon = WasteTalonStack(x, y, self, max_rounds=1) lay.createText(s.talon, 's') x += lay.XS s.waste = WasteStack(x, y, self) lay.createText(s.waste, 's') x = self.width - 8*lay.XS for i in range(8): s.foundations.append(SS_FoundationStack(x, y, self, suit=i % 4, mod=13)) x += lay.XS tx, ty, ta, tf = lay.getTextAttr(None, "ss") tx, ty = x-lay.XS+tx, y+ty font = self.app.getFont("canvas_default") self.texts.info = MfxCanvasText(self.canvas, tx, ty, anchor=ta, font=font) x, y = lay.XM, lay.YM+lay.YS+lay.TEXT_HEIGHT for i in range(4): s.reserves.append(ReserveStack(x, y, self)) y += lay.YS y = lay.YM+lay.YS+lay.TEXT_HEIGHT for i in range(4): x = lay.XM+lay.XS+lay.XS//2 for j in range(4): stack = RK_RowStack(x, y, self, max_move=1, mod=13) s.rows.append(stack) stack.CARD_XOFFSET, stack.CARD_YOFFSET = lay.XOFFSET, 0 x += w0 y += lay.YS # define stack-groups lay.defaultStackGroups()
def createGame(self, rows=8): # create layout l, s = Layout(self), self.s # set size self.setSize(l.XM + (rows+2)*l.XS, l.YM + 5*l.YS) # playcards = 4*l.YS // l.YOFFSET xoffset, yoffset = [], [] for i in range(playcards): xoffset.append(0) yoffset.append(l.YOFFSET) for i in range(104-playcards): xoffset.append(l.XOFFSET) yoffset.append(0) # create stacks x, y = l.XM, l.YM for i in range(rows): stack = RK_RowStack(x, y, self) stack.CARD_XOFFSET = xoffset stack.CARD_YOFFSET = yoffset s.rows.append(stack) x += l.XS x, y = l.XM + rows*l.XS, l.YM for suit in range(4): for i in range(2): s.foundations.append(RK_FoundationStack(x+i*l.XS, y, self, suit=suit)) y += l.YS self.setRegion(self.s.foundations, (x - l.CW // 2, -999, 999999, y), priority=1) x, y = self.width-3*l.XS//2, self.height-l.YS s.talon = InitialDealTalonStack(x, y, self) # define stack-groups l.defaultStackGroups()