using System.Collections.Generic; using Wizard.Battle; public class AttachedSkillInformation { public SkillCollectionBase AttachedSkills { get; protected set; } public List OwnerCardNameList { get; protected set; } public List OwnerCardIdList { get; protected set; } public List DuplicateBanNum { get; protected set; } public List CreatorSkillList { get; protected set; } public List CreatorSkillIndexList { get; protected set; } public AttachedSkillInformation(BattleCardBase card) { AttachedSkills = new SkillCollectionBase(card); OwnerCardNameList = new List(); OwnerCardIdList = new List(); DuplicateBanNum = new List(); CreatorSkillList = new List(); CreatorSkillIndexList = new List(); } public AttachedSkillInformation(BattleCardBase card, SkillCollectionBase skills, List nameList, List idList, List duplicateBanNum, List createrList, List creatorSkillIndexList) { AttachedSkills = skills.Clone(card); OwnerCardNameList = new List(nameList); OwnerCardIdList = new List(idList); DuplicateBanNum = new List(duplicateBanNum); CreatorSkillList = new List(createrList); CreatorSkillIndexList = new List(creatorSkillIndexList); } public void Add(SkillBase skill, string ownerCardName, int ownerCardID, long duplicateBanNum, SkillBase creatorSkill, int index) { AttachedSkills.Add(skill); OwnerCardNameList.Add(ownerCardName); OwnerCardIdList.Add(ownerCardID); DuplicateBanNum.Add(duplicateBanNum); CreatorSkillList.Add(creatorSkill); CreatorSkillIndexList.Add(index); } public void Remove(SkillBase skill, BattleCardBase owner, long duplicateBanNum, SkillBase creatorSkill, int index) { string name = owner.GetName(); int cardId = owner.CardId; Remove(skill, name, cardId, duplicateBanNum, creatorSkill, index); } public void Remove(SkillBase skill, string ownerCardName, int ownerCardID, long duplicateBanNum, SkillBase creatorSkill, int index) { AttachedSkills.Remove(skill); OwnerCardNameList.Remove(ownerCardName); OwnerCardIdList.Remove(ownerCardID); DuplicateBanNum.Remove(duplicateBanNum); CreatorSkillList.Remove(creatorSkill); CreatorSkillIndexList.Remove(index); } public void Clear() { AttachedSkills.Clear(); OwnerCardNameList.Clear(); OwnerCardIdList.Clear(); DuplicateBanNum.Clear(); CreatorSkillList.Clear(); CreatorSkillIndexList.Clear(); } }