Ejemplo n.º 1
0
        /// <summary>
        /// 改变主角武器
        /// </summary>
        /// <param name="weaponName"></param>
        public IEnumerator ChangeDefulsWeapon()
        {
            /*
             * yield return null;
             * byte Vocation = (byte)PlayerManager.Instance.FindHeroDataModel().PlayerValues.PlayerCommonValue.PLAYER_FIELD_VISIBLE_VOCATION;
             * //string[] ItemWeaponPosition = playerGenerateConfigData.Item_WeaponPosition;
             * //string[] weaponPosition = playerGenerateConfigData.WeaponPosition;
             * var weaponObj = PlayerFactory.Instance.GetDefulWeaponPrefab(Vocation);
             * //RoleGenerate.AttachWeapon(this.m_hero, ItemWeaponPosition, weaponObj);
             * //RoleGenerate.AttachWeapon(PlayerManager.Instance.FindHero(), weaponPosition, weaponObj);
             * RoleGenerate.ChangeWeapon(this.m_hero, weaponObj);
             * RoleGenerate.ChangeWeapon(PlayerManager.Instance.FindHero(), weaponObj);
             * SetCildLayer(m_hero.transform, 25);
             * PlayerChangeWaeponAnim();
             * TraceUtil.Log("改变武器" + weaponObj);
             */
            yield return(null);

            byte Vocation  = (byte)PlayerManager.Instance.FindHeroDataModel().PlayerValues.PlayerCommonValue.PLAYER_FIELD_VISIBLE_VOCATION;
            var  weaponObj = PlayerFactory.Instance.GetDefulWeaponPrefab(Vocation);

            string[] weaponPosition = playerGenerateConfigData.Item_WeaponPosition;
            RoleGenerate.AttachWeapon(this.m_hero, weaponPosition, weaponObj, null);
            RoleGenerate.ChangeWeapon(PlayerManager.Instance.FindHero(), weaponObj, null);
            SetCildLayer(m_hero.transform, 25);
            PlayerChangeWaeponAnim();
            //TraceUtil.Log("改变武器" + weaponObj + " 职业:" + Vocation);
        }
Ejemplo n.º 2
0
        void AssemblyPlayer(NewCharacterConfigData configData)
        {
            //特效
            if (configData.EffectPrefab != null)
            {
                //this.m_effect = GameObjectPool.Instance.AcquireLocal(configData.EffectPrefab, Vector3.zero, Quaternion.identity);
            }
            else
            {
                //this.m_effect = GameObject.CreatePrimitive(PrimitiveType.Cube);
            }
            //英雄
            playerGenerateConfigData = LoginDataManager.Instance.GetPlayerGenerateConfigData(configData.VocationID);
            this.m_hero = RoleGenerate.GenerateRole(playerGenerateConfigData.PlayerName, playerGenerateConfigData.DefaultAvatar, true);
            this.m_hero.transform.parent        = transform;
            this.m_hero.transform.localPosition = new Vector3(0, 0, 180);
            this.m_hero.transform.localRotation = Quaternion.Euler(new Vector3(0, 180, 0));
            RoleGenerate.AttachAnimation(this.m_hero, playerGenerateConfigData.PlayerName, playerGenerateConfigData.DefaultAnim, playerGenerateConfigData.Animations);
            //GameObject weapon = GameManager.Instance.PlayerFactory.Weapons.FirstOrDefault(P => P.name == configData.WeaponName);
            GameObject weapon = configData.Weapon;

            TraceUtil.Log("weapon:" + weapon);
            this.ChangeWeapon(weapon, null);

            //this.m_effect.transform.parent = m_hero.transform;
            //this.m_effect.transform.localPosition = Vector3.zero;
            //this.m_effect.transform.localScale = Vector3.one;
        }
Ejemplo n.º 3
0
 /// <summary>
 /// 改变主角默认时装
 /// </summary>
 /// <param name="weaponName"></param>
 void ChangeDefulsFashion()
 {
     TraceUtil.Log("切换时装:默认时装");
     //yield return null;
     RoleGenerate.GenerateRole(m_hero, playerGenerateConfigData.DefaultAvatar);
     SetCildLayer(m_hero.transform, 25);
 }
