Skip to content

Instantly share code, notes, and snippets.

@ask-compu
Last active March 22, 2018 00:30
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ask-compu/268b659254392c48a6cf2dd1685c4c82 to your computer and use it in GitHub Desktop.
Save ask-compu/268b659254392c48a6cf2dd1685c4c82 to your computer and use it in GitHub Desktop.
from datetime import datetime
import pygame
from pygame.mixer import Sound
from ui import colours
from ui.widgets.background import LcarsBackgroundImage, LcarsImage
from ui.widgets.gifimage import LcarsGifImage
from ui.widgets.lcars_widgets import *
from ui.widgets.screen import LcarsScreen
from ui.widgets.sprite import LcarsMoveToMouse
class ScreenMain(LcarsScreen):
def setup(self, all_sprites):
all_sprites.add(LcarsBackgroundImage("assets/lcars_screen_1.png"),
layer=0)
# panel text
all_sprites.add(LcarsText(colours.BLACK, (15, 44), "LCARS 105"),
layer=1)
all_sprites.add(LcarsBlockMedium(colours.RED_BROWN, (145, 16), "WEATHER",self.loadWeather),
layer=1)
all_sprites.add(LcarsBlockSmall(colours.ORANGE, (211, 16), "CAMERAS"),
layer=1)
all_sprites.add(LcarsBlockLarge(colours.BEIGE, (249, 16), "ENERGY"),
layer=1)
all_sprites.add(LcarsText(colours.BLACK, (444, 612), "192 168 0 3"),
layer=1)
all_sprites.add(LcarsButton(colours.RED_BROWN, (6, 662), "LOGOUT", self.logoutHandler),
layer=4)
self.stardate = LcarsText(colours.BLUE, (12, 120), "STAR DATE 2711.05 17:54:32", 1.5)
self.lastClockUpdate = 0
all_sprites.add(self.stardate, layer=1)
self.beep1 = Sound("assets/audio/panel/201.wav")
Sound("assets/audio/panel/213.wav").play()
def update(self, screenSurface, fpsClock):
if pygame.time.get_ticks() - self.lastClockUpdate > 1000:
self.stardate.setText("STAR DATE {}".format(datetime.now().strftime("%b %-d, %Y %-I:%M:%S %p")))
self.lastClockUpdate = pygame.time.get_ticks()
LcarsScreen.update(self, screenSurface, fpsClock)
def handleEvents(self, event, fpsClock):
if event.type == pygame.MOUSEBUTTONDOWN:
self.beep1.play()
def logoutHandler(self, item, event, clock):
from screens.authorize import ScreenAuthorize
self.loadScreen(ScreenAuthorize())
def loadWeather(self, item, event, clock):
from screens.weather import ScreenWeather
self.loadScreen(ScreenWeather())
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment