Example #1
0
class Vital(MutableInt):
    """ Tracks a vital value (health, mana, etc) """

    def __init__(self):
        self.signal = Signal(providing_args=['vital'])
        self.value = None
        self.max = None
        self.delta = None
        self.last = None
        self.percentage = None
        self.delta_percentage = None

        self.new = True

    def update(self, value, newmax=None):
        """ Update the vital's value """

        if newmax:
            self.max = int(newmax)

        self.last = self.value
        self.value = int(value)

        if self.new:
            self.delta = 0
            self.new = False
        else:
            self.delta = self.value - self.last
            self.delta_percentage = int(round(self.delta / self.max * 100))

        self.percentage = int(round(self.value / self.max * 100))

        if self.delta is not 0:
            self.signal.send(vital=self)
Example #2
0
class Vital(MutableInt):
    """ Tracks a vital value (health, mana, etc) """
    def __init__(self):
        self.signal = Signal(providing_args=['vital'])
        self.value = None
        self.max = None
        self.delta = None
        self.last = None
        self.percentage = None
        self.delta_percentage = None

        self.new = True

    def update(self, value, newmax=None):
        """ Update the vital's value """

        if newmax:
            self.max = int(newmax)

        self.last = self.value
        self.value = int(value)

        if self.new:
            self.delta = 0
            self.new = False
        else:
            self.delta = self.value - self.last
            self.delta_percentage = int(round(self.delta / self.max * 100))

        self.percentage = int(round(self.value / self.max * 100))

        if self.delta is not 0:
            self.signal.send(vital=self)
Example #3
0
    def __init__(self):
        self.signal = Signal(providing_args=['vital'])
        self.value = None
        self.max = None
        self.delta = None
        self.last = None
        self.percentage = None
        self.delta_percentage = None

        self.new = True
Example #4
0
    def __init__(self):
        self.signal = Signal(providing_args=['vital'])
        self.value = None
        self.max = None
        self.delta = None
        self.last = None
        self.percentage = None
        self.delta_percentage = None

        self.new = True
Example #5
0
File: net.py Project: adayoung/sage
from __future__ import absolute_import
from sage.dispatch.signal import Signal

#: Connected to Achaea
connected = Signal()

#: Disconnected from Achaea
disconnected = Signal()

#: Processed lines about to go out to the client
pre_outbound = Signal(
    providing_args=['raw_lines', 'lines', 'prompt', 'ansi_prompt'])

#: Sage is lagging
lagging = Signal()

#: Sage is no longer lagging
lag_recovered = Signal()

#: Input from client
wamp_input = Signal(providing_args=['data'])
Example #6
0
 def __init__(self):
     self.balance = True
     self.last_on = 0
     self.last_off = 0
     self.waiting = False
     self.signal = Signal(providing_args=['state'])
Example #7
0
class Balance(object):
    """ Tracks a balance """

    def __init__(self):
        self.balance = True
        self.last_on = 0
        self.last_off = 0
        self.waiting = False
        self.signal = Signal(providing_args=['state'])

    def is_on(self):
        """ Is this balance currently on balance? """

        if self.waiting:
            return False

        return self.balance

    def on(self):
        """ Set to on balance """

        self.waiting = False

        if self.balance == False:
            self.balance = True
            self.last_on = time()
            self.signal.send(state=True)

    def on_for(self):
        """ Return how long the balance has been available for or False if not"""

        if self.balance == False:
            return False

        return time() - self.last_on

    def off(self):
        """ Set to off balance """

        self.waiting = False

        if self.balance == True:
            self.balance = False
            self.last_off = time()
            self.signal.send(state=False)

    def off_for(self):
        """ Return how long the balance has been off for or False if on """

        if self.balance:
            return False

        return time() - self.last_off

    def wait(self):
        self.waiting = True

    def __repr__(self):
        if self.waiting:
            return str(False)
        return str(self.balance)

    def __eq__(self, other):
        if self.waiting:
            return False
        return self.balance == other

    def __nonzero__(self):
        if self.waiting:
            return False
        return self.balance
Example #8
0
from __future__ import absolute_import
from sage.dispatch.signal import Signal

#: Blackout on/off
blackout = Signal(providing_args=['blackout'])
Example #9
0
 def __init__(self):
     self.balance = True
     self.last_on = 0
     self.last_off = 0
     self.waiting = False
     self.signal = Signal(providing_args=['state'])
Example #10
0
class Balance(object):
    """ Tracks a balance """
    def __init__(self):
        self.balance = True
        self.last_on = 0
        self.last_off = 0
        self.waiting = False
        self.signal = Signal(providing_args=['state'])

    def is_on(self):
        """ Is this balance currently on balance? """

        if self.waiting:
            return False

        return self.balance

    def on(self):
        """ Set to on balance """

        self.waiting = False

        if self.balance == False:
            self.balance = True
            self.last_on = time()
            self.signal.send(state=True)

    def on_for(self):
        """ If balance is on, returns how long it's been on for.
        If off, returns how long it last remained on for."""

        return time() - self.last_on

    def off(self):
        """ Set to off balance """

        self.waiting = False

        if self.balance == True:
            self.balance = False
            self.last_off = time()
            self.signal.send(state=False)

    def off_for(self):
        """ If balance is off, returns how long it's been off for.
        If on, returns how long it last remained off for."""

        return time() - self.last_off

    def wait(self):
        self.waiting = True

    def __repr__(self):
        if self.waiting:
            return str(False)
        return str(self.balance)

    def __eq__(self, other):
        if self.waiting:
            return False
        return self.balance == other

    def __nonzero__(self):
        if self.waiting:
            return False
        return self.balance
Example #11
0
from __future__ import absolute_import
from sage.dispatch.signal import Signal

#: Goodbye
goodbye = Signal()

#: Recieved a GMCP Ping from Achaea
ping = Signal(providing_args=['latency'])

#: Received a Char.Vitals
vitals = Signal(providing_args=[
    'health', 'max_health', 'mana', 'max_mana', 'endurance', 'max_endurance',
    'willpower', 'max_willpower', 'xp'
])

#: Updated room
room = Signal(providing_args=['room'])

#: Room has changed
room_changed = Signal(providing_args=['room'])

#: Updated room items
room_items = Signal(providing_args=['items'])

#: Item added to room
room_add_item = Signal(providing_args=['item'])

#: Item in room updated
room_update_item = Signal(providing_args=['item'])

#: Item removed from room