using System;
using BackupParamAccessor;
using PlayerStatus;
using UnityEngine;

namespace Schedule
{
	public class ResultBaseTask
	{
		public int id
		{
			get
			{
				return this._id;
			}
		}

		public WorkResultSlot slot
		{
			get
			{
				return this._slot;
			}
		}

		public Maid maid
		{
			get
			{
				if (this.slot != null)
				{
					return this.slot.maid;
				}
				return null;
			}
		}

		public Texture2D icon
		{
			get
			{
				return this._icon;
			}
		}

		public string icon_name
		{
			get
			{
				return ScheduleCSVData.AllData[this.id].icon;
			}
		}

		protected void Init(WorkResultSlot slot, int workId, ResultWorkMgr.ResultType resultType)
		{
			this._id = workId;
			this._slot = slot;
			this.resultType = resultType;
			this.CalcParamTask();
		}

		protected void CalcParamTask()
		{
			ResultWorkMgr.ResultType resultType = this.resultType;
			if (resultType != ResultWorkMgr.ResultType.Daytime)
			{
				if (resultType == ResultWorkMgr.ResultType.Night)
				{
					this.CalcParam(SCENE_ID.Night);
				}
			}
			else
			{
				this.CalcParam(SCENE_ID.Noon);
			}
		}

		protected virtual void CalcParam(SCENE_ID baseId)
		{
		}

		protected ResultWorkMgr.ResultType resultType;

		protected int _id;

		protected WorkResultSlot _slot;

		public ScheduleData.WorkSuccessLv commonSuccessLv;

		public Texture2D successLv_icon;

		public string successLvName;

		protected Texture2D _icon;

		public Params uppedParams;

		protected const string SUCCESS_LV_ICON_MISS = "CM3D2_work_result_mark_sippai";

		protected const string SUCCESS_LV_ICON_SUCCESS = "CM3D2_work_result_mark_seikou";

		protected const string SUCCESS_LV_ICON_PERFECT = "CM3D2_work_result_mark_daiseikou";

		protected const string BONUS_ICON_MISS = "CM3D2_work_result_mark_sippai2";

		protected const string BONUS_ICON_SUCCESS = "CM3D2_work_result_mark_seikou2";

		protected const string BONUS_ICON_PERFECT = "CM3D2_work_result_mark_daiseikou2";

		protected const string BONUS_ICON_COMMUNICATION = "CM3D2_work_result_mark_commubonus";
	}
}
