You've already forked taptap2024_GJ_chidouren
init
This commit is contained in:
77
Assets/Scripts/System/AchieveSystem/AchievementData.cs
Normal file
77
Assets/Scripts/System/AchieveSystem/AchievementData.cs
Normal file
@@ -0,0 +1,77 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace System.AchieveSystem
|
||||
{
|
||||
public class AchievementData
|
||||
{
|
||||
public AchievementData ()
|
||||
{
|
||||
AchieveIDs = new List<int> ();
|
||||
AchievementInfos = new List<AchievementInfo> ();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 以获得成就id列表
|
||||
/// </summary>
|
||||
public List<int> AchieveIDs;
|
||||
|
||||
/// <summary>
|
||||
/// 储存当前所有的成就埋点信息
|
||||
/// </summary>
|
||||
public List<AchievementInfo> AchievementInfos;
|
||||
|
||||
public AchievementInfo GetCodeInfo (AchievementCode code)
|
||||
{
|
||||
for (int i = 0; i < AchievementInfos.Count; i++)
|
||||
{
|
||||
if (AchievementInfos[i].Code == code)
|
||||
{
|
||||
return AchievementInfos[i];
|
||||
}
|
||||
}
|
||||
|
||||
var codeInfo = new AchievementInfo ()
|
||||
{
|
||||
Code = code,
|
||||
Count = 0
|
||||
};
|
||||
AchievementInfos.Add (codeInfo);
|
||||
return codeInfo;
|
||||
}
|
||||
|
||||
|
||||
public void AddCode (AchievementCode code, long count)
|
||||
{
|
||||
var codeInfo = GetCodeInfo (code);
|
||||
codeInfo.Count += count;
|
||||
}
|
||||
|
||||
public void SetCode (AchievementCode code, long count)
|
||||
{
|
||||
var codeInfo = GetCodeInfo (code);
|
||||
codeInfo.Count = count;
|
||||
}
|
||||
|
||||
// /// <summary>
|
||||
// /// 检查是否解锁新成就
|
||||
// /// </summary>
|
||||
// /// <returns>返回解锁新成就列表</returns>
|
||||
// public List<int> CheckAchieve()
|
||||
// {
|
||||
// List<int> ids = new List<int>();
|
||||
//
|
||||
// return ids;
|
||||
// }
|
||||
|
||||
public bool HasAchievement (int id)
|
||||
{
|
||||
return AchieveIDs.Contains (id);
|
||||
}
|
||||
}
|
||||
|
||||
public class AchievementInfo
|
||||
{
|
||||
public AchievementCode Code;
|
||||
public long Count;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user