Page 1 of 1

Beta.h extension crediting compatibility problem

Posted: Thu Mar 14, 2013 11:00 am
by Bainespal
As of the latest updates to Roodylib, newmenu.h and beta.h, when I compile with both BETA and USE_EXTENSION_CREDITING set, I get these errors:

Code: Select all

C:\Documents and Settings\Bainespal\IF\Hugo\Library\beta.h:59:  Error:  Unknown compiler directive:  version_obj
C:\Documents and Settings\Bainespal\IF\Hugo\Library\beta.h:60:  Error:  Unknown compiler directive:  {
C:\Documents and Settings\Bainespal\IF\Hugo\Library\beta.h:61:  Error:  Unknown compiler directive:  in
C:\Documents and Settings\Bainespal\IF\Hugo\Library\beta.h:62:  Error:  Unknown compiler directive:  desc_detail
C:\Documents and Settings\Bainespal\IF\Hugo\Library\beta.h:63:  Error:  Unknown compiler directive:  " by Bert Byfield, Mike Snyder, and Roody Yogurt"
C:\Documents and Settings\Bainespal\IF\Hugo\Library\beta.h:64:  Error:  Unknown compiler directive:  }
When I comment out either of the lines to unset one or the other of those two settings, the game compiles. So, it appeas that the current version of Beta.h is incompatible with the code for the new extension crediting feature.

Posted: Thu Mar 14, 2013 11:17 am
by Roody_Yogurt
I would guess that "beta.h" was included before "roodylib.h". Is this not the case?

Posted: Thu Mar 14, 2013 2:11 pm
by Roody_Yogurt
I added this code to all extensions with crediting:

Code: Select all

#ifset USE_EXTENSION_CREDITING
#ifclear _ROODYLIB_H
#message error "Extension crediting requires \"roodylib.h\". Be sure to include it first!"
#endif
version_obj follow_version "Follow Version 2.0"
{
	in included_extensions
	desc_detail
		" by Kent Tessman";
}
#endif
I don't think it's quite important enough to merit a new upload of everything, but it'll be in all future releases (and is already up on the bitbucket pages).

Posted: Thu Mar 14, 2013 3:18 pm
by Bainespal
Roody_Yogurt wrote:I would guess that "beta.h" was included before "roodylib.h". Is this not the case?
Yes, that was the problem. I now have beta.h included directly after roodylib.h. I've actually been pretty confused about where I should include beta.h, because I upgraded my source file to include the Roodylib routines after originally building it off of the standard shell. I'm particularly confused by this from the beta.h documentation:
If you are including "roodylib" and have an init routine that calls Init_Calls, you don't need to do anything.
I've looked at Init_Calls, and it doesn't appear to have anything to do with beta.h. I don't understand.

Posted: Thu Mar 14, 2013 3:22 pm
by Roody_Yogurt
Yeah, I can see how this might be confusing. If you weren't using RoodyLib, you'd have to add a call to BetaInit in your init routine.

The documentation is trying to explain that if you are using a roodylib-utilizing shell that calls Roodylib's Init_Calls routine (like the shells distributed with RoodyLib do), you don't need to do anything other than include the "beta.h" file. Roodylib handles everything else.

Posted: Thu Oct 09, 2014 2:28 am
by aron123
Thanks for share....