Exemplo n.º 1
0
 public void AddEquipmentGradeEffect(EnumEquipSlot slot, GameObject node)
 {
     if (_upgradeNodeMapping[(int)slot] != null)
     {
         Destroy(_upgradeNodeMapping[(int)slot]);
         _upgradeNodeMapping[(int)slot] = null;
     }
     _upgradeNodeMapping[(int)slot] = node;
 }
Exemplo n.º 2
0
    public void SwitchWeaponTo(EnumEquipSlot slot, FC_EQUIPMENTS_TYPE weaponTypeFlag)
    {
        //bool ret = false;
        Transform transSlot = null;

        if (slot != EnumEquipSlot.MAX)
        {
            transSlot = _owner._avatarController.GetSlotNode(slot);
        }
        SwitchWeaponTo(transSlot, weaponTypeFlag);
    }
Exemplo n.º 3
0
 public Transform ACGetTransformByName(EnumEquipSlot pName)
 {
     if (_firePoints != null)
     {
         return(_firePoints[(int)pName]);
     }
     else
     {
         return(ThisTransform);
     }
 }
Exemplo n.º 4
0
 /// <summary>
 /// Add the game object to equipment node list
 /// </summary>
 public void AddEquipmentNode(EnumEquipSlot slot, GameObject node, bool replaceOther)
 {
     if (replaceOther)
     {
         _nonReplacedEquipments.Add(node);
         return;
     }
     if (_equipmentMapping[(int)slot] != null)
     {
         Destroy(_equipmentMapping[(int)slot]);
         _equipmentMapping[(int)slot] = null;
     }
     _equipmentMapping[(int)slot] = node;
     // for slot on weapons, find child node.
     if (slot == EnumEquipSlot.damage_main_A)
     {
         Transform transSlot = Utils.FindTransformByNodeName(node.transform, FCEquipmentsBase.GetNodeByEquipSlot(slot));
         if (transSlot != null)
         {
             _equipmentMapping[(int)slot] = transSlot.gameObject;
         }
     }
 }
Exemplo n.º 5
0
 public static string GetNodeByEquipSlot(EnumEquipSlot slot)
 {
     return(nodeNames[(int)slot]);
 }
Exemplo n.º 6
0
 virtual public void OnAssembled(EnumEquipSlot slot, GameObject go, FC_EQUIPMENTS_TYPE equipmentType)
 {
 }
Exemplo n.º 7
0
    public override void OnAssembled(EnumEquipSlot slot, GameObject go, FC_EQUIPMENTS_TYPE equipmentType)
    {
        //_bladeInfosIdx = 0;
        if (_bladeInfos != null && _bladeInfosIdx >= _bladeInfos.Length)
        {
            _bladeInfosIdx = 0;
        }
        Transform []           transforms = go.GetComponentsInChildren <Transform>();
        List <GameObject>      gl         = new List <GameObject>();
        List <MessageReciever> ml         = new List <MessageReciever>();
        List <BladeSlide>      bl         = new List <BladeSlide>();

        _bladeInfos[_bladeInfosIdx] = new BladeInfo();

        _bladeInfos[_bladeInfosIdx]._bladeType         = equipmentType;
        _bladeInfos[_bladeInfosIdx]._bladeTransform    = go.transform;
        _bladeInfos[_bladeInfosIdx]._originalTransform = go.transform.parent;
        _bladeInfos[_bladeInfosIdx]._currentTransform  = go.transform.parent;

        foreach (Transform t in transforms)
        {
            GameObject subgo = t.gameObject;
            Collider   c     = subgo.GetComponent <Collider>();
            if (c != null)
            {
                gl.Add(subgo);
            }

            MessageReciever mr = subgo.GetComponent <MessageReciever>();
            if (mr != null)
            {
                ml.Add(mr);
            }
            BladeSlide blade = subgo.GetComponent <BladeSlide>();
            if (blade != null)
            {
                bl.Add(blade);
            }
        }

        _bladeInfos[_bladeInfosIdx]._colliders        = gl.ToArray();
        _bladeInfos[_bladeInfosIdx]._messageReceivers = ml.ToArray();
        _bladeInfos[_bladeInfosIdx]._bladerCenter     = new Vector3[_bladeInfos[_bladeInfosIdx]._colliders.Length];
        _bladeInfos[_bladeInfosIdx]._bladerSize       = new Vector3[_bladeInfos[_bladeInfosIdx]._colliders.Length];
        _bladeInfos[_bladeInfosIdx]._bladeReal        = new BoxCollider[_bladeInfos[_bladeInfosIdx]._colliders.Length];
        _bladeInfos [_bladeInfosIdx].cubes            = new GameObject[_bladeInfos [_bladeInfosIdx]._colliders.Length];

        if (_bladeInfos[_bladeInfosIdx]._colliders.Length != 0)
        {
            for (int i = 0; i < _bladeInfos[_bladeInfosIdx]._colliders.Length; i++)
            {
                _bladeInfos[_bladeInfosIdx]._bladeReal[i]             = _bladeInfos[_bladeInfosIdx]._colliders[i].collider as BoxCollider;
                _bladeInfos[_bladeInfosIdx]._bladerCenter[i]          = _bladeInfos[_bladeInfosIdx]._bladeReal[i].center;
                _bladeInfos[_bladeInfosIdx]._bladerSize[i]            = _bladeInfos[_bladeInfosIdx]._bladeReal[i].size;
                _bladeInfos[_bladeInfosIdx].cubes[i]                  = GameObject.CreatePrimitive(PrimitiveType.Cube);
                _bladeInfos[_bladeInfosIdx].cubes[i].transform.parent = go.transform;
                _bladeInfos[_bladeInfosIdx].cubes[i].transform.gameObject.SetActive(false);
            }
        }

        _bladeInfos[_bladeInfosIdx]._bladeSlide = bl.ToArray();
        _bladeInfosIdx++;
    }
Exemplo n.º 8
0
 public Transform GetSlotNode(EnumEquipSlot slot)
 {
     return(_nodesMapping[(int)slot]);
 }