CodeGym /Các khóa học /All lectures for VI purposes /Đi sâu vào công cụ trò chơi

Đi sâu vào công cụ trò chơi

All lectures for VI purposes
Mức độ , Bài học
Có sẵn

1. Làm việc với các ô của sân chơi

Thật tuyệt khi chúng ta có thể chia sân chơi thành các ô. Nhưng chúng ta có thể làm gì với chính các tế bào?

Đối với mỗi ô của sân chơi, chúng ta có thể đặt:

  • màu ô (màu nền của ô);
  • văn bản (có thể là văn bản hoặc số);
  • văn bản màu;
  • kích thước văn bản dưới dạng phần trăm kích thước ô.

Hãy xem xét các phương pháp làm việc với các ô của sân chơi:

void setCellColor(int x, int y, Color color)đặt màu của ô có tọa độ (x, y)bằng color.

Ví dụ:

setCellColor(0, 0, Color.RED);
setCellColor(3, 6, Color.BLACK);
setCellColor(6, 8, Color.NONE);

Color getCellColor(int x, int y)trả về màu của ô có tọa độ (x, y).

Ví dụ:

Color myColor = getCellColor(2, 0);

void setCellValue(int x, int y, String value)gán văn bản vào String valueô có tọa độ (x, y).

Ví dụ:

setCellValue(3, 3, "text");
setCellValue(0, 8, "W");
setCellValue(4, 1, "2222");
setCellValue(6, 6, "");

String getCellValue(int x, int y)trả về văn bản chứa trong ô có tọa độ (x, y).

Ví dụ:

String s = getCellValue(3, 3);
System.out.println(getCellValue(4, 1));

void setCellTextSize(int x, int y, int size)đặt kích thước của văn bản trong ô có tọa độ (x, y), trong đó sizechiều cao của văn bản dưới dạng phần trăm chiều cao của ô.

Ví dụ:

setCellTextSize(2, 0, 70); // 70% of the cell height

int getCellTextSize(int x, int y)trả về kích thước của nội dung trong ô có tọa độ (x, y).

Ví dụ:

int size = getCellTextSize(2 , 0);

void setCellNumber(int x, int y, int value)gán số int valuecho ô có tọa độ (x, y).

Ví dụ:

setCellNumber(3, 3, 40);
setCellNumber(0, 8, -8);
setCellNumber(4, 1, 2222);
setCellNumber(6, 6, 0);

int getCellNumber(int x, int y)trả về số chứa trong ô có tọa độ (x, y). Nếu ô không chứa số, nó sẽ trả về 0.

Ví dụ:

int i = getCellNumber(3, 3);
System.out.println(getCellNumber(4, 1));

void setCellTextColor(int x, int y, Color color)đặt màu cho nội dung (văn bản) của ô có tọa độ (x, y).

Ví dụ:

setCellTextColor(2, 1, Color.GREEN);
setCellTextColor(0, 1, Color.NONE);

Color getCellTextColor(int x, int y)trả về màu của nội dung (văn bản) của ô có tọa độ (x, y).

Ví dụ:

Color textColor = getCellTextColor(1, 3);

Để thuận tiện cho bạn, có nhiều setCellValueEx()phương thức với các bộ tham số khác nhau:

void setCellValueEx(int x, int y, Color cellColor, String value)đặt màu nền và văn bản của ô có tọa độ lần lượt (x, y)bằng cellColorvalue.

Ví dụ:

setCellValueEx(0, 2, Color.BLUE, "56");

void setCellValueEx(int x, int y, Color cellColor, String value, Color textColor)đặt màu nền, văn bản và màu văn bản của ô có tọa độ (x, y)lần lượt bằng cellColor, value, và textColor.

Ví dụ:

setCellValueEx(0, 2, Color.BLACK, "56", Color.GREEN);

void setCellValueEx(int x, int y, Color cellColor, String value, Color textColor, int textSize);đặt màu nền, văn bản, màu văn bản và kích thước văn bản của ô có tọa độ lần (x, y)lượt bằng cellColor, value, textColortextSize.

