Be aware though that : EventSink.InvokeCastSpellRequest( new CastSpellRequestEventArgs( m, spellID, World.FindItem( serial ) ) ); is called in PacketHandler.cs to call a spell from a book.
as well as to call from Macro, etc.
Anyhow:
To clear it try this :
either open up SpellBook.cs and in Initialize method comment it out:
EventSink.OpenSpellbookRequest += new OpenSpellbookRequestEventHandler( EventSink_OpenSpellbookRequest );
EventSink.CastSpellRequest += new CastSpellRequestEventHandler( EventSink_CastSpellRequest );
Or Do
EventSink.CastSpellRequest -= new CastSpellRequestEventHandler( EventSink_CastSpellRequest ); // Which has to be done in Spellbook as it is set to private(the method which handles it..) If you made it public you could do something like:
EventSink.CastSpellRequest -= new CastSpellRequestEventHandler( SpellBook.EventSink_CastSpellRequest ); // I can't give you 100% this would work though.