Ejemplo n.º 4
0
        /// <summary>
        /// 改变主角武器
        /// </summary>
        /// <param name="weaponName"></param>
        public IEnumerator ChangeWeapon(string Weapon, GameObject WeaponEff)
        {
            /* //旧方法
             * yield return null;
             * string[] ItemWeaponPosition = playerGenerateConfigData.Item_WeaponPosition;
             * var weaponObj = PlayerFactory.Instance.GetWeaponPrefab(Weapon);
             * //RoleGenerate.AttachWeapon(this.m_hero, ItemWeaponPosition, weaponObj);
             * RoleGenerate.ChangeWeapon(this.m_hero, weaponObj);
             * //string[] weaponPosition = playerGenerateConfigData.WeaponPosition;
             * //RoleGenerate.AttachWeapon(PlayerManager.Instance.FindHero(), weaponPosition, weaponObj);
             * RoleGenerate.ChangeWeapon(PlayerManager.Instance.FindHero(),weaponObj);
             * SetCildLayer(m_hero.transform, 25);
             * PlayerChangeWaeponAnim();
             * TraceUtil.Log("改变武器" + weaponObj);
             */
            yield return(null);

            string[] ItemWeaponPosition = playerGenerateConfigData.Item_WeaponPosition;
            var      weaponObj          = PlayerFactory.Instance.GetWeaponPrefab(Weapon);

            RoleGenerate.ChangeWeapon(this.m_hero, weaponObj, WeaponEff);
            RoleGenerate.ChangeWeapon(PlayerManager.Instance.FindHero(), weaponObj, WeaponEff);
            SetCildLayer(m_hero.transform, 25);
            PlayerChangeWaeponAnim();
        }
Ejemplo n.º 5
0
    public void PlayAnimation(string[] OnceWeaponPos, string[] OnceAnimationNames, PackToFashingEff OnceEffs, string[] LoopWeaponPos, string[] LoopAnimationNames, PackToFashingEff Loopeffs)
    {
        List <AnimationClip> OnecAnimationClips = new List <AnimationClip>();

        if (OnceAnimationNames != null)
        {
            OnceAnimationNames.ApplyAllItem(c => OnecAnimationClips.Add(m_hero.animation.GetClip(c)));
        }

        List <AnimationClip> LoopAnimationClips = new List <AnimationClip>();

        LoopAnimationNames.ApplyAllItem(c => LoopAnimationClips.Add(m_hero.animation.GetClip(c)));

        StopCoroutine("PlayAnimation");
        StopCoroutine("PlayOnceAnimation");
        StopCoroutine("PlayeOnceAni");
        if (OnecAnimationClips.Count > 0)
        {
            StartCoroutine(PlayAnimation(OnceWeaponPos, OnecAnimationClips, OnceEffs, LoopWeaponPos, LoopAnimationClips[0], Loopeffs));
        }
        else
        {
            RoleGenerate.AttachWeapon(this.m_hero, LoopWeaponPos);
            PlayLoopAnimation(LoopAnimationClips[0], Loopeffs);
        }
    }
Ejemplo n.º 6
0
        void AssemblyPlayer(int VocationID)
        {
            if (this.m_hero != null)
            {
                Destroy(m_hero);
            }
            playerGenerateConfigData = PlayerDataManager.Instance.GetUIItemData((byte)VocationID);
            this.m_hero = RoleGenerate.GenerateRole(playerGenerateConfigData.PlayerName, playerGenerateConfigData.DefaultAvatar, true);
            this.m_hero.transform.parent           = CreatHeroModelTransform;
            this.m_hero.transform.localEulerAngles = Vector3.zero;
            this.m_hero.transform.localPosition    = Vector3.zero;
            RoleGenerate.AttachAnimation(this.m_hero, playerGenerateConfigData.PlayerName, playerGenerateConfigData.DefaultAnim, playerGenerateConfigData.Animations);
            string[] weaponPosition = GetWeaponPosition();
            this.m_hero.gameObject.AddComponent <RoleViewClickEvent>();
            RoleGenerate.AttachWeapon(this.m_hero, weaponPosition, playerGenerateConfigData.WeaponObj, null);

            var shadowEff = GameObject.Instantiate(playerGenerateConfigData.ShadowEffect) as GameObject;

            shadowEff.name                    = "shadow";
            shadowEff.transform.parent        = m_hero.transform;
            shadowEff.transform.localPosition = new Vector3(0, 1, 0);

            CreatHeroModelTransform.transform.position = MyPanelType == PanelType.FashionInfoPanel ? playerGenerateConfigData.Avatar_CharPos : playerGenerateConfigData.RoleUI_CharPos;
            CameraObj.transform.position    = m_hero.transform.position + (MyPanelType == PanelType.FashionInfoPanel ? playerGenerateConfigData.Avatar_CameraPos : playerGenerateConfigData.RoleUI_CameraPos);
            CameraTarget.transform.position = m_hero.transform.position + (MyPanelType == PanelType.FashionInfoPanel ? playerGenerateConfigData.Avatar_CameraTargetPos : playerGenerateConfigData.RoleUI_CameraTargetPos);
            CameraObj.transform.LookAt(CameraTarget);
            this.m_hero.transform.localPosition = new Vector3(1000, 0, 0);
            //m_hero.SetActive(false);
        }
