// Use this for initialization void Start() { SpriteRenderer renderer = GetComponent <SpriteRenderer> (); if (renderer == null) { return; } string foregroundName = CurrentStation.GetCurrentStationInfo().Foreground; renderer.sprite = Resources.Load <Sprite> (foregroundName) as Sprite; List <string> itemNames = CurrentStation.GetCurrentStationInfo().SpecialItems; foreach (string itemName in itemNames) { SpecialItemInfo itemInfo = new SpecialItemInfo(itemName); if (Randomizer.GetPercentageBasedBoolean(itemInfo.Probability)) { GameObject prefab = _itemPrefabs.Find(gameObject => { return(gameObject.name == itemName); }); if (prefab != null) { GameObject instantiated = (GameObject)Instantiate(prefab, transform); float x = Random.Range(transform.position.x - (renderer.bounds.size.x * 0.5f), transform.position.x + (renderer.bounds.size.x * 0.5f)); float y = Random.Range(transform.position.y - (renderer.bounds.size.y * 0.5f), transform.position.y + (renderer.bounds.size.y * 0.5f)); Vector3 position = new Vector3(x, y, -1); instantiated.transform.position = position; instantiated.GetComponent <SpawnedSpecialItem> ().SetInventoryScroller(_scroller); instantiated.GetComponent <SpawnedSpecialItem> ().SpecialItem = itemInfo; } } } }
private void addFromItemInfo(SpecialItemInfo info, float offset) { GameObject newImageObject = Instantiate(imageSpawn); Image img = newImageObject.GetComponent <Image> (); Sprite loadedSprite = Resources.Load <Sprite> (SpecialItemInfo.ItemBgPrefix + info.Name) as Sprite; img.sprite = loadedSprite; newImageObject.GetComponent <Image> ().transform.SetParent(GetComponent <ScrollRect> ().content, false); newImageObject.GetComponent <RectTransform> ().transform.localPosition = new Vector2(offset + 50, -50); newImageObject.GetComponent <InventoryDraggableImage> ().SpecialItem = info; }
public bool AddItem(SpecialItemInfo info) { foreach (SpecialItemInfo currentItem in _items) { if (currentItem.Name.Equals(info.Name)) { return(false); } } _items.Add(info); RefreshItemNames(); return(true); }
public void RemoveItem(string name) { for (int i = 0; i < _items.Count; i++) { SpecialItemInfo info = _items [i]; if (info.Name == name) { _items.RemoveAt(i); break; } } RefreshItemNames(); }
private void InitItems() { _items = new List <SpecialItemInfo> (); string namesString = PlayerPrefs.GetString(KeyName, string.Empty); if (namesString != string.Empty) { string[] names = PlayerPrefs.GetString(KeyName).Split(','); foreach (string name in names) { if (name != string.Empty) { SpecialItemInfo info = new SpecialItemInfo(name); _items.Add(info); } } } }