You can use SourceHook to hook any virtual class functions you want. You can 
use it to overwrite parameters like you want to before calling the original 
function.

However, I don't think you can use it to hook a function, do some stuff, and 
then skip that function and call the baseclass's function. You either have to 
call or skip the entire thing after the hook.

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of coderdude
Sent: Friday, February 01, 2008 6:27 AM
To: [email protected]
Subject: [hlcoders] Overriding engine interfaces

I need to hook an engine's interface (inside the actual code, not an external 
process, It's not a cheat nor a bot).
How do I hook classes like IEngineSound, IFileSystem, IVModelInfo without 
completely overriding it.
Like making CVModelInfo, overriding functions and calling BaseClass::function() 
from there (eg. to overwrite some parameters) but I'm sure that I couldn't call 
a function that is pure virtual (so BaseClass::PureVirtFunc() will produce an 
error) and I need to keep the original code running. Is it even possible?

_______________________________________________
To unsubscribe, edit your list preferences, or view the list archives, please 
visit:
http://list.valvesoftware.com/mailman/listinfo/hlcoders



_______________________________________________
To unsubscribe, edit your list preferences, or view the list archives, please 
visit:
http://list.valvesoftware.com/mailman/listinfo/hlcoders

Reply via email to