Ejemplo n.º 1
0
    def __init__(self, camp, pc: gears.base.Monster, fhq, **kwargs):
        super().__init__(0, 0, 0, 0, **kwargs)
        self.camp = camp
        self.pc = pc
        self.info = PetFHQIP(model=pc,
                             width=fhqinfo.CENTER_COLUMN.w,
                             camp=camp,
                             font=pbge.SMALLFONT)
        self.column = widgets.ColumnWidget(fhqinfo.LEFT_COLUMN.dx,
                                           fhqinfo.LEFT_COLUMN.dy,
                                           fhqinfo.LEFT_COLUMN.w,
                                           fhqinfo.LEFT_COLUMN.h,
                                           padding=10)
        self.children.append(self.column)

        self.column.add_interior(
            widgets.LabelWidget(0,
                                0,
                                fhqinfo.LEFT_COLUMN.w,
                                0,
                                text="Change Name",
                                justify=0,
                                draw_border=True,
                                on_click=self._change_name))

        if self.pc.pet_data.active:
            self.column.add_interior(
                widgets.LabelWidget(0,
                                    0,
                                    fhqinfo.LEFT_COLUMN.w,
                                    0,
                                    text="Send Home",
                                    justify=0,
                                    draw_border=True,
                                    on_click=self.leave_behind))
        elif gears.tags.SCENE_PUBLIC in self.camp.scene.attributes:
            self.column.add_interior(
                widgets.LabelWidget(0,
                                    0,
                                    fhqinfo.LEFT_COLUMN.w,
                                    0,
                                    text="Bring Along",
                                    justify=0,
                                    draw_border=True,
                                    on_click=self.bring_along))

        self.column.add_interior(
            widgets.LabelWidget(0,
                                0,
                                fhqinfo.LEFT_COLUMN.w,
                                0,
                                text="Dismiss {}".format(self.pc),
                                justify=0,
                                draw_border=True,
                                on_click=self._dismiss))

        self.fhq = fhq
Ejemplo n.º 2
0
 def __init__(self, camp, pc, fhq, **kwargs):
     super(CharacterInfoWidget, self).__init__(0, 0, 0, 0, **kwargs)
     self.camp = camp
     self.pc = pc
     self.portrait = pc.get_portrait()
     self.column = widgets.ColumnWidget(fhqinfo.LEFT_COLUMN.dx,
                                        fhqinfo.LEFT_COLUMN.dy,
                                        fhqinfo.LEFT_COLUMN.w,
                                        fhqinfo.LEFT_COLUMN.h,
                                        padding=10)
     self.children.append(self.column)
     self.column.add_interior(
         widgets.LabelWidget(0,
                             0,
                             fhqinfo.LEFT_COLUMN.w,
                             16,
                             text="Inventory",
                             justify=0,
                             draw_border=True,
                             on_click=self.open_backpack))
     self.column.add_interior(
         widgets.LabelWidget(0,
                             0,
                             fhqinfo.LEFT_COLUMN.w,
                             16,
                             text="Do Training",
                             justify=0,
                             draw_border=True,
                             on_click=self.open_training))
     self.column.add_interior(
         widgets.LabelWidget(0,
                             0,
                             fhqinfo.LEFT_COLUMN.w,
                             16,
                             text="Assign Mecha",
                             justify=0,
                             draw_border=True,
                             on_click=self.assign_mecha))
     self.column.add_interior(
         widgets.LabelWidget(0,
                             0,
                             fhqinfo.LEFT_COLUMN.w,
                             16,
                             text="Change Colors",
                             justify=0,
                             draw_border=True,
                             on_click=self.change_colors))
     self.fhq = fhq
     self.info = CharaFHQIP(model=pc,
                            width=fhqinfo.CENTER_COLUMN.w,
                            font=pbge.SMALLFONT,
                            camp=camp)
Ejemplo n.º 3
0
    def __init__(self, camp, pc, set_pc_fun, upleft=None, **kwargs):
        super().__init__(PC_SWITCH_AREA.dx,PC_SWITCH_AREA.dy,PC_SWITCH_AREA.w,PC_SWITCH_AREA.h,**kwargs)
        if upleft:
            self.dx, self.dy = upleft

        self.my_switch = PlayerCharacterSwitch(camp, pc, set_pc_fun)
        self.add_left(self.my_switch)
        self.add_right(widgets.LabelWidget(0,0,70,100,text_fun=self.get_label_text, justify=0, color=pbge.INFO_GREEN))
