using System;
using System.Collections.Generic;
using LavishScriptAPI;
namespace MRBot.IsxEq2.Events
{
///
/// This contains Event Handlers and Raisers for all EQ2Events
///
public class EQ2Event
{
#region Constructor/Deconstructor
///
/// Constructor. Attaches all events.
///
public EQ2Event()
{
Attach("EQ2_ActorSpawned", OnActorSpawned);
Attach("EQ2_ActorDespawned", OnActorDespawned);
Attach("EQ2_CastingStarted", OnCastingStarted);
Attach("EQ2_CastingEnded", OnCastingEnded);
Attach("EQ2_ActorPowerChange", OnActorPowerChange);
Attach("EQ2_ActorHealthChange", OnActorHealthChange);
Attach("EQ2_ActorStanceChange", OnActorStanceChange);
Attach("EQ2_ActorTargetChange", OnActorTargetChange);
Attach("EQ2_OnHOWindowStateChange", OnHOWindowStateChanged);
Attach("EQ2_onQuestOffered", OnQuestOffered);
Attach("EQ2_ReplyDialogAppeared", OnReplyDialogAppeared);
Attach("EQ2_ExamineItemWindowAppeared", OnExamineItemWindowAppeared);
Attach("EQ2_onLootWindowAppeared", OnLootWindowAppeared);
Attach("EQ2_onInventoryUpdate", OnInventoryUpdate);
Attach("EQ2_onQuestUpdate", OnQuestOffered);
Attach("EQ2_FinishedZoning", OnFinishedZoning);
Attach("EQ2_StartedZoning", OnStartedZoning);
Attach("EQ2_ExamineAchievement", OnExamineAchievement);
Attach("EQ2_onTellIgnored", OnTellIgnored);
Attach("EQ2_onIncomingChatText", OnIncomingChatText);
Attach("EQ2_onSendMailComplete", OnSendMailComplete);
Attach("EQ2_onChoiceWindowAppeared", OnChoiceWindowAppeared);
Attach("EQ2_onAnnouncement", OnAnnouncement);
Attach("EQ2_onIncomingText", OnIncomingText);
Attach("EQ2_onRewardWindowAppeared", OnRewardWindowAppeared);
Attach("EQ2_onMeAfflicted", OnMeAfflicted);
Attach("EQ2_onGroupMemberAfflicted", OnGroupMemberAfflicted);
Attach("EQ2_onRaidMemberAfflicted", OnRaidMemberAfflicted);
}
///
/// Deconstructor. Detaches all events.
///
~EQ2Event()
{
Detach("EQ2_ActorSpawned", OnActorSpawned);
Detach("EQ2_ActorDespawned", OnActorDespawned);
Detach("EQ2_CastingStarted", OnCastingStarted);
Detach("EQ2_CastingEnded", OnCastingEnded);
Detach("EQ2_ActorPowerChange", OnActorPowerChange);
Detach("EQ2_ActorHealthChange", OnActorHealthChange);
Detach("EQ2_ActorStanceChange", OnActorStanceChange);
Detach("EQ2_ActorTargetChange", OnActorTargetChange);
Detach("EQ2_OnHOWindowStateChange", OnHOWindowStateChanged);
Detach("EQ2_onQuestOffered", OnQuestOffered);
Detach("EQ2_ReplyDialogAppeared", OnReplyDialogAppeared);
Detach("EQ2_ExamineItemWindowAppeared", OnExamineItemWindowAppeared);
Detach("EQ2_onLootWindowAppeared", OnLootWindowAppeared);
Detach("EQ2_onInventoryUpdate", OnInventoryUpdate);
Detach("EQ2_onQuestUpdate", OnQuestUpdate);
Detach("EQ2_FinishedZoning", OnFinishedZoning);
Detach("EQ2_StartedZoning", OnStartedZoning);
Detach("EQ2_ExamineAchievement", OnExamineAchievement);
Detach("EQ2_onTellIgnored", OnTellIgnored);
Detach("EQ2_onIncomingChatText", OnIncomingChatText);
Detach("EQ2_onSendMailComplete", OnSendMailComplete);
Detach("EQ2_onChoiceWindowAppeared", OnChoiceWindowAppeared);
Detach("EQ2_onAnnouncement", OnAnnouncement);
Detach("EQ2_onIncomingText", OnIncomingText);
Detach("EQ2_onRewardWindowAppeared", OnRewardWindowAppeared);
Detach("EQ2_onMeAfflicted", OnMeAfflicted);
Detach("EQ2_onGroupMemberAfflicted", OnGroupMemberAfflicted);
Detach("EQ2_onRaidMemberAfflicted", OnRaidMemberAfflicted);
}
#endregion
#region Event Handlers and Raisers
#region EQ2_ActorSpawned
///
/// EQ2_ActorSpawned Event Handler
///
public event EventHandler ActorSpawned;
///
/// EQ2_Actor Spawned Event Raiser
///
/// sender
/// arguments
protected virtual void OnActorSpawned(object sender, LSEventArgs e)
{
var temp = ActorSpawned;
if (temp != null)
temp(sender, new ActorSpawnedEventArgs(e.Args));
}
///
/// EQ2_ActorSpawned Event Args
///
public class ActorSpawnedEventArgs : LSEventArgs
{
internal ActorSpawnedEventArgs(params string[] args) : base(args) { }
///
/// Actor ID
///
public int ID
{
get { return Convert.ToInt32(Args[0]); }
}
///
/// Actor Name
///
public string Name
{
get { return Args[1]; }
}
///
/// Actor Level
///
public int Level
{
get { return Convert.ToInt32(Args[2]); }
}
///
/// Actor Type
///
public string Type
{
get { return Args[3]; }
}
}
#endregion
#region EQ2ActorDespawned
///
/// EQ2_ActorDespawned Event Handler
///
public event EventHandler ActorDespawned;
///
/// EQ2_ActorDespawned Event Raiser
///
/// sender
/// arguments
protected virtual void OnActorDespawned(object sender, LSEventArgs e)
{
var temp = ActorDespawned;
if (temp != null)
temp(sender, new ActorDespawnedEventArgs(e.Args));
}
///
/// EQ2_ActorDespawned Event Args
///
public class ActorDespawnedEventArgs : LSEventArgs
{
internal ActorDespawnedEventArgs(params string[] args) : base(args) { }
///
/// Actor ID
///
public int ID
{
get { return Convert.ToInt32(Args[0]); }
}
///
/// Name
///
public string Name
{
get { return Args[1]; }
}
}
#endregion
#region EQ2_CastingStarted
///
/// EQ2_CastingStarted Event Handler
///
public event EventHandler CastingStarted;
///
/// EQ2_CastingStarted Event Raiser
///
/// sender
/// arguments
protected virtual void OnCastingStarted(object sender, LSEventArgs e)
{
var temp = CastingStarted;
if (temp != null)
temp(sender, e);
}
#endregion
#region EQ2_CastingEnded
///
/// EQ2_CastingEnded Event Handler
///
public event EventHandler CastingEnded;
///
/// EQ2_CastingEnded Event Raiser
///
/// sender
/// arguments
protected virtual void OnCastingEnded(object sender, LSEventArgs e)
{
var temp = CastingEnded;
if (temp != null)
temp(sender, e);
}
#endregion
#region EQ2_ActorPowerChange
///
/// EQ2_ActorPowerChange Event Handler. Requires ISXEQ2.EnableActorEvents().
/// Disabled by default.
///
public event EventHandler ActorPowerChange;
///
/// EQ2_ActorPowerChange Event Raiser
///
/// sender
/// arguments
protected virtual void OnActorPowerChange(object sender, LSEventArgs e)
{
var temp = ActorPowerChange;
if (temp != null)
temp(sender, new ActorPowerChangeEventArgs(e.Args));
}
///
/// EQ2_ActorPowerChange Event Args
///
public class ActorPowerChangeEventArgs : LSEventArgs
{
internal ActorPowerChangeEventArgs(params string[] args) : base(args) { }
///
/// Actor ID
///
public int ID
{
get { return Convert.ToInt32(Args[0]); }
}
///
/// Actor Name
///
public string Name
{
get { return Args[1]; }
}
///
/// Actor Type
///
public string Type
{
get { return Args[2]; }
}
///
/// Actor Old Power
///
public int OldPower
{
get { return Convert.ToInt32(Args[3]); }
}
///
/// Actor New Power
///
public int NewPower
{
get { return Convert.ToInt32(Args[4]); }
}
///
/// Distance to Actor
///
public float Distance
{
get { return Convert.ToSingle(Args[5]); }
}
///
/// Returns TRUE if the actor is in the characters group
///
public bool IsInGroup
{
get { return Convert.ToBoolean(Args[6]); }
}
///
/// Returns TRUE if the actor is in the characters raid
///
public bool IsInRaid
{
get { return Convert.ToBoolean(Args[7]); }
}
}
#endregion
#region EQ2_ActorHealthChange
///
/// EQ2_ActorHealthChange Event Handler. Requires ISXEQ2.EnableActorEvents().
/// Disabled by default.
///
public event EventHandler ActorHealthChange;
///
/// EQ2_ActorHealthChange Event Raiser
///
/// sender
/// arguments
protected virtual void OnActorHealthChange(object sender, LSEventArgs e)
{
var temp = ActorHealthChange;
if (temp != null)
temp(sender, new ActorHealthChangeEventArgs(e.Args));
}
///
/// EQ2_ActorHealthChange Event Args
///
public class ActorHealthChangeEventArgs : LSEventArgs
{
internal ActorHealthChangeEventArgs(params string[] args) : base(args) { }
///
/// Actor ID
///
public int ID
{
get { return Convert.ToInt32(Args[0]); }
}
///
/// Actor Name
///
public string Name
{
get { return Args[1]; }
}
///
/// Actor Type
///
public string Type
{
get { return Args[2]; }
}
///
/// Actor Old Power
///
public int OldHealth
{
get { return Convert.ToInt32(Args[3]); }
}
///
/// Actor New Power
///
public int NewHealth
{
get { return Convert.ToInt32(Args[4]); }
}
///
/// Distance to Actor
///
public float Distance
{
get { return Convert.ToSingle(Args[5]); }
}
///
/// Returns TRUE if the actor is in the characters group
///
public bool IsInGroup
{
get { return Convert.ToBoolean(Args[6]); }
}
///
/// Returns TRUE if the actor is in the characters raid
///
public bool IsInRaid
{
get { return Convert.ToBoolean(Args[7]); }
}
}
#endregion
#region EQ2_ActorStanceChange
///
/// EQ2_ActorStanceChange Event Handler. Requires ISXEQ2.EnableActorEvents().
/// Disabled by default.
///
public event EventHandler ActorStanceChange;
///
/// EQ2_ActorStanceChange Event Raiser
///
/// sender
/// arguments
protected virtual void OnActorStanceChange(object sender, LSEventArgs e)
{
var temp = ActorStanceChange;
if (temp != null)
temp(sender, new ActorStanceChangeEventArgs(e.Args));
}
///
/// EQ2_ActorStanceChange Event Args
///
public class ActorStanceChangeEventArgs : LSEventArgs
{
internal ActorStanceChangeEventArgs(params string[] args) : base(args) { }
///
/// Actor ID
///
public int ID
{
get { return Convert.ToInt32(Args[0]); }
}
///
/// Actor Name
///
public string Name
{
get { return Args[1]; }
}
///
/// Actor Type
///
public string Type
{
get { return Args[2]; }
}
///
/// Actor Old Stance (IN_COMBAT, AT_PEACE, DEAD)
///
public int OldStance
{
get { return Convert.ToInt32(Args[3]); }
}
///
/// Actor New Power (IN_COMBAT, AT_PEACE, DEAD)
///
public int NewStance
{
get { return Convert.ToInt32(Args[4]); }
}
///
/// Target ID
///
public int TargetID
{
get { return Convert.ToInt32(Args[5]); }
}
///
/// Distance to Actor
///
public float Distance
{
get { return Convert.ToSingle(Args[6]); }
}
///
/// Returns TRUE if the actor is in the characters group
///
public bool IsInGroup
{
get { return Convert.ToBoolean(Args[7]); }
}
///
/// Returns TRUE if the actor is in the characters raid
///
public bool IsInRaid
{
get { return Convert.ToBoolean(Args[8]); }
}
}
#endregion
#region EQ2_ActorTargetChange
///
/// EQ2_ActorTargetChange Event Handler. Requires ISXEQ2.EnableActorEvents().
/// Disabled by default.
///
public event EventHandler ActorTargetChange;
///
/// EQ2_ActorTargetChange Event Raiser
///
/// sender
/// arguments
protected virtual void OnActorTargetChange(object sender, LSEventArgs e)
{
var temp = ActorTargetChange;
if (temp != null)
temp(sender, new ActorTargetChangeEventArgs(e.Args));
}
///
/// EQ2_ActorTargetChange Event Args
///
public class ActorTargetChangeEventArgs : LSEventArgs
{
internal ActorTargetChangeEventArgs(params string[] args) : base(args) { }
///
/// Actor ID
///
public int ID
{
get { return Convert.ToInt32(Args[0]); }
}
///
/// Actor Name
///
public string Name
{
get { return Args[1]; }
}
///
/// Actor Type
///
public string Type
{
get { return Args[2]; }
}
///
/// Actor Old Power
///
public int OldTargetID
{
get { return Convert.ToInt32(Args[3]); }
}
///
/// Actor New Power
///
public int NewTargetID
{
get { return Convert.ToInt32(Args[4]); }
}
///
/// Distance to Actor
///
public float Distance
{
get { return Convert.ToSingle(Args[5]); }
}
///
/// Returns TRUE if the actor is in the characters group
///
public bool IsInGroup
{
get { return Convert.ToBoolean(Args[6]); }
}
///
/// Returns TRUE if the actor is in the characters raid
///
public bool IsInRaid
{
get { return Convert.ToBoolean(Args[7]); }
}
}
#endregion
#region EQ2_OnHOWindowStateChanged
///
/// EQ2_OnHOWindowStateChanged Event Handler
///
public event EventHandler HOWindowStateChanged;
///
/// EQ2_OnHOWindowStateChanged Event Raiser
///
///
///
protected virtual void OnHOWindowStateChanged(object sender, LSEventArgs e)
{
var temp = HOWindowStateChanged;
if (temp != null)
temp(sender, e);
}
#endregion
#region EQ2_ExamineAchievement
///
/// EQ2_ExamineAchievement Event Handler
///
public event EventHandler ExamineAchievement;
///
/// EQ2_ExamineAchievement Event Raiser
///
/// sender
/// arguments
protected virtual void OnExamineAchievement(object sender, LSEventArgs e)
{
var temp = ExamineAchievement;
if (temp != null)
temp(sender, e);
}
///
/// EQ2_ExamineAchievement Event Args
///
public class ExamineAchievementEventArgs : LSEventArgs
{
internal ExamineAchievementEventArgs(params string[] args) : base(args) { }
///
/// Achievement Type
///
public string Type
{
get { return Args[0]; }
}
///
/// Achievement ID
///
public string ID
{
get { return Args[1]; }
}
}
#endregion
#region EQ2_onQuestOffered
///
/// EQ2_onQuestOffered Event Handler
///
public event EventHandler QuestOffered;
///
/// EQ2_onQuestOffered Event Raiser
///
/// sender
/// arguments
protected virtual void OnQuestOffered(object sender, LSEventArgs e)
{
var temp = QuestOffered;
if (temp != null)
temp(sender, new QuestOfferedEventArgs(e.Args));
}
///
/// Event Agruments for EQ2_onQuestOffered
///
public class QuestOfferedEventArgs : LSEventArgs
{
internal QuestOfferedEventArgs(params string[] args) : base(args) { }
///
/// Quest Name
///
public string Name
{
get { return Args[0]; }
}
///
/// Quest Description
///
public string Description
{
get { return Args[1]; }
}
///
/// Quest Level
///
public int Level
{
get { return Convert.ToInt32(Args[2]); }
}
///
/// Status Reward
///
public int Status
{
get { return Convert.ToInt32(Args[3]); }
}
}
#endregion
#region EQ2_ReplyDialogAppeared
///
/// EQ2_ReplyDialogAppeared Event Handler
///
public event EventHandler ReplyDialogAppeared;
///
/// EQ2_ReplyDialogAppeared Event Raiser
///
/// sender
/// arguments
protected virtual void OnReplyDialogAppeared(object sender, LSEventArgs e)
{
var temp = ReplyDialogAppeared;
if(temp != null)
temp(sender, new ReplyDialogAppearedEventArgs(e.Args));
}
///
/// EQ2_ReplyDialogAppeared Event Args
///
public class ReplyDialogAppearedEventArgs : LSEventArgs
{
internal ReplyDialogAppearedEventArgs(params string[] args) : base(args) { }
///
/// Window ID
///
public int WindowID
{
get { return Convert.ToInt32(Args[0]); }
}
}
#endregion
#region EQ2_ExamineItemWindowAppeared
///
/// EQ2_ExamineItemWindowAppeared Event Handler
///
public event EventHandler ExamineItemWindowAppeared;
///
/// EQ2_ExamineItemWindowAppeared Event Raiser
///
/// sender
/// arguments
protected virtual void OnExamineItemWindowAppeared(object sender, LSEventArgs e)
{
var temp = ExamineItemWindowAppeared;
if(temp != null)
temp(sender, new ExamineItemWindowAppearedEventArgs(e.Args));
}
///
/// EQ2_ExamineItemWindowAppeared Event Args
///
public class ExamineItemWindowAppearedEventArgs : LSEventArgs
{
internal ExamineItemWindowAppearedEventArgs(params string[] args) : base(args) { }
///
/// Item Name
///
public string ItemName
{
get { return Args[0]; }
}
///
/// Window ID
///
public int WindowID
{
get { return Convert.ToInt32(Args[1]); }
}
}
#endregion
#region EQ2_onLootWindowAppeared
///
/// EQ2_onLootWindowAppeared Event Handler
///
public event EventHandler LootWindowAppeared;
///
/// EQ2_onLootWindowAppeared Event Raiser
///
/// sender
/// arguments
protected virtual void OnLootWindowAppeared(object sender, LSEventArgs e)
{
var temp = LootWindowAppeared;
if (temp != null)
temp(sender, new LootWindowAppearedArgs(e.Args));
}
///
/// Event Arguments for EQ2_onLootWindowAppeared
///
public class LootWindowAppearedArgs : LSEventArgs
{
internal LootWindowAppearedArgs(params string[] args) : base(args) { }
///
/// Loot Window ID
///
public int LootWindowID
{
get { return Convert.ToInt32(Args[0]); }
}
}
#endregion
#region EQ2_onInventoryUpdate
///
/// EQ2_onInventoryUpdate Event Handler
///
public event EventHandler InventoryUpdate;
///
/// EQ2_onInventoryUpdate Event Raiser
///
/// sender
/// arguments
protected virtual void OnInventoryUpdate(object sender, LSEventArgs e)
{
var temp = InventoryUpdate;
if (temp != null)
temp(sender, e);
}
#endregion
#region EQ2_onQuestUpdate
///
/// EQ2_onQuestUpdate Event Handler
///
public event EventHandler QuestUpdate;
///
/// EQ2_onQuestUpdate Event Raiser
///
/// sender
/// arguments
protected virtual void OnQuestUpdate(object sender, LSEventArgs e)
{
var temp = QuestUpdate;
if (temp != null)
temp(sender, new QuestUpdateEventArgs(e.Args));
}
///
/// Event Arguments for EQ2_onQuestUpdate
///
public class QuestUpdateEventArgs : LSEventArgs
{
internal QuestUpdateEventArgs(params string[] args) : base(args) { }
///
/// Quest ID
///
public int QuestID
{
get { return Convert.ToInt32(Args[0]); }
}
///
/// Quest Name
///
public string QuestName
{
get { return Args[1]; }
}
///
/// Quest Current Zone
///
public string QuestCurrentZone
{
get { return Args[2]; }
}
///
/// Quest Category
///
public string QuestCategory
{
get { return Args[3]; }
}
///
/// Quest Description
///
public string QuestDescription
{
get { return Args[4]; }
}
/// TODO:Troubleshoot QuestUpdateEventArgs ProgressText
///
/// Quest Progess Text
///
public string[] QuestProgressText
{
get
{
var list = new List();
for (var i = 5; i < Args.Length; i++)
{
list.Add(Args[i]);
}
return list.ToArray();
}
}
}
#endregion
#region EQ2_FinishedZoning
///
/// EQ2_FinishedZoning Event Handler
///
public event EventHandler FinishedZoning;
///
/// EQ2_FinishedZoning Event Raiser
///
/// sender
/// arguments
protected virtual void OnFinishedZoning(object sender, LSEventArgs e)
{
var temp = FinishedZoning;
if(temp != null)
temp(sender, new FinishedZoningEventArgs(e.Args));
}
///
/// EQ2_FinishedZoning Event Args
///
public class FinishedZoningEventArgs : LSEventArgs
{
internal FinishedZoningEventArgs(params string[] args) : base(args) { }
///
/// Returns a string of the time in seconds required to zone
///
public float TimeInSeconds
{
get { return Convert.ToSingle(Args[0]); }
}
}
#endregion
#region EQ2_StartedZoning
///
/// EQ2_StartedZoning Event Handler
///
public event EventHandler StartedZoning;
///
/// EQ2_StartedZoning Event Raiser
///
/// sender
/// arguments
protected virtual void OnStartedZoning(object sender, LSEventArgs e)
{
var temp = StartedZoning;
if (temp != null)
temp(sender, e);
}
#endregion
#region EQ2_onTellIgnored
///
/// EQ2_onTellIgnored Event Handler
///
public event EventHandler TellIgnored;
///
/// EQ2_onTellIgnored Event Raiser
///
///
///
protected internal void OnTellIgnored(object sender, LSEventArgs e)
{
var temp = TellIgnored;
if(temp != null)
temp(sender, new TellIgnoredEventArgs(e.Args));
}
///
/// EQ2_onTellIgnored Event Args
///
public class TellIgnoredEventArgs : LSEventArgs
{
internal TellIgnoredEventArgs(params string[] args) : base(args) { }
///
/// Message
///
public string Message
{
get { return Args[0]; }
}
///
/// Speaker
///
public string Speaker
{
get { return Args[1]; }
}
}
#endregion
#region EQ2_onIncomingChatText
///
/// EQ2_onIncomingChatText Event Handler
///
public event EventHandler IncomingChatText;
///
/// EQ2_onIncomingChatText Event Raiser
///
/// sender
/// arguments
protected virtual void OnIncomingChatText(object sender, LSEventArgs e)
{
var temp = IncomingChatText;
if(temp != null)
temp(sender, new IncomingChatTextEventArgs(e.Args));
}
///
/// EQ2_onIncomingChatText
///
public class IncomingChatTextEventArgs : LSEventArgs
{
internal IncomingChatTextEventArgs(params string[] args) : base(args) { }
///
/// Chat Type
///
public int ChatType
{
get { return Convert.ToInt32(Args[0]); }
}
///
/// Message
///
public string Message
{
get { return Args[1]; }
}
///
/// Speaker
///
public string Speaker
{
get { return Args[2]; }
}
///
/// Target
///
public string Target
{
get { return Args[3]; }
}
///
/// Returns TRUE if the speaker is an NPC
///
public bool SpeakerIsNPC
{
get { return Convert.ToBoolean(Args[4]); }
}
///
/// Channel Name
///
public string ChannelName
{
get { return Args[5]; }
}
///
/// Speaker ID
///
public int SpeakerID
{
get { return Convert.ToInt32(Args[6]); }
}
///
/// Target ID
///
public int TargetID
{
get { return Convert.ToInt32(Args[7]); }
}
}
#endregion
#region EQ2_onSendMailComplete
///
/// EQ2_onSendMailComplete Event Handler
///
public event EventHandler SendMailComplete;
///
/// EQ2_onSendMailComplete Event Raiser
///
/// sender
/// arguments
protected virtual void OnSendMailComplete(object sender, LSEventArgs e)
{
var temp = SendMailComplete;
if (temp != null)
temp(sender, e);
}
#endregion
#region EQ2_onChoiceWindowAppeared
///
/// EQ2_onChoiceWindowAppeared Event Handler
///
public event EventHandler ChoiceWindowAppeared;
///
/// EQ2_onChoiceWindowAppeared Event Raiser
///
/// sender
/// arguments
protected virtual void OnChoiceWindowAppeared(object sender, LSEventArgs e)
{
var temp = ChoiceWindowAppeared;
if (temp != null)
temp(sender, e);
}
#endregion
#region EQ2_onAnnouncement
///
/// EQ2_onAnnouncement Event Handler
///
public event EventHandler Announcement;
///
/// EQ2_onAnnouncement Event Raiser
///
/// sender
/// arguments
protected virtual void OnAnnouncement(object sender, LSEventArgs e)
{
var temp = Announcement;
if (temp != null)
temp(sender, new AnnouncementEventArgs(e.Args));
}
///
/// EQ2_onAnnouncement Event Args
///
public class AnnouncementEventArgs : LSEventArgs
{
internal AnnouncementEventArgs(params string[] args) : base(args) { }
///
/// Announcement Text
///
public string Text
{ get { return Args[0]; } }
///
/// Sound Type
///
public string SoundType
{
get { return Args[1]; }
}
}
#endregion
#region EQ2_onIncomingText
///
/// EQ2_onIncomingText Event Handler
///
public event EventHandler IncomingText;
///
/// EQ2_onIncomingText Event Raiser
///
/// sender
/// arguments
protected virtual void OnIncomingText(object sender, LSEventArgs e)
{
var temp = IncomingText;
if(temp != null)
temp(sender, new IncomingTextEventArgs(e.Args));
}
///
/// EQ2_onIncomingText Event Args
///
public class IncomingTextEventArgs : LSEventArgs
{
internal IncomingTextEventArgs(params string[] args) : base(args) { }
///
/// Text
///
public string Text
{
get { return Args[0]; }
}
}
#endregion
#region EQ2_onRewardWindowAppeared
///
/// EQ2_onRewardWindowAppeared Event Handler
///
public event EventHandler RewardWindowAppeared;
///
/// EQ2_onRewardWindowAppeared Event Raiser
///
/// sender
/// arguments
protected virtual void OnRewardWindowAppeared(object sender, LSEventArgs e)
{
var temp = RewardWindowAppeared;
if (temp != null)
temp(sender, e);
}
#endregion
#region EQ2_onMeAfflicted
///
/// EQ2_onMeAfflicted Event Handler
///
public event EventHandler MeAfflicted;
///
/// EQ2_onMeAfflicted Event Raiser
///
/// sender
/// arguments
protected virtual void OnMeAfflicted(object sender, LSEventArgs e)
{
var temp = MeAfflicted;
if (temp != null)
temp(sender, new MeAfflictedEventArgs(e.Args));
}
///
/// EQ2_onMeAfflicted Event Args
///
public class MeAfflictedEventArgs : LSEventArgs
{
internal MeAfflictedEventArgs(params string[] args) : base(args) { }
///
/// Trauma Counter
///
public int TraumaCounter
{
get { return Convert.ToInt32(Args[0]); }
}
///
/// Arcane Counter
///
public int ArcaneCounter
{
get { return Convert.ToInt32(Args[1]); }
}
///
/// Noxious Counter
///
public int NoxiousCounter
{
get { return Convert.ToInt32(Args[2]); }
}
///
/// Elemental Counter
///
public int ElementalCounter
{
get { return Convert.ToInt32(Args[3]); }
}
///
/// Curse Counter
///
public int CurseCounter
{
get { return Convert.ToInt32(Args[4]); }
}
}
#endregion
#region EQ2_onGroupMemberAfflicted
///
/// EQ2_onGroupMemberAfflicted Event Handler
///
public event EventHandler GroupMemberAfflicted;
///
/// EQ2_onGroupMemberAfflicted Event Raiser
///
/// sender
/// arguments
protected virtual void OnGroupMemberAfflicted(object sender, LSEventArgs e)
{
var temp = GroupMemberAfflicted;
if (temp != null)
temp(sender, new MemberAfflictedEventArgs(e.Args));
}
///
/// EQ2_onGroupMemberAfflicted and EQ2_onRaidMemberAfflicted Event Args
///
public class MemberAfflictedEventArgs : LSEventArgs
{
internal MemberAfflictedEventArgs(params string[] args) : base(args) { }
///
/// Afflicted Actor ID
///
public int ActorID
{
get { return Convert.ToInt32(Args[0]); }
}
///
/// Trauma Counter
///
public int TraumaCounter
{
get { return Convert.ToInt32(Args[1]); }
}
///
/// Arcane Counter
///
public int ArcaneCounter
{
get { return Convert.ToInt32(Args[2]); }
}
///
/// Noxious Counter
///
public int NoxiousCounter
{
get { return Convert.ToInt32(Args[3]); }
}
///
/// Elemental Counter
///
public int ElementalCounter
{
get { return Convert.ToInt32(Args[4]); }
}
///
/// Curse Counter
///
public int CurseCounter
{
get { return Convert.ToInt32(Args[5]); }
}
}
#endregion
#region EQ2_onRaidMemberAfflicted
///
/// EQ2_onRaidMemberAfflicted Event Handler
///
public event EventHandler RaidMemberAfflicted;
///
/// EQ2_onRaidMemberAfflicted Event Raiser
///
/// sender
/// arguments
protected virtual void OnRaidMemberAfflicted(object sender, LSEventArgs e)
{
var temp = RaidMemberAfflicted;
if (temp != null)
temp(sender, new MemberAfflictedEventArgs(e.Args));
}
#endregion
#endregion
#region Methods
///
/// Attaches the specified event to the specified handler.
///
/// event to attach
/// handler
private static void Attach(string eventToAttach, EventHandler handler)
{
LavishScript.Events.AttachEventTarget(LavishScript.Events.RegisterEvent(eventToAttach), handler);
}
///
/// Detaches the specified event from the specified handler.
///
/// event to detach
/// handler
private static void Detach(string eventToDetach, EventHandler handler)
{
LavishScript.Events.DetachEventTarget(LavishScript.Events.RegisterEvent(eventToDetach), handler);
}
#endregion
}
}