}//StoreObject public virtual void TakeObject(PickupObject obj) { if (!Top.GAME.playerCharacter.IsHoldingObject()) { obj.transform.localScale = new Vector3(1f, 1f, 1f); objectsStored.Remove(obj); Top.GAME.playerCharacter.SetHeldObject(obj); } else { Top.GAME.SetMessageText("You can't take an object while you're holding one!", Color.red); Top.GAME.PlayGlobalSound(Top.GAME.GetRandomSound("robotError")); } }//TakeObject
}//Start public void UpdateObject(PickupObject pickup) { transform.localScale = new Vector3(1f,1f); if (pickup.GetComponentInChildren<SpriteRenderer>()) { text.text = pickup.GetComponent<ObjectTooltipInfo>().objectName; if (pickup.holdingSprite != null) { image.sprite = pickup.holdingSprite; } else { image.sprite = pickup.GetComponentInChildren<SpriteRenderer>().sprite; } } }//UpdateObject
}//RestockObjects public virtual void StoreObject(PickupObject obj) { if (objectsStored == null) { objectsStored = new List<PickupObject>(); } if (objectsStored.Count < maxObjectsStored) { obj.transform.SetParent(transform); objectsStored.Add(obj); HideStoredObjects(); } else { Top.GAME.SetMessageText("The box is too full! Take some items out!", Color.red); Top.GAME.PlayGlobalSound(Top.GAME.GetRandomSound("robotError")); } }//StoreObject
}//SetHeldObject public void DropHeldObject(bool dispose = false) { pickup.DropObject(transform.position, dispose); PlaySound(Top.GAME.GetRandomSound("robotDrop")); pickup = null; }//DropHeldObject
}//SetInteractionTarget public void SetHeldObject(PickupObject _pickup) { Top.GAME.SetPickup(_pickup); _pickup.TakeObject(transform); pickup = _pickup; FindObjectOfType<ObjectUIController>().UnsetObject(); }//SetHeldObject
}//OnSecondButton protected virtual void OnStorageButton(int i = 0) { if (i < objectsStored.Count) { pickedObject = objectsStored[i]; } else { pickedObject = null; } }//OnStorageButton
}//ResumeAllAudio public void SetPickup(PickupObject pickup) { pickupUI.UpdateObject(pickup); }//SetPickup