Vùng tự động lưu game (Save Zone)

Tags:
Gameplay
Saving
Data Persistence
Trigger

C# Code

using UnityEngine;

// Gắn script này vào một GameObject có Collider được set là Is Trigger
[RequireComponent(typeof(Collider))]
public class SaveZone : MonoBehaviour
{
    private bool hasBeenTriggered = false;

    private void OnTriggerEnter(Collider other)
    {
        // Kiểm tra xem đối tượng va chạm có phải là Player không
        if (other.CompareTag("Player") && !hasBeenTriggered)
        {
            hasBeenTriggered = true; // Đánh dấu đã kích hoạt
            Debug.Log("Player entered save zone. Saving game...");

            // --- Đặt logic lưu game của bạn ở đây ---
            // Ví dụ: 
            // SaveSystem.Instance.SaveGame();
            // PlayerPrefs.SetInt("LastCheckpoint", 1); PlayerPrefs.Save();
            // ----------------------------------------

            // Tùy chọn: Vô hiệu hóa vùng save này sau khi đã sử dụng
            // gameObject.SetActive(false);
        }
    }

    // Tùy chọn: Reset lại trạng thái khi người chơi rời khỏi vùng
    // để họ có thể lưu lại khi quay trở lại.
    private void OnTriggerExit(Collider other)
    {
        if (other.CompareTag("Player"))
        {
            hasBeenTriggered = false;
            Debug.Log("Player exited save zone. Ready to save again.");
        }
    }
}

Tự động kích hoạt việc lưu game khi người chơi đi vào một khu vực được chỉ định (Trigger). Chỉ lưu một lần mỗi khi vào vùng.

Bình luận (0)

Bạn cần đăng nhập để có thể bình luận.

Chưa có bình luận nào. Hãy là người đầu tiên!

Bài viết liên quan

Một hệ thống để tặng quà cho người chơi khi họ đăng nhập mỗi ngày, sử dụng PlayerPrefs để theo dõi thời gian đăng nhập cuối cùng.

Gameplay
Saving
Daily Reward
Timer

Sử dụng thư viện Newtonsoft.Json (Json.NET) để serialize và deserialize đối tượng C# thành chuỗi JSON, sau đó lưu vào tệp. Đây là một cách mạnh mẽ và linh hoạt để quản lý dữ liệu phức tạp. Yêu cầu đã cài đặt gói 'com.unity.newtonsoft-json'.

Data Persistence
Saving
JSON
Newtonsoft

Một cách đơn giản để lưu trữ dữ liệu người chơi như điểm số, cài đặt... PlayerPrefs phù hợp cho các dữ liệu nhỏ và không yêu cầu bảo mật cao.

Data Persistence
Saving
PlayerPrefs

AI chỉ có thể 'nhìn thấy' và phát hiện người chơi nếu họ nằm trong một hình nón phía trước mặt nó. Hữu ích cho các game stealth.

AI
Gameplay
Stealth

AI sẽ bắn đạn về phía người chơi khi họ ở trong tầm tấn công và có một khoảng thời gian chờ (cooldown) giữa mỗi lần bắn.

AI
Gameplay
Spawning
Physics

AI sẽ phát hiện người chơi trong một phạm vi nhất định và bắt đầu di chuyển về phía họ. Khi người chơi ra khỏi phạm vi, AI sẽ dừng lại.

AI
Movement
Gameplay
Player

Một script đơn giản cho AI để di chuyển tuần tự qua một danh sách các điểm (waypoints). Khi đến điểm cuối cùng, nó sẽ quay trở lại điểm đầu tiên.

AI
Movement
Gameplay

Tạo một viên đạn (projectile) tại một điểm và bắn nó đi theo một hướng xác định. Thường dùng cho nhân vật hoặc kẻ địch.

Gameplay
Player
Spawning
Physics

Một cấu trúc để một con boss thay đổi hành vi và bộ kỹ năng khi máu của nó xuống dưới các ngưỡng nhất định.

AI
Gameplay
Combat

Cung cấp chức năng cho người chơi chụp lại khoảnh khắc trong game và lưu thành tệp PNG vào một thư mục được chỉ định.

Utility
Input
Mobile
Saving