本文整理汇总了Python中pysollib.layout.Layout.XOFFSET方法的典型用法代码示例。如果您正苦于以下问题:Python Layout.XOFFSET方法的具体用法?Python Layout.XOFFSET怎么用?Python Layout.XOFFSET使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pysollib.layout.Layout
的用法示例。
在下文中一共展示了Layout.XOFFSET方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: createGame
# 需要导入模块: from pysollib.layout import Layout [as 别名]
# 或者: from pysollib.layout.Layout import XOFFSET [as 别名]
def createGame(self):
# create layout
l, s = Layout(self), self.s
# set window
playcards = 5
w1, w2 = 8*l.XS+l.XM, 2*l.XS
if w2 + 52*l.XOFFSET > w1:
l.XOFFSET = int((w1 - w2) / 52)
self.setSize(w1, l.YM+3*l.YS+(playcards-1)*l.YOFFSET+l.TEXT_HEIGHT)
# create stacks
x, y = l.XM + l.XS // 2, l.YM
for i in range(7):
s.rows.append(Golf_RowStack(x, y, self))
x = x + l.XS
x, y = l.XM, self.height - l.YS
s.talon = Golf_Talon(x, y, self, max_rounds=1)
l.createText(s.talon, "n")
x = x + l.XS
s.waste = self.Waste_Class(x, y, self)
s.waste.CARD_XOFFSET = l.XOFFSET
l.createText(s.waste, "n")
# the Waste is also our only Foundation in this game
s.foundations.append(s.waste)
# define stack-groups (non default)
self.sg.openstacks = [s.waste]
self.sg.talonstacks = [s.talon]
self.sg.dropstacks = s.rows
示例2: createGame
# 需要导入模块: from pysollib.layout import Layout [as 别名]
# 或者: from pysollib.layout.Layout import XOFFSET [as 别名]
def createGame(self):
# create layout
l, s = Layout(self), self.s
# set window
# compute best XOFFSET
xoffset = int(l.XS * 8 / self.gameinfo.ncards)
if xoffset < l.XOFFSET:
l.XOFFSET = xoffset
# Set window size
w, h = l.XM + l.XS * 10, l.YM + l.YS * 4
self.setSize(w, h)
# Extra settings
self.game_score = 0
self.hand_score = self.sequence = 0
self.score_counted = False
self.peaks = [0] * 3
# Create rows
x, y = l.XM + l.XS * 1.5, l.YM
for i in range(3):
s.rows.append(ThreePeaks_RowStack(x, y, self))
x = x + l.XS * 3
x, y = l.XM + l.XS, y + l.YS * .5
for i in range(3):
s.rows.append(ThreePeaks_RowStack(x, y, self))
x = x + l.XS
s.rows.append(ThreePeaks_RowStack(x, y, self))
x = x + l.XS * 2
x, y = l.XM + l.XS * .5, y + l.YS * .5
for i in range(9):
s.rows.append(ThreePeaks_RowStack(x, y, self))
x = x + l.XS
x, y = l.XM, y + l.YS * .5
for i in range(10):
s.rows.append(ThreePeaks_RowStack(x, y, self))
x = x + l.XS
# Create talon
x, y = l.XM, y + l.YM + l.YS
s.talon = ThreePeaks_TalonStack(x, y, self, num_deal=1, max_rounds=1)
l.createText(s.talon, "s")
x = x + l.XS
s.waste = self.Waste_Class(x, y, self)
s.waste.CARD_XOFFSET = l.XOFFSET
s.foundations.append(s.waste)
l.createText(s.waste, "s")
# Create text for scores
if self.preview <= 1:
self.texts.info = MfxCanvasText(
self.canvas,
l.XM + l.XS * 3, h - l.YM,
anchor="sw",
font=self.app.getFont("canvas_default"))
# Define stack groups
l.defaultStackGroups()
示例3: createGame
# 需要导入模块: from pysollib.layout import Layout [as 别名]
# 或者: from pysollib.layout.Layout import XOFFSET [as 别名]
def createGame(self, max_rounds=1, num_deal=1, rows=10,
playcards=12, XCARDS=64, XOFFSET=None):
# create layout
if XOFFSET is None:
l, s = Layout(self), self.s
else:
l, s = Layout(self, XOFFSET=XOFFSET), self.s
# set window
# (compute best XOFFSET - up to 64/72 cards can be in the Waste)
decks = self.gameinfo.decks
maxrows = max(rows, 4*decks)
if maxrows <= 12:
maxrows += 1
w1, w2 = maxrows*l.XS+l.XM, 2*l.XS
if w2 + XCARDS * l.XOFFSET > w1:
l.XOFFSET = int((w1 - w2) / XCARDS)
# (piles up to 12 cards are playable without overlap
# in default window size)
h = max(2*l.YS, l.YS+(playcards-1)*l.YOFFSET)
self.setSize(w1, l.YM + l.YS + h + l.YS + l.TEXT_HEIGHT)
# create stacks
# foundations
x = l.XM + (maxrows - 4*decks) * l.XS // 2
y = l.YM
for i in range(4*decks):
s.foundations.append(
self.Foundation_Class(
x, y, self,
suit=i//decks, max_move=self.FOUNDATION_MAX_MOVE))
x = x + l.XS
# rows
x = l.XM + (maxrows - rows) * l.XS // 2
y = l.YM + l.YS
for i in range(rows):
s.rows.append(self.RowStack_Class(x, y, self,
max_move=self.ROW_MAX_MOVE))
x = x + l.XS
# talon, waste
x = self.width - l.XS
y = self.height - l.YS
s.talon = WasteTalonStack(x, y, self,
max_rounds=max_rounds, num_deal=num_deal)
l.createText(s.talon, "n")
if max_rounds > 1:
l.createRoundText(s.talon, 'nnn')
x -= l.XS
s.waste = WasteStack(x, y, self)
s.waste.CARD_XOFFSET = -l.XOFFSET
l.createText(s.waste, "n")
# define stack-groups
l.defaultStackGroups()