Example #1
0
    def load_content(self) -> None:
        super().load_content()

        audio.play_song(audio.song_credits)

        self.credits_y = 0
        self.credits_speed = 4
        self.water_anim1 = animations.Water((0, 0))
        self.water_anim2 = animations.Water((0, 512), 7)
Example #2
0
    def load_content(self) -> None:
        '''
        '''

        super().load_content()
        audio.play_song(audio.song_game_background)
        escape_menu_button = Button(rect=((config.SCREEN_WIDTH - 52) * 0.5,
                                          515, sprites.txt_menu.get_width(),
                                          sprites.txt_menu.get_height()),
                                    image=sprites.txt_menu,
                                    action=self._esc_menu_button,
                                    bg=(None))

        #killstreaks buttons
        killstreak_nuke = Button(
            rect=(380, 570, sprites.img_killstreak_nuke.get_width(),
                  sprites.img_killstreak_nuke.get_height()),
            image=sprites.img_killstreak_nuke,
            action=self._killstreak_nuke)
        killstreak_airstrike = Button(
            rect=(380, 640, sprites.img_killstreak_airstrike.get_width(),
                  sprites.img_killstreak_airstrike.get_height()),
            image=sprites.img_killstreak_airstrike,
            action=self._killstreak_airstrike)
        killstreak_hellstrike = Button(
            rect=(600, 570, sprites.img_killstreak_hellstrike.get_width(),
                  sprites.img_killstreak_hellstrike.get_height()),
            image=sprites.img_killstreak_hellstrike,
            action=self._killstreak_hellstrike)
        killstreak_radarscan = Button(
            rect=(600, 640, sprites.img_killstreak_radarscan.get_width(),
                  sprites.img_killstreak_radarscan.get_height()),
            image=sprites.img_killstreak_radarscan,
            action=self._killstreak_radarscan)

        self.buttons.append(escape_menu_button)
        self.buttons.append(killstreak_nuke)
        self.buttons.append(killstreak_airstrike)
        self.buttons.append(killstreak_hellstrike)
        self.buttons.append(killstreak_radarscan)

        self.missile_shot = None

        self.water_anim = animations.Water((0, 0))
        self.player_turn = True
        self.change_turn = False
        self.can_shoot = True
        self.timer = 0

        self.enemy = ai.SmartAI()
        self.player_board_pos = (74, 93)
        self.enemy_board_pos = (549, 93)

        self.delay = 500
        self.hand_x = 0
Example #3
0
    def update(self, delta_time) -> None:
        events = super().update(delta_time)

        # update water animation
        self.water_anim1.update(delta_time)
        self.water_anim2.update(delta_time)

        self.credits_y -= self.credits_speed

        for event in events:
            if event.type == pygame.KEYDOWN:
                audio.play_song(audio.song_main_menu)
                config.current_screen = config.menu_screen
Example #4
0
    def load_content(self):
        super().load_content()
        audio.play_song(audio.song_main_menu)
        self.Water0 = Water((0, 0))
        self.Water1 = Water((0, 512), 7)

        retard_ai = Button(
            rect=((config.SCREEN_WIDTH - sprites.txt_retard.get_width()) * 0.5,
                  300, sprites.txt_retard.get_width(),
                  sprites.txt_retard.get_height()),
            bg=(),
            image=sprites.txt_retard,
            action=self._retard_ai)
        smart_ai = Button(
            rect=((config.SCREEN_WIDTH - sprites.txt_smart.get_width()) * 0.5,
                  350, sprites.txt_smart.get_width(),
                  sprites.txt_smart.get_height()),
            bg=(),
            image=sprites.txt_smart,
            action=self._smart_ai)
        einstein_ai = Button(
            rect=((config.SCREEN_WIDTH - sprites.txt_einstein.get_width()) *
                  0.5, 400, sprites.txt_einstein.get_width(),
                  sprites.txt_einstein.get_height()),
            bg=(),
            image=sprites.txt_einstein,
            action=self._einstein_ai)
        putin_ai = Button(
            rect=((config.SCREEN_WIDTH - sprites.txt_putin.get_width()) * 0.5,
                  450, sprites.txt_putin.get_width(),
                  sprites.txt_putin.get_height()),
            bg=(),
            image=sprites.txt_putin,
            action=self._putin_ai)

        self.buttons.append(retard_ai)
        self.buttons.append(smart_ai)
        self.buttons.append(einstein_ai)
        self.buttons.append(putin_ai)
Example #5
0
 def _exit_button(self):
     pygame.mixer.stop()
     config.quit_game = True
     audio.play_song(audio.song_main_menu)
Example #6
0
 def _place_ships_menu(self):
     pygame.mixer.stop()
     config.current_screen = self.placeship_screen
     audio.play_song(audio.song_main_menu)
Example #7
0
 def _main_menu(self):
     pygame.mixer.stop()
     config.current_screen = config.menu_screen
     audio.play_song(audio.song_main_menu)
Example #8
0
import interface.menus
import audio
import interface

pyglet.resource.path = [
    ".",
    "../data/maps",
    "../res/sfx",
    "../res/sprites",
    "../res/music",
    "../res/textures/ui/bars",
    "../res/fonts",
]
pyglet.resource.reindex()

audio.play_song("maintheme.mp3")


def init_logging():
    with open("logging.json", "rt") as f:
        config = json.load(f)
    if interface.settings.get("game", "enable-logging") == "True":
        f = open("error.log", "w")
        sys.stderr = f
        logging.config.dictConfig(config)
        log_server = logging.getLogger("server")
        log_server.format = "[Server][%(levelname)s]%(name)s:%(lineno)d> %(message)s"
        log_client = logging.getLogger("client")
        log_client.format = "[Client][%(levelname)s]%(name)s:%(lineno)d> %(message)s"
    else:  # Do not bother logging anything at all in production-like builds
        logging.getLogger("").addHandler(logging.NullHandler())
Example #9
0
 def _esc_menu_button(self):
     pygame.mixer.music.stop()
     config.current_screen = config.menu_screen
     audio.play_song(audio.song_main_menu)
Example #10
0
    def load_content(self) -> None:
        ''' Initializes/load all content

        :returns: NoReturn
        :rtype: None
        '''
        audio.play_song(audio.song_main_menu)
        super().load_content()
        self.Water0 = Water((0, 0))
        self.Water1 = Water((0, 512), 7)

        self.sound_effects_button = Button(
            rect=(450, 580, 50, 50),
            image=sprites.img_unmute_sound_button,
            hc=(0, 0, 255),
            bg=None,
            action=self._sound_effects_button)
        self.sound_music_button = Button(rect=(525, 580, 50, 50),
                                         image=sprites.img_unmute_sound_button,
                                         hc=(0, 0, 255),
                                         bg=None,
                                         action=self._sound_music_button)

        #start button width and height
        self.SW = sprites.txt_start.get_width()
        self.SH = sprites.txt_start.get_height()

        #quit button width and height
        self.QW = sprites.txt_quit.get_width()
        self.QH = sprites.txt_quit.get_height()

        #text width center alingment for start and quit buttons
        self.SC = config.SCREEN_WIDTH - self.SW
        self.QC = config.SCREEN_WIDTH - self.QW

        start_button = Button(rect=(self.SC * 0.5, 300, self.SW, self.SH),
                              bg=(),
                              image=sprites.txt_start,
                              action=self._place_ships_menu)
        quit_button = Button(rect=(self.QC * 0.5, 400, self.QW, self.QH),
                             bg=None,
                             image=sprites.txt_quit,
                             action=self._exit_button)
        credits_button = Button(rect=(465, 650, 99, 15),
                                bg=None,
                                image=sprites.txt_credits_button,
                                action=self._credits_button)

        self.buttons.append(start_button)
        self.buttons.append(quit_button)
        self.buttons.append(self.sound_effects_button)
        self.buttons.append(self.sound_music_button)
        self.buttons.append(credits_button)

        #clip = mp.VideoFileClip(r"content\sprites\puff.mp4")
        #clip_resized = clip.resize(width=1024)
        #clip_resized.preview()
        #config.window = pygame.display.set_mode((config.SCREEN_WIDTH, config.SCREEN_HEIGHT))

        self.heli_x = 0
        self.heli_y = 0

        self.boat2_x = 0
        self.boat2_y = 0

        self.boat1_y = 0
        self.boat3_y = 0