PHP Code:
bool:isBlocked(client){
decl Float:vecMin[3], Float:vecMax[3]
GetClientMins(client, vecMin);
GetClientMaxs(client, vecMax);
new mask=MASK_ALL;
mask &= ~MASK_WATER;
TR_TraceHullFilter(plOrigin[client], plOrigin[client], vecMin, vecMax, mask, TraceFilter);
return TR_DidHit();
}
PHP Code:
public bool:TraceFilter(entity, mask, any:data) {
new String:cls[32]; GetEdictClassname(entity, cls, sizeof(cls));
PrintToChatAll("mask: %d class: %s", mask,cls);
}
I want TR_TraceHullFilter to ignore water but can't do anything about it (isBlocked always reports true if the client origin is in water). Even the filter function doesn't report water when mask=MASK_ALL. It looks like masks are really messed up in HL2DM.