public IEnumerator LoadCharacterParam(string characterId, int index, Action <CharacterParams, int, string> result) { BattleDebug.Log(string.Concat(new object[] { "--- モンスター単体ロード characterId[", characterId, "] index[", index, "] : 開始" })); GameObject prefab = base.stateManager.serverControl.GetCharacterPrefab(characterId); GameObject character = base.Instantiate <GameObject>(prefab); yield return(null); character.name = characterId; character.transform.SetParent(base.battleStateData.characterRoot); character.transform.position = Vector3.zero; character.transform.rotation = Quaternion.identity; CharacterParams characterParams = character.GetComponent <CharacterParams>(); CapsuleCollider col = characterParams.GetComponent <CapsuleCollider>(); col.radius = 1.03f; if (base.battleStateData.useCharacterShadow) { characterParams.SetShadowObject(); yield return(null); } characterParams.PlayAnimation(CharacterAnimationType.idle, SkillType.Attack, 0, null, null); yield return(null); characterParams.Initialize(base.hierarchyData.cameraObject.camera3D); GameObject hasColliderObject = characterParams.collider.gameObject; BattleStateData battleStateData = base.battleStateData; battleStateData.characterColliderLayerMask |= 1 << hasColliderObject.layer; character.gameObject.SetActive(false); result(characterParams, index, characterId); BattleDebug.Log(string.Concat(new object[] { "--- モンスター単体ロード characterId[", characterId, "] index[", index, "] : 完了" })); yield break; }
private IEnumerator LoadDigimon(string modelId) { string path = MonsterObject.GetFilePath(modelId); GameObject resource = AssetDataMng.Instance().LoadObject(path, null, true) as GameObject; yield return(null); this.digimon = UnityEngine.Object.Instantiate <GameObject>(resource); CharacterParams param = this.digimon.GetComponent <CharacterParams>(); param.SetShadowObject(); this.digimon.SetActive(false); yield return(null); this.digimon.transform.parent = base.transform; this.digimon.transform.localPosition = Vector3.zero; this.digimon.transform.localRotation = Quaternion.identity; this.digimon.transform.localScale = Vector3.one; this.digimon.tag = "Farm.Chara"; resource = null; Resources.UnloadUnusedAssets(); yield break; }