Esempio n. 1
0
        GameObject CreatBuffer(SMsgActionWorldObjectAddBuff_SC sMsgActionWorldObjectAddBuff_SC)
        {
            string   IconName      = BattleConfigManager.Instance.BuffConfigList[sMsgActionWorldObjectAddBuff_SC.dwBuffId]._iconID;
            UISprite CreatUISprite = CreatObjectToNGUI.InstantiateObj(BufferSprit.gameObject, transform).GetComponent <UISprite>();

            CreatUISprite.enabled    = true;
            CreatUISprite.spriteName = IconName;
            return(CreatUISprite.gameObject);
        }
Esempio n. 2
0
    //void FireBuff(SMsgActionWorldObjectAddBuff_SC evt)
    //{

    //    //Transform target = PlayerManager.Instance.FindPlayer(evt.SMsgActionSCHead.uidEntity).transform;

    //    if (m_buffEffectList.ContainsKey(evt.dwIndex))
    //    {
    //        ReleaseBuff(evt.dwIndex);
    //    }

    //    if (!m_handled)
    //    {
    //        m_handled = true;
    //        LaunchBuff(evt);
    //    }
    //}

    public void LaunchBuff(SMsgActionWorldObjectAddBuff_SC evt)
    {
        TypeID      entityType;
        EntityModel entityTarget = EntityController.Instance.GetEntityModel(evt.SMsgActionSCHead.uidEntity, out entityType);

        if (entityTarget == null || entityTarget.GO == null)
        {
            return;
        }

        GameObject effectPrefab = BattleConfigManager.Instance.BuffConfigList[evt.dwBuffId]._buffEffectPrefab;

        if (null != effectPrefab)
        {
            Transform buffTarget = null;

            if (BattleConfigManager.Instance.BuffConfigList[evt.dwBuffId]._buffEffMount != "0")
            {
                entityTarget.GO.transform.RecursiveFindObject(BattleConfigManager.Instance.BuffConfigList[evt.dwBuffId]._buffEffMount, out buffTarget);
                if (buffTarget == null)
                {
                    TraceUtil.Log(SystemModel.Common, TraceLevel.Error, "[buffTarget == null]");
                    buffTarget = entityTarget.GO.transform;
                }
            }
            else
            {
                buffTarget = entityTarget.GO.transform;
            }

            //add by lee : add sound
            if (BattleConfigManager.Instance.BuffConfigList[evt.dwBuffId]._buffSound != "0")
            {
                SoundManager.Instance.PlaySoundEffect(BattleConfigManager.Instance.BuffConfigList[evt.dwBuffId]._buffSound);
            }

            GameObject effectObj = GameObjectPool.Instance.AcquireLocal(effectPrefab, buffTarget.position, buffTarget.rotation);
            effectObj.transform.parent = buffTarget;
            effectObj.GetComponent <BuffEffectController>().Emit();
            BuffEffectBase buffEffect = new BuffEffectBase();
            buffEffect._effect = effectObj;
            buffEffect._buffID = evt.dwBuffId;

            BuffKey key = new BuffKey();
            key.UID   = evt.SMsgActionSCHead.uidEntity;
            key.Index = evt.dwIndex;
            m_buffEffectList.Add(key, buffEffect);
        }

        //PlaySoundEffect(evt.Param);
    }
Esempio n. 3
0
 public BufferUIInfo(SMsgActionWorldObjectAddBuff_SC Info, UISprite uiSprite)
 {
     this.BufferInfo = Info;
     this.SpriteInfo = uiSprite;
 }