|
|
@ -1,3 +1,4 @@ |
|
|
|
|
|
using Newtonsoft.Json; |
|
|
using System.Collections; |
|
|
using System.Collections; |
|
|
using System.Collections.Generic; |
|
|
using System.Collections.Generic; |
|
|
using System.Linq; |
|
|
using System.Linq; |
|
|
@ -15,19 +16,24 @@ public class CardAddManager : Singleton<CardAddManager> |
|
|
public void GeneratorRewardCard(List<Transform> cardSlot) |
|
|
public void GeneratorRewardCard(List<Transform> cardSlot) |
|
|
{ |
|
|
{ |
|
|
List<string> cardAllList = CardOriginalDataList.Instance.cardOriginalDataList.Keys.ToList(); |
|
|
List<string> cardAllList = CardOriginalDataList.Instance.cardOriginalDataList.Keys.ToList(); |
|
|
|
|
|
HashSet<string> dyeingCardSet = MathTool.GetRandomElements(CardManager.Instance.withoutBasicCard(CardOriginalDataList.Instance.cardOriginalDataList).Keys.ToHashSet(), 1); |
|
|
|
|
|
HashSet<string> effectCardSet = MathTool.GetRandomElements(CardManager.Instance.withoutBasicCard(CardOriginalDataList.Instance.effectCardOriginalDataList).Keys.ToHashSet(), 1); |
|
|
|
|
|
HashSet<string> allCardSet = JsonConvert.DeserializeObject<HashSet<string>>(JsonConvert.SerializeObject(CardOriginalDataList.Instance.allCardOriginalDataList.Keys.ToHashSet())); |
|
|
|
|
|
allCardSet.Remove(dyeingCardSet.ElementAt(0)); |
|
|
|
|
|
allCardSet.Remove(effectCardSet.ElementAt(0)); |
|
|
|
|
|
HashSet<string> thirdCard = MathTool.GetRandomElements(CardManager.Instance.withoutBasicCard(allCardSet), 1); |
|
|
|
|
|
List<string> dyeingCardAList = CardOriginalDataList.Instance.cardOriginalDataList.Keys.ToList(); |
|
|
List<string> cardList = new List<string>(); |
|
|
List<string> cardList = new List<string>(); |
|
|
for (int i = 0; i < cardSlot.Count; i++) |
|
|
/*for (int i=0;i<cardCount-1;i++) |
|
|
{ |
|
|
{ |
|
|
if(i!= cardSlot .Count -1) |
|
|
cardList.Add(cardAllList[UnityEngine.Random.Range(0, cardAllList.Count)]); |
|
|
{ |
|
|
}*/ |
|
|
cardList.Add(cardAllList[UnityEngine.Random.Range(0, cardAllList.Count)]); |
|
|
//¼ÓÈëÒ»ÕÅЧ¹û¿¨
|
|
|
} |
|
|
//List<string> effectCardAllList = CardOriginalDataList.Instance.effectCardOriginalDataList.Keys.ToList();
|
|
|
else |
|
|
//cardList.Add(effectCardAllList[UnityEngine.Random.Range(0, effectCardAllList.Count)]);
|
|
|
{ |
|
|
cardList.Add(dyeingCardSet.ElementAt(0)); |
|
|
cardList.Add(CardOriginalDataList.Instance.effectCardOriginalDataList .Keys .ToList ()[Random.Range(0, CardOriginalDataList.Instance.effectCardOriginalDataList.Count)]); |
|
|
cardList.Add(effectCardSet.ElementAt(0)); |
|
|
} |
|
|
cardList.Add(thirdCard.ElementAt(0)); |
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
for (int i = 0; i < cardSlot.Count; i++) |
|
|
for (int i = 0; i < cardSlot.Count; i++) |
|
|
{ |
|
|
{ |
|
|
var currentCard = PlayerStatsManager .Instance .CreateCardWithIDForLook(cardList[i], cardSlot[i]); |
|
|
var currentCard = PlayerStatsManager .Instance .CreateCardWithIDForLook(cardList[i], cardSlot[i]); |
|
|
|