Mục lục:

Kẻ xâm lược màn hình LCD: Kẻ xâm lược không gian giống như trò chơi trên Màn hình ký tự LCD 16x2: 7 bước
Kẻ xâm lược màn hình LCD: Kẻ xâm lược không gian giống như trò chơi trên Màn hình ký tự LCD 16x2: 7 bước

Video: Kẻ xâm lược màn hình LCD: Kẻ xâm lược không gian giống như trò chơi trên Màn hình ký tự LCD 16x2: 7 bước

Video: Kẻ xâm lược màn hình LCD: Kẻ xâm lược không gian giống như trò chơi trên Màn hình ký tự LCD 16x2: 7 bước
Video: DLĐK - CT5 - B3 2024, Tháng mười một
Anonim
LCD Invaders: Trò chơi giống như những kẻ xâm lược không gian trên Màn hình ký tự LCD 16x2
LCD Invaders: Trò chơi giống như những kẻ xâm lược không gian trên Màn hình ký tự LCD 16x2
LCD Invaders: Trò chơi giống như những kẻ xâm lược không gian trên Màn hình ký tự LCD 16x2
LCD Invaders: Trò chơi giống như những kẻ xâm lược không gian trên Màn hình ký tự LCD 16x2
LCD Invaders: Trò chơi giống như những kẻ xâm lược không gian trên Màn hình ký tự LCD 16x2
LCD Invaders: Trò chơi giống như những kẻ xâm lược không gian trên Màn hình ký tự LCD 16x2
LCD Invaders: Trò chơi giống như những kẻ xâm lược không gian trên Màn hình ký tự LCD 16x2
LCD Invaders: Trò chơi giống như những kẻ xâm lược không gian trên Màn hình ký tự LCD 16x2

Không cần phải giới thiệu một trò chơi huyền thoại “Space Invaders”. Tính năng thú vị nhất của dự án này là nó sử dụng hiển thị văn bản cho đầu ra đồ họa. Nó đạt được bằng cách triển khai 8 ký tự tùy chỉnh.

Bạn có thể tải xuống bản phác thảo Arduino hoàn chỉnh tại đây:

github.com/arduinocelentano/LCD_invaders/

Quân nhu

Bo mạch Arduino UNO

Tấm chắn bàn phím LCD

Cáp USB để tải lên bản phác thảo

Bước 1: Thiết kế trò chơi

Thiết kế trò chơi
Thiết kế trò chơi

Màn hình không cho phép điều khiển các pixel riêng biệt và chỉ cung cấp hai dòng văn bản là không đủ cho trò chơi. Nhưng nó cho phép triển khai tối đa 8 ký tự tùy chỉnh. Bí quyết là xử lý mỗi ký tự 5x8 pixel dưới dạng hai ô trò chơi 5x4 pixel. Có nghĩa là, chúng tôi sẽ có trường trò chơi 16x4, điều này có ý nghĩa. 8 nhân vật là vừa đủ để thực hiện các sprites cho tàu vũ trụ của người chơi, đạn và người ngoài hành tinh hoạt hình. Vì các sprite là 5x4 và các ký tự là 5x8, chúng tôi sẽ cần một số ký tự có hai sprite như sprite "một tàu vũ trụ và một viên đạn", "một người ngoài hành tinh và một viên đạn", v.v. Tất cả các ký tự tùy chỉnh được hiển thị trên hình ảnh.

Bước 2: Xử lý các nút

Các nút xử lý
Các nút xử lý

Thông thường, tất cả các nút trên tấm chắn LCD được kết nối với cùng một chân cắm tương tự. Có các phiên bản khác nhau của tấm chắn LCD, vì vậy, bạn có thể cần thay đổi một chút các ký tự số nguyên trong mã xử lý nút của tôi.

Bước 3: Phân cấp lớp

Hệ thống phân cấp lớp học
Hệ thống phân cấp lớp học

Tôi đã triển khai một GameObject lớp cơ sở có các trường tọa độ và tốc độ cũng như xử lý va chạm. Các lớp Ship, Alien và Bullet được kế thừa từ nó.

Bước 4: Cập nhật màn hình

Cập nhật màn hình
Cập nhật màn hình

Logic kết xuất có thể trông hơi phức tạp vì chúng ta phải chuyển đổi logic trò chơi 16x4 thành màn hình 16x2. Vui lòng đọc các bình luận trong mã để tham khảo thêm. Để tránh nhấp nháy, tôi đã sử dụng mảng ký tự hai chiều làm bộ đệm văn bản. Nó cho phép sử dụng một vài (một cho mỗi dòng) thao tác in để cập nhật màn hình.

Bước 5: Trò chơi logic

Logic trò chơi
Logic trò chơi

Đây là trung tâm của trò chơi. Vòng lặp chính thay đổi tọa độ của tất cả các đối tượng, kiểm tra tất cả các loại va chạm và các sự kiện nhấn nút. Tốc độ của người ngoài hành tinh và xác suất bắn của họ tăng từ cấp độ này sang cấp độ khác. Nhưng phần thưởng điểm số cũng tăng lên.

Bước 6: Trứng Phục sinh

Một quả trứng Phục sinh
Một quả trứng Phục sinh

Không có cấp độ nào sau cấp độ 42. Nghiêm túc đấy. Đó là Cấp độ Tối thượng của Sự sống, Vũ trụ và Mọi thứ.:)

Đề xuất: