Ejemplo n.º 1
0
    def test_make_aspect_from_assemblage(self):
        factory = Assemblage(components=[Portable])

        aspect = Aspect.make_from(factory)

        self.assertTrue(aspect.is_interested_in(self.cat))
        self.assertFalse(aspect.is_interested_in(self.plant))
        self.assertFalse(aspect.is_interested_in(self.bathtub))
        self.assertTrue(aspect.is_interested_in(self.brains))
        self.assertFalse(aspect.is_interested_in(self.zombie))

        self.assertEqual(aspect.select_entities(self.entities), set([self.cat, self.brains]))
Ejemplo n.º 2
0
    def test_make_aspect_from_assemblage(self):
        factory = Assemblage(components=[Portable])

        aspect = Aspect.make_from(factory)

        self.assertTrue(aspect.is_interested_in(self.cat))
        self.assertFalse(aspect.is_interested_in(self.plant))
        self.assertFalse(aspect.is_interested_in(self.bathtub))
        self.assertTrue(aspect.is_interested_in(self.brains))
        self.assertFalse(aspect.is_interested_in(self.zombie))

        self.assertEqual(aspect.select_entities(self.entities),
                         set([self.cat, self.brains]))
Ejemplo n.º 3
0
import random
import re

from braga import Aspect
from braga.examples import duel

from hogwarts.engine.Command import Command, ChangefulCommand
from hogwarts.engine.exceptions import LogicError

player_aspect = Aspect.make_from(duel.player_factory)


# Command Responses
def _look(world, player):
    return player.location.description


def _inventory(world, player):
    return '/n'.join([thing.name for thing in player.inventory])


def _red_sparks(world, player):
    return "A stream of red sparks shoots out the end of your wand!\n\nJustin's wand spins out of his hand and flies to you.\nYour casting skill for the expelliarmus spell has increased."


def _get_skill(world, player):
    return "\n".join([
        str(player.skill), "Your chance of success is {}/20.".format(
            _get_expelliarmus_skill(player))
    ])