Cách save điểm và level trong Unity3D

Cách save điểm và level trong Unity3D Type: Document
Address: tp. Huế , Thừa Thiên Huế , VN
Describe: Tài liệu hướng dẫn cách lưu điểm và lưu lại level,hoặt thiết lập của bạn trong Unity 3D
view:1781
Date publication:23/01/2000 - Recent edits:09/12/2018

Thiện Thanh Trần Add to cart

Quá trình lưu điểm và level cũng là những bước quang trọng trong quá trình làm game, vì vậy mình sẽ viết bài viết hướng dẫn cách lưu trữ  dữ liệu dưới dạng file trong game laugh

để thực hiện việc này bạn cần tạo ra 2 class , một lớp để mô tả dữ liệu và một lớp dùng để sử lý dữ liệu

Bước đầu tiên tạo class mô tả dữ liệu:

ở đây mình tạo class tên là player_data với các thuộc tính  best_socres điểm cao nhất của người chơi, bạn cũng có thể tạo thêm nhiều thuộc tính như level,setting,v,v.. do đây chỉ là code demo nên mình khai báo ít thuộc tính cho bạn dễ hình dung blush code bên dưới
 

using UnityEngine;
using System.Collections;

[System.Serializable]  //Quang trọng nhất dòng này nêu không có dòng này bạn sẽ không thể lưu file được trong game đâu nhá
public class player_data
{
    public int best_socers;

    public player_data() //đây là hàm dự dể trống cũng được :v
    {

    }
}

Bước thứ hai mình tiếp tục tạo file class để sử lý dữ liệu đã lưu với các dòng lệnh sau:
mình tạo class data_game với hai phương thức là ghi điểm và đọc điểm 

 

using UnityEngine;
using System.Collections;
using System.Runtime.Serialization.Formatters.Binary;
using System.IO;

public class data_game: MonoBehaviour {

   string file_name="savedGamea.gd"; //tên file sẽ lưu trữ trong bộ nhớ điện thoại cùng ở thư mục mà ứng dụng lưu trữ

    void Start () {

     }

    //Ghi file điểm
    public void write_socer(int best_score)
    {
        ArrayList arraySocer = new ArrayList();
        player_socers ps = new player_socers();
        ps.best_socers = best_score;
        arraySocer.Add(ps);
        BinaryFormatter bf = new BinaryFormatter();
        FileStream file = File.Create(Application.persistentDataPath + "/"+file_name);
        bf.Serialize(file, arraySocer);
        file.Close();
    }

    //đọc file điểm
    public player_data read_data()
    {
        ArrayList ps = new ArrayList();
        if (File.Exists(Application.persistentDataPath + "/"+file_name))
        {
            BinaryFormatter bf = new BinaryFormatter();
            FileStream file = File.Open(Application.persistentDataPath + "/"+file_name, FileMode.Open); 
            ps = (ArrayList)bf.Deserialize(file);
            file.Close();
            return (player_data) ps [0];
        }else{
            return new player_data() ;
        }
    }
}

 

Bước tiếp theo là sử dụng thoai :D
bây giờ thì hãy gắn class này cho một objec mà bạn muốn dùng

chỉ cần gọi hai hàm tương ứng vd:

gameObject.GetComponent().read_data().best_socers; //như vầy là ta đã lấy được điểm số cao nhất

gameObject.GetComponent().write_socer(100); //đây là câu lệnh lưu lại điểm khi game ove hoặt hoàn tất level đại loại như vậy


 

Đây là những kiến thức mình tích tụ được qua vài tháng làm game hy vọng sẽ giúp ích cho mọi người, nếu có gì thắt mắt hoặc sai sót xin hãy để lại comment bên dưới mình sẽ hướng dẫn hoặt khắc phục liền ak

Cuối bài chúc các bạn có một ngày làm việc vui vẽ, và nghỉ ra nhiều ý tưởng mới :D

Some people have rated:1

Similar products

 Paser json từ url trong Unity3d
Tài liệu hướng dẫn cách lấy một dữ liệu json trong Unity3D
Free
Type:Document
 
 
Tính tỉ lệ tiền tệ php
Code hướng dẫn tính tiền tệ cho website bán hàng :) bằng php+ thư viện service của google
Free
Type:Document
 
 
 Hiện category cha và con trong wordpress
Tài liệu mô tả chi tiết các hiện category cha và sub category cho những ai đang xây dự website...
Free
Type:Document
 
 
Cách kết nối mysql lấy dữ liệu php
Tài liệu hướng dẫn, kết nối mysql php để lấy dữ liệu hiển thị lên trang web
Free
Type:Document
 
 
Customer Menu multi level  wordpress
Tài liệu mô tả cách customer menu đa cấp bằng mã nguồn, trong wordpress phù hợp cho những ai đang...
Free
Type:Document
 
 
Code Query All type in wordpress
Code hướng dẫn cách query tất cả các loại object trong wordpreess như pos,page,catgory,meta,taxomoni
Free
Type:Document
 
 
Va chạm 2d trong unity3D
Tài liệu hướng dẫn va chạm giữa các đối tượng trong Unity
Free
Type:Document
 
 
Get Customer Field In Category wp
Tài liệu hướng lấy value cusotmer của catgeory, hay taxonomit trong wordpress một cách dễ dàng nhất
Free
Type:Document
 
 
Processing...
Obtaining data
Drop Here Browse