Professional Documents
Culture Documents
hàm main
Khởi tạo :
global screen, background, mode
screen = pygame.display.set_mode((640, 480))
clock = pygame.time.Clock()
PALETTE = get_palette(palette_path)
mode = 'title screen'
character1 = None
character2 = None
versus_data = None
if mode == 'arcade':
sound_test()
if character1:
# ... một số logic để xử lý đối thủ trong chế độ arcade
elif not character1:
# ... một số logic để lựa chọn nhân vật trong chế độ arcade
Nếu chế độ hiện tại là chế độ arcade, nó kiểm tra xem có nhân vật người chơi (character1) và thực
hiện logic liên quan đến đối thủ hoặc lựa chọn nhân vật tương ứng.
Chế Độ Versus/Watch:
elif mode in ('versus', 'watch'):
character1, character2, background, versus_data = character_select(controls1, controls2)
Nếu chế độ là versus hoặc watch, nó gọi hàm character_select để thiết lập nhân vật và nền.
Màn Hình Versus:
if versus_data:
versus_screen(versus_data)
Nếu có dữ liệu cho trận đấu versus, nó gọi hàm versus_screen.
Trận Đấu:
2. hàm fight
Khởi Tạo Biến Toàn Cục:
clock = pygame.time.Clock()
display_surface = pygame.Surface((320, 240)).convert()
Tạo đối tượng Clock để kiểm soát tốc độ khung hình.
Tạo một đối tượng Surface để vẽ đồ họa, có kích thước 320x240.
health_bar = pygame.Surface((102,12)).convert()
health_bar.fill((255,0,0))
pygame.draw.rect(health_bar, (255,255,255), [0,0,102,12],1)
Tạo thanh máu với đối tượng Surface kích thước 102x12 và màu đỏ.
Vẽ khung cho thanh máu.
fighting = True
Đặt trạng thái chiến đấu là True.
while fighting:
# ... (các sự kiện và xử lý cho chế độ versus)
Trong vòng lặp này, xử lý các sự kiện như phím được nhấn và di chuyển nhân vật. Cập nhật
trạng thái của nhân vật và vẽ trạng thái chiến đấu lên màn hình.
while fighting:
# ... (các sự kiện và xử lý cho chế độ arcade)
Trong vòng lặp này, chỉ có nhân vật 1 là người chơi và nhân vật 2 là máy tính (AI). Các sự
kiện và xử lý tương tự như chế độ "versus".
while fighting:
# ... (các sự kiện và xử lý cho chế độ watch)
Trong vòng lặp này, cả hai nhân vật đều được điều khiển bởi máy tính (AI). Các sự kiện và
xử lý tương tự như chế độ "versus" và "arcade".
pygame.display.flip()
Cập nhật màn hình với những thay đổi mới.
3. hàm round
Khởi Tạo Biến:
clock = pygame.time.Clock()
display_surface = pygame.Surface((320, 240)).convert()
font = pygame.font.SysFont('Arial', 25, bold=True)
health_bar = pygame.Surface((102, 12)).convert()
Tạo đối tượng Clock để kiểm soát tốc độ khung hình.
Tạo đối tượng Surface để vẽ đồ họa, có kích thước 320x240.
Tạo đối tượng Font cho văn bản với phông chữ Arial, kích thước 25, và đậm.
4. Hàm veruss
Khởi Tạo Biến và Đối Tượng Font:
clock = pygame.time.Clock()
font = pygame.font.SysFont('Arial', 24, bold=True)
Tạo đối tượng Clock để kiểm soát tốc độ khung hình.
Tạo đối tượng Font cho văn bản với phông chữ Arial, kích thước 24, và đậm.
Xử Lý Sự Kiện:
for event in pygame.event.get():
if event.type == QUIT:
pygame.quit()
sys.exit()
if event.type == KEYDOWN:
return
Xử lý sự kiện nhấn phím để chuyển từ màn hình so sánh về màn hình chính.
5. Hàm title_screen có nhiệm vụ hiển thị màn hình chính của trò chơi và xử lý sự kiện người
chơi chọn chế độ chơi.
6. Hàm character_select có nhiệm vụ cho phép người chơi lựa chọn nhân vật trong trò chơi và
khởi tạo thông tin liên quan.
7.
Khởi Tạo Biến và Đối Tượng Font:
clock = pygame.time.Clock()
PALETTE = get_palette(palette_path)
alpha_color = PALETTE[0]
font = pygame.font.SysFont('Arial', 20)
Tạo đối tượng Clock để kiểm soát tốc độ khung hình.
Lấy bảng màu từ hàm get_palette.
Khởi tạo một màu alpha dựa trên bảng màu.
Tạo đối tượng Font để hiển thị văn bản