Ejemplo n.º 7
0
    /// <summary>
    /// 装配角色
    /// </summary>
    /// <param name="playerKind"></param>
    /// <param name="isHero"></param>
    /// <returns></returns>
    private GameObject AssemblyPlayer(PlayerGenerateConfigData configData, byte playerKind, bool isHero, string avatarName)
    {
        string defaultAnim, defaultAvatar, defaultWeapon;

        string[] attachAnims, weaponPosition;

        defaultAnim    = configData.DefaultAnim;
        attachAnims    = configData.Animations;
        defaultAvatar  = string.IsNullOrEmpty(avatarName)? configData.DefaultAvatar:avatarName;
        defaultWeapon  = configData.DefaultWeapon;
        weaponPosition = configData.WeaponPosition;

        //如果是客户端主角,使用高模,不是则使用低模
        var player = isHero ? RoleGenerate.GenerateRole(configData.PlayerName, defaultAvatar, isHero) :
                     RoleGenerate.GenerateRole(configData.PlayerName, defaultAvatar, isHero, MESHDENSITY.LOW);

        player.name = configData.PlayerName;

        RoleGenerate.AttachAnimation(player, configData.PlayerName, defaultAnim, attachAnims);

        var weapon = Weapons.SingleOrDefault(P => P.name == defaultWeapon);

        RoleGenerate.AttachWeapon(player, weaponPosition, weapon, null);

        return(player);
    }
Ejemplo n.º 8
0
    /// <summary>
    /// 改变主角武器
    /// </summary>
    /// <param name="weaponName"></param>
    public void ChangeWeapon(string weaponName, GameObject weaponEff)
    {
        var weapon = Weapons.SingleOrDefault(P => P.name == weaponName);

        //configData.WeaponPosition.ApplyAllItem(P => //TraceUtil.Log("WeaponPosition:" + P));

        RoleGenerate.AttachWeapon(this.m_heroGo, m_configData.WeaponPosition, weapon, weaponEff);
    }
Ejemplo n.º 9
0
    /// <summary>
    /// 改变主角时装
    /// </summary>
    /// <param name="weaponName"></param>
    void ChangeFashion(int fashionID)
    {
        var FashionData = ItemDataManager.Instance.GetItemData(fashionID);

        TraceUtil.Log("切换时装:" + FashionData._ModelId);
        //yield return null;
        RoleGenerate.GenerateRole(m_hero, FashionData._ModelId);
    }
Ejemplo n.º 10
0
    void  ChangeWeapon(string Weapon, GameObject weaponEff)
    {
        //yield return null;
        var weaponObj = PlayerFactory.Instance.GetWeaponPrefab(Weapon);

        SetCildLayer(weaponObj.transform, 10);
        RoleGenerate.AttachWeapon(this.m_hero, m_defaultWeaponAtt, weaponObj, weaponEff);
        TraceUtil.Log("改变武器" + weaponObj);
    }
Ejemplo n.º 11
0
        /// <summary>
        /// 改变主角时装
        /// </summary>
        /// <param name="weaponName"></param>
        public IEnumerator ChangeFashion(int fashionID)
        {
            var FashionData = ItemDataManager.Instance.GetItemData(fashionID);

            TraceUtil.Log("切换时装:" + FashionData._ModelId);
            yield return(null);

            RoleGenerate.GenerateRole(m_hero, FashionData._ModelId);
            SetCildLayer(m_hero.transform, 25);
        }
Ejemplo n.º 12
0
 /// <summary>
 /// 改变主角服装
 /// </summary>
 /// <param name="avatarName"></param>
 public void ChangeAvatar(string avatarName)
 {
     if (this.m_heroGo)
     {
         RoleGenerate.GenerateRole(this.m_heroGo, avatarName);
     }
     else
     {
         TraceUtil.Log(SystemModel.Common, TraceLevel.Error, "主角对象不存在");
     }
 }
