logo
Khóa học lập trình game server - smartfox - game đa người chơi Học lập trinh game online 3dvietpro Sửa chữa và thiết kế website .net
Welcome Guest! To enable all features please Đăng nhập or Đăng ký.

Thông báo

Icon
Error

Tùy chọn
Xem
Xem bài viết cuối Go to first unread
admin  
#1 Đã gửi : 20/06/2019 lúc 10:51:49(UTC)
admin

Danh hiệu: Administration

Nhóm: Guests
Gia nhập: 19-08-2014(UTC)
Bài viết: 145

Được cảm ơn: 7 lần trong 6 bài viết



Cũng giống như bài mình đã hướng dẫn các bạn sử dụng package easysave để thực hiện lưu dữ liệu vào bộ nhớ theo kiểu json, trong bài này mình sẽ hướng dẫn các bạn sử dụng một công cụ hay 1 package khác mình cảm thấy ổn hơn easysave, package này các bạn phải mua mất phí tầm khoảng 20$, mình đã mua sẽ cung cấp phiên bản package ở phần dưới cho các bạn thực hiện.

UserPostedImage

Trong ví dụ này mình làm 1 demo nhỏ như sau đó là:

+ Click vào mục thực hiện việc lưu dữ liệu
+ Load dữ liệu sử dụng Save Game Pro.
+ Lọc và loại bỏ dữ liệu sử dụng linq

Điều đặc biệt mình thấy được đó là Save Game Pro có thể lưu được ngay cả trên bản IOS và android và nhiều môi trường khác, Link các bạn có thể tham khảo tài liệu hướng dẫn của nhà phát triển tại đây:

https://assetstore.unity.com/pac...me-pro-gold-update-89198


Dưới đây là các câu lệnh mình thực hiện:
+Khai báo thư viện
Trích dẫn:
using BayatGames.SaveGamePro.Extensions;
using BayatGames.SaveGamePro;

+ Kiểm tra tồn tại của biến "DanhSach"
Trích dẫn:

bool exists = SaveGame.Exists("DanhSach");
List<Data> lstData = new List<Data>();
if (exists == false)
{
SaveGame.Save("DanhSachVideo", lstDataTag);
}


+ Data là một mảng list do bạn tự khai báo tùy từng thuộc tính có thể như này

Trích dẫn:

public class DataTag
{
public string Id;
public string Date;
public string Current_Anh;
public string Current_Ten;
public string Current_ThuTu;

}


+ Thực hiện Load dữ liệu và kiểm tra chế độ null

Trích dẫn:
List<DataTag> lstDataTag = new List<DataTag>();
lstDataTag = SaveGame.Load<List<DataTag>>("DanhSachVideo");

if (lstDataTag == null)
{
return;
}


Như vậy với hướng dẫn trên các bạn hoàn toàn có thể thực hiện việc lưu, chỉ cần test tỉ mỉ chút là có kết quả.

* Bổ dung thêm các bạn một hàm mình viết cho chương trình của mình để các bạn xem thêm

Trích dẫn:
public void AddDataJson(GameObject panelVideoDaTag, string Id, string Date, string Current_Anh, string Current_Ten, string Current_ThuTu)
{

bool exists = SaveGame.Exists("DanhSachVideo");
List<DataTag> lstDataTag = new List<DataTag>();
if (exists == false)
{
SaveGame.Save("DanhSachVideo", lstDataTag);
}

lstDataTag = SaveGame.Load<List<DataTag>>("DanhSachVideo");

for(int i=lstDataTag.Count-1;i>=0 ;i--)
{
if(lstDataTag[i].Current_Code_YT==Current_Code_YT)
{
lstDataTag.RemoveAt(i);
}
}
DataTag newData = new DataTag();
newData.Id = Id;
newData.Date = Date;
newData.Current_Anh = Current_Anh;
newData.Current_Ten = Current_Ten;
newData.Current_ThuTu = Current_ThuTu;
lstDataTag.Add(newData);
SaveGame.Save("DanhSachVideo", lstDataTag);
StartCoroutine(VideoDaDuocTag(panelVideoDaTag,"Video đã được tag"));
}


Dưới đây là Link code, Pass: 3dvietpro các bạn nhé
https://drive.google.com/file/d/...GXZg_Nd/view?usp=sharing

Link Demo chạy được các bạn nhé: https://drive.google.com...kL3326l/view?usp=sharing

Mình có làm 1 ví dụ đơn giản tại file các bạn xem nhé: https://drive.google.com...9OqW-Qx/view?usp=sharing

Ngoài vấn đề lưu cơ bản này, savegamepro, còn nhiều tính năng lưu nữa liên quan đến cơ sở dữ liệu, các bạn có thể đọc thêm hướng dẫn để biết thêm nhé.
Rất mong sự đóng góp và phản hồi từ các bạn.

Admin.

Sửa bởi người viết 05/02/2021 lúc 09:59:28(UTC)  | Lý do: Chưa rõ

Bạn bình luận ngay tại đây
Ai đang xem chủ đề này?
Guest
Di chuyển  
Bạn không thể tạo chủ đề mới trong diễn đàn này.
Bạn không thể trả lời chủ đề trong diễn đàn này.
Bạn không thể xóa bài của bạn trong diễn đàn này.
Bạn không thể sửa bài của bạn trong diễn đàn này.
Bạn không thể tạo bình chọn trong diễn đàn này.
Bạn không thể bỏ phiếu bình chọn trong diễn đàn này.

Powered by YAF 2.1.0 | YAF © 2003-2024, Yet Another Forum.NET
Thời gian xử lý trang này hết 0.085 giây.