void SpawnItem(Vector3 pos, bool chance = false, float chancenum = 2f, Item.ITEM_TYPE itype = Item.ITEM_TYPE.QUESTION, Item.EFFECT_TYPE etype = Item.EFFECT_TYPE.E_EXPLOSION) { if (chance) { float val = Random.Range(-5f, 5f); if (val > chancenum) { return; } } GameObject itemPrefab = Resources.Load("Prefabs/Item") as GameObject; GameObject obj = (GameObject)Instantiate(itemPrefab, pos, Quaternion.identity); Item item = obj.GetComponent <Item>(); item.itemType = itype; item.effectType = etype; Sprite _sprite; switch (item.itemType) { case Item.ITEM_TYPE.SKILL: //{ // if (item.effectType == Item.EFFECT_TYPE.E_EXPLOSION) // item.GetComponent<SpriteRenderer>().sprite = TileRefManager.instance.GetTileRef(TileRefManager.TILE_TYPE.TILE_PICKUP1).sprite; // else // item.GetComponent<SpriteRenderer>().sprite = TileRefManager.instance.GetTileRef(TileRefManager.TILE_TYPE.TILE_PICKUP2).sprite; // Vector3 sizing = item.transform.localScale; // item.transform.localScale = new Vector3(sizing.x * 10, sizing.y * 10, sizing.z * 10); //} _sprite = Resources.Load <Sprite>("Sprites/QuestionIcon"); item.GetComponent <SpriteRenderer>().sprite = _sprite; if (item.effectType == Item.EFFECT_TYPE.E_HEALTH) { item.GetComponent <SpriteRenderer>().material.color = new Color(0, 0.2f, 0); } break; case Item.ITEM_TYPE.QUESTION: _sprite = Resources.Load <Sprite>("Sprites/QuestionIcon"); item.GetComponent <SpriteRenderer>().sprite = _sprite; break; case Item.ITEM_TYPE.KEY: _sprite = Resources.Load <Sprite>("Sprites/Key"); item.GetComponent <SpriteRenderer>().sprite = _sprite; break; } }
private void BuyItem(GameObject item) { Item buyingItem = item.GetComponentInChildren <Item>(); Item.ITEM_TYPE itemType = buyingItem.type; if (player.collectables >= buyingItem.cost) { switch (itemType) { case Item.ITEM_TYPE.GREEN_KEY: player.hasGreenKey = true; break; } player.collectables -= buyingItem.cost; } }
private void OnTriggerStay(Collider other) { string tag = other.tag; switch (tag) { case "AlienBlood": this.currentSpeed = moveSpeed * 0.5f; this.vitality.TakeDamage(bloodDamage * Time.deltaTime, this.trans.position); break; case "Item": Item item = other.GetComponent <Item> (); Item.ITEM_TYPE itemType = item.Pickup(); if (itemType.Equals(Item.ITEM_TYPE.WEAPON)) { this.SelectWeapon(item.data); } break; } }