1
0
Fork 0
mirror of https://github.com/shlomif/PySolFC.git synced 2025-04-05 00:02:29 -04:00

+ 2 new games

* updated translation
* misc. improvements and bugs fixes


git-svn-id: file:///home/shlomif/Backup/svn-dumps/PySolFC/svnsync-repos/pysolfc/PySolFC/trunk@75 efabe8c0-fbe8-4139-b769-b5e6d273206e
This commit is contained in:
skomoroh 2006-10-01 21:09:18 +00:00
parent 86aecf019a
commit 3d6636ee2e
5 changed files with 99 additions and 68 deletions

View file

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PySol 0.0.1\n"
"POT-Creation-Date: Thu Sep 21 15:56:22 2006\n"
"PO-Revision-Date: 2006-09-17 17:05+0400\n"
"PO-Revision-Date: 2006-09-30 18:19+0400\n"
"Last-Translator: Скоморох <skomoroh@gmail.com>\n"
"Language-Team: Russian <ru@li.org>\n"
"MIME-Version: 1.0\n"
@ -47,13 +47,11 @@ msgstr "8 x 8"
msgid "Abacus"
msgstr "Абак"
#, fuzzy
msgid "Accordion"
msgstr "Скорпион"
msgstr "Аккордеон"
#, fuzzy
msgid "Aces High"
msgstr "Тузы вверх"
msgstr "Тузы сверху"
msgid "Aces Up"
msgstr "Тузы вверх"
@ -211,11 +209,10 @@ msgid "Balance"
msgstr "Баланс"
msgid "Balarama"
msgstr ""
msgstr "Баларама"
#, fuzzy
msgid "Baroness"
msgstr "Основа"
msgstr "Баронесса"
msgid "Bastille Day"
msgstr "День Бастилии"
@ -244,7 +241,6 @@ msgstr "Клюв и ласты"
msgid "Beatle"
msgstr "Жук"
#, fuzzy
msgid "Beetle"
msgstr "Жук"
@ -272,9 +268,8 @@ msgstr "Большой Внутренний двор"
msgid "Big Deal"
msgstr "Большая Расдача"
#, fuzzy
msgid "Big Divorce"
msgstr "Большая дыра"
msgstr "Большой разрыв"
#, fuzzy
msgid "Big Easy"
@ -283,9 +278,8 @@ msgstr "Большая арфа"
msgid "Big Flying Dragon"
msgstr "Большой Летящий Дракон"
#, fuzzy
msgid "Big Forty"
msgstr "Форт"
msgstr "Большие сорок"
msgid "Big Harp"
msgstr "Большая арфа"
@ -383,12 +377,11 @@ msgstr "Мост"
msgid "Bridge 2"
msgstr "Мост 2"
#, fuzzy
msgid "Bridget's Game"
msgstr "Мост 2"
msgstr "Пасьянс Бриджит"
msgid "Bridget's Game Doubled"
msgstr ""
msgstr "Двойной Пасьянс Бриджит"
msgid "Brigade"
msgstr "Бригада"
@ -518,7 +511,7 @@ msgid "Chelicera"
msgstr "Хелицера"
msgid "Cheops"
msgstr ""
msgstr "Хеопс"
msgid "Chequers"
msgstr "Шахматный порядок"
@ -596,9 +589,8 @@ msgstr "Виток"
msgid "Corkscrew"
msgstr "Штопор"
#, fuzzy
msgid "Corner Card"
msgstr "Углы"
msgstr "Угловая карта"
msgid "Corner Suite"
msgstr "Угловые масти"
@ -907,9 +899,8 @@ msgstr "Восемь квадратов"
msgid "Eight Times Eight"
msgstr "Восемь раз по восемь"
#, fuzzy
msgid "Eight by Eight"
msgstr "Восемь раз по восемь"
msgstr "Восемь на восемь"
msgid "Elba"
msgstr "Ельба"
@ -991,12 +982,11 @@ msgstr "Очаровательный веер"
msgid "Fastness"
msgstr "Крепость"
#, fuzzy
msgid "Fatimeh's Game"
msgstr "Бабушкина игра"
msgstr "Пасьянс Фатимы"
msgid "Fatimeh's Game Relaxed"
msgstr ""
msgstr "Облегчённый Пасьянс Фатимы"
#, fuzzy
msgid "Fifteen Puzzle"
@ -1030,9 +1020,8 @@ msgstr "Маджонг Fish face"
msgid "Five Aces"
msgstr "Пять тузов"
#, fuzzy
msgid "Five Piles"
msgstr "Пять тузов"
msgstr "Пять кучек"
msgid "Five Pyramids"
msgstr "Пять пирамид"
@ -1043,9 +1032,8 @@ msgstr "Фламенко"
msgid "Floating City"
msgstr "Плавающий город"
#, fuzzy
msgid "Floradora"
msgstr "Колорадо"
msgstr "Флорадора"
msgid "Flower Arrangement"
msgstr "Аранжировка цветов"
@ -1392,9 +1380,8 @@ msgstr "Дурацкое удовольствие"
msgid "Idle Aces"
msgstr "Свободные тузы"
#, fuzzy
msgid "Idle Year"
msgstr "Свободные тузы"
msgstr "Свободный год"
msgid "IloveU"
msgstr "IloveU"
@ -1498,26 +1485,25 @@ msgid "K for Kyodai"
msgstr "Маджонг K for Kyodai"
msgid "Kali's Game"
msgstr ""
msgstr "Пасьянс Кали"
msgid "Kali's Game Doubled"
msgstr ""
msgstr "Двойной Пасьянс Кали"
msgid "Kali's Game Relaxed"
msgstr ""
msgstr "Облегчённый Пасьянс Кали"
msgid "Kansas"
msgstr "Канзас"
#, fuzzy
msgid "Katrina's Game"
msgstr "Бабушкина игра"
msgstr "Пасьянс Катрины"
msgid "Katrina's Game Doubled"
msgstr ""
msgstr "Двойной Пасьянс Катрины"
msgid "Katrina's Game Relaxed"
msgstr ""
msgstr "Облегчённый Пасьянс Катрины"
msgid "Khadga"
msgstr "Khadga"
@ -1546,9 +1532,8 @@ msgstr ""
msgid "Klondike"
msgstr "Клондайк"
#, fuzzy
msgid "Klondike Plus 16"
msgstr "Клондайк"
msgstr "Клондайк Плюс 16"
msgid "Klondike by Threes"
msgstr "Клондайк по три"
@ -1660,15 +1645,14 @@ msgstr "Ленивая леди"
msgid "Lanes"
msgstr "Тропинки"
#, fuzzy
msgid "Lara's Game"
msgstr "Бабушкина игра"
msgstr "Пасьянс Лары"
msgid "Lara's Game Doubled"
msgstr ""
msgstr "Двойной Пасьянс Лары"
msgid "Lara's Game Relaxed"
msgstr ""
msgstr "Облегчённый Пасьянс Лары"
msgid "Last Chance"
msgstr "Последний шанс"
@ -1713,9 +1697,8 @@ msgstr "Малыш Билли"
msgid "Little Easy"
msgstr "Малые ворота"
#, fuzzy
msgid "Little Forty"
msgstr "Малые ворота"
msgstr "Малые сорок"
msgid "Little Gate"
msgstr "Малые ворота"
@ -1753,9 +1736,8 @@ msgstr "Счастливые Тринадцать"
msgid "Madame"
msgstr "Мадам"
#, fuzzy
msgid "Mage's Game"
msgstr "Бабушкина игра"
msgstr "Пасьянс Меги"
msgid "Mahjongg Altar"
msgstr "Маджонг Алтарь"
@ -2701,9 +2683,8 @@ msgstr "Настойчивость"
msgid "Phantom Blockade"
msgstr "Призрачная блокада"
#, fuzzy
msgid "Pharaohs"
msgstr "Патриархи"
msgstr "Фараоны"
msgid "Phoenix"
msgstr "Феникс"
@ -3042,7 +3023,7 @@ msgid "Senate +"
msgstr "Сенат +"
msgid "Senior Wrangler"
msgstr ""
msgstr "Сеньор Врангель"
msgid "Serpent"
msgstr "Змея"
@ -3149,7 +3130,7 @@ msgid "Sixes and Sevens"
msgstr "Шестёрки и семёрки"
msgid "Skippy"
msgstr ""
msgstr "Попрыгунчик"
msgid "Skiz"
msgstr ""
@ -3303,7 +3284,7 @@ msgid "Storehouse"
msgstr "Сокровищница"
msgid "Straight Up"
msgstr ""
msgstr "Прямолинейный"
msgid "Strata"
msgstr "Пласт"
@ -3326,7 +3307,7 @@ msgstr "Улицы и аллеи"
#, fuzzy
msgid "Striptease"
msgstr "Пласт"
msgstr "Стриптиз"
msgid "Stronghold"
msgstr "Твердыня"
@ -3349,9 +3330,8 @@ msgstr "Турецкий султан"
msgid "Sumo"
msgstr "Сумо"
#, fuzzy
msgid "SunMoon"
msgstr "Голубая луна"
msgstr "СолнцеЛуна"
msgid "Super Challenge FreeCell"
msgstr "Очень Сложная Свободная ячейка"
@ -3502,9 +3482,8 @@ msgstr "Маджонг Totally Random-Made"
msgid "Tournament"
msgstr "Турнир"
#, fuzzy
msgid "Tower of Babel"
msgstr "Ханойская башня"
msgstr "Вавилонская башня"
msgid "Tower of Hanoy"
msgstr "Ханойская башня"
@ -3622,9 +3601,8 @@ msgstr ""
msgid "Vamana"
msgstr ""
#, fuzzy
msgid "Vanishing Cross"
msgstr "Маджонг Крест"
msgstr "Исчезающий Крест"
#, fuzzy
msgid "Varaha"
@ -3643,7 +3621,7 @@ msgid "Vertical"
msgstr "Вертикаль"
msgid "Very Big Divorce"
msgstr ""
msgstr "Очень большой разрыв"
msgid "Vi"
msgstr ""