Ejemplo n.º 13
0
        /// <summary>
        /// 改变主角武器
        /// </summary>
        /// <param name="weaponName"></param>
        void ChangeDefulsWeapon(object obj)
        {
            byte Vocation  = (byte)PlayerManager.Instance.FindHeroDataModel().PlayerValues.PlayerCommonValue.PLAYER_FIELD_VISIBLE_VOCATION;
            var  weaponObj = PlayerFactory.Instance.GetDefulWeaponPrefab(Vocation);

            string[] weaponPosition = GetWeaponPosition();
            RoleGenerate.AttachWeapon(this.m_hero, weaponPosition, weaponObj, null);
            RoleGenerate.ChangeWeapon(PlayerManager.Instance.FindHero(), weaponObj, null);
            SetCildLayer(m_hero.transform, 25);
            PlayerChangeWaeponAnim();
            TraceUtil.Log("改变武器" + weaponObj + " 职业:" + Vocation);
        }
Ejemplo n.º 14
0
        /// <summary>
        /// 改变主角默认时装
        /// </summary>
        /// <param name="weaponName"></param>
        IEnumerator ChangeDefulsFashion()
        {
            TraceUtil.Log("切换时装:默认时装");
            yield return(null);

            RoleGenerate.GenerateRole(m_hero, playerGenerateConfigData.DefaultAvatar);
            SetCildLayer(m_hero.transform, 25);
            if (MyPanelType == PanelType.FashionInfoPanel)
            {
                PlayerChangeFashionAnim();
            }
        }
Ejemplo n.º 15
0
    IEnumerator  PlayAnimation(string[] OnceWeaponPos, List <AnimationClip> OnecAnimationClips, PackToFashingEff onceEff, string[] LoopWeaponPos, AnimationClip clip, PackToFashingEff LoopEff)
    {
        RoleGenerate.AttachWeapon(this.m_hero, OnceWeaponPos);
        yield return(null);

        yield return(StartCoroutine(PlayOnceAnimation(OnecAnimationClips, onceEff)));

        RoleGenerate.AttachWeapon(this.m_hero, LoopWeaponPos);
        yield return(null);

        PlayLoopAnimation(clip, LoopEff);
    }
Ejemplo n.º 16
0
    private void MakeRole(string roleName, string avatarName, string defaultAnim, params string[] anims)
    {
        Object.DestroyImmediate(root);
        root = null;
        root = RoleGenerate.GenerateRole(roleName, avatarName);
        root.transform.Rotate(0, 180, 0);

        RoleGenerate.AttachAnimation(root, roleName, defaultAnim, anims);

        RoleGenerate.AttachWeapon(root, AttachPoint.RHWeapon, WeaponPrefab, null);

        root.animation.wrapMode = WrapMode.Loop;
    }
Ejemplo n.º 17
0
        /// <summary>
        /// 改变主角时装
        /// </summary>
        /// <param name="weaponName"></param>
        public void ChangeFashion(object obj)
        {
            int fashionID   = (int)obj;
            var FashionData = ItemDataManager.Instance.GetItemData(fashionID);

            TraceUtil.Log("切换时装:" + FashionData._ModelId);
            //yield return null;
            RoleGenerate.GenerateRole(m_hero, FashionData._ModelId);
            SetCildLayer(m_hero.transform, 25);
            if (MyPanelType == PanelType.FashionInfoPanel)
            {
                PlayerChangeFashionAnim();
            }
        }
