From 0758d1b52cdb7afefc158f8e211d61af20bdfc10 Mon Sep 17 00:00:00 2001 From: Juan RP Date: Mon, 10 Jun 2019 11:22:15 +0200 Subject: [PATCH] New package: lbreakouthd-1.0.4. Signed-off-by: Juan RP --- srcpkgs/lbreakouthd/patches/musl.patch | 743 +++++++++++++++++++++++++ srcpkgs/lbreakouthd/template | 13 + 2 files changed, 756 insertions(+) create mode 100644 srcpkgs/lbreakouthd/patches/musl.patch create mode 100644 srcpkgs/lbreakouthd/template diff --git a/srcpkgs/lbreakouthd/patches/musl.patch b/srcpkgs/lbreakouthd/patches/musl.patch new file mode 100644 index 00000000000..a4bb38476c7 --- /dev/null +++ b/srcpkgs/lbreakouthd/patches/musl.patch @@ -0,0 +1,743 @@ +uint is not portable, use unsigned int instead. Fixes musl. + --xtraeme + +--- src/clientgame.cpp 2018-12-21 19:43:51.000000000 +0100 ++++ src/clientgame.cpp 2019-06-10 11:04:25.230551850 +0200 +@@ -88,7 +88,7 @@ int ClientGame::init(const string& setna + ClientPlayer *ClientGame::getNextPlayer() + { + ClientPlayer *p = NULL; +- uint startId = curPlayer; ++ unsigned int startId = curPlayer; + + do { + curPlayer++; +@@ -107,7 +107,7 @@ ClientPlayer *ClientGame::getNextPlayer( + * pis is what controls have been activated + * return flags what has to be rendered new + */ +-int ClientGame::update(uint ms, double rx, PaddleInputState &pis) ++int ClientGame::update(unsigned int ms, double rx, PaddleInputState &pis) + { + int oldScore = game->paddles[0]->score; + int ret = 0; +--- src/clientgame.h 2019-03-07 15:36:01.000000000 +0100 ++++ src/clientgame.h 2019-06-10 11:04:25.226551802 +0200 +@@ -21,19 +21,19 @@ + + class ClientPlayer { + string name; +- uint lives; +- uint maxLives; ++ unsigned int lives; ++ unsigned int maxLives; + int score; +- uint level; ++ unsigned int level; + Level snapshot; + public: +- ClientPlayer(const string &n, uint l, uint ml) : ++ ClientPlayer(const string &n, unsigned int l, unsigned int ml) : + name(n), lives(l), maxLives(ml), score(0), level(0) { + _loginfo("Added player %s\n",n.c_str()); + }; + const string& getName() { return name; } +- uint getLives() { return lives; } +- uint getMaxLives() { return maxLives; } ++ unsigned int getLives() { return lives; } ++ unsigned int getMaxLives() { return maxLives; } + void gainLife() { + if (lives < maxLives) + lives++; +@@ -48,11 +48,11 @@ public: + score += s; + return score; + } +- void setLives(uint l) { lives = l; } ++ void setLives(unsigned int l) { lives = l; } + void setScore(int s) { score = s; } +- uint getLevel() { return level; } +- uint nextLevel() { return ++level; } +- void setLevel(uint l) { level = l; } ++ unsigned int getLevel() { return level; } ++ unsigned int nextLevel() { return ++level; } ++ void setLevel(unsigned int l) { level = l; } + void setLevelSnapshot(const Level *l) { + if (l == NULL) + game_get_level_snapshot(&snapshot); +@@ -100,7 +100,7 @@ class ClientGame { + Game *game; /* current game context */ + Hiscores hiscores; + vector> players; +- uint curPlayer; ++ unsigned int curPlayer; + ClientPlayer *lastDeadPlayer; + string msg; + Timeout frictionTimeout; +@@ -114,12 +114,12 @@ public: + ClientGame(Config &cfg); + ~ClientGame(); + int init(const string& setname, int levelid = 0); +- int update(uint ms, double rx, PaddleInputState &pis); ++ int update(unsigned int ms, double rx, PaddleInputState &pis); + Game *getGameContext() { return game; } + string getLevelsetName() { return levelset->name; } + void getCurrentLevelNameAndAuthor(string &name, string &author) { + ClientPlayer *p = players[curPlayer].get(); +- uint lid = p->getLevel(); ++ unsigned int lid = p->getLevel(); + if (lid >= (uint)levelset->count) { + name = "none"; + author = "none"; /* is done, should not happen */ +@@ -131,8 +131,8 @@ public: + int getLevelCount() { return levelset->count; } + HiscoreChart *getHiscoreChart() { return hiscores.get(levelset->name); } + ClientPlayer* getCurrentPlayer() {return players[curPlayer].get(); } +- uint getCurrentPlayerId() {return curPlayer; } +- void setCurrentPlayerId(uint id) { ++ unsigned int getCurrentPlayerId() {return curPlayer; } ++ void setCurrentPlayerId(unsigned int id) { + curPlayer = id; + /* adjust paddle score */ + game->paddles[0]->score = players[curPlayer]->getScore(); +@@ -143,7 +143,7 @@ public: + void updateHiscores(); + const string& getPlayerMessage() { return msg; } + vector>& getPlayers() { return players; } +- void resumePlayer(uint pid, uint lives, int score, uint level) { ++ void resumePlayer(unsigned int pid, unsigned int lives, int score, unsigned int level) { + players[pid]->setLives(lives); + players[pid]->setScore(score); + players[pid]->setLevel(level); +--- src/menu.cpp 2018-11-24 14:35:44.000000000 +0100 ++++ src/menu.cpp 2019-06-10 11:04:25.231551862 +0200 +@@ -24,7 +24,7 @@ extern SDL_Renderer *mrc; + Font *MenuItem::fNormal = NULL; + Font *MenuItem::fFocus = NULL; + Font *MenuItem::fTooltip = NULL; +-uint MenuItem::tooltipWidth = 300; ++unsigned int MenuItem::tooltipWidth = 300; + + /** Helper to render a part of the menu item. Position is determined + * by given alignment. */ +--- src/menu.h 2018-12-22 13:30:58.000000000 +0100 ++++ src/menu.h 2019-06-10 11:04:25.227551814 +0200 +@@ -59,7 +59,7 @@ protected: + } + public: + static Font *fNormal, *fFocus, *fTooltip; +- static uint tooltipWidth; ++ static unsigned int tooltipWidth; + + MenuItem(const string &c, const string &tt, int aid = AID_NONE) : + caption(c), lblNormal(true), lblFocus(true), +@@ -97,7 +97,7 @@ public: + } + + } +- virtual void update(uint ms) { ++ virtual void update(unsigned int ms) { + if (!focus && fadingAlpha > 0) { + fadingAlpha -= 0.7*ms; + if (fadingAlpha < 0) +@@ -211,9 +211,9 @@ public: + setValue(options[v]); + } + MenuItemList(const string &c, const string &tt, int aid, +- int &v, const char **opts, uint optNum) ++ int &v, const char **opts, unsigned int optNum) + : MenuItemRange(c,tt,aid,v,0,optNum-1,1) { +- for (uint i = 0; i < optNum; i++) ++ for (unsigned int i = 0; i < optNum; i++) + options.push_back(opts[i]); + setValue(options[v]); + } +@@ -247,10 +247,10 @@ class MenuItemIntList : public MenuItemR + vector options; + public: + MenuItemIntList(const string &c, const string &tt, +- int &v, const int *opts, uint optNum) ++ int &v, const int *opts, unsigned int optNum) + : MenuItemRange(c,tt,AID_NONE,idx,0,optNum-1,1), val(v) { + idx = 0; +- for (uint i = 0; i < optNum; i++) { ++ for (unsigned int i = 0; i < optNum; i++) { + if (opts[i] == val) + idx = i; + options.push_back(opts[i]); +@@ -334,7 +334,7 @@ public: + int w = theme.menuItemWidth; + int x = theme.menuX - w/2; + int y = theme.menuY - h/2; +- for (uint i = 0; i < items.size(); i++) { ++ for (unsigned int i = 0; i < items.size(); i++) { + MenuItemSub *sub = dynamic_cast(items[i].get()); + items[i]->setGeometry(x, y + i*theme.menuItemHeight, + w, theme.menuItemHeight); +@@ -342,7 +342,7 @@ public: + sub->getSubMenu()->adjust(); + } + } +- void update(uint ms) { ++ void update(unsigned int ms) { + for (auto& i : items) + i->update(ms); + } +--- src/mixer.h 2019-03-07 20:54:45.000000000 +0100 ++++ src/mixer.h 2019-06-10 11:04:25.228551826 +0200 +@@ -63,7 +63,7 @@ public: + _loginfo("Mixer closed\n"); + } + } +- void setVolume(uint v) { /* v is 0..100 */ ++ void setVolume(unsigned int v) { /* v is 0..100 */ + if (v > 100) + v = 100; + v = v * MIX_MAX_VOLUME / 100; +--- src/sdl.cpp 2019-03-07 14:07:05.000000000 +0100 ++++ src/sdl.cpp 2019-06-10 11:04:25.231551862 +0200 +@@ -484,7 +484,7 @@ void Font::writeText(int x, int y, const + SDL_DestroyTexture(tex); + } + +-void Label::setText(Font &font, const string &str, uint maxw) ++void Label::setText(Font &font, const string &str, unsigned int maxw) + { + if (str == "") { + empty = true; +--- src/sdl.h 2019-03-07 13:15:07.000000000 +0100 ++++ src/sdl.h 2019-06-10 11:04:25.228551826 +0200 +@@ -209,7 +209,7 @@ public: + return TTF_SizeText(font,str.c_str(),w,h); + return 0; + }; +- int getWrappedTextSize(const string& str, uint maxw, int *w, int *h) { ++ int getWrappedTextSize(const string& str, unsigned int maxw, int *w, int *h) { + *w = *h = 0; + SDL_Surface *surf = TTF_RenderUTF8_Blended_Wrapped( + font, str.c_str(), clr, maxw); +@@ -275,7 +275,7 @@ public: + b = -1; + border = b; + } +- void setText(Font &f, const string &str, uint max = 0); ++ void setText(Font &f, const string &str, unsigned int max = 0); + void clearText() { + empty = true; + } +@@ -295,12 +295,12 @@ public: + void setAlpha(int a) { + img.setAlpha(a); + } +- uint getHeight() { ++ unsigned int getHeight() { + if (empty) + return 0; + return img.getHeight(); + } +- uint getWidth() { ++ unsigned int getWidth() { + if (empty) + return 0; + return img.getWidth(); +--- src/selectdlg.cpp 2018-12-21 20:02:48.000000000 +0100 ++++ src/selectdlg.cpp 2019-06-10 11:04:25.232551874 +0200 +@@ -31,17 +31,17 @@ SetInfo::SetInfo(const string &n, Theme + author = "?"; + + /* create empty preview */ +- uint sw = theme.menuBackground.getWidth(); +- uint sh = theme.menuBackground.getHeight(); +- uint bw = theme.bricks.getGridWidth(); +- uint bh = theme.bricks.getGridHeight(); +- uint soff = bh/3; ++ unsigned int sw = theme.menuBackground.getWidth(); ++ unsigned int sh = theme.menuBackground.getHeight(); ++ unsigned int bw = theme.bricks.getGridWidth(); ++ unsigned int bh = theme.bricks.getGridHeight(); ++ unsigned int soff = bh/3; + preview.create(MAPWIDTH*theme.bricks.getGridWidth(), + MAPHEIGHT*theme.bricks.getGridHeight()); + SDL_SetRenderTarget(mrc, preview.getTex()); + Image& wallpaper = theme.wallpapers[rand()%theme.numWallpapers]; +- for (uint wy = 0; wy < sh; wy += wallpaper.getHeight()) +- for (uint wx = 0; wx < sw; wx += wallpaper.getWidth()) ++ for (unsigned int wy = 0; wy < sh; wy += wallpaper.getHeight()) ++ for (unsigned int wx = 0; wx < sw; wx += wallpaper.getWidth()) + wallpaper.copy(wx,wy); + theme.frameShadow.copy(soff,soff); + +@@ -64,7 +64,7 @@ SetInfo::SetInfo(const string &n, Theme + string fpath = getFullLevelsetPath(n); + string lines[5+EDIT_HEIGHT]; + ifstream ifs(fpath); +- uint offset = 0; ++ unsigned int offset = 0; + + if (!ifs.is_open()) { + _logerr("Levelset %s not found, no preview created\n",n.c_str()); +@@ -72,7 +72,7 @@ SetInfo::SetInfo(const string &n, Theme + SDL_SetRenderTarget(mrc, NULL); + return; + } +- for (uint i = 0; i < 5+EDIT_HEIGHT; i++) ++ for (unsigned int i = 0; i < 5+EDIT_HEIGHT; i++) + getline(ifs,lines[i]); + if (lines[0].find("Version") != string::npos) { + version = trimString(lines[0].substr(lines[0].find(':')+1)); +@@ -89,8 +89,8 @@ SetInfo::SetInfo(const string &n, Theme + + /* add bricks of first level + * XXX direct access to brick conversion table from libgame */ +- for (uint j = 0; j < EDITHEIGHT; j++) +- for (uint i = 0; i < EDITWIDTH; i++) { ++ for (unsigned int j = 0; j < EDITHEIGHT; j++) ++ for (unsigned int i = 0; i < EDITWIDTH; i++) { + int k = -1; + for ( k = 0; k < BRICK_COUNT; k++ ) + if (lines[4+offset+j][i] == brick_conv_table[k].c) +@@ -99,8 +99,8 @@ SetInfo::SetInfo(const string &n, Theme + theme.bricksShadow.copy(brick_conv_table[k].id,0, + (i+1)*bw+bh/3, (1+j)*bh+bh/3); + } +- for (uint j = 0; j < EDITHEIGHT; j++) +- for (uint i = 0; i < EDITWIDTH; i++) { ++ for (unsigned int j = 0; j < EDITHEIGHT; j++) ++ for (unsigned int i = 0; i < EDITWIDTH; i++) { + int k = -1; + for ( k = 0; k < BRICK_COUNT; k++ ) + if (lines[4+offset+j][i] == brick_conv_table[k].c) +@@ -117,8 +117,8 @@ SetInfo::SetInfo(const string &n, Theme + /** Create levelset list and previews + layout. */ + void SelectDialog::init() + { +- uint sw = theme.menuBackground.getWidth(); +- uint sh = theme.menuBackground.getHeight(); ++ unsigned int sw = theme.menuBackground.getWidth(); ++ unsigned int sh = theme.menuBackground.getHeight(); + vector list, list2; + + list.push_back(_(TOURNAMENT)); +@@ -185,7 +185,7 @@ void SelectDialog::render() + font.setColor(theme.menuFontColorNormal); + font.write(lx, ly-ch, _("")); + } +- for (uint i = 0; i < vlen; i++, y += ch) { ++ for (unsigned int i = 0; i < vlen; i++, y += ch) { + if (pos + i < entries.size() && sel == (int)(pos + i)) + font.setColor(theme.menuFontColorFocus); + else +--- src/selectdlg.h 2018-10-31 18:49:34.000000000 +0100 ++++ src/selectdlg.h 2019-06-10 11:04:25.228551826 +0200 +@@ -21,7 +21,7 @@ class SetInfo { + string name; + string version; + string author; +- uint levels; ++ unsigned int levels; + Image preview; + public: + SetInfo(const string &name, Theme &theme); +@@ -40,12 +40,12 @@ class SelectDialog { + bool quitReceived; + vector> entries; + int sel; +- uint pos, max, vlen; ++ unsigned int pos, max, vlen; + int tx, ty; /* centered title position */ + int lx, ly; /* list start */ +- uint cw, ch; /* cell size */ ++ unsigned int cw, ch; /* cell size */ + int px, py; +- uint pw, ph; /* preview geometry */ ++ unsigned int pw, ph; /* preview geometry */ + + Image background; + +--- src/sprite.cpp 2018-09-02 18:47:18.000000000 +0200 ++++ src/sprite.cpp 2019-06-10 11:04:25.232551874 +0200 +@@ -24,7 +24,7 @@ extern SDL_Renderer *mrc; + Particle::Particle(GridImage &simg, int _gx, int _gy, + int _sx, int _sy, int _sw, int _sh, + double px, double py, double vx, double vy, +- double vpms, uint lifetime) ++ double vpms, unsigned int lifetime) + : img(simg), gx(_gx), gy(_gy), sx(_sx), sy(_sy), sw(_sw), sh(_sh), + pos(px,py), vel(vx,vy) + { +--- src/sprite.h 2018-09-02 18:47:18.000000000 +0200 ++++ src/sprite.h 2019-06-10 11:04:25.229551838 +0200 +@@ -19,21 +19,21 @@ + class Sprite { + public: + virtual ~Sprite() {}; +- virtual int update(uint ms) = 0; /* return 1 if to be removed, 0 otherwise */ ++ virtual int update(unsigned int ms) = 0; /* return 1 if to be removed, 0 otherwise */ + virtual void render() = 0; + }; + + class Animation : public Sprite { + GridImage& img; +- uint id; ++ unsigned int id; + int x, y; /* position on screen */ + FrameCounter fc; + public: +- Animation(GridImage &_img, uint _id, uint delay, int _x, int _y) ++ Animation(GridImage &_img, unsigned int _id, unsigned int delay, int _x, int _y) + : img(_img), id(_id), x(_x), y(_y) { + fc.init(img.getGridSizeX(), delay); + } +- int update(uint ms) { ++ int update(unsigned int ms) { + if (fc.update(ms)) + return 1; /* die */ + return 0; +@@ -50,8 +50,8 @@ class Particle : public Sprite { + SmoothCounter sc; + public: + Particle(GridImage &simg, int gx, int gy, int sx, int sy, int sw, int sh, +- double px, double py, double vx, double vy, double vpms, uint lifetime); +- int update(uint ms) { ++ double px, double py, double vx, double vy, double vpms, unsigned int lifetime); ++ int update(unsigned int ms) { + pos.add(ms, vel); + return sc.update(ms); + } +--- src/theme.cpp 2019-03-07 15:14:49.000000000 +0100 ++++ src/theme.cpp 2019-06-10 11:04:25.233551886 +0200 +@@ -22,12 +22,12 @@ extern SDL_Renderer *mrc; + + /** Load resources and scale if necessary using bricks screen height. + * Whatever is missing: Fall back to Standard theme. */ +-void Theme::load(string name, uint screenWidth, uint screenHeight, +- uint brickScreenWidth, uint brickScreenHeight, ++void Theme::load(string name, unsigned int screenWidth, unsigned int screenHeight, ++ unsigned int brickScreenWidth, unsigned int brickScreenHeight, + int antialiasing) + { + string path, fpath; +- uint iw, ih; ++ unsigned int iw, ih; + + if (name[0] == '~') + path = getHomeDir() + "/" + CONFIGDIR + "/themes/" + name.substr(1); +@@ -376,7 +376,7 @@ void Theme::load(string name, uint scree + + /* load and scale up to 10 wallpapers */ + string wpath = stdPath; +- uint wbfh = sbfh, wbfw = sbfw; /* for scaling */ ++ unsigned int wbfh = sbfh, wbfw = sbfw; /* for scaling */ + if (fileExists(path + "/back0.png") || fileExists(path + "/back0.jpg")) { + wpath = path; + wbfh = brickFileHeight; +--- src/theme.h 2019-03-07 15:05:53.000000000 +0100 ++++ src/theme.h 2019-06-10 11:04:25.229551838 +0200 +@@ -33,37 +33,37 @@ class Theme { + string stdPath; /* path to standard theme for fallbacks */ + bool oldTheme; + int boardX; +- uint boardWidth; ++ unsigned int boardWidth; + + /* loaded from theme.ini */ + string title; + string author; + string version; +- uint brickFileWidth; +- uint brickFileHeight; ++ unsigned int brickFileWidth; ++ unsigned int brickFileHeight; + int shadowOffset; + string fontSmallName; +- uint fontSmallSize; ++ unsigned int fontSmallSize; + string fontNormalName; +- uint fontNormalSize; ++ unsigned int fontNormalSize; + SDL_Color fontColorNormal; + SDL_Color fontColorHighlight; +- uint shotFrameNum; +- uint shotAnimDelay; +- uint weaponFrameNum; +- uint weaponAnimDelay; +- uint explFrameNum; +- uint explAnimDelay; +- uint shineFrameNum; +- uint shineAnimDelay; +- uint menuX, menuY, menuItemWidth, menuItemHeight; ++ unsigned int shotFrameNum; ++ unsigned int shotAnimDelay; ++ unsigned int weaponFrameNum; ++ unsigned int weaponAnimDelay; ++ unsigned int explFrameNum; ++ unsigned int explAnimDelay; ++ unsigned int shineFrameNum; ++ unsigned int shineAnimDelay; ++ unsigned int menuX, menuY, menuItemWidth, menuItemHeight; + string menuFontNormalName, menuFontFocusName; +- uint menuFontNormalSize, menuFontFocusSize; ++ unsigned int menuFontNormalSize, menuFontFocusSize; + SDL_Color menuFontColorNormal, menuFontColorFocus; + + Image menuBackground; + Image wallpapers[MAXWALLPAPERS]; +- uint numWallpapers; ++ unsigned int numWallpapers; + Image frame, frameShadow; + GridImage bricks, bricksShadow; + GridImage paddles, paddlesShadow; +@@ -106,8 +106,8 @@ public: + { + stdPath = string(DATADIR) + "/themes/Standard"; + } +- void load(string name, uint screenWidth, uint screenHeight, +- uint brickScreenWidth, uint brickScreenHeight, ++ void load(string name, unsigned int screenWidth, unsigned int screenHeight, ++ unsigned int brickScreenWidth, unsigned int brickScreenHeight, + int antialiasing); + }; + +--- src/tools.cpp 2018-11-04 12:04:17.000000000 +0100 ++++ src/tools.cpp 2019-06-10 11:04:25.233551886 +0200 +@@ -94,7 +94,7 @@ int FileParser::get(const string& k, int + v = stoi(str); + return ret; + } +-int FileParser::get(const string& k, uint &v) ++int FileParser::get(const string& k, unsigned int &v) + { + string str; + int ret = get(k,str); +--- src/tools.h 2018-10-31 12:23:22.000000000 +0100 ++++ src/tools.h 2019-06-10 11:04:25.229551838 +0200 +@@ -95,7 +95,7 @@ public: + FileParser(const string& fname); + int get(const string& k, string &v); + int get(const string& k, int &v); +- int get(const string& k, uint &v); ++ int get(const string& k, unsigned int &v); + int get(const string& k, uint8_t &v); + int get(const string& k, double &v); + }; +@@ -167,7 +167,7 @@ public: + + class FrameCounter : public SmoothCounter { + public: +- void init(uint max, uint delay) { ++ void init(unsigned int max, unsigned int delay) { + SmoothCounter::init(SCT_REPEAT, 0, -0.01 + max, delay); + } + int get() { return SmoothCounter::get(); } +--- src/view.cpp 2019-03-08 19:13:31.000000000 +0100 ++++ src/view.cpp 2019-06-10 11:04:25.234551898 +0200 +@@ -74,7 +74,7 @@ View::View(Config &cfg, ClientGame &_cg) + + /** (Re)Initialize window, theme and menu. + * t is theme name, r=0 means fullscreen, otherwise vertical resolution. */ +-void View::init(string t, uint r) ++void View::init(string t, unsigned int r) + { + _loginfo("Initializing View (Theme=%s, Resolution=%d)\n",t.c_str(),r); + +@@ -648,7 +648,7 @@ void View::renderBackgroundImage() { + + /* lives */ + ClientPlayer *cp = cgame.getCurrentPlayer(); +- for (uint i = 0; i < cp->getMaxLives(); i++) ++ for (unsigned int i = 0; i < cp->getMaxLives(); i++) + theme.life.copy(0, i < cp->getLives(), 0, (MAPHEIGHT-i-1)*bh); + + SDL_SetRenderTarget(mrc,NULL); +@@ -739,12 +739,12 @@ void View::renderScoreImage() + void View::renderExtrasImage() + { + Game *game = cgame.getGameContext(); +- uint bw = brickScreenWidth, bh = brickScreenHeight; +- uint xstart = (imgExtras.getWidth() - 3*bw) / 4; +- uint ystart = (imgExtras.getHeight() - 3*bh) / 4; +- uint xoff = bw + xstart; +- uint yoff = bh + ystart; +- uint x = xstart, y = ystart; ++ unsigned int bw = brickScreenWidth, bh = brickScreenHeight; ++ unsigned int xstart = (imgExtras.getWidth() - 3*bw) / 4; ++ unsigned int ystart = (imgExtras.getHeight() - 3*bh) / 4; ++ unsigned int xoff = bw + xstart; ++ unsigned int yoff = bh + ystart; ++ unsigned int x = xstart, y = ystart; + + SDL_SetRenderTarget(mrc, imgExtras.getTex()); + SDL_SetRenderDrawColor(mrc,0,0,0,0); +@@ -846,14 +846,14 @@ bool View::showInfo(const vector + { + Font &font = theme.fSmall; + bool ret = true; +- uint h = text.size() * font.getLineHeight(); ++ unsigned int h = text.size() * font.getLineHeight(); + int tx = mw->getWidth()/2; + int ty = (mw->getHeight() - h)/2; + + darkenScreen(); + + font.setAlign(ALIGN_X_CENTER | ALIGN_Y_TOP); +- for (uint i = 0; i < text.size(); i++) { ++ for (unsigned int i = 0; i < text.size(); i++) { + font.write(tx,ty,text[i]); + ty += font.getLineHeight(); + } +@@ -964,12 +964,12 @@ void View::createSprites() + } + } + +-void View::getBallViewInfo(Ball *ball, int *x, int *y, uint *type) ++void View::getBallViewInfo(Ball *ball, int *x, int *y, unsigned int *type) + { + Game *game = cgame.getGameContext(); /* direct lib game context */ + Paddle *paddle = game->paddles[0]; /* local paddle always at bottom */ + +- uint bt = 0; ++ unsigned int bt = 0; + double px = ball->cur.x; + double py = ball->cur.y; + if (ball->attached) { +@@ -1395,7 +1395,7 @@ void View::saveGame() + ofs << "difficulty=" << config.diff << "\n"; + ofs << "curplayer=" << cgame.getCurrentPlayerId() << "\n"; + ofs << "players=" << players.size() << "\n"; +- for (uint i = 0; i < players.size(); i++) { ++ for (unsigned int i = 0; i < players.size(); i++) { + ofs << "player" << i << " {\n"; + ofs << " name=" << players[i]->getName() << "\n"; + ofs << " level=" << players[i]->getLevel() << "\n"; +@@ -1432,18 +1432,18 @@ int View::resumeGame() + fp.get(string("player") + to_string(i) + ".name",config.player_names[i]); + + /* initialize game to level of current player */ +- uint pid = 0; ++ unsigned int pid = 0; + fp.get("curplayer",pid); + if (pid >= MAX_PLAYERS) + pid = 0; +- uint levid = 0; ++ unsigned int levid = 0; + fp.get(string("player") + to_string(pid) + ".level",levid); + cgame.init(setname,levid); + + /* adjust players */ + for (int i = 0; i < config.player_count; i++) { + string prefix = string("player") + to_string(i) + "."; +- uint level = 0, lives = 3; ++ unsigned int level = 0, lives = 3; + int score = 0; + fp.get(prefix + "score",score); + fp.get(prefix + "level",level); +@@ -1529,8 +1529,8 @@ void View::renderBalls(bool shadow) + Ball *ball; + list_reset(game->balls); + while ( ( ball = (Ball*)list_next( game->balls ) ) != 0 ) { +- uint type; +- uint alpha = 255; ++ unsigned int type; ++ unsigned int alpha = 255; + int px, py; + getBallViewInfo(ball, &px, &py, &type); + if (type == 1) /* energy ball */ +@@ -1561,7 +1561,7 @@ void View::updateResumeGameTooltip() + /* XXX multiple locations... */ + const char *diffNames[] = {_("Kids"),_("Easy"),_("Medium"),_("Hard") } ; + string text, str; +- uint diff, pnum; ++ unsigned int diff, pnum; + FileParser fp(saveFileName); + fp.get("levelset",text); + fp.get("difficulty",diff); +@@ -1573,10 +1573,10 @@ void View::updateResumeGameTooltip() + text += to_string(pnum); + text += _(" player(s)\n"); + +- for (uint i = 0; i < pnum; i++) { ++ for (unsigned int i = 0; i < pnum; i++) { + string prefix = string("player") + to_string(i) + "."; + string name; +- uint level = 0, lives = 3; ++ unsigned int level = 0, lives = 3; + int score = 0; + fp.get(prefix + "name",name); + fp.get(prefix + "score",score); +@@ -1591,7 +1591,7 @@ void View::updateResumeGameTooltip() + resumeMenuItem->setTooltip(text); + } + +-void View::renderExtraHelp(GridImage &img, uint gx, uint gy, const string &str, int x, int y) ++void View::renderExtraHelp(GridImage &img, unsigned int gx, unsigned int gy, const string &str, int x, int y) + { + img.copy(gx,gy,x,y); + theme.fSmall.setAlign(ALIGN_X_LEFT | ALIGN_Y_CENTER); +@@ -1621,7 +1621,7 @@ void View::showHelp() + ; + + int x = brickScreenWidth, y = brickScreenHeight; +- uint maxw = brickScreenWidth * 10; ++ unsigned int maxw = brickScreenWidth * 10; + + darkenScreen(); + +--- src/view.h 2019-03-07 15:44:36.000000000 +0100 ++++ src/view.h 2019-06-10 11:04:25.229551838 +0200 +@@ -105,7 +105,7 @@ class View { + void showHelp(); + void createParticles(BrickHit *hit); + void createSprites(); +- void getBallViewInfo(Ball *ball, int *x, int *y, uint *type); ++ void getBallViewInfo(Ball *ball, int *x, int *y, unsigned int *type); + void playSounds(); + void createMenus(); + void grabInput(int grab); +@@ -116,14 +116,14 @@ class View { + void darkenScreen(int alpha = 32); + void initTitleLabel(); + void updateResumeGameTooltip(); +- void renderExtraHelp(GridImage &img, uint gx, uint gy, const string &str, int x, int y); ++ void renderExtraHelp(GridImage &img, unsigned int gx, unsigned int gy, const string &str, int x, int y); + void runBrickDestroyDlg(); + void waitForInputRelease(); + void getNewShinePosition(); + public: + View(Config &cfg, ClientGame &_cg); + ~View(); +- void init(string t, uint r); ++ void init(string t, unsigned int r); + void run(); + void render(); + void runMenu(); +--- src/clientgame.cpp.orig 2019-06-10 11:08:55.515756485 +0200 ++++ src/clientgame.cpp 2019-06-10 11:09:17.964021355 +0200 +@@ -95,7 +95,7 @@ ClientPlayer *ClientGame::getNextPlayer( + if (curPlayer == players.size()) + curPlayer = 0; + p = players[curPlayer].get(); +- if (p->getLives() > 0 && p->getLevel() < (uint)levelset->count) ++ if (p->getLives() > 0 && p->getLevel() < (unsigned int)levelset->count) + return p; + } while (curPlayer != startId); + return NULL; +@@ -192,7 +192,7 @@ int ClientGame::update(unsigned int ms, + ClientPlayer *p = players[curPlayer].get(); + /* bonus levels are just skipped on failure */ + if (game->winner == PADDLE_BOTTOM || game->level_type != LT_NORMAL) { +- if (p->nextLevel() < (uint)levelset->count) ++ if (p->nextLevel() < (unsigned int)levelset->count) + p->setLevelSnapshot(levelset->levels[p->getLevel()]); + else { + strprintf(msg,_("Congratulations, %s, you cleared all levels!"),p->getName().c_str()); +--- src/clientgame.h.orig 2019-06-10 11:10:30.500877231 +0200 ++++ src/clientgame.h 2019-06-10 11:10:41.972012581 +0200 +@@ -120,7 +120,7 @@ public: + void getCurrentLevelNameAndAuthor(string &name, string &author) { + ClientPlayer *p = players[curPlayer].get(); + unsigned int lid = p->getLevel(); +- if (lid >= (uint)levelset->count) { ++ if (lid >= (unsigned int)levelset->count) { + name = "none"; + author = "none"; /* is done, should not happen */ + } else { diff --git a/srcpkgs/lbreakouthd/template b/srcpkgs/lbreakouthd/template new file mode 100644 index 00000000000..4e09788ae0e --- /dev/null +++ b/srcpkgs/lbreakouthd/template @@ -0,0 +1,13 @@ +# Template file for 'lbreakouthd' +pkgname=lbreakouthd +version=1.0.4 +revision=1 +build_style=gnu-configure +configure_args="--localstatedir=/var/${pkgname}" +makedepends="SDL2-devel SDL2_mixer-devel SDL2_image-devel SDL2_ttf-devel" +short_desc="Scalable 16:9 remake of LBreakout2" +maintainer="Juan RP " +license="GPL-2.0-or-later" +homepage="http://lgames.sourceforge.net/LBreakoutHD/" +distfiles="${SOURCEFORGE_SITE}/lgames/$pkgname-$version.tar.gz" +checksum=43d2c268b0494d72816e9f106fae17b311fa665a153377e2f0cc0e0362aa30af