Ví dụ:

setCellValueEx(0, 2, Color.BLACK, "56", Color.GREEN, 70);


2. Làm việc với màu sắc

Công cụ trò chơi CodeGym có một Colorloại đặc biệt chứa các giá trị duy nhất cho 148 màu. Nó cũng có một NONEgiá trị đặc biệt đại diện cho sự vắng mặt của màu sắc.

Ví dụ về làm việc với màu sắc

Color myColor = Color.WHITE;  // The color white is assigned to the myColor variable.
Color redColor = Color.RED; // The color red is assigned to the redColor variable.
Color blueColor = Color.BLUE; // The color blue is assigned to the blueColor variable.

Bạn có thể tô màu đỏ cho một ô bằng lệnh:

setCellColor(0, 2, Color.RED);

Bạn có thể kiểm tra xem một ô có phải là một màu nhất định hay không bằng một lệnh như:

if (getCellColor(0,2) == Color.GREEN)
{
}

Đôi khi bạn có thể cần lấy một mảng có mọi màu có thể. Để làm điều này, sử dụng values()phương pháp.

Ví dụ:

// An array containing every available color is assigned to the colors variable.
Color[] colors = Color.values();

Lấy chỉ mục của màu trong bảng màu rất dễ thực hiện — chỉ cần sử dụng ordinal()phương pháp:

Color color = Color.RED;
int redIndex = color.ordinal(); // Index of the color red

int blueIndex = Color.BLUE.ordinal(); // Index of the color blue

Bạn cũng có thể dễ dàng lấy màu theo chỉ mục của nó:

 // The color whose index is 10 in the Color enum is assigned to the color variable.
Color color = Color.values()[10];


3. Hộp thoại

Khi kết thúc trò chơi, chúng ta cần cho người chơi biết mình thắng hay thua. Đối với trường hợp này và các trường hợp khác, công cụ trò chơi CodeGym có void showMessageDialog(Color cellColor, String message, Color textColor, int textSize)phương thức đặc biệt, hiển thị hộp thoại có messagethông báo.
Các thông số của phương pháp này là:

  • cellColorlà màu nền của hộp thoại
  • messagelà nội dung của tin nhắn
  • textColorlà màu của văn bản của tin nhắn
  • textSizelà kích thước của văn bản của tin nhắn

Hộp thoại tự đóng nếu người dùng nhấn phím cách hoặc nhấp chuột vào hộp thoại.

Ví dụ gọi phương thức này:

// Display a dialog box with a message
showMessageDialog(Color.BLACK, "EPIC FAIL", Color.RED, 80);


4. Phương thức tiện ích

Khi viết trò chơi, bạn sẽ thường xuyên sử dụng các số ngẫu nhiên. Để lấy số ngẫu nhiên dễ dàng hơn, bạn có thể sử dụng các phương thức tiện ích của công cụ trò chơi:

int getRandomNumber(int max)trả về một số ngẫu nhiên từ 0đến (max–1)bao gồm.

int getRandomNumber(int min, int max)trả về một số ngẫu nhiên từ minđến (max–1)bao gồm.


5. JDK 11+

Khi chạy chương trình của bạn từ IntelliJ IDEA, một lớp kế thừa lớp Trò chơi có thể tạo ra lỗi sau:

Error: JavaFX runtime components are missing, and are required to run this application

Trong trường hợp này, đối với mỗi lớp như vậy, bạn cần thực hiện các bước sau một lần:
  1. Mở ChạyChỉnh sửa Cấu hình
  2. Đối với giá trị của VM options , hãy nhập như sau:
    --module-path ./lib/javafx-sdk-16/lib --add-modules=javafx.controls,javafx.fxml,javafx.base

    CHÚ Ý:

    Trong các phiên bản gần đây của IntelliJ IDEA, trường "Tùy chọn máy ảo" không được hiển thị theo mặc định. Để hiển thị nó, nhấn ALT+V

  3. Nhấn: Áp dụngOK
  4. Chạy trò chơi.
Bình luận
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION