--- a/rail_cmd.c Mon Aug 01 13:01:14 2005 +0000
+++ b/rail_cmd.c Mon Aug 01 16:31:19 2005 +0000
@@ -26,6 +26,13 @@
extern uint16 _custom_sprites_base;
+const byte _track_sloped_sprites[14] = {
+ 14, 15, 22, 13,
+ 0, 21, 17, 12,
+ 23, 0, 18, 20,
+ 19, 16
+};
+
void ShowTrainDepotWindow(TileIndex tile);
/* Format of rail map5 byte.
@@ -1587,6 +1594,24 @@
}
}
+void DrawDefaultWaypointSprite(int x, int y, int railtype)
+{
+ const DrawTrackSeqStruct *dtss = _track_depot_layout_table[4];
+ const RailtypeInfo *rti = GetRailTypeInfo(railtype);
+ uint32 img;
+
+ img = dtss++->image;
+ if (img & PALETTE_MODIFIER_COLOR) img = (img & SPRITE_MASK) + rti->total_offset;
+ DrawSprite(img, x, y);
+
+ for (; dtss->image != 0; dtss++) {
+ Point pt = RemapCoords(dtss->subcoord_x, dtss->subcoord_y, 0);
+ img = dtss->image;
+ if (img & PALETTE_MODIFIER_COLOR) img |= PLAYER_SPRITE_COLOR(_local_player);
+ DrawSprite(img, x + pt.x, y + pt.y);
+ }
+}
+
typedef struct SetSignalsData {
int cur;
int cur_stack;