Exemple #1
0
    void add_Monster(Monster monster)
    {
        if (monstersItems == null)
        {
            monstersItems = new Dictionary <MonsterType, List <MonsterDressingItem> >();
        }
        if (!monstersItems.ContainsKey(monster.MonsterType))
        {
            monstersItems.Add(monster.MonsterType, new List <MonsterDressingItem>());
        }

        foreach (DressingCategoriesTO cat in DressingController.Instance.Dressing.Values)
        {
            MonsterAccessoryTO monsterItem = UsersController.Instance.userData().getMonsterAccessory(monster, cat.id);
            if (monsterItem != null)
            {
                Transform parent = Categories[cat.id - 1].transform;

                Vector3 v = parent.localPosition;
                v.z = cat.zOrder;
                parent.localPosition = v;

                addItem(parent, monster.MonsterType, monsterItem, cat);
            }
        }
    }
    void init()
    {
        int itemId = 0;

        MonsterAccessoryTO activeItem = UsersController.Instance.userData().getMonsterAccessory(UIMiniGame.Instance.CurrentMonster.MonsterType, _categoryId);

        if (DressingController.Instance != null && DressingController.Instance.Dressing.ContainsKey(_categoryId))
        {
            foreach (DressingItemTO item in DressingController.Instance.Dressing[_categoryId].items)
            {
                if (items[itemId] != null)
                {
                    items[itemId].init(onSelectItem, item, activeItem, defaultOutlineFile);
                }
                itemId++;
            }
        }

        while (items.Length > itemId && items[itemId] != null)
        {
            items[itemId].gameObject.SetActive(false);

            itemId++;
        }
        //if (targetPosition != inPosition) {
        //transform.localPosition = outPosition;
        //Invoke("open", 0.1f);
        //}
    }
 void updateActiveItem(MonsterAccessoryTO activeItem)
 {
     foreach (UIDressingItem item in items)
     {
         item.updateActiveIcon(activeItem);
     }
 }
Exemple #4
0
    //public Vector2 pos;
    //public Vector2 rot;


    public static MonsterAccessoryTO create(DressingItemTO item)
    {
        MonsterAccessoryTO i = new MonsterAccessoryTO();

        i.id = item.id;
        //i.pos = Vector2.zero;
        //i.rot = Vector2.zero;
        return(i);
    }
Exemple #5
0
    public void updateMonsterItem(Monster monster)
    {
        MonsterDressingItem[] items = monstersItems[monster.MonsterType].ToArray();

        monstersItems[monster.MonsterType].Clear();

        foreach (DressingCategoriesTO cat in DressingController.Instance.Dressing.Values)
        {
            bool isTreated = false;
            MonsterAccessoryTO monsterItem = UsersController.Instance.userData().getMonsterAccessory(monster, cat.id);

            foreach (MonsterDressingItem item in items)
            {
                if (item.cat.id == cat.id)
                {
                    isTreated = true;
                    if (monsterItem == null)
                    {
                        item.gameObject.GetComponent <GOInOut>().PopOut();
                    }
                    else if (monsterItem.id == item.item.id)
                    {
                        monstersItems[monster.MonsterType].Add(item);
                    }
                    else
                    {
                        item.gameObject.GetComponent <GOInOut>().PopOut();

                        Transform parent = Categories[cat.id - 1].transform;
                        addItem(parent, monster.MonsterType, monsterItem, cat);
                    }
                }
            }
            if (isTreated == false)
            {
                Transform parent = Categories[cat.id - 1].transform;
                addItem(parent, monster.MonsterType, monsterItem, cat);
            }
        }

        /*
         *      return;
         *
         *      foreach(MonsterDressingItem item in monstersItems [monster.MonsterType]) {
         *          item.gameObject.GetComponent<GOInOut> ().PopOut ();
         *      }
         *      monstersItems [monster.MonsterType].Clear();
         *      add_Monster(monster);
         */
    }
Exemple #6
0
    public void updateMonsterAccessory(Monster monster, int categoryId, MonsterAccessoryTO monsterItem)
    {
        UserMonsterTO um = getMonster(monster.MonsterType);

        if (um.monsterAccessories == null)
        {
            um.monsterAccessories = new MonsterAccessoryTO[5];
        }
        if (um.monsterAccessories.Length < categoryId)
        {
            Array.Resize <MonsterAccessoryTO>(ref um.monsterAccessories, 5);
        }
        um.monsterAccessories[categoryId] = monsterItem;

        MarkToSave();
    }
    public void init(Action <DressingItemTO> onClickCallback, DressingItemTO item, MonsterAccessoryTO activeItem, string defaultOutlineFile)
    {
        _item               = item;
        _onClickCallback    = onClickCallback;
        _defaultOutlineFile = defaultOutlineFile;


        clear();
        loadIcon(_icon, false);
        loadIcon(_outlineIcon, true);

        gameObject.SetActive(true);

        updateActiveIcon(activeItem);
        updateLock();
    }
    public void onSelectItem(DressingItemTO item)
    {
        MonsterAccessoryTO activeItem    = null;
        MonsterAccessoryTO newActiveItem = null;

        activeItem = UsersController.Instance.userData().getMonsterAccessory(UIMiniGame.Instance.CurrentMonster.MonsterType, _categoryId);

        newActiveItem = (activeItem != null && activeItem.id.Equals(item.id)) ? null : MonsterAccessoryTO.create(item);

        if (UIMiniGame.Instance.CurrentMonster != null)
        {
            UsersController.Instance.userData().updateMonsterAccessory(
                UIMiniGame.Instance.CurrentMonster,
                _categoryId,
                newActiveItem
                );
        }
        MonsterBar.Instance.DressingBar.updateMonsterItem(UIMiniGame.Instance.CurrentMonster);
        updateActiveItem(newActiveItem);
    }
    public void updateActiveIcon(MonsterAccessoryTO activeItem)
    {
        if (_item == null)
        {
            return;
        }

        if (activeItem == null)
        {
            if (_outlineIcon != null)
            {
                _outlineIcon.enabled = false;
            }
        }
        else
        {
            if (_outlineIcon != null)
            {
                _outlineIcon.enabled = activeItem.id.Equals(_item.id);
            }
        }
    }
Exemple #10
0
    void addItem(Transform parent, MonsterType monsterType, MonsterAccessoryTO monsterItem, DressingCategoriesTO cat)
    {
        var copy = Resources.Load <GameObject>("Gameplay/Dressing/Items/" + monsterItem.id.ToString());

        if (copy != null)
        {
            GameObject go = GameObject.Instantiate(copy);

            if (go != null)
            {
                go.transform.SetParent(parent, false);

                Vector3 v = go.transform.localPosition + monsterPos[monsterType];
                v.z = cat.zOrder;
                go.transform.localPosition = v;

                MonsterDressingItem mdi = go.AddComponent <MonsterDressingItem>();
                mdi.item = monsterItem;
                mdi.cat  = cat;

                monstersItems[monsterType].Add(mdi);
            }
        }
    }
    public void onMonsterChange()
    {
        MonsterAccessoryTO activeItem = UsersController.Instance.userData().getMonsterAccessory(UIMiniGame.Instance.CurrentMonster.MonsterType, _categoryId);

        updateActiveItem(activeItem);
    }