diff --git a/src/game/g_grid.pas b/src/game/g_grid.pas
index d1149adf46c64d47c5790f5731c2ea56e90ea278..8ff01a629340b582ad58c0cb40046f8b80c251a3 100644 (file)
--- a/src/game/g_grid.pas
+++ b/src/game/g_grid.pas
mProxyCount := 0;
mProxyMaxCount := 0;
mUData := 0;
- mTagMask := 0;
+ mTagMask := -1;
mItCB := nil;
e_WriteLog(Format('created grid with size: %dx%d (tile size: %d); pix: %dx%d', [mWidth, mHeight, mTileSize, mWidth*mTileSize, mHeight*mTileSize]), MSG_NOTIFY);
end;
begin
if (pi.bodies[f] = -1) then break;
px := @mProxies[pi.bodies[f]];
- if (px.mQueryMark <> mLastQuery) and ((px.mTag and mTagMask) <> 0) then
+ if (px.mQueryMark <> mLastQuery) and ((mTagMask = -1) or ((px.mTag and mTagMask) <> 0)) then
begin
//e_WriteLog(Format(' query #%d body hit: (%d,%d)-(%dx%d) tag:%d', [mLastQuery, mCells[idx].body.mX, mCells[idx].body.mY, mCells[idx].body.mWidth, mCells[idx].body.mHeight, mCells[idx].body.mTag]), MSG_NOTIFY);
px.mQueryMark := mLastQuery;
if (mCells[idx].body <> -1) then
begin
px := @mProxies[mCells[idx].body];
- if (px.mQueryMark <> mLastQuery) and ((px.mTag and mTagMask) <> 0) then
+ if (px.mQueryMark <> mLastQuery) and ((mTagMask = -1) or ((px.mTag and mTagMask) <> 0)) then
begin
//e_WriteLog(Format(' query #%d body hit: (%d,%d)-(%dx%d) tag:%d', [mLastQuery, mCells[idx].body.mX, mCells[idx].body.mY, mCells[idx].body.mWidth, mCells[idx].body.mHeight, mCells[idx].body.mTag]), MSG_NOTIFY);
px.mQueryMark := mLastQuery;