* rct2: 0x0067933B, 0x00679788, 0x00679C4A, 0x0067A117 */
| 1518 | * rct2: 0x0067933B, 0x00679788, 0x00679C4A, 0x0067A117 |
| 1519 | */ |
| 1520 | static bool IsPixelPresentRLE(const uint8_t* imgData, const int32_t x, const int32_t y) |
| 1521 | { |
| 1522 | uint16_t lineOffset; |
| 1523 | std::memcpy(&lineOffset, &imgData[y * sizeof(uint16_t)], sizeof(uint16_t)); |
| 1524 | const uint8_t* data8 = imgData + lineOffset; |
| 1525 | |
| 1526 | bool lastDataLine = false; |
| 1527 | while (!lastDataLine) |
| 1528 | { |
| 1529 | int32_t numPixels = *data8++; |
| 1530 | uint8_t pixelRunStart = *data8++; |
| 1531 | lastDataLine = numPixels & 0x80; |
| 1532 | numPixels &= 0x7F; |
| 1533 | data8 += numPixels; |
| 1534 | |
| 1535 | if (pixelRunStart <= x && x < pixelRunStart + numPixels) |
| 1536 | return true; |
| 1537 | } |
| 1538 | return false; |
| 1539 | } |
| 1540 | |
| 1541 | /** |
| 1542 | * rct2: 0x00679074 |
no outgoing calls
no test coverage detected