Ejemplo n.º 18
0
        void AssemblyPlayer(int VocationID)
        {
            /*
             * if (this.m_hero != null)
             * {
             *  Destroy(m_hero);
             * }
             * playerGenerateConfigData = PlayerDataManager.Instance.GetUIItemData((byte)VocationID) ;
             * this.m_hero = RoleGenerate.GenerateRole(playerGenerateConfigData.PlayerName, playerGenerateConfigData.DefaultAvatar, true);
             * this.m_hero.transform.parent = transform;
             * //this.m_hero.transform.localPosition = new Vector3(0, -8, 170);
             * this.m_hero.transform.localRotation = Quaternion.Euler(new Vector3(0,180,0));
             *
             * RoleGenerate.AttachAnimation(this.m_hero, playerGenerateConfigData.PlayerName, playerGenerateConfigData.DefaultAnim, playerGenerateConfigData.Animations);
             *
             * string[] weaponPosition = playerGenerateConfigData.Item_WeaponPosition;
             * //RoleGenerate.AttachWeapon(this.m_hero, weaponPosition, playerGenerateConfigData.WeaponObj);
             *
             * ChangeHeroWeapon(null);
             *
             * PlayerIdleAnim();
             * SetCildLayer(m_hero.transform, 25);
             */
            playerGenerateConfigData = PlayerDataManager.Instance.GetUIItemData((byte)VocationID);
            this.m_hero = RoleGenerate.GenerateRole(playerGenerateConfigData.PlayerName, playerGenerateConfigData.DefaultAvatar, true);
            this.m_hero.transform.parent        = transform;
            this.m_hero.transform.localPosition = new Vector3(0, -8, 170);
            this.m_hero.transform.localRotation = Quaternion.Euler(new Vector3(0, 180, 0));
            RoleGenerate.AttachAnimation(this.m_hero, playerGenerateConfigData.PlayerName, playerGenerateConfigData.DefaultAnim, playerGenerateConfigData.Animations);

            string[] weaponPosition = playerGenerateConfigData.Avatar_WeaponPos;
            RoleGenerate.AttachWeapon(this.m_hero, weaponPosition, playerGenerateConfigData.WeaponObj, null);

            //光环
            this.m_heroHolo             = (GameObject)Instantiate(Eff_HeroHoloPrefab);
            m_heroHolo.transform.parent = transform;
            this.m_heroHolo.transform.Rotate(Vector3.left * 20, Space.Self);
            SetCildLayer(this.m_heroHolo.transform, 25);
            //ChangeHeroWeapon(null);
            ////SetCildLayer(m_hero.transform, 25);
            //TweenFloat.Begin(1,0,1,null,AddRotateComponentForSeconds);


            ChangeHeroFashion();
            ChangeHeroWeapon(null);

            SetCildLayer(m_hero.transform, 25);

            SetModelPisitionImmediate();
        }
Ejemplo n.º 19
0
    private void AddSkillBases(MonsterConfigData monsterConfigData)
    {
        m_SkillBaseList = new List <SkillBase>();
        monsterConfigData._skillGroup.ApplyAllItem(p =>
        {
            if (!m_SkillBaseList.Exists(skill => skill.SkillId == p._skillID))
            {
                SkillBase skillBase = RoleGenerate.AttachSkill(gameObject, p._skillID);
                skillBase.SetUserID = this.RoleDataModel.SMsg_Header.uidEntity;

                m_SkillBaseList.Add(skillBase);
            }
        });
    }
Ejemplo n.º 20
0
    private void CreateRobots()
    {
        List <RobotConfigData> list = new List <RobotConfigData>();

        list.AddRange(RobotConfigDataBase._dataTable);

        int num = CommonDefineManager.Instance.CommonDefine.TownRobotNum;

        for (int i = 0; i < num; i++)
        {
            int index  = Random.Range(0, list.Count);
            var config = list[index];

            var configData  = PlayerDataManager.Instance.GetTownItemData((byte)config.RobotOccupation);
            var fashionItem = ItemDataManager.Instance.GetItemData(config.RobotFashion);
            var robot       = PlayerFactory.Instance.AssemblyRobot(configData, (byte)config.RobotOccupation, fashionItem == null?null:fashionItem._ModelId);

            var posConfig = TownRobotPosDataBase._dataTable.SingleOrDefault(p => p.PosId == config.RobotId);
            robot.transform.position = posConfig.BornPos;
            robot.transform.rotation = Quaternion.Euler(0, posConfig.BornOrientation, 0);

            string[] ItemWeaponPosition = configData.Item_WeaponPosition;
            var      equipmentData      = (EquipmentData)ItemDataManager.Instance.GetItemData(config.RobotWeapon);
            var      weaponObj          = PlayerFactory.Instance.GetWeaponPrefab(equipmentData._ModelId);
            RoleGenerate.ChangeWeapon(robot, weaponObj, equipmentData.WeaponEff);

            var shadowEff = GameObject.Instantiate(configData.ShadowEffect) as GameObject;
            shadowEff.name                    = "shadow";
            shadowEff.transform.parent        = robot.transform;
            shadowEff.transform.localPosition = new Vector3(0, 1, 0);

            robot.animation["TIdle01"].wrapMode = WrapMode.Loop;
            robot.animation.CrossFade("TIdle01");

            long robotUID  = 100000000 + config.RobotId;
            var  title     = PlayerFactory.Instance.CreateTitle(robotUID, config.RobotName, false, robot.transform);
            var  heroTitle = title.GetComponent <HeroTitle>();
            heroTitle.SetVipLevel(config.RobotVipLevel);

            PlayerFactory.Instance.SetDesignation(robotUID, heroTitle.TitlePoint, config.RobotTitle);

            m_robotList.Add(robot);
            RobotInfo info = new RobotInfo()
            {
                robot = robot, titleRef = title
            };
            robotInfoList.Add(info);
            list.RemoveAt(index);
        }
    }
