コード例 #1
0
    public override void Init()
    {
        _player  = FindObjectOfType <Player>();
        _showGun = FindObjectOfType <ShowGun>();
        _showGun.Init();
        _gunInventoryBar = Helper.Find <RectTransform>(transform, "Bar");

        _damageGem = Helper.Find <GemSlot>(transform, GemPath + Damage);
        _powerGem  = Helper.Find <GemSlot>(transform, GemPath + Power);
        _speedGem  = Helper.Find <GemSlot>(transform, GemPath + Speed);

        _damageGem.Init(GemSlot.GemSlotType.Damage);
        _powerGem.Init(GemSlot.GemSlotType.Power);
        _speedGem.Init(GemSlot.GemSlotType.Speed);

        _damageSlotParent = Helper.Find <Transform>(transform, SlotPath + Damage);
        _powerSlotParent  = Helper.Find <Transform>(transform, SlotPath + Power);
        _speedSlotParent  = Helper.Find <Transform>(transform, SlotPath + Speed);

        _damageSockets = new GemSlot[5];
        _powerSockets  = new GemSlot[5];
        _speedSockets  = new GemSlot[5];

        _damageSockets = _damageSlotParent.GetComponentsInChildren <GemSlot>();
        _powerSockets  = _powerSlotParent.GetComponentsInChildren <GemSlot>();
        _speedSockets  = _speedSlotParent.GetComponentsInChildren <GemSlot>();

        for (int i = 0; i < _damageSockets.Length; i++)
        {
            _damageSockets[i].Init(GemSlot.GemSlotType.Damage, true);
            _powerSockets[i].Init(GemSlot.GemSlotType.Power, true);
            _speedSockets[i].Init(GemSlot.GemSlotType.Speed, true);
        }

        _buttons = GetComponentInChildren <Button>();
        _buttons.onClick.AddListener(() => { CloseUpdate(); });

        _originPos = _gunInventoryBar.transform.position;
        _gunInventoryBar.gameObject.SetActive(false);
    }