Example #1
0
 public void Activate(ICycleObserver <PossessorSearcher.ItemPossessor> observer)
 {
     this.observer = observer;
     charList      = new CircularLinkedList <PossessorSearcher.ItemPossessor>();
     PossessorSearcher.FillPossessorList(charList);
     currPoss = charList.current.value;
 }
Example #2
0
 private void InitEssentials()
 {
     selectedPos        = -1;
     currentPossessor   = PossessorSearcher.ItemPossessor.BAG;
     possessorText.text = PossessorSearcher.bagPossessor;
     invList            = new CircularLinkedList <PossessorSearcher.ItemPossessor>();
     PossessorSearcher.FillPossessorList(invList);
     primInvoker = new PrimaryActionInvoker(this);
 }
Example #3
0
 public void Activate(GameObject itemInteractor, GameObject promptText, PossessorSearcher.ItemPossessor fromPossessor, int fromPos, int itemQuantity)
 {
     this.fromPossessor  = fromPossessor;
     this.fromPos        = fromPos;
     this.itemQuantity   = itemQuantity;
     this.itemInteractor = itemInteractor;
     this.promptText     = promptText;
     this.itemInteractor.SetActive(false);
     this.promptText.SetActive(true);
 }
Example #4
0
    public int GetNumOfItemsAt(int pos, PossessorSearcher.ItemPossessor possessor)
    {
        ItemHolder[] inv = GetInventory(possessor);

        if (inv == null)
        {
            return(0);
        }

        return(inv[pos].Amount);
    }
Example #5
0
    public Item GetItemAt(int pos, PossessorSearcher.ItemPossessor possessor)
    {
        ItemHolder[] inv = GetInventory(possessor);

        if (inv == null)
        {
            return(nullItem);
        }

        return(inv[pos].TheItem);
    }
Example #6
0
    public InventoryHolder GetInvHolder(PossessorSearcher.ItemPossessor possessor)
    {
        foreach (InventoryHolder invHolder in invHolders)
        {
            if (invHolder.Possessor == possessor)
            {
                return(invHolder);
            }
        }

        return(null);
    }
Example #7
0
    public void PrevPossessor()
    {
        string possText = "";

        do
        {
            invList.PrevPos();
            possText = PossessorSearcher.GetPossessorName(invList.current.value);
        }while (possText.Equals(""));

        currentPossessor   = invList.current.value;
        possessorText.text = possText;
        DisplayAll();
    }
Example #8
0
 void OnEnable()
 {
     DisableInteractors();
     EnableButtons();
     currentPossessor = PossessorSearcher.ItemPossessor.BAG;
     currentState     = defaultState;
     if (invList != null)
     {
         invList.RevertToDefault();
     }
     if (itemButtons != null)
     {
         DisplayAll();
     }
 }
Example #9
0
        public void PrevChar()
        {
            string possText = "";

            do
            {
                charList.PrevPos();
                possText = PossessorSearcher.GetPossessorName(charList.current.value);
            }while (possText.Equals(""));

            currPoss           = charList.current.value;
            possessorText.text = possText;

            observer.OnCycle(charList.current.value);
        }
Example #10
0
    public void Organize(PossessorSearcher.ItemPossessor possessor)
    {
        ItemHolder[] holders = GetInventory(possessor);

        for (int i = 0; i < holders.Length; i++)
        {
            if (holders[i].IsEmpty())
            {
                for (int j = i + 1; j < holders.Length; j++)
                {
                    if (holders[j].IsEmpty())
                    {
                        continue;
                    }

                    holders[i] = holders[j];
                    holders[j] = nullHolder;
                    break;
                }
            }
        }
    }
Example #11
0
 public void UseItem(PossessorSearcher.ItemPossessor possessor, int pos, CharStats charToUse)
 {
     GetInvHolder(possessor).UseItem(pos, charToUse);
 }
Example #12
0
 public void RemoveItemAt(PossessorSearcher.ItemPossessor possessor, int posToRemove, int amount)
 {
     GetInvHolder(possessor).RemoveAt(posToRemove, amount);
 }
Example #13
0
 public void AddItemAt(PossessorSearcher.ItemPossessor possessor, ItemHolder itemToAdd, int posToAdd)
 {
     GetInvHolder(possessor).AddAt(itemToAdd, posToAdd);
 }
Example #14
0
 public int AddItem(PossessorSearcher.ItemPossessor possessor, ItemHolder itemToAdd)
 {
     return(GetInvHolder(possessor).Add(itemToAdd));
 }
Example #15
0
 public ItemHolder[] GetInventory(PossessorSearcher.ItemPossessor possessor)
 {
     return(GetInvHolder(possessor).ItemHolders);
 }
Example #16
0
 public InventoryHolder(PossessorSearcher.ItemPossessor possessor, int size, ItemHolder nullHolder)
 {
     this.possessor  = possessor;
     itemHolders     = new ItemHolder[size];
     this.nullHolder = nullHolder;
 }