Ejemplo n.º 1
0
 def activate(self,activator=None):
     if not self.full():
         print ("%s still on cooldown, %d turns remaining"%(self,self.count_to-self.count))
         # still on cooldown
         return False
     self.reset(0) # was -1 because we immediately inc()
     TurnTaker.add_turntaker(self)
     return True
Ejemplo n.º 2
0
    def activate(self,activator=None):
        if not RunDownItem.activate(self):
            return False

        if self.is_active:
            TurnTaker.add_turntaker(self.owner)

        else:
            TurnTaker.clear_turntaker(self.owner)

        return True
Ejemplo n.º 3
0
    def activate(self,activator=None):
        if self.is_active:
            # deactivate an active item
            self.is_active = False
            TurnTaker.clear_turntaker(self)
            return True

        elif self.full():
            # can't activate one that's run out
            return False

        else:
            self.is_active = True
            TurnTaker.add_turntaker(self)
            self.inc(4) # activation costs 4 + 1 for the first turn; discouraging flickering
            self.take_turn() # so takes effect straight away if any turn taking behaviour
            return True