| | |
| | | |
| | | GameObject battleGO = ResManager.Instance.LoadAsset<GameObject>("Hero/SpineRes", "Hero_001"/*skinCfg.SpineRes*/); |
| | | |
| | | if (battleGO == null) |
| | | { |
| | | Debug.LogError("BattleObjectFactory.CreateBattleObject: battleGO is null for " + teamHero.heroId); |
| | | return null; |
| | | } |
| | | |
| | | |
| | | GameObject goParent = posNodeList[teamHero.positionNum]; |
| | | BattleObject battleObject = new BattleObject(_battleField); |
| | | battleObject.ObjID = teamHero.ObjID; |
| | | |
| | | GameObject realGO = GameObject.Instantiate(battleGO, goParent.transform); |
| | | SkeletonGraphic skeletonGraphic = realGO.GetComponentInChildren<SkeletonGraphic>(true); |
| | | SkeletonAnimation skeletonAnimation = realGO.GetComponentInChildren<SkeletonAnimation>(true); |
| | | |
| | | var skeletonDataAsset = ResManager.Instance.LoadAsset<SkeletonDataAsset>("Hero/SpineRes/", skinCfg.SpineRes); |
| | | if (skeletonDataAsset == null) |
| | |
| | | return null; |
| | | } |
| | | |
| | | |
| | | float finalScaleRate = modelScaleRate * teamHero.modelScale; |
| | | |
| | | skeletonGraphic.skeletonDataAsset = skeletonDataAsset; |
| | | skeletonGraphic.Initialize(true); |
| | | skeletonAnimation.skeletonDataAsset = skeletonDataAsset; |
| | | skeletonAnimation.Initialize(true); |
| | | realGO.name = battleObject.ObjID.ToString(); |
| | | realGO.transform.localScale = new Vector3((_Camp == BattleCamp.Red ? 1 : -1f) * finalScaleRate, finalScaleRate, finalScaleRate); |
| | | realGO.transform.localScale = new Vector3(finalScaleRate, finalScaleRate, finalScaleRate); |
| | | RectTransform rectTrans = realGO.GetComponent<RectTransform>(); |
| | | rectTrans.anchoredPosition = Vector2.zero; |
| | | battleObject.Init(realGO, teamHero, _Camp); |
| | | |
| | | |
| | | return battleObject; |
| | | } |
| | | |