public static void SetPlayerSlot(AbilityCard abilityCard, PlayerAbilitySlot.SlotType slotType = PlayerAbilitySlot.SlotType.Cycling) { if (mainHud != null) { mainHud.quickBar.SetQuickBarSlot(abilityCard, slotType); } }
public void ClearQuickBarSlot(AbilityCard abilityCard, SlotType slotType = SlotType.Cycling) { //if (slotIndex > quickbarSlots.Count) { // Debug.LogError("[PlayerQuickBar] index out of range. " + slotIndex + " is more than 4"); //} GetSlotByCard(abilityCard, slotType).RemoveSlotAbility(); }
private void SetupCard(Entity source, SlotType cardSlotType = SlotType.None, int itemID = -1) { this.source = source; this.cardSlotType = cardSlotType; this.ParentItemID = itemID; AbilityDeck.ALL_CARDS.activeCards.Add(this); }
public void PlayCard(AbilityCard card, Controller2D.CollisionInfo colInfo, PlayerAbilitySlot.SlotType slotType = PlayerAbilitySlot.SlotType.Cycling) { if (card.Activate(colInfo)) { if (slotType == PlayerAbilitySlot.SlotType.Cycling) { TransferCard(card, DeckType.Library); } } }
public AbilityCard(List <SpecialAbilityData> abilities, Entity source, SlotType cardSlotType = SlotType.None, int itemID = -1) { SetupCard(source, cardSlotType, itemID); int count = abilities.Count; for (int i = 0; i < count; i++) { //Debug.Log("Adding an ability " + abilities[i].abilityName + " to card"); AddAbility(abilities[i], abilities[i].sequencedAbilities); } }
//private void SwapCardSet(List<AbilityCard> inCards, PlayerAbilitySlot.SlotType slot) { // List<AbilityCard> outCards = GetAllCardsBySlotType(slot); // RemoveCardSet(outCards); // AddCardSet(inCards, slot); //} private void AddCardSet(List <AbilityCard> cards, PlayerAbilitySlot.SlotType slot) { switch (slot) { case PlayerAbilitySlot.SlotType.Cycling: TransferCardSet(cards, GetDeck(AbilityDeck.DeckType.Library)); break; case PlayerAbilitySlot.SlotType.Primary: TransferCardSet(cards, GetDeck(AbilityDeck.DeckType.PrimaryCards)); break; } }
public AbilityCard(Entity source, SlotType cardSlotType = SlotType.None, int itemID = -1) { SetupCard(source, cardSlotType, itemID); //this.source = source; //this.cardSlotType = cardSlotType; //this.ParentItemID = itemID; //ability = new SpecialAbility(); //ability.Initialize(source, abilityData); //AddAbility(abilityData); //cardName = abilityData.abilityName; }
public void SetQuickBarSlot(AbilityCard abilityCard, SlotType slotType = SlotType.Cycling) { //if(slotIndex > quickbarSlots.Count) { // Debug.LogError("[PlayerQuickBar] index out of range. " + slotIndex + " is more than 4"); //} PlayerAbilitySlot targetSlot = GetFirstEmptySlot(slotType); if (targetSlot == null) { Debug.Log("Couldn't get slot"); } targetSlot.SetSlotAbility(abilityCard); }
private List <AbilityCard> GetAllCardsBySlotType(PlayerAbilitySlot.SlotType slot) { List <AbilityCard> results = new List <AbilityCard>(); int count = AbilityDeck.ALL_CARDS.activeCards.Count; for (int i = 0; i < count; i++) { if (AbilityDeck.ALL_CARDS.activeCards[i].cardSlotType == slot) { results.Add(AbilityDeck.ALL_CARDS.activeCards[i]); } } return(results); }
private PlayerAbilitySlot GetSlotByCard(AbilityCard abilityCard, SlotType slotType = SlotType.Cycling) { int count = slots.Count; for (int i = 0; i < count; i++) { if (slots[i].slotType != slotType) { continue; } if (slots[i].CurrentCard == abilityCard) { return(slots[i]); } } return(null); }
private PlayerAbilitySlot GetFirstEmptySlot(SlotType slotType = SlotType.Cycling) { int count = slots.Count; for (int i = 0; i < count; i++) { if (slots[i].slotType != slotType) { continue; } if (slots[i].IsEmpty) { slots[i].currentIndex = i; return(slots[i]); } } return(null); }
public AbilityCardSet(List <AbilityCard> cards, PlayerAbilitySlot.SlotType slotType) { this.cards = cards; this.slotType = slotType; }
public static void ClearPlayerSlot(AbilityCard abilityCard, PlayerAbilitySlot.SlotType slotType = PlayerAbilitySlot.SlotType.Cycling) { mainHud.quickBar.ClearQuickBarSlot(abilityCard, slotType); }
public static AbilityCard CreateCard(Entity owner, SlotType cardSlotType = SlotType.None, int itemID = -1) { AbilityCard newCard = new AbilityCard(owner, cardSlotType, itemID); return(newCard); }
public static AbilityCard CreateCard(List <SpecialAbilityData> abilities, Entity owner, SlotType cardSlotType = SlotType.None, int itemID = -1) { //Debug.Log("Create Card is recieving " + abilities.Count + " abilities in the card factory"); AbilityCard newCard = new AbilityCard(abilities, owner, cardSlotType, itemID); return(newCard); }