View file

@ -506,9 +506,6 @@ class Robert(Game):
DIAMOND = 3
class DiamondMine_Foundation(AbstractFoundationStack):
pass
class DiamondMine_RowStack(RK_RowStack):
def acceptsCards(self, from_stack, cards):
if not RK_RowStack.acceptsCards(self, from_stack, cards):
@ -558,6 +555,55 @@ class DiamondMine(Game):
shallHighlightMatch = Game._shallHighlightMatch_RK
# /***********************************************************************
# // Dolphin
# ************************************************************************/
class Dolphin(Game):
def createGame(self, rows=8, reserves=4, playcards=6):
l, s = Layout(self), self.s
self.setSize(l.XM+rows*l.XS, l.YM+3*l.YS+playcards*l.YOFFSET)
dx = (self.width-l.XM-(reserves+1)*l.XS)/3
x, y = l.XM+dx, l.YM
for i in range(reserves):
s.reserves.append(ReserveStack(x, y, self))
x += l.XS
x += dx
max_cards = 52*self.gameinfo.decks
s.foundations.append(RK_FoundationStack(x, y, self,
base_rank=ANY_RANK, mod=13, max_cards=max_cards))
x, y = l.XM, l.YM+l.YS
for i in range(rows):
s.rows.append(BasicRowStack(x, y, self))
x += l.XS
s.talon = InitialDealTalonStack(l.XM, self.height-l.YS, self)
l.defaultAll()
def startGame(self):
for i in range(5):
self.s.talon.dealRow(frames=0)
self.startDealSample()
self.s.talon.dealRow()
self.s.talon.dealRowAvail()
class DoubleDolphin(Dolphin):
def createGame(self):
Dolphin.createGame(self, rows=10, reserves=5, playcards=10)
def startGame(self):
for i in range(9):
self.s.talon.dealRow(frames=0)
self.startDealSample()
self.s.talon.dealRow()
self.s.talon.dealRowAvail()
# register the game
registerGame(GameInfo(36, Golf, "Golf",
GI.GT_GOLF, 1, 0, GI.SL_BALANCED))
@ -580,4 +626,8 @@ registerGame(GameInfo(432, Robert, "Robert",
GI.GT_GOLF, 1, 2, GI.SL_LUCK))
registerGame(GameInfo(551, DiamondMine, "Diamond Mine",
GI.GT_1DECK_TYPE, 1, 0, GI.SL_BALANCED))
registerGame(GameInfo(661, Dolphin, "Dolphin",
GI.GT_GOLF, 1, 0, GI.SL_MOSTLY_SKILL | GI.GT_ORIGINAL))
registerGame(GameInfo(662, DoubleDolphin, "Double Dolphin",
GI.GT_GOLF, 2, 0, GI.SL_MOSTLY_SKILL | GI.GT_ORIGINAL))

