示例#1
0
    def drawSidebarShip(self, ship):
        sidebarX = UserInterface.windowSize[0] - 240 / 2

        Sprite.draw("ship-display", position=(sidebarX, self.shipY), hud=True)

        if ship.inWorld and not ship.destroyed:
            color = (0, 0, 0, 255)

            exponentialSize = 1.0 - (1.0 / (ship.maxDeflectorPower - 1))
            deflectorWidth = 12 + (exponentialSize * (50 - 12))

            power = scalarBound(0, ship.availableDeflectorPower / ship.maxDeflectorPower, 1.0)
            delta = int(power * deflectorWidth)

            statusAlpha, status = ship.status
            Sprite.draw(
                "ship-deflector", position=(UserInterface.windowSize[0] - 10 + 25 - delta, self.shipY), hud=True
            )

            if not ship.hasTakenDamage:
                Sprite.draw("ship-ok", position=(UserInterface.windowSize[0] - 5, self.shipY), hud=True)
            else:
                Sprite.draw("ship-damage", position=(UserInterface.windowSize[0] - 5, self.shipY), hud=True)

            statusColor = (0, 0, 0, int(scalarBound(0.2, statusAlpha, 1.0) * 255))

            Sprite.drawText(ship.name, position=(sidebarX - 110, self.shipY), bold=True, color=color)
            Sprite.drawText(status.lower(), position=(sidebarX - 20, self.shipY), bold=False, color=statusColor)
示例#2
0
    def drawSidebar(self):
        sidebarX = UserInterface.windowSize[0] - 240 / 2
        sidebarY = UserInterface.windowSize[1] / 2

        self.shipY = UserInterface.windowSize[1] - 30

        for team in self.simulation.world.combatTeams:
            Sprite.draw("team-display-%d" % (team,), position=(sidebarX, self.shipY - 3), hud=True)
            Sprite.drawText(
                "Battle Fleet %d" % (team,),
                position=(sidebarX, self.shipY - 5),
                bold=True,
                align="center",
                color=(0, 0, 0, 255),
            )
            self.shipY -= 35

            for ship in self.simulation.world.combatTeams[team]:
                self.drawSidebarShip(ship)
                self.shipY -= 30

            self.shipY -= 25