Example #1
0
 def _select(self, name, sel):
     if name == "group":
         if sel is None:
             return self.currentGroup
         else:
             return self.groupMap.get(sel)
     elif name == "layout":
         if sel is None:
             return self.currentGroup.layout
         else:
             return utils.lget(self.currentGroup.layouts, sel)
     elif name == "widget":
         return self.widgetMap.get(sel)
     elif name == "bar":
         return getattr(self.currentScreen, sel)
     elif name == "window":
         if sel is None:
             return self.currentWindow
         else:
             return self.clientFromWID(sel)
     elif name == "screen":
         if sel is None:
             return self.currentScreen
         else:
             return utils.lget(self.screens, sel)
Example #2
0
 def _select(self, name, sel):
     if name == "group":
         if sel is None:
             return self.currentGroup
         else:
             return self.groupMap.get(sel)
     elif name == "layout":
         if sel is None:
             return self.currentGroup.layout
         else:
             return utils.lget(self.currentGroup.layouts, sel)
     elif name == "widget":
         return self.widgetMap.get(sel)
     elif name == "bar":
         return getattr(self.currentScreen, sel)
     elif name == "window":
         if sel is None:
             return self.currentWindow
         else:
             return self.clientFromWID(sel)
     elif name == "screen":
         if sel is None:
             return self.currentScreen
         else:
             return utils.lget(self.screens, sel)
Example #3
0
    def isDesiredHand(self, playerCards):
        allSatisfiedHands, strongestComboIndex = [], 0
        handRankingsUpperBoundsForStrats = {
            "straight": (1609, 1600),
            "flush": (1599, 323),
            "pair": (6185, 3326),
            "two-pair": (3325, 2468),
            "trips": (2467, 1610),
            "boat": (322, 167),
            "quads": (166, 11),
            "royal": (1, 1),
            "straight-flush": (10, 1),
        }

        lowerBound, upperBound = handRankingsUpperBoundsForStrats[
            self.strategy]

        totalCombinations = list(itertools.combinations(playerCards, 5))
        for combination in totalCombinations:
            handStrength = self.POKER_HAND_EVALUATOR.evaluate(
                list(combination), [])
            if handStrength >= upperBound and handStrength <= lowerBound:
                allSatisfiedHands.append(combination)

        if allSatisfiedHands:
            (_, strongestComboIndex) = max(
                (self.POKER_HAND_EVALUATOR.evaluate(list(satisfiedHand), []),
                 i) for i, satisfiedHand in enumerate(allSatisfiedHands))

        return lget(allSatisfiedHands, strongestComboIndex)
Example #4
0
 def _select(self, name, sel):
     if name == "group":
         return self.group
     elif name == "layout":
         if sel is None:
             return self.group.layout
         else:
             return utils.lget(self.group.layouts, sel)
     elif name == "screen":
         return self.group.screen
Example #5
0
 def _select(self, name, sel):
     if name == "group":
         return self.group
     elif name == "layout":
         if sel is None:
             return self.group.layout
         else:
             return utils.lget(self.group.layouts, sel)
     elif name == "screen":
         return self.group.screen
Example #6
0
 def _select(self, name, sel):
     if name == "layout":
         if sel is None:
             return self.layout
         else:
             return utils.lget(self.layouts, sel)
     elif name == "window":
         if sel is None:
             return self.currentWindow
         else:
             for i in self.windows:
                 if i.window.wid == sel:
                     return i
     elif name == "screen":
         return self.screen
Example #7
0
 def _select(self, name, sel):
     if name == "layout":
         if sel is None:
             return self.group.layout
         else:
             return utils.lget(self.group.layouts, sel)
     elif name == "window":
         if sel is None:
             return self.group.currentWindow
         else:
             for i in self.group.windows:
                 if i.window.wid == sel:
                     return i
     elif name == "bar":
         return getattr(self, sel)
Example #8
0
 def _select(self, name, sel):
     if name == "layout":
         if sel is None:
             return self.layout
         else:
             return utils.lget(self.layouts, sel)
     elif name == "window":
         if sel is None:
             return self.currentWindow
         else:
             for i in self.windows:
                 if i.window.wid == sel:
                     return i
     elif name == "screen":
         return self.screen
Example #9
0
 def _select(self, name, sel):
     if name == "layout":
         if sel is None:
             return self.group.layout
         else:
             return utils.lget(self.group.layouts, sel)
     elif name == "window":
         if sel is None:
             return self.group.currentWindow
         else:
             for i in self.group.windows:
                 if i.window.wid == sel:
                     return i
     elif name == "bar":
         return getattr(self, sel)