// Use this for initialization public override void Start() { base.Start(); attack = GetComponent <CastSkill> (); /* switch (enemyType) { * case Type.Melee: * attackRange = meleeAttackRange; * castTime = meleeCastTime; * enemyAttack = attack.melees; * cooldown = meleeCooldown; * break; * case Type.Ranged: * attackRange = rangedAttackRange; * castTime = rangedCastTime; * enemyAttack = attack.projectiles; * cooldown = rangedCooldown; * break; * case Type.Exploding: * attackRange = explodingAttackRange; * castTime = explodingCastTime; * enemyAttack = attack.explosions; * * break; * } */ }
public override void InteractEffect() { ui = GameObject.FindGameObjectWithTag("UI"); ui.GetComponent <Pause>().PauseThis(); choosePowerCanvas.SetActive(true); skill = player.GetComponent <CastSkill>(); textField = player.GetComponent <Player>().feedbackText; }
public GameObject CastSkill(GameObject go, int skillId, int skillType, int stamp, string folderName, string prefabName, string target_id, Vector3 targetPos, bool needneedFeedback, string[] targetIds, bool isAct) { SceneEntity component = go.GetComponent <SceneEntity>(); if (component != null) { component.castSkill = go.transform.GetOrAddComponent <CastSkill>(); return(component.castSkill.StartSkill(skillId, skillType, stamp, folderName, prefabName, target_id, targetPos, needneedFeedback, targetIds, isAct)); } CastSkill orAddComponent = go.transform.GetOrAddComponent <CastSkill>(); return(orAddComponent.StartSkill(skillId, skillType, stamp, folderName, prefabName, target_id, targetPos, needneedFeedback, targetIds, isAct)); }
// Use this for initialization public override void Start() { base.Start(); currentHealthBar.color = Color.red; gameObject.GetComponentInChildren <CircleCollider2D>().radius = aggroRange; attack = GetComponent <CastSkill>(); rigidbody = this.GetComponent <Rigidbody2D>(); anim = GetComponent <Animator>(); originalChaseRange = chaseRange; SetTypeNumbers(); }
public static void Execute(ReturnUseSkillUserCmd_S cmd) { CastSkill cast = null; switch (cmd.owner.entrytype) { case Cmd.SceneEntryType.SceneEntryType_Npc: { var owner = Npc.All[cmd.owner.entryid]; if (owner != null) { cast = owner.CastSkill; } } break; case Cmd.SceneEntryType.SceneEntryType_Player: { var owner = Role.All[cmd.owner.entryid]; if (owner != null) { cast = owner.CastSkill; } } break; default: break; } var skill = table.TableSkill.Where(cmd.skillid, cmd.skilllevel); if (cast == null || skill == null) { return; } cast.StartSkill(skill, cmd.hurts); }
public override bool CheckCast() { int mana = ScaleMana(RequiredMana); if (!base.CheckCast()) { return(false); } if (!CheckExpansion(Caster)) { Caster.SendLocalizedMessage(1063456); // You must upgrade to Samurai Empire in order to use that ability. return(false); } if (Caster.Skills[CastSkill].Value < RequiredSkill) { string args = String.Format("{0}\t{1}\t ", RequiredSkill.ToString("F1"), CastSkill.ToString()); Caster.SendLocalizedMessage(1063013, args); // You need at least ~1_SKILL_REQUIREMENT~ ~2_SKILL_NAME~ skill to use that ability. return(false); } else if (Caster.Mana < mana) { Caster.SendLocalizedMessage(1060174, mana.ToString()); // You must have at least ~1_MANA_REQUIREMENT~ Mana to use this ability. return(false); } return(true); }
public override bool CheckCast() { if (!base.CheckCast()) { return(false); } if (!CheckExpansion(Caster)) { Caster.SendLocalizedMessage(1063456); // You must upgrade to Samurai Empire in order to use that ability. return(false); } if (Caster.Skills[SkillName.Bushido].Value < RequiredSkill) { string args = String.Format("{0}\t{1}\t ", RequiredSkill.ToString("F1"), CastSkill.ToString()); Caster.SendLocalizedMessage(1063013, args); // You need at least ~1_SKILL_REQUIREMENT~ ~2_SKILL_NAME~ skill to use that ability. return(false); } else if (Caster.Mana < ScaleMana(RequiredMana)) { Caster.SendLocalizedMessage(1060174, RequiredMana.ToString()); // You must have at least ~1_MANA_REQUIREMENT~ Mana to use this ability. return(false); } if (HonorableExecution.UnderEffect(Caster) || LightningStrike.UnderEffect(Caster) || MomentumStrike.UnderEffect(Caster)) { return(true); } WeaponAbility ability = WeaponAbility.GetCurrentAbility(Caster); if (ability != null) { WeaponAbility.ClearCurrentAbility(Caster); } if (AnimalForm.UnderEffect(Caster)) { if (this is HonorableExecution || this is LightningStrike || this is MomentumStrike) { Caster.SendLocalizedMessage(1063024); // You cannot perform this special move right now. return(false); } } if (FocusAttack.UnderEffect(Caster)) { Caster.Send(new SetNewSpell(0xF5, 0)); FocusAttack.m_Table.Remove(Caster); BaseWeapon weapon = Caster.Weapon as BaseWeapon; if (weapon != null) { FocusAttack.RemoveBonus(weapon); } } if (DeathStrike.UnderEffect(Caster)) { Caster.Send(new SetNewSpell(0xF6, 0)); DeathStrike.m_Table.Remove(Caster); } if (KiAttack.UnderEffect(Caster)) { Caster.Send(new SetNewSpell(0xF8, 0)); KiAttack.m_Table.Remove(Caster); } if (SurpriseAttack.UnderEffect(Caster)) { Caster.Send(new SetNewSpell(0xF9, 0)); SurpriseAttack.m_Table.Remove(Caster); } if (Backstab.UnderEffect(Caster)) { Caster.Send(new SetNewSpell(0xFA, 0)); Backstab.m_Table.Remove(Caster); } return(true); }
public void SetSkillInfo(GameObject obj, GameObject skill, int skillType, bool showEff) { CastSkill component = obj.GetComponent <CastSkill>(); component.SetSkillInfo(skill, skillType, showEff); }
public override bool CheckCast() { if (!base.CheckCast()) { return(false); } if (Caster is PlayerMobile) { if (!CheckExpansion(Caster)) { Caster.SendLocalizedMessage(1072176); // You must upgrade to the Mondain's Legacy Expansion Pack before using that ability return(false); } PlayerMobile pm = Caster as PlayerMobile; if (!pm.Arcanist) { pm.SendLocalizedMessage(1073220); // You must have completed the epic arcanist quest to use this ability. return(false); } } int mana = ScaleMana(RequiredMana); if (Caster.Mana < mana) { Caster.SendLocalizedMessage(1060174, mana.ToString()); // You must have at least ~1_MANA_REQUIREMENT~ Mana to use this ability. return(false); } if (Caster.Skills[CastSkill].Value < RequiredSkill) { Caster.SendLocalizedMessage(1063013, String.Format("{0}\t{1}\t ", RequiredSkill.ToString("F1"), CastSkill.ToString())); // You need at least ~1_SKILL_REQUIREMENT~ ~2_SKILL_NAME~ skill to use that ability. return(false); } return(true); }
public override bool CheckCast() { if (!base.CheckCast()) { return(false); } if (!SamuraiSpell.CheckExpansion(Caster)) { Caster.SendLocalizedMessage(1063456); // You must upgrade to Samurai Empire in order to use that ability. return(false); } if (Caster.Skills[SkillName.Ninjitsu].Value < RequiredSkill) { string args = String.Format("{0}\t{1}\t ", RequiredSkill.ToString("F1"), CastSkill.ToString()); Caster.SendLocalizedMessage(1063013, args); // You need at least ~1_SKILL_REQUIREMENT~ ~2_SKILL_NAME~ skill to use that ability. return(false); } else if (Caster.Mana < ScaleMana(RequiredMana)) { Caster.SendLocalizedMessage(1060174, RequiredMana.ToString()); // You must have at least ~1_MANA_REQUIREMENT~ Mana to use this ability. return(false); } if (FocusAttack.UnderEffect(Caster) || DeathStrike.UnderEffect(Caster) || SurpriseAttack.UnderEffect(Caster) || Backstab.UnderEffect(Caster) || KiAttack.UnderEffect(Caster)) { return(true); } if (AnimalForm.UnderEffect(Caster)) { if (this is FocusAttack || this is DeathStrike || this is KiAttack || this is SurpriseAttack || this is Backstab) { Caster.SendLocalizedMessage(1063024); // You cannot perform this special move right now. return(false); } } WeaponAbility ability = WeaponAbility.GetCurrentAbility(Caster); if (ability != null) { WeaponAbility.ClearCurrentAbility(Caster); } if (HonorableExecution.UnderEffect(Caster)) { Caster.Send(new SetNewSpell(0x91, 0)); HonorableExecution.m_Table.Remove(Caster); } if (LightningStrike.UnderEffect(Caster)) { Caster.Send(new SetNewSpell(0x95, 0)); LightningStrike.m_Table.Remove(Caster); } if (MomentumStrike.UnderEffect(Caster)) { Caster.Send(new SetNewSpell(0x96, 0)); MomentumStrike.m_Table.Remove(Caster); } return(true); }
public override bool CheckCast() { if (!base.CheckCast()) { return(false); } if (Caster.Skills[SkillName.Bushido].Value < RequiredSkill) { string args = String.Format("{0}\t{1}\t ", RequiredSkill.ToString("F1"), CastSkill.ToString()); Caster.SendLocalizedMessage(1063013, args); // You need at least ~1_SKILL_REQUIREMENT~ ~2_SKILL_NAME~ skill to use that ability. return(false); } else if (Caster.Mana < ScaleMana(RequiredMana)) { Caster.SendLocalizedMessage(1060174, RequiredMana.ToString()); // You must have at least ~1_MANA_REQUIREMENT~ Mana to use this ability. return(false); } return(true); }