Merge branch 'develop' of bitbucket.org:usaya/popcorn into develop

This commit is contained in:
koya_15 2021-11-02 17:21:22 +09:00
commit cbc9d8c3e6
2 changed files with 36 additions and 3 deletions

View File

@ -156,6 +156,7 @@ public class MissionManager : MonoBehaviour
{ {
return list.FirstOrDefault(data => !GameDataManager.GameData.AchievedMission.Contains(data.id)) ?? list.Last(); return list.FirstOrDefault(data => !GameDataManager.GameData.AchievedMission.Contains(data.id)) ?? list.Last();
}); });
latestMissionList = latestMissionList.Where(data => CheckAvailableMission(data, GameDataManager.GameData.MyRecipes));
foreach (var missionData in latestMissionList) foreach (var missionData in latestMissionList)
{ {
var missionView = listView.AddItemView(missionData); var missionView = listView.AddItemView(missionData);
@ -199,6 +200,36 @@ public class MissionManager : MonoBehaviour
TransitionManager.Instance.LoadSceneAdditive(GameScenes.Mission); TransitionManager.Instance.LoadSceneAdditive(GameScenes.Mission);
} }
public static bool CheckAvailableMission(MissionData missionData, int[] myRecipe)
{
// 購入レシピなど所持判定
switch (missionData.Condition)
{
case MissionCondition.NoriSoysourceSalesCount:
return myRecipe.Contains(20);
case MissionCondition.RareNoriSoysourceSalesCount:
return myRecipe.Contains(20);
case MissionCondition.SaltButterSalesCount:
return myRecipe.Contains(21);
case MissionCondition.RareSaltButterSalesCount:
return myRecipe.Contains(21);
case MissionCondition.StrawberryMilkSalesCount:
return myRecipe.Contains(22);
case MissionCondition.RareStrawberryMilkSalesCount:
return myRecipe.Contains(22);
case MissionCondition.SaltChocolateSalesCount:
return myRecipe.Contains(23);
case MissionCondition.RareSaltChocolateSalesCount:
return myRecipe.Contains(23);
case MissionCondition.ChocolateGreenteaSalesCount:
return myRecipe.Contains(24);
case MissionCondition.RareChocolateGreenteaSalesCount:
return myRecipe.Contains(24);
default:
return true;
}
}
public static int GetProgressValue(MissionData missionData) public static int GetProgressValue(MissionData missionData)
{ {
var gameData = GameDataManager.GameData; var gameData = GameDataManager.GameData;

View File

@ -122,7 +122,8 @@ public class GameDataObserver : SingletonMonoBehaviour<GameDataObserver>
} }
}); });
// ポップコーン達成確認 // ポップコーン販売達成確認
// CheckAvailableMissionは行わない
Observable.Merge( Observable.Merge(
addSalesObserver.DistinctUntilChanged(), addSalesObserver.DistinctUntilChanged(),
addRareSalesObserver.DistinctUntilChanged()) addRareSalesObserver.DistinctUntilChanged())
@ -178,8 +179,9 @@ public class GameDataObserver : SingletonMonoBehaviour<GameDataObserver>
gameData.dailyMissionCompleted = false; gameData.dailyMissionCompleted = false;
gameData.ResetDailyTotalCount(); gameData.ResetDailyTotalCount();
// 新ミッション登録 // 新ミッション登録
var targetList = missionList.Where(data => var targetList = missionList
data.Category == MissionCategory.Daily && data.shopLevel <= gameData.ViewedShopLevel); .Where(data => data.Category == MissionCategory.Daily && data.shopLevel <= gameData.ViewedShopLevel)
.Where(data => MissionManager.CheckAvailableMission(data, GameDataManager.GameData.MyRecipes));
gameData.dailyMissionIdArray = targetList.ToList().RandomChoose(3).Select(data => data.id).ToArray(); gameData.dailyMissionIdArray = targetList.ToList().RandomChoose(3).Select(data => data.id).ToArray();
gameData.lastDailyMissionSetTime = DateTime.UtcNow.ToBinary(); gameData.lastDailyMissionSetTime = DateTime.UtcNow.ToBinary();
gameData.dailyLoginCount++; gameData.dailyLoginCount++;