static inline Owner GetCanalOwner(TileIndex t) { if (!HasTileWaterGround(t)) return GetTileOwner(t); Owner o = (Owner)(GB(_me[t].m6, 0, 2) | (GB(_me[t].m6, 6, 2) << 2)); /* Canals don't need OWNER_TOWN, and remapping OWNER_NONE * to OWNER_TOWN makes it use one bit less. */ return o == OWNER_TOWN ? OWNER_NONE : o; }