Esempio n. 1
0
 public void SendFightEffectCS(SMsgFightEffect_CS sMsgFightEffect_CS)
 {
     this.Request(sMsgFightEffect_CS.GeneratePackage());
 }
Esempio n. 2
0
    private void DoSendFightEffect()
    {
        if (fightEffectTargetIdList.Count == 0)
        {
            return;
        }


        if (BulletData.m_breakType == 2)       //死亡子弹
        {
            if (m_ownerCampType != CampType.CAMP_MONSTER)
            {
                return;
            }
            SMsgDeadBulletFightEffect_CS sMsgDeadBulletFightEffect_CS = new SMsgDeadBulletFightEffect_CS();
            sMsgDeadBulletFightEffect_CS.BulletTemplateID = (uint)BulletData.m_bulletId;
            sMsgDeadBulletFightEffect_CS.BulletPosX       = m_thisTransfrom.position.x * 10.0f;
            sMsgDeadBulletFightEffect_CS.BulletPosY       = m_thisTransfrom.position.z * -10.0f;
            sMsgDeadBulletFightEffect_CS.DamageID         = (uint)m_impactData.m_id;
            sMsgDeadBulletFightEffect_CS.SkillId          = (uint)m_skillId;
            sMsgDeadBulletFightEffect_CS.byBeFightedNum   = Convert.ToByte(fightEffectTargetIdList.Count);
            sMsgDeadBulletFightEffect_CS.bySrcLive        = 0;     //死亡


            sMsgDeadBulletFightEffect_CS.byPropNum = m_FightSavePropStruct.byPropNum;
            sMsgDeadBulletFightEffect_CS.dwProp    = m_FightSavePropStruct.nProp;

            /*
             * var model = MonsterManager.Instance.GetEntityMode(FormEntityID);
             * SMsgPropCreateEntity_SC_Monster monsterProp = (SMsgPropCreateEntity_SC_Monster)model.EntityDataStruct;
             * if(m_impactData.m_damage_type == 1)//普通结算
             * {
             *      sMsgDeadBulletFightEffect_CS.byPropNum = 6;
             *      sMsgDeadBulletFightEffect_CS.dwProp = new int[6];
             *
             *      sMsgDeadBulletFightEffect_CS.dwProp[0] = monsterProp.MonsterInvisibleValue.UNIT_FIELD_ATTACK;
             *      sMsgDeadBulletFightEffect_CS.dwProp[1] = monsterProp.MonsterInvisibleValue.UNIT_FIELD_NICETY;
             *      sMsgDeadBulletFightEffect_CS.dwProp[2] = monsterProp.MonsterInvisibleValue.UNIT_FIELD_BURST;
             *      sMsgDeadBulletFightEffect_CS.dwProp[3] = monsterProp.MonsterUnitValues.UNIT_FIELD_FIGHT_HOSTILITY;
             *      sMsgDeadBulletFightEffect_CS.dwProp[4] = monsterProp.MonsterUnitValues.UNIT_FIELD_LEVEL;
             *      sMsgDeadBulletFightEffect_CS.dwProp[5] = monsterProp.MonsterInvisibleValue.UINT_FIELD_DEFBREAK;
             * }
             * else if(m_impactData.m_damage_type == 2)
             * {
             *      sMsgDeadBulletFightEffect_CS.byPropNum = (byte)m_impactData.m_affect_prop.Length;
             *      sMsgDeadBulletFightEffect_CS.dwProp = new int[sMsgDeadBulletFightEffect_CS.byPropNum];
             *
             *      for(int i=0;i<sMsgDeadBulletFightEffect_CS.byPropNum;i++)
             *      {
             *              if(m_impactData.m_affect_src[i] == 1)
             *              {
             *                      int propIndex = CommonDefineManager.Instance.GetPropKey(m_impactData.m_affect_prop[i]);
             *                      if(propIndex == -1)
             *                      {
             *                              Debug.LogError("Propkey.xml is not exit "+m_impactData.m_affect_prop[i]);
             *                              return;
             *                      }
             *                      sMsgDeadBulletFightEffect_CS.dwProp[i] = monsterProp.GetValue(propIndex);
             *              }
             *              else
             *              {
             *                      sMsgDeadBulletFightEffect_CS.dwProp[i] = 0;
             *              }
             *      }
             * }
             */

            sMsgDeadBulletFightEffect_CS.uidBeFightedList = fightEffectTargetIdList;
            sMsgDeadBulletFightEffect_CS.uidFighter       = FormEntityID;

            NetServiceManager.Instance.BattleService.SendDeadBulletFightEffectCS(sMsgDeadBulletFightEffect_CS);
        }
        else
        {
            SMsgFightEffect_CS sMsgFightEffect_CS = new SMsgFightEffect_CS();
            sMsgFightEffect_CS.BulletTemplateID = (uint)BulletData.m_bulletId;
            sMsgFightEffect_CS.BulletPosX       = m_thisTransfrom.position.x * 10.0f;
            sMsgFightEffect_CS.BulletPosY       = m_thisTransfrom.position.z * -10.0f;
            sMsgFightEffect_CS.DamageID         = (uint)m_impactData.m_id;
            sMsgFightEffect_CS.SkillId          = (uint)m_skillId;
            sMsgFightEffect_CS.byBeFightedNum   = Convert.ToByte(fightEffectTargetIdList.Count);
            sMsgFightEffect_CS.bySrcLive        = 1;
            sMsgFightEffect_CS.uidBeFightedList = fightEffectTargetIdList;
            sMsgFightEffect_CS.uidFighter       = FormEntityID;
            NetServiceManager.Instance.BattleService.SendFightEffectCS(sMsgFightEffect_CS);
        }
    }