public void createPVPUnit() { //GameManager.me.player.state = Character.SHOOT; if (uiUnitSlot != null) { GameManager.replayManager.unitButtons[uiUnitSlot.slotIndex % 10] = true; return; } activeSkillState = UIPlayUnitSlot.STATE_ACTIVE_SKILL_COOLTIME; // if(uiUnitSlot != null) uiUnitSlot.activeSkillState = activeSkillState; if (_heroMon.isPlayerSide) { _v = _heroMon.cTransformPosition; _v.x += 100; _v.y = 1; ++UIPlayUnitSlot.summonPosIndex; if (UIPlayUnitSlot.summonPosIndex >= 12) { UIPlayUnitSlot.summonPosIndex = 0; } _v.z = MapManager.summonBottom + MapManager.mapSummonHeight * UIPlayUnitSlot.summonPos[UIPlayUnitSlot.summonPosIndex] / 11.0f; if (_v.x + 10 > GameManager.me.characterManager.monsterLeftLine) { _v.x = GameManager.me.characterManager.monsterLeftLine - 100; } if (_v.x <= StageManager.mapStartPosX.Get()) { _v.x = StageManager.mapStartPosX + 50; } mon = GameManager.me.mapManager.addMonsterToStage(infoData.transcendData, infoData.transcendLevel, true, null, unitData.id, _v); mon.aiUnitSlot = this; _heroMon.sp -= useSp; _v.y = 0.5f; resetCoolTime(); if (uiUnitSlot != null) { mon.monsterUISlotIndex = uiUnitSlot.slotIndex; uiUnitSlot.resetCoolTime(); } } else { _v = _heroMon.cTransformPosition; _v.x -= 100; _v.y = 1; ++summonPosIndex; if (summonPosIndex >= 12) { summonPosIndex = 0; } _v.z = MapManager.summonBottom + MapManager.mapSummonHeight * UIPlayUnitSlot.summonPos[summonPosIndex] / 11.0f; if ((_v.x - 10) < GameManager.me.characterManager.playerMonsterRightLine) { _v.x = GameManager.me.characterManager.playerMonsterRightLine + 100; } if (_v.x >= StageManager.mapEndPosX.Get()) { _v.x = StageManager.mapEndPosX - 50; } mon = GameManager.me.mapManager.addPVPPlayerUnitToStage(infoData.transcendData, infoData.transcendLevel, unitData.id, _v); mon.aiUnitSlot = this; _heroMon.sp -= useSp; _v.y = 0.5f; resetCoolTime(); } #if UNITY_EDITOR if (BattleSimulator.nowSimulation && BattleSimulator.instance.skipTime > 0) { return; } #endif SoundData.play(UnitSlot.getSummonSoundByRare(unitData.rare)); SoundData.playSummonSound(mon.monsterData.resource); GameManager.info.effectData[UnitSlot.getSummonEffectByRare(unitData.rare)].getEffect(-1000, _v, null, null, mon.summonEffectSize); //GameManager.resourceManager.getInstantPrefabs("Effect/virtical 14"); }
public void createUnit() { #if UNITY_EDITOR // if(BattleSimulator.nowSimulation == false) Log.log("createUnit : " + slotIndex); #endif spHpBar.cachedGameObject.SetActive(true); spHpBar.fillAmount = 1.0f; spHpBar.spriteName = NORMAL_GAUGE_COLOR; tfUseSp.enabled = false; if (unitSlot.activeSkillData != null) { goActiveSkillContainer.SetActive(true); spFeverBackground.enabled = false; spFeverTouch.enabled = false; } else { goActiveSkillContainer.SetActive(false); } unitSlot.coolTime = unitSlot.maxCoolTime; _state = STATE_COOLTIME; unitSlot.activeSkillState = STATE_ACTIVE_SKILL_COOLTIME; //_player.state = Character.SHOOT; _v = _player.cTransformPosition; _v.x += 100.0f; _v.y = 1.0f; ++summonPosIndex; if (summonPosIndex >= 12) { summonPosIndex = 0; } _v.z = MapManager.summonBottom + MapManager.mapSummonHeight * summonPos[summonPosIndex] / 11.0f; if (_v.x + 10.0f > GameManager.me.characterManager.monsterLeftLine) { _v.x = GameManager.me.characterManager.monsterLeftLine - 100.0f; } if (_v.x <= StageManager.mapStartPosX) { _v.x = StageManager.mapStartPosX + 50.0f; } #if UNITY_EDITOR if (UnitSkillCamMaker.instance.useUnitSkillCamMaker) { _v.x = 0.0f; _v.y = 1.0f; _v.z = 0.0f; } #endif if (slotIndex >= 10) { switch (slotIndex % 10) { case 0: ++GameDataManager.instance.playSubData[UnitSlot.U1]; break; case 1: ++GameDataManager.instance.playSubData[UnitSlot.U2]; break; case 2: ++GameDataManager.instance.playSubData[UnitSlot.U3]; break; case 3: ++GameDataManager.instance.playSubData[UnitSlot.U4]; break; case 4: ++GameDataManager.instance.playSubData[UnitSlot.U5]; break; } } else { switch (slotIndex % 10) { case 0: ++GameDataManager.instance.playData[UnitSlot.U1]; break; case 1: ++GameDataManager.instance.playData[UnitSlot.U2]; break; case 2: ++GameDataManager.instance.playData[UnitSlot.U3]; break; case 3: ++GameDataManager.instance.playData[UnitSlot.U4]; break; case 4: ++GameDataManager.instance.playData[UnitSlot.U5]; break; } } mon = GameManager.me.mapManager.addMonsterToStage(transcendData, transcendLevel, true, null, unitData.id, _v); mon.monsterUISlotIndex = slotIndex; // 소환 방어력 증가 _v.y = 0.5f; btn.isEnabled = false; #if UNITY_EDITOR if (BattleSimulator.nowSimulation) { return; } #endif SoundData.playSummonSound(mon.monsterData.resource); SoundData.play(UnitSlot.getSummonSoundByRare(unitData.rare)); string unitSoundId = unitData.baseUnitId; if (unitSoundId.StartsWith("UN6")) { unitSoundId = "UN5" + unitSoundId.Substring(3); } switch (_player.playerData.characterId) { case Character.ID.LEO: SoundData.playVoice("L" + unitSoundId); break; case Character.ID.KILEY: SoundData.playVoice("K" + unitSoundId); break; case Character.ID.CHLOE: SoundData.playVoice("C" + unitSoundId); break; case Character.ID.LUKE: SoundData.playVoice("LK" + unitSoundId); break; } GameManager.info.effectData[UnitSlot.getSummonEffectByRare(unitData.rare)].getEffect(-1000, _v, null, null, mon.summonEffectSize); //GameManager.resourceManager.getInstantPrefabs("Effect/virtical 14"); }
// 히어로 몬스터가 쓰는 메서드. public void create(float targetPosX = 0.0f, int nowIndex = 0, int totalIndex = 1) { // 쿨타임 무시!!! //if(canUse()) { _v = _heroMon.cTransformPosition; _posX = _heroMon.hitObject.x; _v.x = _posX + targetPosX; if (totalIndex > 1) { //Log.logError("===",MapManager.mapSummonHeight , (float)nowIndex , (float)totalIndex , MapManager.mapSummonHeight , (float)(nowIndex + 1) , (float)totalIndex, "MapManager.summonBottom : " + MapManager.summonBottom); //Log.log(MapManager.mapSummonHeight * ((float)nowIndex / (float)totalIndex), MapManager.mapSummonHeight * ((float)(nowIndex + 1) * (float)totalIndex)); _v.z = (float)GameManager.inGameRandom.Range((int)(MapManager.mapSummonHeight * ((float)nowIndex / (float)totalIndex)), (int)(MapManager.mapSummonHeight * ((float)(nowIndex + 1) / (float)totalIndex))); _v.z += MapManager.summonBottom; if (_v.z >= 0.0f && _v.z < 30) { _v.z = 30; } else if (_v.z <= 0.0f && _v.z > -30) { _v.z = -30; } } else { _v.z = (float)GameManager.inGameRandom.Range((int)MapManager.summonBottom, (int)MapManager.summonTop); if (_v.z >= 0.0f && _v.z < 80) { _v.z = 80; } else if (_v.z <= 0.0f && _v.z > -80) { _v.z = -80; } } ////Debug.LogError("=== CREATE POSITION: " + _v); if (_v.x < GameManager.me.characterManager.playerMonsterRightLine) { _v.x = GameManager.me.characterManager.playerMonsterRightLine + 200.0f; } if (_v.x >= _posX) { _v.x = _posX; } Monster summonMon = GameManager.me.mapManager.addMonsterToStage(null, null, false, null, unitData.id, _v, unitData); _heroMon.sp -= useSp; _v.y = 0.5f; SoundData.play(UnitSlot.getSummonSoundByRare(unitData.rare)); #if UNITY_EDITOR if (BattleSimulator.nowSimulation == false) #endif { GameManager.info.effectData[SUMMON_EFFECT_ENEMY].getEffect(-1000, _v, null, null, summonMon.summonEffectSize); } //go.transform.parent = _heroMon.tf; } resetCoolTime(); }