3-11Những chức năng khác của [MyGame]

3-11 Những chức năng khác của [MyGame]

Tại MyGame thì ngoài những chức năng đã được giới thiệu cho đến nay thì nó còn được chuẩn bị rất nhiều chức năng tiện lợi khác

Lấy kích cỡ màn hình

Với phương pháp dưới đây thì chúng ta có thể lấy được kích thước màn hình.

p screen.w  # chiều dài của màn hình (mặc định là 640)
p screen.h  # chiều rộng của màn hình (mặc đinh là 480)

Khi chúng ta sử dụng [screen.w] và [screen.h] thì có thể vẽ được hình ảnh ngay chính giữa màn hình.

img.x = (screen.w + img.w)/2
img.y = (screen.h + img.h)/2
img.render

Màu màn sau

Chúng ta có thể lấy được màu của màn đằng sau khi sử dụng lệnh [background_color]

p background_color ()	# => Màu mặc định là [0,0,0]

Khi sử dụng lệnh [background_color] thì chũng ta có thể tùy chỉnh được màu của background

MyGame.background_color = [0,0,255] # Cài đặt màu của background là xanh da trời

Khi muốn cài đặt màu của background bằng [background_color] thì nhất định chúng ta phải gọi thêm [MyGame.]. Nếu chúng ta giản lược [MyGame.] thì coi như chúng ta tạo một biến số [background_color] và dãy số tiếp theo chính là giá trị mà biến số thay thế.

background_color = [0,0,255]

Thực hiện cài đặt fps

Chúng ta có thể dùng lệnh [fps] để thiết lập giá trị FPS.

p fps() # => lấy giá trị fps

Trong thực tế, nếu muốn lấy được giá trị fps thì chúng ta dùng lệnh [real_fps].

p real_fps () # => lấy giá tị thực của fps

Để thiết lập giá trị của fps thì chúng ta dùng lệnh [fps=]

MyGame.fps = 30

Nếu ta không viết thêm MyGame. thì [fps] chuyển về như một biến số nhận giá trị như số được viết đằng sau nên nhất định chúng ta phải chú ý.

Phương pháp không sử dụng [mygame/boot]

Từ trước đến nay, trươc skhi chúng ta sử dụng [MyGame] thì nhất định phải chạy [require 'mygame/boot]. Nhưng chúng ta cũng có thể chỉ cần viết [require mygame] để dùng MyGame.

require 'mygame'
MyGame.crete_screen 320, 240 # Xác lập màn hình với kích thước 320x240
MyGame.main_loop do
  MyGame::Image.render "sample.bmp"
end

Trong trường hợp sử dụng [require 'mygame'] thì chúng ta nhất thiết phải thêm [MyGame.] trước mỗi lệnh hoặc clss để gọi chúng ra. Mặt khác, màn hình không thể được tạo ra một cách ngẫu nhiên nên chúng ta có thể tạo màn hình bằng cách dùng lệnh [create_screen] và cho vào argument là kích thước của màn hình. Lệnh [main_loop] cũng không được tạo một cách tự động nên nhất định cần phải tự ta định nghĩa. Hay như chương trình dưới đây, nếu ta chạy thêm [include MyGame] thì chúng ta có thể giản lược được [MyGame]

require 'mygame'
include MyGame
create_screen 320 240
main_loop do
  Image.render "sample.bmp"
end