Beispiel #1
0
    public override void PutItemIn(ItemBase iItemType, CharacterItemController iPlayerInfo)
    {
        base.PutItemIn(iItemType, iPlayerInfo);
        if (itemOne == null)
        {
            itemOne = iItemType;
            itemOne.transform.parent   = this.transform;
            itemOne.transform.position = itemOnAnilPosition.transform.position;
            itemOne.GetComponent <Rigidbody>().constraints = RigidbodyConstraints.FreezeAll;
            iPlayerInfo.RemoveItem();
        }
        else if (itemOne.WhatItemTierAmI == ItemTiers.TIER2 && iItemType.WhatItemTierAmI == ItemTiers.TIER2)
        {
            Recipe tRecipeToMake = RecipeHolder.Instance.ReturnRecipeFromItem(itemOne, iItemType);
            if (tRecipeToMake != null)
            {
                _isSomeoneInteracting = true;
                CreateRecipe(tRecipeToMake);
                iPlayerInfo.RemoveItem();
                Destroy(itemOne.gameObject);
                Destroy(iItemType.gameObject);
                ClearAnvilItem();
                ItemBase tItemBase = CollectHandout().GetComponentInChildren <ItemBase>();
#if UNITY_EDITOR
                Debug.Log(tItemBase);
#endif
                iPlayerInfo.PickItemUp(tItemBase);
            }
        }
    }
 void Start()
 {
     _animator       = GetComponent <Animator>();
     _movement       = GetComponent <CharacterMovement>();
     _itemController = GetComponentInChildren <CharacterItemController>();
     _xboxController = XboxControllerManager.Instance;
 }
Beispiel #3
0
 public void Interact(CharacterItemController iCharacterController)
 {
     if (!iCharacterController.amIHoldingAnItem)
     {
         iCharacterController.PickItemUp(Instantiate(itemToSpawn).GetComponentInChildren <ItemBase>());
     }
 }
Beispiel #4
0
 public void Interact(CharacterItemController iItemController)
 {
     if (_itemsToBuild.CanHandInItem(iItemController.itemIAmHolding.whatItemAmI))
     {
         ParticleManager.Instance.SpawnParticle(ParticleType.OBJECT_FINISHED, iItemController.itemIAmHolding.transform.position, true);
         Destroy(iItemController.itemIAmHolding.gameObject);
         iItemController.RemoveItem();
     }
 }
Beispiel #5
0
 public override void PutItemIn(ItemBase iItemType, CharacterItemController iPlayerInfo)
 {
     base.PutItemIn(iItemType, iPlayerInfo);
     if (iItemType.whatItemAmI == requestedItem)
     {
         Destroy(iItemType.gameObject);
         iPlayerInfo.RemoveItem();
         GameObject tItem = CollectHandout();
         iPlayerInfo.PickItemUp(tItem.GetComponentInChildren <ItemBase>());
     }
 }
Beispiel #6
0
 public override void PutItemIn(ItemBase iInputItem, CharacterItemController iCharacterItemController)
 {
     if (iInputItem.whatItemAmI == requestedItem && !pIsCoroutineRunning)
     {
         StartTimeTillhandout();
         iCharacterItemController.RemoveItem();
         Destroy(iInputItem.gameObject);
     }
     else
     {
         iCharacterItemController.DropItem();
     }
 }
Beispiel #7
0
 public override void Interact(CharacterItemController iItemController)
 {
     if (_isSomeoneInteracting)
     {
         return;
     }
     base.Interact(iItemController);
     if (iItemController.amIHoldingAnItem)
     {
         PutItemIn(iItemController.itemIAmHolding, iItemController);
     }
     else if (itemOne != null)
     {
         iItemController.PickItemUp(itemOne);
         ClearAnvilItem();
     }
 }
Beispiel #8
0
 public override void Interact(CharacterItemController iItemController)
 {
     base.Interact(iItemController);
     if (iItemController.amIHoldingAnItem && _handoutReadyIcon.activeSelf)
     {
         iItemController.DropItem();
     }
     else if (!iItemController.amIHoldingAnItem && _handoutReadyIcon.activeSelf)
     {
         GameObject tObjectToHAndout = CollectHandout();
         tObjectToHAndout.GetComponentInChildren <Rigidbody>().constraints = RigidbodyConstraints.FreezeAll;
         ItemBase tItembase = tObjectToHAndout.GetComponentInChildren <ItemBase>();
         iItemController.PickItemUp(tItembase);
     }
     else if (iItemController.amIHoldingAnItem && !_handoutReadyIcon.activeSelf && !pIsCoroutineRunning)
     {
         PutItemIn(iItemController.itemIAmHolding, iItemController);
     }
     else
     {
         iItemController.DropItem();
     }
 }
Beispiel #9
0
 public virtual void Interact(CharacterItemController iItemController)
 {
 }
Beispiel #10
0
 public virtual void PutItemIn(ItemBase iItemType, CharacterItemController iPlayerInfo)
 {
 }
Beispiel #11
0
 public void Interact(CharacterItemController iItemController)
 {
     iItemController.PickItemUp(this);
 }
Beispiel #12
0
 public void Interact(CharacterItemController iItemController)
 {
     ParticleManager.Instance.SpawnParticle(ParticleType.OBJECT_VANISHED, iItemController.itemIAmHolding.transform.position, true);
     Destroy(iItemController.itemIAmHolding.gameObject);
     iItemController.RemoveItem();
 }
Beispiel #13
0
 public override void Interact(CharacterItemController iItemController)
 {
     base.Interact(iItemController);
     PutItemIn(iItemController.itemIAmHolding, iItemController);
 }