Ejemplo n.º 4
0
 def __init__(self, camp, pc, fhq, **kwargs):
     super(MechaInfoWidget, self).__init__(0, 0, 0, 0, **kwargs)
     self.camp = camp
     self.pc = pc
     self.portrait = pc.get_portrait()
     self.info = MechaFHQIP(model=pc,
                            width=fhqinfo.CENTER_COLUMN.w,
                            camp=camp,
                            font=pbge.SMALLFONT)
     self.column = widgets.ColumnWidget(fhqinfo.LEFT_COLUMN.dx,
                                        fhqinfo.LEFT_COLUMN.dy,
                                        fhqinfo.LEFT_COLUMN.w,
                                        fhqinfo.LEFT_COLUMN.h,
                                        padding=10)
     self.children.append(self.column)
     if not hasattr(pc, "owner") or not pc.owner:
         self.column.add_interior(
             widgets.LabelWidget(0,
                                 0,
                                 fhqinfo.LEFT_COLUMN.w,
                                 0,
                                 text="Inventory",
                                 justify=0,
                                 draw_border=True,
                                 on_click=self.open_backpack))
     self.column.add_interior(
         widgets.LabelWidget(0,
                             0,
                             fhqinfo.LEFT_COLUMN.w,
                             0,
                             text="Assign Pilot",
                             justify=0,
                             draw_border=True,
                             on_click=self.assign_pilot))
     self.column.add_interior(
         widgets.LabelWidget(0,
                             0,
                             fhqinfo.LEFT_COLUMN.w,
                             0,
                             text="Change Colors",
                             justify=0,
                             draw_border=True,
                             on_click=self.change_colors))
     self.fhq = fhq
Ejemplo n.º 5
0
    def __init__(self, camp, pc, set_pc_fun, **kwargs):
        super(PlayerCharacterSwitch,
              self).__init__(PC_SWITCH_AREA.dx, PC_SWITCH_AREA.dy,
                             PC_SWITCH_AREA.w, PC_SWITCH_AREA.h, **kwargs)
        self.camp = camp
        self.pc = pc
        self.portraits = dict()
        self.set_pc_fun = set_pc_fun

        arrow_sprite = pbge.image.Image("sys_leftrightarrows.png", 16, 100)
        self.add_left(
            widgets.ButtonWidget(0,
                                 0,
                                 16,
                                 100,
                                 sprite=arrow_sprite,
                                 on_click=self.click_left))
        self.portrait_button = widgets.ButtonWidget(0,
                                                    0,
                                                    100,
                                                    100,
                                                    sprite=None,
                                                    frame=1)
        self.add_left(self.portrait_button)
        self.add_left(
            widgets.ButtonWidget(0,
                                 0,
                                 16,
                                 100,
                                 sprite=arrow_sprite,
                                 on_click=self.click_right,
                                 frame=1))

        self.add_right(
            widgets.LabelWidget(0,
                                0,
                                70,
                                100,
                                text_fun=self.get_label_text,
                                justify=0,
                                color=pbge.INFO_GREEN))

        self.update()
Ejemplo n.º 6
0
 def _set_memo_n(self, new_value):
     if new_value < 0:
         new_value = len(self.memos) - 1
     elif new_value >= len(self.memos):
         new_value = 0
     self._memo_n = new_value
     if self.memo_widget:
         self.children.remove(self.memo_widget)
     if hasattr(self.memos[self._memo_n], "get_widget"):
         self.memo_widget = self.memos[self._memo_n].get_widget(
             self, self.camp)
     else:
         self.memo_widget = widgets.LabelWidget(
             self.dx,
             self.dy,
             self.w,
             self.h,
             text=str(self.memos[self._memo_n]),
             justify=0,
             font=my_state.medium_font)
     self.children.append(self.memo_widget)
Ejemplo n.º 7
0
 def __init__(self, camp, pc, fhq, **kwargs):
     super().__init__(0, 0, 0, 0, **kwargs)
     self.camp = camp
     self.pc = pc
     self.info = create_item_fhq_ip(model=pc,
                                    width=fhqinfo.CENTER_COLUMN.w,
                                    camp=camp,
                                    font=pbge.SMALLFONT)
     self.column = widgets.ColumnWidget(fhqinfo.LEFT_COLUMN.dx,
                                        fhqinfo.LEFT_COLUMN.dy,
                                        fhqinfo.LEFT_COLUMN.w,
                                        fhqinfo.LEFT_COLUMN.h,
                                        padding=10)
     self.children.append(self.column)
     self.column.add_interior(
         widgets.LabelWidget(0,
                             0,
                             fhqinfo.LEFT_COLUMN.w,
                             0,
                             text="Give Item",
                             justify=0,
                             draw_border=True,
                             on_click=self.give_item))
     self.fhq = fhq
