<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=iso-8859-1" http-equiv=Content-Type>
<META content="MSHTML 5.00.2314.1000" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2>Okay, thanks to your advices I have already 
overrided the call_other function</FONT></DIV>
<DIV><FONT face=Arial size=2>with great success but I still have one bloody 
problem.</FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=Arial size=2>Here's the shadow code:</FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=Arial size=2>private mapping shadows;</FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=Arial size=2>void shadow(object ob, object trg) 
{<BR> if(!shadows[trg]) {<BR>  shadows+=([ trg: ({ ob }) 
]);<BR> }<BR> else {<BR>  shadows[trg]+=({ ob 
});<BR> }<BR>}</FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=Arial size=2>object query_shadowing(object who, object whom) 
{<BR> int i;<BR> if(!shadows[whom]) return 
0;<BR> i=member_array(who, shadows[whom]);<BR> if(i==-1) return 
0;<BR> return shadows[whom][i];<BR>}</FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=Arial size=2>object find_shadow_by_func(object trg, string func) 
{<BR> int i;<BR> object *shs;<BR></FONT><FONT face=Arial 
size=2> if(!shadows[trg]) return 0;   /* (*) THIS IS THE 
MARKED LINE!*/<BR> shs=shadows[trg];<BR> for(i=sizeof(shs);i--; ) 
{</FONT></DIV>
<DIV><FONT face=Arial size=2>  if(function_object(func, shs[i])) 
{<BR>   return 
shs[i];<BR>  }<BR> }<BR> return 0;<BR>}</FONT></DIV>
<DIV> </DIV>
<DIV> </DIV>
<DIV><FONT face=Arial size=2>And here comes the call_other:</FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=Arial size=2><FONT face=Arial size=2>static varargs mixed 
call_other(mixed obj, string func, mixed args...) {<BR> object 
ob;<BR> rlimits(-1;-1) 
{<BR>  if(objectp(obj)) ob=find_shadow_by_func(obj, 
func);<BR>  if(ob) obj=ob;<BR>  return ::call_other(obj, 
func, args...);<BR> }<BR>}</FONT></FONT></DIV>
<DIV><FONT face=Arial size=2><FONT face=Arial size=2></FONT></FONT> </DIV>
<DIV><FONT face=Arial size=2><FONT face=Arial size=2></FONT></FONT> </DIV>
<DIV><FONT face=Arial size=2><FONT face=Arial size=2>Now it still don't work. I 
have an object with shadow(this_object(), trg_ob);</FONT></FONT></DIV>
<DIV><FONT size=2><FONT face=Arial>in it but it still won't work. It seems that 
the code can't get past the line marked</FONT></FONT></DIV>
<DIV><FONT size=2><FONT face=Arial>with (*), but to me, it seems that it SHOULD 
get over it when I have called</FONT></FONT></DIV>
<DIV><FONT size=2><FONT face=Arial>shadow...</FONT></FONT></DIV>
<DIV><FONT size=2><FONT face=Arial></FONT></FONT> </DIV>
<DIV><FONT size=2><FONT face=Arial>I'm helpless, I've used all my tricks and 
tried some really interesting fixes</FONT></FONT></DIV>
<DIV><FONT size=2><FONT face=Arial>but none of them has worked. Please help a 
fellow in trouble ;)</FONT></FONT></DIV>
<DIV><FONT size=2><FONT face=Arial></FONT></FONT> </DIV>
<DIV><FONT size=2><FONT face=Arial>Regards,</FONT></FONT></DIV>
<DIV><FONT size=2><FONT face=Arial>Risto Karjalainen</FONT></FONT></DIV>
<DIV><FONT size=2><FONT face=Arial></FONT></FONT> </DIV>
<DIV><FONT size=2><FONT face=Arial>ps. The problem's prolly something too 
relevant, if so, you can call me stupid</FONT></FONT></DIV>
<DIV><FONT size=2><FONT face=Arial>      or what ever 
you wan't but PLEASE tell me where the problem 
is.<BR></DIV></FONT></FONT></BODY></HTML>