View file

@ -233,7 +233,7 @@ class MissMilligan(Gypsy):
l, s = Layout(self), self.s
# set window
self.setSize(l.XM + (1+max(8,rows))*l.XS, l.YM + (1+max(4, reserves))*l.YS)
self.setSize(l.XM + (1+max(8,rows))*l.XS, l.YM + (1+max(4, reserves))*l.YS+l.TEXT_HEIGHT)
# create stacks
x, y = l.XM, l.YM
@ -242,14 +242,14 @@ class MissMilligan(Gypsy):
x = x + l.XS
s.foundations.append(self.Foundation_Class(x, y, self, suit=i/2))
x, y = l.XM, y + l.YS
rx, ry = x + l.XS - l.XM/2, y - l.YM/2
rx, ry = x + l.XS - l.CW/2, y - l.CH/2
for i in range(reserves):
s.reserves.append(self.ReserveStack_Class(x, y, self))
s.reserves.append(self.ReserveStack_Class(x, y+l.TEXT_HEIGHT, self))
y = y + l.YS
l.createText(s.talon, "s")
if s.reserves:
self.setRegion(s.reserves, (-999, ry, rx - 1, 999999))
self.setRegion(s.reserves, (-999, ry+l.TEXT_HEIGHT, rx-1, 999999))
else:
l.createText(s.talon, "s")
rx = -999
x, y = l.XM + (8-rows)*l.XS/2, l.YM + l.YS
for i in range(rows):

View file

@ -168,6 +168,8 @@ class Chinaman(ThumbAndPouch):
class Whitehead_RowStack(SS_RowStack):
def _isAcceptableSequence(self, cards):
return isSameColorSequence(cards, self.cap.mod, self.cap.dir)
def getHelp(self):
return _('Tableau. Build down by color.')
class Whitehead(Klondike):
RowStack_Class = Whitehead_RowStack

View file

@ -937,6 +937,7 @@ class Stack:
self.game.event_handled = True # for Game.undoHandler
if self.game.demo:
self.game.stopDemo(event)
return EVENT_HANDLED
self.game.interruptSleep()
if self.game.busy: return EVENT_HANDLED
if self.game.drag.stack and cancel_drag: