добавлен метод гейм апдейт

This commit is contained in:
ehermakov 2024-06-23 19:51:20 +03:00
parent d89ebc511e
commit d37cd7b41c
3 changed files with 30 additions and 6 deletions

View File

@ -241,11 +241,14 @@ class ShipField:
else:
self.ship_direction = ShipDirection.VERTICAL
def toggle_field_mode(self):
if self.field_mode == ShipMode.PUT:
self.field_mode = ShipMode.SHOOT
else:
self.field_mode = ShipMode.PUT
def set_field_mode(self, value):
if value is None:
return
if type(value) is not ShipMode:
return
self.field_mode = value
def print_field(self):
print(self.ships)

View File

@ -4,6 +4,7 @@ import time
from tkinter import *
from tkinter import filedialog
from ShipView import ShipView
from ShipMode import ShipMode
from ShipField import ShipField
from GameMode import GameMode
@ -113,7 +114,7 @@ def next_game_mode():
elif game_mode == GameMode.BATTLE:
game_mode = GameMode.END
game_mode_stringvar.set(str(game_mode))
update_game_mode()
def prev_game_mode():
@ -126,6 +127,26 @@ def prev_game_mode():
elif game_mode == GameMode.PLAN:
game_mode = GameMode.MENU
update_game_mode()
def update_game_mode():
global game_mode
if game_mode == GameMode.MENU:
my_view.ship_field.set_field_mode(ShipMode.INACTIVE)
enemy_view.ship_field.set_field_mode(ShipMode.INACTIVE)
elif game_mode == GameMode.PLAN:
my_view.ship_field.set_field_mode(ShipMode.PUT)
enemy_view.ship_field.set_field_mode(ShipMode.INACTIVE)
elif game_mode == GameMode.BATTLE:
my_view.ship_field.set_field_mode(ShipMode.INACTIVE)
enemy_view.ship_field.set_field_mode(ShipMode.SHOOT)
elif game_mode == GameMode.END:
my_view.ship_field.set_field_mode(ShipMode.INACTIVE)
enemy_view.ship_field.set_field_mode(ShipMode.INACTIVE)
game_mode_stringvar.set(str(game_mode))