2025-05-18 01:04:31 +08:00

120 lines
2.8 KiB
C#

// ***********************************************************************
// Assembly : Unity
// Author : Kimch
// Created : 2017-11-14
//
// Last Modified By : Kimch
// Last Modified On :
// ***********************************************************************
// <copyright file= "ActivitySubInfo" company=""></copyright>
// <summary></summary>
// ***********************************************************************
namespace G
{
using CodeStage.AntiCheat.ObscuredTypes;
/// <summary>
/// 子活动信息
/// </summary>
public class ActivitySubInfo
{
readonly ItemActivitySub _item;
/// <summary>
///
/// </summary>
public ItemActivitySub item => _item;
/// <summary>
/// 子活动ID
/// </summary>
public int id => _item.id;
/// <summary>
/// 子活动描述
/// </summary>
public string description;
/// <summary>
/// 子活动目标图标
/// </summary>
public string iconName;
/// <summary>
/// 类型
/// </summary>
public int type
{
get => _item.type;
}
/// <summary>
///
/// </summary>
public int[] typeArgs
{
get => _item.typeArgs;
}
/// <summary>
/// 奖励
/// </summary>
public readonly Item.ItemInfo[] rewardInfos;
/// <summary>
///
/// </summary>
public int target => _item.target;
/// <summary>
/// 子活动最大完成数量
/// </summary>
public int maxValue => _item.target;
ObscuredInt _curValue;
/// <summary>
/// 子活动当前完成数量
/// </summary>
public int curValue
{
get { return _curValue; }
set
{
_curValue = value;
}
}
ObscuredInt _curStatus;
/// <summary>
/// 子活动状态:0.未完成;1.已完成;2.已领取
/// </summary>
public int status
{
get { return _curStatus; }
set { _curStatus = value; }
}
public ActivitySubInfo(ItemActivitySub item)
{
_item = item;
rewardInfos = Item.ItemInfo.FromArray(item.rewards);
}
public void Reset()
{
_curValue = 0;
_curStatus = 0;
}
public int GetSaveData()
{
return GlobalUtils.CombineNumber824(this.status, this.curValue);
}
public void SetSaveData(int saveData)
{
GlobalUtils.SplitNumber824(saveData, out int bit8, out int bit24);
_curStatus = bit8;
_curValue = bit24;
}
}
}