util追加

This commit is contained in:
kimura 2022-11-04 15:14:48 +09:00
parent a552f99dae
commit aceb1a5742
2 changed files with 83 additions and 0 deletions

View File

@ -0,0 +1,80 @@
using System;
using System.Collections.Generic;
using System.Linq;
using UnityEngine;
namespace MyGame.Scripts
{
public class ItemConditionUtils
{
public static List<ItemConditionData> GetList()
{
return SpreadsheetDataManager.Instance.GetBaseDataList<ItemConditionData>(Const.ItemConditionDataSheet);
}
public static List<ScriptConditionData> GetScriptList()
{
return SpreadsheetDataManager.Instance.GetBaseDataList<ScriptConditionData>(Const.ScriptConditionDataSheet);
}
public static List<ItemConditionData> GetList(int cityId)
{
return SpreadsheetDataManager.Instance.GetBaseDataList<ItemConditionData>(Const.ItemConditionDataSheet)
.Where(data => data.cityId == cityId)
.ToList();
}
public static List<ItemConditionData> GetList(int cityId, ItemCondition condition)
{
return SpreadsheetDataManager.Instance.GetBaseDataList<ItemConditionData>(Const.ItemConditionDataSheet)
.Where(data => data.cityId == cityId)
.Where(data => data.Condition == condition)
.ToList();
}
public static List<ItemConditionData> GetGlobalList(ItemCondition condition, int value) => GetList(0, condition, value);
public static List<ItemConditionData> GetGlobalList(ItemCondition condition, int value, RewardActionType rewardActionType, bool ignoreUsed = false) => GetList(0, condition, value, rewardActionType, ignoreUsed);
public static List<ItemConditionData> GetList(int cityId, ItemCondition condition, int value)
{
return SpreadsheetDataManager.Instance.GetBaseDataList<ItemConditionData>(Const.ItemConditionDataSheet)
.Where(data => data.cityId == cityId)
.Where(data => data.Condition == condition)
.Where(data => data.needValue <= value)
.ToList();
}
public static List<ItemConditionData> GetList(int cityId, ItemCondition condition, int value, RewardActionType rewardActionType, bool ignoreUsed = false)
{
var ignoreList = ignoreUsed ? GameDataManager.GameData.UsedItemCondition : new List<int>();
return SpreadsheetDataManager.Instance.GetBaseDataList<ItemConditionData>(Const.ItemConditionDataSheet)
.Where(data => data.cityId == cityId)
.Where(data => data.Condition == condition)
.Where(data => data.needValue <= value)
.Where(data => data.RewardActionType == rewardActionType)
.Where(data => !ignoreList.Contains(data.id) )
.ToList();
}
public static List<ScriptConditionData> GetScriptList(int cityId, ItemCondition condition)
{
return SpreadsheetDataManager.Instance.GetBaseDataList<ScriptConditionData>(Const.ScriptConditionDataSheet)
.Where(data => data.cityId == cityId)
.Where(data => data.Condition == condition)
.ToList();
}
public static List<ScriptConditionData> GetScriptList(int cityId, ItemCondition condition, int value)
{
return SpreadsheetDataManager.Instance.GetBaseDataList<ScriptConditionData>(Const.ScriptConditionDataSheet)
.Where(data => data.cityId == cityId)
.Where(data => data.Condition == condition)
.Where(data => data.needValue <= value)
.ToList();
}
public static void Use(ItemConditionData itemConditionData)
{
GameDataManager.GameData.UsedItemCondition.Add(itemConditionData.id);
}
}
}

View File

@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: e6fa9bff677e4168bd7a82981de94ce4
timeCreated: 1667534395