1618 if (image & 0x8000) image |= ormod; |
1618 if (image & 0x8000) image |= ormod; |
1619 DrawSprite(image + railtype, x + pt.x, y + pt.y); |
1619 DrawSprite(image + railtype, x + pt.x, y + pt.y); |
1620 } |
1620 } |
1621 } |
1621 } |
1622 |
1622 |
|
1623 void DrawCheckpointSprite(int x, int y, int stat_id) |
|
1624 { |
|
1625 // TODO: We should use supersets with cargo-id FF, if available. --pasky |
|
1626 DrawTileSprites *cust = GetCustomStation('WAYP', stat_id); |
|
1627 DrawTileSeqStruct const *seq; |
|
1628 uint32 ormod, img; |
|
1629 |
|
1630 assert(cust); |
|
1631 |
|
1632 // emulate station tile - open with building |
|
1633 // add 1 to get the other direction |
|
1634 cust = &cust[2]; |
|
1635 |
|
1636 ormod = SPRITE_PALETTE(PLAYER_SPRITE_COLOR(_local_player)); |
|
1637 |
|
1638 x += 33; |
|
1639 y += 17; |
|
1640 |
|
1641 img = cust->ground_sprite; |
|
1642 if (img & 0x8000) img = (img & 0x7FFF); |
|
1643 DrawSprite(img, x, y); |
|
1644 |
|
1645 foreach_draw_tile_seq(seq, cust->seq) { |
|
1646 Point pt = RemapCoords(seq->delta_x, seq->delta_y, seq->delta_z); |
|
1647 DrawSprite((seq->image&0x3FFF) | ormod, x + pt.x, y + pt.y); |
|
1648 } |
|
1649 } |
|
1650 |
|
1651 |
1623 #define NUM_SSD_ENTRY 256 |
1652 #define NUM_SSD_ENTRY 256 |
1624 #define NUM_SSD_STACK 32 |
1653 #define NUM_SSD_STACK 32 |
1625 |
1654 |
1626 typedef struct SetSignalsData { |
1655 typedef struct SetSignalsData { |
1627 int cur; |
1656 int cur; |