Ejemplo n.º 8
0
 def __init__(self, camp, pc, fhq, **kwargs):
     super(CharacterInfoWidget, self).__init__(0, 0, 0, 0, **kwargs)
     self.camp = camp
     self.pc = pc
     self.portrait = pc.get_portrait()
     self.column = widgets.ColumnWidget(fhqinfo.LEFT_COLUMN.dx,
                                        fhqinfo.LEFT_COLUMN.dy,
                                        fhqinfo.LEFT_COLUMN.w,
                                        fhqinfo.LEFT_COLUMN.h,
                                        padding=10)
     self.children.append(self.column)
     self.column.add_interior(
         widgets.LabelWidget(0,
                             0,
                             fhqinfo.LEFT_COLUMN.w,
                             0,
                             text="Inventory",
                             justify=0,
                             draw_border=True,
                             on_click=self.open_backpack))
     self.column.add_interior(
         widgets.LabelWidget(0,
                             0,
                             fhqinfo.LEFT_COLUMN.w,
                             0,
                             text="Do Training",
                             justify=0,
                             draw_border=True,
                             on_click=self.open_training))
     self.column.add_interior(
         widgets.LabelWidget(0,
                             0,
                             fhqinfo.LEFT_COLUMN.w,
                             0,
                             text="Assign Mecha",
                             justify=0,
                             draw_border=True,
                             on_click=self.assign_mecha))
     self.column.add_interior(
         widgets.LabelWidget(0,
                             0,
                             fhqinfo.LEFT_COLUMN.w,
                             0,
                             text="Change Colors",
                             justify=0,
                             draw_border=True,
                             on_click=self.change_colors))
     if pc.relationship and pbge.util.config.getboolean(
             "GENERAL", "dev_mode_on"):
         self.column.add_interior(
             widgets.LabelWidget(0,
                                 0,
                                 fhqinfo.LEFT_COLUMN.w,
                                 16,
                                 text="Jump to Next Dev",
                                 justify=0,
                                 draw_border=True,
                                 on_click=self.jump_plot))
     if pc is camp.pc:
         self.column.add_interior(
             widgets.LabelWidget(0,
                                 0,
                                 fhqinfo.LEFT_COLUMN.w,
                                 0,
                                 text="Edit Character",
                                 justify=0,
                                 draw_border=True,
                                 on_click=self.edit_pc))
     self.fhq = fhq
     self.info = CharaFHQIP(model=pc,
                            width=fhqinfo.CENTER_COLUMN.w,
                            font=pbge.SMALLFONT,
                            camp=camp)
Ejemplo n.º 9
0
    def __init__(self, camp: gears.GearHeadCampaign, pc: gears.base.Character):
        super().__init__(0, 0, 0, 0)

        self.camp = camp
        self.pc = pc
        self.portrait = pc.get_portrait()

        self.portrait_area = pbge.frects.Frect(-400, -300, 400, 600)

        right_column = widgets.ColumnWidget(50,
                                            -200,
                                            250,
                                            400,
                                            padding=32,
                                            center_interior=True)
        self.children.append(right_column)

        name_column = widgets.ColumnWidget(0,
                                           0,
                                           right_column.w,
                                           64,
                                           draw_border=True,
                                           center_interior=True)
        name_column.add_interior(
            widgets.LabelWidget(0, 0, 100, 0, "name", justify=0))
        self.name_widget = widgets.TextEntryWidget(0,
                                                   0,
                                                   right_column.w - 20,
                                                   32,
                                                   pc.name,
                                                   font=pbge.BIGFONT,
                                                   justify=0)
        name_column.add_interior(self.name_widget)
        right_column.add_interior(name_column)

        right_column.add_interior(
            widgets.LabelWidget(0,
                                0,
                                right_column.w,
                                0,
                                "Edit Portrait",
                                font=pbge.BIGFONT,
                                justify=0,
                                draw_border=True,
                                on_click=self._edit_portrait))

        right_column.add_interior(
            widgets.LabelWidget(0,
                                0,
                                right_column.w,
                                0,
                                "Edit Gender",
                                font=pbge.BIGFONT,
                                justify=0,
                                draw_border=True,
                                on_click=self._edit_gender,
                                text_fun=self._gender_fun))

        right_column.add_interior(
            widgets.LabelWidget(0,
                                0,
                                200,
                                0,
                                "Done",
                                font=pbge.BIGFONT,
                                justify=0,
                                draw_border=True,
                                on_click=self._done))

        self.finished = False