Example #1
0
    /// <summary>
    /// 获取其他玩家的信息
    /// </summary>
    /// <param name="id"></param>
    private void GetShipData(ulong id)
    {
        //Debug.LogError("收到玩家信息"+id);
        ShipItemsProxy shipItemsProxy = GameFacade.Instance.RetrieveProxy(ProxyName.ShipItemsProxy) as ShipItemsProxy;
        // 飞船的
        IShip ship = shipItemsProxy.GetCurrentWarShip(id);

        if (ship != null)
        {
            FriendInfoVO vO = m_FriendProxy.GetFriend(id);
            if (vO != null)
            {
                MsgPlayerInfo msgPlayerInfo = new MsgPlayerInfo();
                msgPlayerInfo.Name = vO.Name;
                msgPlayerInfo.Tid  = vO.TID;
                msgPlayerInfo.UID  = vO.UID;
                msgPlayerInfo.Ship = ship;
                m_LeftSelectIndex  = (int)m_SocialSubClass;

                //OwnerView.OpenChildPanel(UIPanel.EscWatchPanel, msgPlayerInfo);
            }
        }
        else
        {
            Debug.Log("船的信息为空");
        }
    }
Example #2
0
    /// <summary>
    /// 获取其他玩家的信息
    /// </summary>
    /// <param name="id"></param>
    private void GetShipData(ulong id)
    {
        //Debug.LogError("收到玩家信息"+id);
        ShipItemsProxy shipItemsProxy = GameFacade.Instance.RetrieveProxy(ProxyName.ShipItemsProxy) as ShipItemsProxy;
        // 飞船的
        IShip ship = shipItemsProxy.GetCurrentWarShip(id);

        if (ship != null)
        {
            IWeaponContainer weaponContainer = ship.GetWeaponContainer();
            if (weaponContainer != null)
            {
                IWeapon[] weapons = weaponContainer.GetWeapons();
                //Debug.LogError("weapons==="+weapons.Length);
                if (weapons != null)
                {
                    for (int i = 0; i < weapons.Length; i++)
                    {
                        IWeapon weapon = weapons[i];
                        m_Weapons[i].text = TableUtil.GetItemName((int)weapon.GetBaseConfig().Id);
                    }
                }
            }

            IEquipmentContainer equipmentContainer = ship.GetEquipmentContainer();
            if (equipmentContainer != null)
            {
                IEquipment[] equipments = ship.GetEquipmentContainer().GetEquipments();
                for (int i = 0; i < equipments.Length; i++)
                {
                    IEquipment equipment = equipments[i];
                    m_EquipMents[i].text = TableUtil.GetItemName((int)equipment.GetBaseConfig().Id);
                }
            }
            IReformer ireformer = ship.GetReformerContainer().GetReformer();
            if (ireformer != null)
            {
                m_Converter.text = TableUtil.GetItemName((int)ireformer.GetBaseConfig().Id);
            }
        }
        else
        {
            Debug.LogError("船的信息为空");
        }
    }
        /// <summary>
        /// 是否是武器技能
        /// </summary>
        /// <returns></returns>
        private bool IsWeapon(int skllId)
        {
            ShipItemsProxy shipItemsProxy = GameFacade.Instance.RetrieveProxy(ProxyName.ShipItemsProxy) as ShipItemsProxy;
            IShip          ship           = shipItemsProxy.GetCurrentWarShip(m_ISpacecraftSkillProperty.EntityId());

            if (ship != null)
            {
                IWeapon[] weapons = ship.GetWeaponContainer().GetWeapons();
                for (int i = 0; i < weapons.Length; i++)
                {
                    if (weapons[i].GetBaseConfig().SkillId == (ulong)skllId)
                    {
                        return(true);
                    }
                }
            }
            return(false);
        }
        /// <summary>
        /// 获取武器射速by SkillID
        /// </summary>
        /// <param name="skllId"></param>
        /// <returns></returns>
        private float GetWeaponFireInterval(int skllId)
        {
            if (m_ISpacecraftSkillProperty.GetHeroType() == KHeroType.htPlayer)
            {
                ShipItemsProxy shipItemsProxy = GameFacade.Instance.RetrieveProxy(ProxyName.ShipItemsProxy) as ShipItemsProxy;
                IShip          ship           = shipItemsProxy.GetCurrentWarShip(m_ISpacecraftSkillProperty.EntityId());
                if (ship != null)
                {
                    IWeapon[] weapons = ship.GetWeaponContainer().GetWeapons();
                    for (int i = 0; i < weapons.Length; i++)
                    {
                        if (weapons[i].GetBaseConfig().SkillId == (ulong)skllId)
                        {
                            return(WeaponAndCrossSightFactory.CalculateFireInterval((SpacecraftEntity)m_ISpacecraftSkillProperty.GetOwner(),
                                                                                    weapons[i].GetConfig().TypeDateSheetld,
                                                                                    weapons[i].GetUID(),
                                                                                    (WeaponAndCrossSight.WeaponAndCrossSightTypes)weapons[i].GetConfig().Reticle));
                        }
                    }
                }
            }

            return(1.0f);
        }