private void WaveResetEnemyResetupFunction(string prefabId, int num, int i, bool isRecover = false) { CharacterParams @object = base.battleStateData.preloadEnemiesParams.GetObject(prefabId, num.ToString()); @object.gameObject.SetActive(true); @object.Initialize(base.hierarchyData.cameraObject.camera3D); @object.PlayAnimation(CharacterAnimationType.idle, SkillType.Attack, 0, null, null); @object.transform.position = base.battleStateData.enemiesSpawnPoint[i].position; @object.transform.rotation = base.battleStateData.enemiesSpawnPoint[i].rotation; base.battleStateData.enemies[i].CharacterParams = @object; if (!isRecover) { base.battleStateData.enemies[i].InitializeAp(); } ThreeDHoldPressButton threeDHoldPressButton = @object.gameObject.GetComponent <ThreeDHoldPressButton>(); if (threeDHoldPressButton == null) { threeDHoldPressButton = @object.gameObject.AddComponent <ThreeDHoldPressButton>(); threeDHoldPressButton.camera3D = base.hierarchyData.cameraObject.camera3D; } else { threeDHoldPressButton.onHoldWaitPress.Clear(); threeDHoldPressButton.onDisengagePress.Clear(); } threeDHoldPressButton.waitPressCall = 0.2f; BattleInputUtility.AddEvent(threeDHoldPressButton.onHoldWaitPress, new Action <int>(base.stateManager.input.OnShowEnemyDescription3D), i); BattleInputUtility.AddEvent(threeDHoldPressButton.onDisengagePress, new Action(base.stateManager.input.OnHideEnemyDescriotion3D)); @object.gameObject.SetActive(false); }
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; }