Ejemplo n.º 21
0
        /// <summary>
        /// 改变主角武器
        /// </summary>
        /// <param name="weaponName"></param>
        void ChangeWeapon(object obj)
        {
            string Weapon = (string)obj;

            string[] ItemWeaponPosition = GetWeaponPosition();
            var      weaponEff          = (ItemDataManager.Instance.GetItemData(ContainerInfomanager.Instance.GetContainerGoodsInfo(WeaponInfo).LocalItemData._goodID) as EquipmentData).WeaponEff;
            var      weaponObj          = PlayerFactory.Instance.GetWeaponPrefab(Weapon);

            RoleGenerate.ChangeWeapon(PlayerManager.Instance.FindHero(), weaponObj, weaponEff);
            RoleGenerate.ChangeWeapon(this.m_hero, weaponObj, weaponEff);
            SetCildLayer(m_hero.transform, 25);
            PlayerChangeWaeponAnim();
            TraceUtil.Log("改变武器" + weaponObj);
        }
Ejemplo n.º 22
0
 public void AddSkillBase(int skillID, bool isDefaultSkill)
 {
     if (!this.m_skills.Any(P => P.SkillId == skillID))
     {
         var newSkill = RoleGenerate.AttachSkill(gameObject, skillID);
         newSkill.AddSkillBulletFireDelegate(FireSkillBullet);
         newSkill.AddSkillEffectFireDelegate(FireSkillActionEffect);
         newSkill.AddSkillUIEffectFireDelegate(PlayUIEffect);
         newSkill.SetUserID = this.RoleDataModel.SMsg_Header.uidEntity;
         this.m_skills.Add(newSkill);
         if (isDefaultSkill)
         {
             m_CurrentSkillID = skillID;
         }
     }
 }
Ejemplo n.º 23
0
    /// <summary>
    /// 装配角色
    /// </summary>
    private GameObject AssemblyPlayer(PlayerGenerateConfigData configData, Vector3 pos)
    {
        string defaultAnim, defaultAvatar;

        string[] attachAnims;//, weaponPosition;

        defaultAnim   = configData.DefaultAnim;
        attachAnims   = configData.Animations;
        defaultAvatar = configData.DefaultAvatar;
        //defaultWeapon = configData.DefaultWeapon;
        //weaponPosition = configData.WeaponPosition;

        var player = RoleGenerate.GenerateRole(configData.PlayerName, defaultAvatar, true);

        player.name = configData.PlayerName;

        RoleGenerate.AttachAnimation(player, configData.PlayerName, defaultAnim, attachAnims);

        PlayerBehaviour playerBehaviour = player.GetComponent <PlayerBehaviour>();

        if (playerBehaviour != null)
        {
            player.RemoveComponent <PlayerBehaviour>("PlayerBehaviour");
        }


        player.transform.position = pos;
        player.animation.CrossFade("BIdle");

        //SetPlayerShadow(player, configData.ShadowEffect);

        //挂武器 jamfing

        /*int vocation = PlayerManager.Instance.FindHeroDataModel().PlayerValues.PlayerCommonValue.PLAYER_FIELD_VISIBLE_VOCATION;
         * StroyLineKey key = new StroyLineKey{ VocationID = vocation,ConditionID = GameManager.Instance.GetStoryConfigData._TriggerCondition,
         *      EctypeID = GameManager.Instance.GetStoryConfigData._EctypeID };*/
        if (StroyLineConfigManager.Instance.GetStroyLineConfig.ContainsKey(StroyLineDataManager.Instance.curStroyLineKey))
        {
            if (StroyLineConfigManager.Instance.GetStroyLineConfig[StroyLineDataManager.Instance.curStroyLineKey].WeaponType == 1)
            {
                string[] ItemWeaponPosition = configData.WeaponPosition;
                var      weaponObj          = PlayerFactory.Instance.GetWeaponPrefab(configData.DefaultWeapon);
                RoleGenerate.AttachWeapon(player, ItemWeaponPosition, weaponObj, null);
            }
        }
        return(player);
    }
