Example #1
0
File: guild.py Project: btdevel/bt
 def enter(self, state):
     self.clear()
     if state.party.is_empty():
         self.add_message("\nWhat party!")
         self.add_option("\n(CONTINUE)", "cC", action.change_screen("main"), pos= -1, center=True)
     else:
         self.add_message("\nPick the party member to save to disk and remove from the party.")
         for i in range(len(state.party.chars)):
             self.add_key_event(chr(ord("1") + i), remove_member(i))
         self.add_option("\n(CANCEL)", "cC", action.change_screen("main"), pos= -1, center=True)
     self.set_cancel_screen("main")
Example #2
0
File: guild.py Project: btdevel/bt
    def newenter(self, state):
        if state.party.is_full():
            action.change_screen("roster_full")(state)
            return

        self.clear()
        self.list = self.make_char_list()
        self.start_disp=0
        self.num_disp=10
        self.num_sel=0
        self.set_cancel_screen("main")
        self.add_key_event( (pygame.K_DOWN, 0), self.down )
        self.add_key_event( (pygame.K_UP, 0), self.up )
        self.add_key_event( (pygame.K_RETURN, 0), self.select )
Example #3
0
File: guild.py Project: btdevel/bt
 def execute(state):
     if char.is_party:
         char_loader = app.get_char_loader()
         # FIXME: check if char exists, do with loop, return when full
         ret = state.party.add(char_loader.load_char_by_name(char.name1))
         ret = state.party.add(char_loader.load_char_by_name(char.name2))
         ret = state.party.add(char_loader.load_char_by_name(char.name3))
         ret = state.party.add(char_loader.load_char_by_name(char.name4))
         ret = state.party.add(char_loader.load_char_by_name(char.name5))
         ret = state.party.add(char_loader.load_char_by_name(char.name6))
     else:
         ret = state.party.add(char)
         if ret:
             screens = [None, "already_in_party", "no_room"]
             action.change_screen(screens[ret])(state)
             return
     state.ui.char_view.redraw(state)
     action.change_screen("main")
Example #4
0
def message_screen(msg, action, target, option, keys):
    import bt.game.action as btaction
    if action is None:
        action = btaction.change_screen(target)

    screen = Screen()
    screen.add_message(msg)
    screen.set_cancel_action(action)
    screen.add_option(option, keys, action, pos= -1, center=True)
    return screen
Example #5
0
 def set_cancel_screen(self, name):
     self.set_cancel_action(action.change_screen(name))
Example #6
0
File: guild.py Project: btdevel/bt
 def execute(state):
     char = state.party.remove(number)
     # FIXME: char must be saved also
     state.ui.char_view.redraw(state)
     action.change_screen("main")
Example #7
0
File: guild.py Project: btdevel/bt
import bt.game.action as action
from bt.game.handler import (MultiScreenHandler, Screen, continue_screen)
from bt.game.movement import Direction
from bt.game.app import app


class GuildHandler(MultiScreenHandler):
    pass

guild = GuildHandler("inside/guild.png", location="The guild")

# The main screen
screen = Screen()
screen.add_message("Thou art in the Guild of Adventurers.\n ")
screen.add_option('Add member', 'aA', action.change_screen("add_member"))
screen.add_option('Remove member', 'rR', action.change_screen("remove_member"))
screen.add_option('Create a member', 'cC', action.change_screen("create_member"))
screen.add_option('Delete a member', 'dD', action.change_screen("delete_member"))
screen.add_option('Save party', 'sS', action.change_screen("save_party"))
screen.add_option('Leave game', 'lL', action.change_screen("leave_game"))
screen.add_option('Enter the city', 'eE',
#                  action.enter_city(pos=[2, 3], newdir=Direction.NORTH))
                  action.enter_city(pos=[25, 15], newdir=Direction.NORTH))
guild.add_screen("main", screen)
del screen

# The leave Game screen
screen = Screen()
screen.set_cancel_screen("main")
screen.add_message("Leave game?\n ")
Example #8
0
File: tavern.py Project: btdevel/bt
import pygame
import bt.game.action as action
from bt.game.handler import MultiScreenHandler, Screen

class TavernHandler(MultiScreenHandler):
    pass

tavern = TavernHandler("inside/pub.png", location="Tavern")
pub = tavern

tavern_greeting_screen = Screen()
tavern_greeting_screen.add_message("Hail, travelers! Step to the bar and I'll draw you a tankard.")
tavern_greeting_screen.add_message("\nYou can:\n")
tavern_greeting_screen.add_option('Order a drink', 'oO', action.change_screen("order"))
tavern_greeting_screen.add_option('Talk to barkeep', 'tT', action.change_screen("talk"))
tavern_greeting_screen.add_message("\n\n\n")
tavern_greeting_screen.add_option('(EXIT)', 'eE', action.exit_building(), pos= -1, center=True)

tavern_order_screen = Screen()
tavern_order_screen.add_message("Seat thyself, %(charname)s. We've got...\n")
tavern_order_screen.add_option("Ale", "aA", action.message("Not bad!!"))
tavern_order_screen.add_option("Beer", "bB", action.message("Not bad!!"))
tavern_order_screen.add_option("Mead", "mM", action.message("Not bad!!"))
tavern_order_screen.add_option("Foul spirits", "fF", action.message("You don't feel too well."))
tavern_order_screen.add_option("Ginger Ale", "gG", action.message("The girls in the tavern are not impressed."))
tavern_order_screen.add_option("Wine", "wW", action.message("The barkeep says, \"Go down to the cellar and pick out a bottle.\""))
tavern_order_screen.add_message("\n\nWhat'll it be?")
tavern_order_screen.add_option('(CANCEL)', 'cC', action.change_screen("greeting"), pos= -1, center=True)

tavern_talk_screen = Screen()
tavern_talk_screen.add_message("\"Talk ain't cheap,\" the barkeep says.")
Example #9
0
File: review.py Project: btdevel/bt
import bt.game.action as action
from bt.game.handler import MultiScreenHandler, Screen, continue_screen
from bt.game.movement import Direction


class ReviewHandler(MultiScreenHandler):
    pass


review = ReviewHandler("inside/review.png", location="Review board")

screen = Screen()
screen.add_message("Wouldst thou like to be reviewed for:\n ")
screen.add_option("Advancement", "aA", action.change_screen("advancement"))
screen.add_option("Spell Acquiring", "sS", action.change_screen("spell_acquiring"))
screen.add_option("Class Change", "cC", action.change_screen("class_change"))
screen.add_option("(EXIT)", "eE", action.turn_back(), pos=-1, center=True)
review.add_screen("main", screen)


def not_implemented():
    return continue_screen("\nNot implemented yet.", target="main")


review.add_screen("advancement", not_implemented())
review.add_screen("spell_acquiring", not_implemented())
review.add_screen("class_change", not_implemented())


# The review Board is closed for the evening. The guild
# leaders will meet with you in the morning.