Exemplo n.º 1
0
 public void pickUpSpell(SpellBook newSpell)
 {
     if (heldSpell != null)
     {
         dropSpell(heldSpell, newSpell.transform.position);
     }
     heldSpell = newSpell;
     heldSpell.Deactivate();
     StartCoroutine(pullSpell(newSpell.transform));
 }
Exemplo n.º 2
0
 public void pickUpSpell(SpellBook newSpell)
 {
     if (heldSpell != null)
     {
         dropSpell(heldSpell, newSpell.transform.position);
     }
     heldSpell = newSpell;
     newSpell.Deactivate();
     heldSpell.transform.parent       = transform;
     newSpell.transform.localPosition = Vector3.zero;
     newSpell.transform.localRotation = Quaternion.identity;
 }
Exemplo n.º 3
0
    IEnumerator pickUpProcess(SpellBook newSpell) // pick up the spellbook
    {
        float startTime = Time.time;

        newSpell.transform.parent = transform;
        while (Time.time - startTime < spellPickUpSpeed) // pull spellbook closer
        {
            newSpell.transform.position = Vector3.Lerp(newSpell.transform.position, transform.position, (Time.deltaTime / spellPickUpSpeed) * 2);
            yield return(new WaitForEndOfFrame());
        }

        // place spellbook at the middle and stop rendering book)
        newSpell.transform.localPosition = Vector3.zero;
        newSpell.Deactivate();
    }
Exemplo n.º 4
0
 public void pickUpSpell(SpellBook newSpell)
 {
     // Debug.Log("Grabbed Spell");
     if (spellsInventory.Count == maxSpells)  // if the player's inventory is full
     {
         SpellBook lostSpell = spellsInventory[currentHeld];
         spellsInventory[currentHeld] = newSpell;
         dropSpell(lostSpell, newSpell.transform.position);
     }
     else   // otherwise just add the spell
     {
         spellsInventory.Add(newSpell);
         currentHeld = spellsInventory.Count - 1;
     }
     updateCurrentHeld();
     newSpell.Deactivate();
     newSpell.transform.localPosition = Vector3.zero;
     newSpell.transform.localRotation = Quaternion.identity;
     // StartCoroutine(pickUpProcess(newSpell)); // visualize pick up
 }