Ejemplo n.º 24
0
        void AssemblyPlayer(int VocationID, int FashionID, int WeaponID)
        {
            playerGenerateConfigData = PlayerDataManager.Instance.GetUIItemData((byte)VocationID);
            this.m_hero = RoleGenerate.GenerateRole(playerGenerateConfigData.PlayerName, playerGenerateConfigData.DefaultAvatar, true);
            this.m_hero.transform.parent        = transform;
            this.m_hero.transform.localPosition = new Vector3(0, -8, 170);
            this.m_hero.transform.localRotation = Quaternion.Euler(new Vector3(0, 180, 0));
            RoleGenerate.AttachAnimation(this.m_hero, playerGenerateConfigData.PlayerName, playerGenerateConfigData.DefaultAnim, playerGenerateConfigData.Animations);
            ChangeHeroWeapon(WeaponID);
            ChangeHeroFashion(FashionID);
            //光环
            this.m_heroHolo             = (GameObject)Instantiate(Eff_HeroHoloPrefab);
            m_heroHolo.transform.parent = transform;
            this.m_heroHolo.transform.Rotate(Vector3.left * 20, Space.Self);
            SetCildLayer(this.m_heroHolo.transform, 25);

            SetModelPisitionImmediate();
        }
Ejemplo n.º 25
0
    public void AddSkillBase(int skillID, bool isDefaultSkill)
    {
        if (!this.m_skills.Any(P => P.SkillId == skillID))
        {
            var newSkill = RoleGenerate.AttachSkill(gameObject, skillID);

            newSkill.AddActionDelegate(ActionHandler);
            newSkill.AddSkillOverDelegate(SkillOverHandler);
            newSkill.AddSkillBulletFireDelegate(FireSkillBullet);
            newSkill.AddSkillEffectFireDelegate(FireSkillActionEffect);

            newSkill.SetUserID = m_userID;
            this.m_skills.Add(newSkill);
            if (isDefaultSkill)
            {
                m_CurrentSkillID = skillID;
            }
        }
    }
Ejemplo n.º 26
0
    void CreatRoleMode(PvpRoleInfo Char, int VocationID, Transform point)
    {
        var pvpConfigData = PlayerDataManager.Instance.GetPVPItemData(VocationID);

        Char.pvpConfigData            = pvpConfigData;
        Char.playerGenerateConfigData = PlayerDataManager.Instance.GetUIItemData((byte)VocationID);
        if (Char.playerGenerateConfigData.PlayerId == 1)
        {
            if (Char.RoleMode_Char01 == null)
            {
                Char.RoleMode_Char01 = RoleGenerate.GenerateRole(Char.playerGenerateConfigData.PlayerName, Char.playerGenerateConfigData.DefaultAvatar, true);
                Char.RoleMode_Char01.transform.parent           = point;
                Char.RoleMode_Char01.transform.localPosition    = Vector3.zero;
                Char.RoleMode_Char01.transform.localEulerAngles = new Vector3(0, 180, 0);
                RoleGenerate.AttachAnimation(Char.RoleMode_Char01, pvpConfigData.PlayerName, pvpConfigData.DefaultAnim, pvpConfigData.Animations);
                Char.RoleControl = Char.RoleMode_Char01.AddComponent <PvpRoleControl>();
            }
            else
            {
                Char.RoleMode_Char01.SetActive(true);
                Char.RoleControl = Char.RoleMode_Char01.GetComponent <PvpRoleControl>();
            }
            Char.currentRoleMode = Char.RoleMode_Char01;
        }
        else
        {
            if (Char.RoleMode_Char04 == null)
            {
                Char.RoleMode_Char04 = RoleGenerate.GenerateRole(Char.playerGenerateConfigData.PlayerName, Char.playerGenerateConfigData.DefaultAvatar, true);
                Char.RoleMode_Char04.transform.parent           = point;
                Char.RoleMode_Char04.transform.localPosition    = Vector3.zero;
                Char.RoleMode_Char04.transform.localEulerAngles = new Vector3(0, 180, 0);
                RoleGenerate.AttachAnimation(Char.RoleMode_Char04, pvpConfigData.PlayerName, pvpConfigData.DefaultAnim, pvpConfigData.Animations);
                Char.RoleControl = Char.RoleMode_Char04.AddComponent <PvpRoleControl>();
            }
            else
            {
                Char.RoleMode_Char04.SetActive(true);
                Char.RoleControl = Char.RoleMode_Char04.GetComponent <PvpRoleControl>();
            }
            Char.currentRoleMode = Char.RoleMode_Char04;
        }
    }
