// 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;
    }
Exemple #3
0
 public bool AddItem(SpecialItemInfo info)
 {
     foreach (SpecialItemInfo currentItem in _items)
     {
         if (currentItem.Name.Equals(info.Name))
         {
             return(false);
         }
     }
     _items.Add(info);
     RefreshItemNames();
     return(true);
 }
Exemple #4
0
 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();
 }
Exemple #5
0
    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);
                }
            }
        }
    }