Hello community, here is the log from the commit of package rockdodger for openSUSE:Factory checked in at 2015-10-02 15:38:52 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/rockdodger (Old) and /work/SRC/openSUSE:Factory/.rockdodger.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "rockdodger" Changes: -------- --- /work/SRC/openSUSE:Factory/rockdodger/rockdodger.changes 2015-06-08 08:30:09.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.rockdodger.new/rockdodger.changes 2015-10-02 15:38:53.000000000 +0200 @@ -1,0 +2,6 @@ +Tue Sep 29 16:48:14 UTC 2015 - nemysis@openSUSE.org + +- Update to 1.0.2, no changelog entry +- license update: GPL-2.0+ No indication that this is GPL-2.0 (only) + +------------------------------------------------------------------- Old: ---- rockdodger-1.0.1.tar.gz New: ---- rockdodger-1.0.2.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ rockdodger.spec ++++++ --- /var/tmp/diff_new_pack.STFkeI/_old 2015-10-02 15:38:54.000000000 +0200 +++ /var/tmp/diff_new_pack.STFkeI/_new 2015-10-02 15:38:54.000000000 +0200 @@ -17,10 +17,10 @@ Name: rockdodger -Version: 1.0.1 +Version: 1.0.2 Release: 0 Summary: Addictive rock-dodging greeblie-killing platform game -License: GPL-2.0 +License: GPL-2.0+ Group: Amusements/Games/Arcade/LogicGame Url: https://bitbucket.org/rpkrawczyk/rockdodger Source0: https://bitbucket.org/rpkrawczyk/%{name}/downloads/%{name}-%{version}.tar.gz @@ -66,7 +66,7 @@ %endif %files -%defattr(-,root,root,-) +%defattr(-,root,root) %doc COPYING %attr(0755,root,root) %{_bindir}/%{name} %{_mandir}/man6/%{name}.6%{ext_man} ++++++ rockdodger-1.0.1.tar.gz -> rockdodger-1.0.2.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rockdodger-1.0.1/Makefile new/rockdodger-1.0.2/Makefile --- old/rockdodger-1.0.1/Makefile 2015-04-04 20:18:22.000000000 +0200 +++ new/rockdodger-1.0.2/Makefile 2015-08-10 21:49:42.000000000 +0200 @@ -21,7 +21,7 @@ VMAJOR=1 VMINOR=0 -VRELEASE=1 +VRELEASE=2 VERSION=$(VMAJOR).$(VMINOR).$(VRELEASE) PACKAGENAME=rockdodger Files old/rockdodger-1.0.1/data/iff.configdata.rock and new/rockdodger-1.0.2/data/iff.configdata.rock differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rockdodger-1.0.1/engine_exhaust.c new/rockdodger-1.0.2/engine_exhaust.c --- old/rockdodger-1.0.1/engine_exhaust.c 2015-04-04 20:18:22.000000000 +0200 +++ new/rockdodger-1.0.2/engine_exhaust.c 2015-08-10 21:49:42.000000000 +0200 @@ -29,7 +29,7 @@ edots_end = edot1; } -void draw_engine_dots(SDL_Surface * s) { +void draw_engine_dots(SDL_Surface *s) { struct enginedots edot; struct enginedots *dotptr; struct enginedots *targetptr = edots_begin; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rockdodger-1.0.1/engine_exhaust.h new/rockdodger-1.0.2/engine_exhaust.h --- old/rockdodger-1.0.1/engine_exhaust.h 2015-04-04 20:18:22.000000000 +0200 +++ new/rockdodger-1.0.2/engine_exhaust.h 2015-08-10 21:49:42.000000000 +0200 @@ -16,7 +16,13 @@ */ void init_engine_dots(); -void draw_engine_dots(SDL_Surface * s); +/*! \brief draw engine exhaust dots + * + * Function to draw the exhaus effect. Draws the particles on the supplied surface. + * + * \param s surface to draw on + */ +void draw_engine_dots(SDL_Surface *s); void create_engine_dots(int newdots); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rockdodger-1.0.1/globals.h new/rockdodger-1.0.2/globals.h --- old/rockdodger-1.0.1/globals.h 2015-04-04 20:18:22.000000000 +0200 +++ new/rockdodger-1.0.2/globals.h 2015-08-10 21:49:42.000000000 +0200 @@ -143,7 +143,7 @@ extern Uint32 initticks; //!< set at each start of the gameloop extern Uint32 last_ticks; //!< set at each *end* of the draw function extern Uint32 ticks_since_last; //!< at end of draw function: ticks_since_last = SDL_GetTicks()-last_ticks; -extern Uint32 ign_k_utl_ticks; //!< ignore all keys util this tick count has been reached +extern Uint32 ign_k_utl_ticks; //!< ignore all keys until this tick count has been reached extern int music_volume; //!< the global volume used for playing the music, see sound.c. extern int nships; //!< Number of ships the player has. extern int last_levelup_snd; //!< When was the last sound on level change? @@ -186,5 +186,16 @@ uiff_ctx_t *get_iff_rock(const char *fname); +/*! \brief Load the edition name from the iff context + * + * This will load the edition from the parameter file. The context is + * passed by value as this is the easiest way to handle changes to the + * structure. Remember to free the string. If the edition can not be + * loaded "#unknown#" is returned. + * + * \param iff iff context to load from + * \return strdup of edition name + */ char *load_edition_name(uiff_ctx_t iff); + #endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rockdodger-1.0.1/greeblies.c new/rockdodger-1.0.2/greeblies.c --- old/rockdodger-1.0.1/greeblies.c 2015-04-04 20:18:22.000000000 +0200 +++ new/rockdodger-1.0.2/greeblies.c 2015-08-10 21:49:42.000000000 +0200 @@ -121,7 +121,7 @@ if(g->landed) { g->boredom++; - // Landed greebles may take it into thier head to jump off their + // Landed greebles may take it into their head to jump off their // rock and travel to a new one. Boredom can cause this, but a // ship getting close to their rock will do it too. //printf("%f %f %f\n",yship,rock[g->target_rock_number].y,g->y); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rockdodger-1.0.1/greeblies.h new/rockdodger-1.0.2/greeblies.h --- old/rockdodger-1.0.1/greeblies.h 2015-04-04 20:18:22.000000000 +0200 +++ new/rockdodger-1.0.2/greeblies.h 2015-08-10 21:49:42.000000000 +0200 @@ -7,11 +7,11 @@ /*! \brief Structure describing a Greeble */ struct greeble { - int active; - float x, y; // When landed, these represent an offset from the host rock - int target_rock_number; // no longer used?. Should use rock_struct.greeb - int landed; - int boredom; // Goes up while landed + int active; //!< This is set nonzero if the greeblie is active (drawn, moving). + float x, y; //!< When landed, these represent an offset from the host rock other coordinates on the screen. + int target_rock_number; //!< The number of the rock the greeblie is flying to. Cross reference with use rock_struct.greeb. + int landed; //!< Has the greeblie landed? + int boredom; //!< Goes up while landed. /*! \brief Counter to the displayed image of the greeble. * * Every frame we increment this counter and divide it by three the diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rockdodger-1.0.1/intro.c new/rockdodger-1.0.2/intro.c --- old/rockdodger-1.0.1/intro.c 2015-04-04 20:18:22.000000000 +0200 +++ new/rockdodger-1.0.2/intro.c 2015-08-10 21:49:42.000000000 +0200 @@ -44,7 +44,7 @@ "Press any key to continue! " " %s " "Credits: Coding by Paul Holt, RPK. Music by Jack Beatmaster, Roz, Strobo, zake. Gfx: Paul Holt, RPK. Font: ripped from lib-sge. " - " A little bit of history: In 1984 Paul Holt programmed the first version of the game in his computer science class. The game was later (in 2001) ported to Linux and SDL. In December 2010 I (RPK) joined the project and started cleaning up the code and added the eye blink to the greeblies. In 2012 we moved the main development site to http://code.google.com/p/rockdodger/. And here we are... Enjoy! " + " A little bit of history: In 1984 Paul Holt programmed the first version of the game in his computer science class. The game was later (in 2001) ported to Linux and SDL. In December 2010 I (RPK) joined the project and started cleaning up the code and added the eye blink to the greeblies. In 2015 we moved the main development site to https://bitbucket.org/rpkrawczyk/rockdodger. And here we are... Enjoy! " ; static char txtbuf[8001]; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rockdodger-1.0.1/main.c new/rockdodger-1.0.2/main.c --- old/rockdodger-1.0.1/main.c 2015-04-04 20:18:22.000000000 +0200 +++ new/rockdodger-1.0.2/main.c 2015-08-10 21:49:42.000000000 +0200 @@ -100,7 +100,7 @@ char *sequence[] = { "Rock Dodger", "Press SPACE to start!", - "http://code.google.com/p/rockdodger/", + "http://bitbucket.org/rpkrawczyk/rockdodger/", "Arrow keys move the ship.", "Press S for shield and D for laser.", "If you need a pause press P.", @@ -156,7 +156,9 @@ "A place in the hall of fame has been reserved for you!", "Amazing performance! You earned a high score.", "Unbelievable, do you do anything besides playing this game?", - "Oh, come on... Admit it... You cheated, did you not?" + "Oh, come on... Admit it... You cheated, did you not?", + /* Do you remember Uridium? */ + "You have amassed a great score!" }; const int num_of_txts = sizeof(txts) / sizeof(const char *); char buf[160]; @@ -928,8 +930,10 @@ update_yellifishs(yellifishs, xship, yship - 87.8228228); update_sparkles(surf_screen); break; - case INFO_SCREEN: case GAME_OVER: + if(keystate[SDLK_ESCAPE]) play_sound(SAMPLE_XBAD); + //DANGER! Falls through! + case INFO_SCREEN: case HIGH_SCORE_DISPLAY: case HIGH_SCORE_ENTRY: // Move all the rocks @@ -964,7 +968,7 @@ if(keystate[SDLK_SPACE] && (state == HIGH_SCORE_DISPLAY || state == TITLE_PAGE - || state == DEMO)) { + || state == DEMO || state == INFO_SCREEN)) { ready_for_takeoff(); } @@ -1032,7 +1036,7 @@ assert(RD_VIDEO_BPP == 8 * sizeof(RD_VIDEO_TYPE)); oss_sound_flag = 1; load_setup(); - while((x = getopt(argc, argv, "P:Ifwskhx:y:")) >= 0) + while((x = getopt(argc, argv, "P:Ifwskh?x:y:")) >= 0) switch (x) { case 'P': rockiff_name = strdup(optarg); @@ -1060,6 +1064,7 @@ case 'w': opt_fullscreen = 0; break; + case '?': case 'h': printf("Rock Dodgers\n" " -h This help message\n" @@ -1068,7 +1073,10 @@ " -x xsize\n" " -y ysize\n" " -k Keyboard only - disable joystick\n" - " -s Silent mode (no OSS sound)\n"); + " -s Silent mode (no sound)\n" + " -P parameter file\n" + " -I force intro\n" + ); exit(0); break; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rockdodger-1.0.1/mood_item.c new/rockdodger-1.0.2/mood_item.c --- old/rockdodger-1.0.1/mood_item.c 2015-04-04 20:18:22.000000000 +0200 +++ new/rockdodger-1.0.2/mood_item.c 2015-08-10 21:49:42.000000000 +0200 @@ -18,16 +18,19 @@ static float mood_item_y; static Uint32 mood_item_last_ticks = 0; static Uint32 mood_item_time_gap = MOOD_ITEM_TIME_GAP; +static float mood_item_speed = MOOD_ITEM_SPEED; /* * Parameters for the mood items are stored in the FORM.ROCK MOOD * chunk. The chunk has the following structure: * * 0000 UWORD mood item time-gap + * 0002 UWORD mood item speed * 65536 / 4 - 1, default is $028B */ SDL_Surface *init_mood_item(uiff_ctx_t iff) { int32_t chunksize; + unsigned int i; chunksize = uiff_find_chunk_wflags(&iff, MakeID('M', 'O', 'O', 'D'), IFF_FIND_REWIND); assert(printf("FORM.ROCK MOOD size = $%08X\n", chunksize)); @@ -35,6 +38,12 @@ mood_item_time_gap = read16(iff.f); printf("\ttime gap = $%04X\n", (unsigned)mood_item_time_gap); } + if(chunksize >= 4) { + i = read16(iff.f); + mood_item_speed = i + 1; + mood_item_speed *= 4.0 / 65536; + printf("\titem speed = $%04X %12.6e\n", i, mood_item_speed); + } else guru_meditation(GM_FLAGS_GREEN | GM_FLAGS_ABORTIFY, GM_SS_Graphics | GM_GE_BadParm | GURU_SEC_mood_item, &mood_item_speed); if((mood_item_surfaces = load_images_ck("mood_item.%02hx.png", 0, 255, 0)) == NULL) { guru_meditation(GM_FLAGS_DEADEND, GM_SS_Graphics | GM_GE_IOError | GURU_SEC_mood_item, &init_mood_item); return NULL; @@ -68,7 +77,7 @@ dest.w = current_item_surface->w; dest.h = current_item_surface->h; SDL_BlitSurface(current_item_surface, NULL, target, &dest); - mood_item_x -= MOOD_ITEM_SPEED; + mood_item_x -= mood_item_speed; if(mood_item_x < -current_item_surface->w) { current_item_surface = NULL; mood_item_last_ticks = last_ticks; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rockdodger-1.0.1/sound.h new/rockdodger-1.0.2/sound.h --- old/rockdodger-1.0.1/sound.h 2015-04-04 20:18:22.000000000 +0200 +++ new/rockdodger-1.0.2/sound.h 2015-08-10 21:49:42.000000000 +0200 @@ -5,6 +5,16 @@ #define TUNE_GAMEPLAY 1 #define TUNE_HIGH_SCORE_ENTRY 2 +enum Soundsample_t { + SAMPLE_BOOM0, SAMPLE_BOOM1, SAMPLE_BOOM2, SAMPLE_BOOM3, + SAMPLE_SPEEDUP, + SAMPLE_DRIP, + SAMPLE_FART1, SAMPLE_FART2, SAMPLE_FART3, SAMPLE_FART4, + SAMPLE_SHOCKWAVE, + SAMPLE_XBAD, + SAMPLE_ +}; + extern int sfx_enabled; //!< if equal to one then play sound effects. This is used during demo so that the music is heard. int init_sound();