Ejemplo n.º 27
0
        /// <summary>
        /// 改变主角武器
        /// </summary>
        /// <param name="weaponName"></param>
        void ChangeWeapon(string Weapon, bool showAnm, GameObject WeaponEff)
        {
            // yield return null;
            string[] ItemWeaponPosition = playerGenerateConfigData.Item_WeaponPosition;
            var      weaponObj          = PlayerFactory.Instance.GetWeaponPrefab(Weapon);

            RoleGenerate.ChangeWeapon(PlayerManager.Instance.FindHero(), weaponObj, WeaponEff);
            RoleGenerate.AttachWeapon(this.m_hero, ItemWeaponPosition, weaponObj, WeaponEff);
            //RoleGenerate.ChangeWeapon(this.m_hero, weaponObj);
            SetCildLayer(m_hero.transform, 25);
            if (showAnm)
            {
                PlayerChangeWaeponAnim();
            }
            else
            {
                PlayerIdleAnim();
            }
            TraceUtil.Log("改变武器" + weaponObj);
        }
Ejemplo n.º 28
0
        /// <summary>
        /// 改变主角武器
        /// </summary>
        /// <param name="weaponName"></param>
        void  ChangeDefulsWeapon(bool showAnim)
        {
            //yield return null;
            byte Vocation  = (byte)PlayerManager.Instance.FindHeroDataModel().PlayerValues.PlayerCommonValue.PLAYER_FIELD_VISIBLE_VOCATION;
            var  weaponObj = PlayerFactory.Instance.GetDefulWeaponPrefab(Vocation);

            string[] weaponPosition = playerGenerateConfigData.Item_WeaponPosition;
            RoleGenerate.AttachWeapon(this.m_hero, weaponPosition, weaponObj, null);
            RoleGenerate.ChangeWeapon(PlayerManager.Instance.FindHero(), weaponObj, null);
            SetCildLayer(m_hero.transform, 25);
            if (showAnim)
            {
                PlayerChangeWaeponAnim();
            }
            else
            {
                PlayerIdleAnim();
            }
            TraceUtil.Log("改变武器" + weaponObj + " 职业:" + Vocation);
        }
Ejemplo n.º 29
0
        /// <summary>
        /// 装备物品
        /// </summary>
        /// <param name="itemFielInfo"></param>
        public void SendEquiptItemToserver()
        {
            ItemFielInfo        equipmentItem = itemFielInfo;
            SMsgContainerUse_CS dataStruct    = new SMsgContainerUse_CS();

            dataStruct.dwContainerID1 = dataStruct.dwContainerID2 = equipmentItem.sSyncContainerGoods_SC.SMsgContainerCSCHead.dwContainerID;
            dataStruct.byPlace        = (byte)equipmentItem.sSyncContainerGoods_SC.nPlace;
            dataStruct.uidTarget      = PlayerManager.Instance.FindHeroEntityModel().EntityDataStruct.SMsg_Header.uidEntity;
            NetServiceManager.Instance.ContainerService.SendContainerUse(dataStruct);
            //不等服务器,直接装上装备
            if (equipmentItem.LocalItemData._GoodsSubClass == 1)
            {
                string     weapon    = ItemDataManager.Instance.GetItemData(equipmentItem.LocalItemData._goodID)._ModelId;
                GameObject weaponObj = PlayerFactory.Instance.GetWeaponPrefab(weapon);
                var        weaponEff = (ItemDataManager.Instance.GetItemData(equipmentItem.LocalItemData._goodID) as EquipmentData).WeaponEff;
                RoleGenerate.ChangeWeapon(PlayerManager.Instance.FindHero(), weaponObj, weaponEff);
            }
            //		var heroPos = PlayerManager.Instance.FindHero().transform.position + new Vector3(CommonDefineManager.Instance.CommonDefine.HitNumber_VectorX, CommonDefineManager.Instance.CommonDefine.HitNumber_VectorY, CommonDefineManager.Instance.CommonDefine.HitNumber_VectorZ);
            //         PopupTextController.SettleResult(heroPos, "5555",   FightEffectType.BATTLE_EFFECT_EXPSHOW);
        }
Ejemplo n.º 30
0
        IEnumerator ChangeWeapon(long weaponID)
        {
            yield return(null);

            if (this.m_hero != null)
            {
                var item = ItemDataManager.Instance.GetItemData((int)weaponID);
                if (item != null)
                {
                    var      weaponGO       = PlayerFactory.Instance.GetWeaponPrefab(item._ModelId);
                    string[] weaponPosition = playerGenerateConfigData.Item_WeaponPosition;
                    var      WeaponEff      = (ItemDataManager.Instance.GetItemData(item._goodID) as EquipmentData).WeaponEff;
                    RoleGenerate.AttachWeapon(this.m_hero, weaponPosition, weaponGO, WeaponEff);
                    RoleGenerate.ChangeWeapon(PlayerManager.Instance.FindHero(), weaponGO, WeaponEff);
                    SetCildLayer(m_hero.transform, 25);
                }
                else
                {
                }
            }
        }