From 416e2b67b13cd2238599e766ce4e6b65b6121ac8 Mon Sep 17 00:00:00 2001 From: dominik Date: Thu, 9 Dec 2004 23:16:52 +0000 Subject: [PATCH] (svn r999) New icons for the network interface, newgrf gui and the tiny euro --- data/openttd.grf | Bin 16591 -> 23016 bytes network_gui.c | 23 ++++++++++++++++------- settings_gui.c | 2 +- spritecache.c | 9 +++++---- table/sprites.h | 11 ++++++++++- town_gui.c | 2 +- vehicle_gui.c | 2 +- 7 files changed, 34 insertions(+), 15 deletions(-) diff --git a/data/openttd.grf b/data/openttd.grf index afce8d51ee45c750be792d4fc9f921788d76082c..e8c15983cddc3b21f4a76f77dec83fbb08edc3e9 100644 GIT binary patch delta 6587 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 fGC<&FHhm6G35Winfo.clients_max); DrawString(135, y, STR_NETWORK_CLIENTS_ONLINE, 2); - // draw red or green icon, depending on compatibility with server. TODO: needs new icons - DrawSprite((SPR_OPENTTD_BASE + 10) | (compatible?0x30d8000:0x30b8000), 185, y); - // draw red or green flag, to show if the server is password protected. TODO: needs new icons - DrawSprite((cur_item->info.use_password)? 0xC12 : 0xC13, 195, y); + // only draw icons if the server is online + if(cur_item->online) { - cur_item = cur_item->next; - y += NET_PRC__SIZE_OF_ROW; - if (++n == w->vscroll.cap) { break;} // max number of games in the window + // draw a lock if the server is password protected. + if(cur_item->info.use_password) + DrawSprite(SPR_LOCK, 186, y-1); + + // draw red or green icon, depending on compatibility with server. + DrawSprite(SPR_BLOT | (compatible?0x30d8000:0x30b8000), 195, y); + + // draw flag according to server language + DrawSprite(SPR_FLAGS_BASE + cur_item->info.server_lang, 206, y); + + cur_item = cur_item->next; + y += NET_PRC__SIZE_OF_ROW; + if (++n == w->vscroll.cap) { break;} // max number of games in the window + } } } diff --git a/settings_gui.c b/settings_gui.c index 117f1eba88..63990ed2c9 100644 --- a/settings_gui.c +++ b/settings_gui.c @@ -1035,7 +1035,7 @@ static void NewgrfWndProc(Window *w, WindowEvent *e) if(h) GfxFillRect(1, y + 1, 267, y + 12, 156); // XXX - will be grf name later DoDrawString(c->filename, 25, y + 2, h ? 0xC : 0x10); - DrawSprite(SPRITE_PALETTE(0x2EB | 0x30b8000), 5, y + 3); + DrawSprite(SPRITE_PALETTE(SPR_SQUARE | 0x30b8000), 5, y + 2); y += NEWGRF_WND_PROC_ROWSIZE; } diff --git a/spritecache.c b/spritecache.c index bcf96b5ce2..a325f0c9b0 100644 --- a/spritecache.c +++ b/spritecache.c @@ -748,12 +748,13 @@ static const char * const _cached_filenames[4] = { "cached_sprites.xx3", }; -#define OPENTTD_SPRITES_COUNT 70 +#define OPENTTD_SPRITES_COUNT 93 static const uint16 _openttd_grf_indexes[] = { SPR_OPENTTD_BASE+0, SPR_OPENTTD_BASE+7, // icons etc - 134, 134, // euro symbol medium size - 582, 582, // euro symbol large size - SPR_OPENTTD_BASE+10, SPR_OPENTTD_BASE+57, // more icons + 134, 134, // euro symbol medium size + 582, 582, // euro symbol large size + 358, 358, // euro symbol tiny + SPR_OPENTTD_BASE+11, SPR_OPENTTD_BASE+57, // more icons 648, 648, // nordic char: æ 616, 616, // nordic char: Æ 666, 666, // nordic char: Ø diff --git a/table/sprites.h b/table/sprites.h index 183859fab8..755b09a029 100644 --- a/table/sprites.h +++ b/table/sprites.h @@ -46,7 +46,16 @@ enum Sprites { SPR_SLOPES_BASE = SPR_CANALS_BASE + 70, SPR_OPENTTD_BASE = SPR_SLOPES_BASE + 74, //5270 - SPR_BLOT = SPR_OPENTTD_BASE + 10, // used as vehicle profit marker + SPR_BLOT = SPR_OPENTTD_BASE + 32, // colored circle (mainly used as vehicle profit marker and for sever compatibility) + + SPR_PIN_UP = SPR_OPENTTD_BASE + 62, // pin icon + SPR_PIN_DOWN = SPR_OPENTTD_BASE + 63, + + + /* Network GUI sprites */ + SPR_SQUARE = SPR_OPENTTD_BASE + 23, // colored square (used for newgrf compatibility) + SPR_LOCK = SPR_OPENTTD_BASE + 22, // lock icon (for password protected servers) + SPR_FLAGS_BASE = SPR_OPENTTD_BASE + 90, // start of the flags block (in same order as enum NetworkLanguage) /* Manager face sprites */ SPR_GRADIENT = 874, // background gradient behind manager face diff --git a/town_gui.c b/town_gui.c index c50ba13a8c..a5d1c3a8d6 100644 --- a/town_gui.c +++ b/town_gui.c @@ -135,7 +135,7 @@ static void TownAuthorityWndProc(Window *w, WindowEvent *e) */ SetDParam((IS_HUMAN_PLAYER(p->index) ? 4 : 3), str); if (t->exclusivity == p->index) // red icon for player with exclusive rights - DrawSprite((SPR_OPENTTD_BASE + 10) | 0x30b8000, 18, y); + DrawSprite((SPR_BLOT) | 0x30b8000, 18, y); DrawString(28, y, STR_2024, 0); y+=10; diff --git a/vehicle_gui.c b/vehicle_gui.c index 048999dd82..9e2edc6cbd 100644 --- a/vehicle_gui.c +++ b/vehicle_gui.c @@ -52,7 +52,7 @@ void DrawVehicleProfitButton(Vehicle *v, int x, int y) ormod = 0x30a8000; // yellow else ormod = 0x30d8000; // green - DrawSprite((SPR_OPENTTD_BASE + 10) | ormod, x, y); + DrawSprite((SPR_BLOT) | ormod, x, y); } /************ Sorter functions *****************/