def createGame(self, max_rounds=-1, num_deal=1): # create layout l, s = Layout(self), self.s # set window w, h = 3*l.XM+3*l.XS+(4+13)*l.XOFFSET, l.YM+4*l.YS self.setSize(w, h) # create stacks x, y, = l.XM, l.YM for i in range(4): stack = BasicRowStack(x, y, self, max_move=1, max_accept=0) stack.CARD_XOFFSET, stack.CARD_YOFFSET = l.XOFFSET, 0 s.rows.append(stack) y = y + l.YS x, y, = 2*l.XM+l.XS+4*l.XOFFSET, l.YM for i in range(4): stack = self.Foundation_Class(x, y, self, suit=i, base_rank=ANY_RANK, max_move=0) stack.CARD_XOFFSET, stack.CARD_YOFFSET = l.XOFFSET, 0 s.foundations.append(stack) y = y + l.YS x, y, = self.width - l.XS, l.YM + l.YS s.talon = WasteTalonStack(x, y, self, max_rounds=max_rounds, num_deal=num_deal) l.createText(s.talon, "sw") y = y + l.YS s.waste = WasteStack(x, y, self) l.createText(s.waste, "sw") # define stack-groups l.defaultStackGroups()
def createGame(self): # create layout l, s = Layout(self), self.s # set window w, h = max(2*l.XM+2*l.XS+(5+13)*l.XOFFSET, l.XM + 8*l.XS), l.YM+8*l.YS self.setSize(w, h) # create stacks x, y, = l.XM, l.YM for i in range(4): stack = BasicRowStack(x, y, self, max_move=1, max_accept=0) stack.CARD_XOFFSET, stack.CARD_YOFFSET = l.XOFFSET, 0 s.rows.append(stack) y += l.YS x, y, = 2*l.XM+l.XS+5*l.XOFFSET, l.YM for i in range(4): stack = Osmosis_Foundation( x, y, self, i, base_rank=ANY_RANK, max_move=0) stack.CARD_XOFFSET, stack.CARD_YOFFSET = l.XOFFSET, 0 s.foundations.append(stack) y += l.YS y = l.YM + 4*l.YS for i in range(4): x = l.XM for j in range(8): s.reserves.append(OpenStack(x, y, self, max_accept=0)) x += l.XS y += l.YS x, y = w-l.XS, l.YM s.talon = InitialDealTalonStack(x, y, self) # define stack-groups l.defaultStackGroups()
def createGame(self): layout, s = Layout(self), self.s w0 = layout.XS+5*layout.XOFFSET self.setSize(layout.XM+5*w0, layout.YM+5*layout.YS) x, y = layout.XM, layout.YM for i in range(3): s.reserves.append(TripleAlliance_Reserve(x, y, self)) x += layout.XS x, y = self.width-layout.XS, layout.YM s.foundations.append(AbstractFoundationStack(x, y, self, suit=ANY_SUIT, max_move=0, max_accept=0, max_cards=52)) layout.createText(s.foundations[0], 'nw') y = layout.YM+layout.YS nstacks = 0 for i in range(4): x = layout.XM for j in range(5): stack = BasicRowStack(x, y, self, max_accept=0) s.rows.append(stack) stack.CARD_XOFFSET, stack.CARD_YOFFSET = layout.XOFFSET, 0 x += w0 nstacks += 1 if nstacks >= 18: break y += layout.YS x, y = self.width-layout.XS, self.height-layout.YS s.talon = InitialDealTalonStack(x, y, self) layout.defaultStackGroups()
def createGame(self): l, s = Layout(self), self.s w0 = l.XS+5*l.XOFFSET self.setSize(l.XM+5*w0, l.YM+5*l.YS) x, y = l.XM, l.YM for i in range(3): s.reserves.append(TripleAlliance_Reserve(x, y, self)) x += l.XS x, y = self.width-l.XS, l.YM s.foundations.append(AbstractFoundationStack(x, y, self, suit=ANY_SUIT, max_move=0, max_accept=0, max_cards=52)) l.createText(s.foundations[0], 'nw') y = l.YM+l.YS nstacks = 0 for i in range(4): x = l.XM for j in range(5): stack = BasicRowStack(x, y, self, max_accept=0) s.rows.append(stack) stack.CARD_XOFFSET, stack.CARD_YOFFSET = l.XOFFSET, 0 x += w0 nstacks += 1 if nstacks >= 18: break y += l.YS x, y = self.width-l.XS, self.height-l.YS s.talon = InitialDealTalonStack(x, y, self) l.defaultStackGroups()
def createGame(self, rows=(7, 7, 7, 5)): # create layout l, s = Layout(self), self.s # set window w, h = l.XM + max(max(rows) * (l.XS + 3 * l.XOFFSET), 9 * l.XS), l.YM + (len(rows) + 2) * l.YS self.setSize(w, h) # create stacks x, y = l.XM + (w - l.XM - 8 * l.XS) // 2, l.YM for i in range(4): s.foundations.append(SS_FoundationStack(x, y, self, suit=i)) x += l.XS for i in range(4): s.foundations.append( SS_FoundationStack(x, y, self, base_rank=KING, suit=i, dir=-1)) x += l.XS n = 0 y = l.YM + l.YS for i in rows: x = l.XM for j in range(i): stack = BasicRowStack(x, y, self, max_move=1, max_accept=0) stack.CARD_XOFFSET, stack.CARD_YOFFSET = l.XOFFSET, 0 s.rows.append(stack) x += l.XS + 3 * l.XOFFSET n += 1 y += l.YS x, y = l.XM + (w - l.XM - 8 * l.XS) // 2, h - l.YS for i in range(8): s.reserves.append(ReserveStack(x, y, self)) x += l.XS s.talon = InitialDealTalonStack(w - l.XS, h - l.YS, self) # default l.defaultAll()
def createGame(self, rows=(7, 7, 7, 5)): # create layout l, s = Layout(self), self.s # set window w, h = l.XM+max( max(rows)*(l.XS+3*l.XOFFSET), 9*l.XS), l.YM+(len(rows)+2)*l.YS self.setSize(w, h) # create stacks x, y = l.XM+(w-l.XM-8*l.XS)//2, l.YM for i in range(4): s.foundations.append(SS_FoundationStack(x, y, self, suit=i)) x += l.XS for i in range(4): s.foundations.append(SS_FoundationStack(x, y, self, base_rank=KING, suit=i, dir=-1)) x += l.XS n = 0 y = l.YM+l.YS for i in rows: x = l.XM for j in range(i): stack = BasicRowStack(x, y, self, max_move=1, max_accept=0) stack.CARD_XOFFSET, stack.CARD_YOFFSET = l.XOFFSET, 0 s.rows.append(stack) x += l.XS+3*l.XOFFSET n += 1 y += l.YS x, y = l.XM+(w-l.XM-8*l.XS)//2, h-l.YS for i in range(8): s.reserves.append(ReserveStack(x, y, self)) x += l.XS s.talon = InitialDealTalonStack(w-l.XS, h-l.YS, self) # default l.defaultAll()