/// <summary> /// Handler for chat log parser /// </summary> public override void ParseChat(AutoKillerScript.clsAutoKillerScript.AutokillerRegExEventParams e) { string logline = e.Logline; // _ak.AddString(7, "You prepare your shot"); // _ak.AddString(8, "You miss"); // _ak.AddString(9, "You move and interrupt"); // _ak.AddString(10, "You shoot"); if (logline.IndexOf("You prepare to perform") > -1) { playerSwinging = true; } if (logline.IndexOf("You miss") > -1 || logline.IndexOf("You hit ") > -1 || logline.IndexOf("You attack ") > -1 || logline.IndexOf("You fumble ") > -1 || logline.IndexOf("You move and interrupt") > -1 || logline.IndexOf("You shoot") > -1 ) { playerShooting = false; playerSwinging = false; } //Did we block, and if so is there a block style to use? if (logline.IndexOf("you block the blow") > -1 && profile.GetString("Scout.SlashBlockQ") != "" && profile.GetString("Scout.SlashBlockKey") != "") { nextMelee = eMeleeFights.Blocked; } base.ParseChat(e); }
// The XP gotten through this function does not include rested xp private void XPNotification(AutoKillerScript.clsAutoKillerScript.AutokillerRegExEventParams e) { string xp = e.Logline; //we watch for two kinds of lines //The zombie servant kills the lesser water elemental! //You get 1,216 experience points. (576 camp bonus) Match mm = _combat_monster_name.Match(xp); if (mm.Success) { lastMonster = mm.Groups["monster"].Value; } Match m = _combat_xp_gain.Match(xp); if (m.Success) { int ixp = int.Parse(m.Groups["xp"].Value, System.Globalization.NumberStyles.AllowThousands); AddKill(lastMonster, ixp); AddKill("Total Kills", ixp); } if (xp.IndexOf("You have died.") != -1) { AddKill("Player Deaths", 0); } }
private void RawLogLine(AutoKillerScript.clsAutoKillerScript.AutokillerRegExEventParams e) { string rawlogline = e.Logline; lbRawChatLog.Items.Insert( 0, rawlogline); if( lbRawChatLog.Items.Count > 256) lbRawChatLog.Items.RemoveAt( 256); // Is this a communication from a player or to a player? if( rawlogline.IndexOf("@@") > -1) { lbWhispers.Items.Insert( 0, rawlogline); if( lbWhispers.Items.Count > 256) lbWhispers.Items.RemoveAt( 256); } }
/// <summary> /// Handler for chat log parser /// </summary> public override void ParseChat(AutoKillerScript.clsAutoKillerScript.AutokillerRegExEventParams e) { string logline = e.Logline; if (logline.IndexOf("can't see its target!") > -1) { AddMessage("Can't see target!"); bNoLineOfSight = true; } if (logline.IndexOf("servant is too far away from you ") > -1) { AddMessage("Servant wandered off!"); //put pet back in passive mode so it doesnt run to mob UseQbar(profile.GetString("Necro.PetPassiveQ"), profile.GetString("Necro.PetPassiveKey")); } base.ParseChat(e); }