njin
Engine 2D gọn nhẹ để tự tay làm game theo ý mình. Vibe coding cũng ổn luôn
Loading...
Searching...
No Matches
Cài đặt

Lưu và nạp âm lượng, phím, toàn màn hình, ngôn ngữ của người chơi. Tiếp...

Các hàm

json_value njin::settings_to_json (const context &ctx)
 Cài đặt của người chơi dạng JSON: âm lượng và tắt tiếng từng kênh, phím đã gắn, toàn màn hình, đồng bộ dọc, ngôn ngữ.
void njin::settings_apply (context &ctx, const json_value &json)
 Áp dụng cài đặt từ JSON của settings_to_json().
bool njin::settings_save (const context &ctx, const char *file="settings.json", const json_value *game=nullptr)
 Lưu cài đặt vào file trong thư mục lưu game (save_path()), kèm dữ liệu riêng của game nếu có (độ khó, độ sáng...), dưới khóa "game".
bool njin::settings_load (context &ctx, const char *file="settings.json", json_value *game=nullptr)
 Nạp và áp dụng cài đặt đã lưu.

Mô tả chi tiết

Lưu và nạp âm lượng, phím, toàn màn hình, ngôn ngữ của người chơi.

Thông tin về hàm

◆ settings_to_json()

json_value njin::settings_to_json ( const context & ctx)

Cài đặt của người chơi dạng JSON: âm lượng và tắt tiếng từng kênh, phím đã gắn, toàn màn hình, đồng bộ dọc, ngôn ngữ.

{ "audio": { "master": 0.8, "music": 0.5, "sfx": 1, "ui": 1, "voice": 1,
"muted": ["music"] },
"input": { "actions": {...}, "axes": {...} },
"fullscreen": false, "vsync": true, "language": "vi" }
Các tham số
ctxContext của engine.
Giá trị trả về
Object JSON.

◆ settings_apply()

void njin::settings_apply ( context & ctx,
const json_value & json )

Áp dụng cài đặt từ JSON của settings_to_json().

Phần nào thiếu thì giữ nguyên; ngôn ngữ chưa nạp bị bỏ qua.

Các tham số
ctxContext của engine.
jsonDữ liệu.

◆ settings_save()

bool njin::settings_save ( const context & ctx,
const char * file = "settings.json",
const json_value * game = nullptr )

Lưu cài đặt vào file trong thư mục lưu game (save_path()), kèm dữ liệu riêng của game nếu có (độ khó, độ sáng...), dưới khóa "game".

njin::settings_save(ctx); // khi rời menu cài đặt
bool settings_save(const context &ctx, const char *file="settings.json", const json_value *game=nullptr)
Lưu cài đặt vào file trong thư mục lưu game (save_path()), kèm dữ liệu riêng của game nếu có (độ khó,...
Các tham số
ctxContext của engine.
fileTên file.
gameDữ liệu riêng của game, hoặc null.
Giá trị trả về
true nếu ghi được.

◆ settings_load()

bool njin::settings_load ( context & ctx,
const char * file = "settings.json",
json_value * game = nullptr )

Nạp và áp dụng cài đặt đã lưu.

Gọi sau khi đã đăng ký action, axis và nạp ngôn ngữ, thường trong phase_startup, để phím người chơi đã đổi thay phím mặc định. Chưa có file (lần chạy đầu) thì không làm gì.

Các tham số
ctxContext của engine.
fileTên file.
gameNhận dữ liệu riêng của game đã lưu, hoặc null.
Giá trị trả về
true nếu đã đọc được file.