// Use this for initialization public override void Init(Creature ownerCreature, Weapon weapon, Weapon.FiringDesc targetAngle) { m_effectTargetingPoint = new EffectTargetingCircle(); base.Init(ownerCreature, weapon, targetAngle); if (weapon.WeaponStat.summonRefMobId > 0) { m_spawnedMob = Const.GetSpawn().SpawnMob(RefData.Instance.RefMobs[weapon.WeaponStat.summonRefMobId], weapon.Level, gameObject.transform.position, false, false); m_spawnedMob.EnableNavmesh(false); m_spawnedMob.CreatureType = ownerCreature.CreatureType; m_spawnedMob.SetTarget(null); } }
public override void StartFiring(float targetAngle) { if ( isCoolTime() == true && m_creature.Targetting != null) { float d = Vector3.Distance(m_creature.transform.position, m_creature.Targetting.transform.position); m_parabola = new Parabola(m_creature.gameObject, d*1.7f, targetAngle*Mathf.Deg2Rad, 80*Mathf.Deg2Rad, 1); m_parabola.TimeScale = 0.80f; m_effectTargetingPoint = new EffectTargetingCircle(); m_effectTargetingPoint.Init(m_parabola.DestPosition); m_creature.CrowdControl(Creature.CrowdControlType.LeapStrike, true); DidStartFiring(0f); } m_firing = true; }