public void Execute(Ability ab, GamePlayer player) { if (player == null) { if (log.IsWarnEnabled) log.Warn("Could not retrieve player in TripleWieldAbilityHandler."); return; } if (!player.IsAlive) { player.Out.SendMessage(LanguageMgr.GetTranslation(player.Client.Account.Language, "Skill.Ability.CannotUseDead"), eChatType.CT_System, eChatLoc.CL_SystemWindow); return; } if (player.IsMezzed) { player.Out.SendMessage(LanguageMgr.GetTranslation(player.Client.Account.Language, "Skill.Ability.CannotUseMezzed"), eChatType.CT_System, eChatLoc.CL_SystemWindow); return; } if (player.IsStunned) { player.Out.SendMessage(LanguageMgr.GetTranslation(player.Client.Account.Language, "Skill.Ability.CannotUseStunned"), eChatType.CT_System, eChatLoc.CL_SystemWindow); return; } if (player.IsSitting) { player.Out.SendMessage(LanguageMgr.GetTranslation(player.Client.Account.Language, "Skill.Ability.CannotUseStanding"), eChatType.CT_System, eChatLoc.CL_SystemWindow); return; } TripleWieldEffect tw = player.EffectList.GetOfType<TripleWieldEffect>(); if (tw != null) { player.Out.SendMessage(LanguageMgr.GetTranslation(player.Client.Account.Language, "Skill.Ability.CannotUseAlreadyActive"), eChatType.CT_System, eChatLoc.CL_SystemWindow); return; } TripleWieldEffect twe = new TripleWieldEffect(DURATION * 1000); twe.Start(player); player.DisableSkill(ab, REUSE_TIMER * 1000); }
public void Execute(Ability ab, GamePlayer player) { if (player == null) { if (log.IsWarnEnabled) log.Warn("Could not retrieve player in TripleWieldAbilityHandler."); return; } if (!player.IsAlive) { player.Out.SendMessage("You cannot use this while Dead!", eChatType.CT_System, eChatLoc.CL_SystemWindow); return; } if (player.IsMezzed) { player.Out.SendMessage("You cannot use this while Mezzed!", eChatType.CT_System, eChatLoc.CL_SystemWindow); return; } if (player.IsStunned) { player.Out.SendMessage("You cannot use this while Stunned!", eChatType.CT_System, eChatLoc.CL_SystemWindow); return; } if (player.IsSitting) { player.Out.SendMessage("You must be standing to use this ability!", eChatType.CT_System, eChatLoc.CL_SystemWindow); return; } TripleWieldEffect tw = player.EffectList.GetOfType<TripleWieldEffect>(); if (tw != null) { player.Out.SendMessage("That ability is already active, wait until it expires.", eChatType.CT_System, eChatLoc.CL_SystemWindow); return; } TripleWieldEffect twe = new TripleWieldEffect(DURATION * 1000); twe.Start(player); player.DisableSkill(ab, REUSE_TIMER * 1000); }