Apologies
My last blog was too short an irrelevant to anything. This ought to make up for it.
Something for C++ programmersI've now spent time with both C# and Java, and no longer have too many complaints about them; in fact, I'm using C# for one of my games, and Java for some minor tools, so I must be liking them.
But here's something that bothered me about both languages:
// Java
public MyObject()
{
super(9001);
}
// C#
public MyObject()
{
base(9002);
}
Base/Parent constructors.
Don't get me wrong, I love them; what bothers me is… C++ doesn't have them.
Or so I thought. But after wading through many an obscure book and falling into a dark pit on some ancient-and-still-functioning BBS (Yeah, there are still
functioning BBS servers), I finally found the knowledge I was seeking (And no thanks to those obscure books/weird message boards).
Completely by accident. You see, I was creating a constructor:
MSprite(int& ic):ID(ic) // This was the intended behavior
{
}
Of course, being Mega as I am and typing away at who-knows-how-many statements per minute, I typed this in and didn't notice the typo until I tried to compile:
MSprite(int& ic):(ic)
{
}
Of course, you'd be expecting a syntax error, but instead I got the
"No matching call for Object(int&). Candidates are Object()…" message.
MSprite is inherited from Object, which meant only one thing… I had discovered the way to call a base-class constructor.
I can't believe that in the five years I've been programming in C++, I couldn't find that out, or do it
before now. ;_;
Anyway, this is all a part of that game I mentioned I was going to make yesterday.
The little game I started yesterdayHere have anotherMade in C++. :D
Also, yay another space shmup that I probably won't get anywhere near to a state of completion, but is great practice.
*Aims the Mega Rifle at Lunacy Star* <- Playful trolling, new members.
Sorry Taizen >:3I started the actual code
yesterday, and in 6 hours I was done with a framework that gives me all the functionality that Hydra had, but works better (Because I now know how to handle my pointers correctly, and make use of Early-Out algorithms for drawing).
It uses SFML, as usual, but was made from scratch. :3
Ludum Dare should be a piece of cake (6 hours working on the 'engine' will leave me with about 42 hours for the rest of the things I need to do).
My last blog was *that* close to being a "I'm feeling depressed" blog. Whay was I feeling depressed? I don't have a clue.
I'm feeling great now though.
My LD planVery simple. MAKE GAEM AND WIN!
Or, in simpler terms [/irony]:
> Create a stable and easy to extend OOP framework in the first 6-8 hours of the comp. [Proven that I can]
> Work on design and art assets in the next ?? hours. [Done it before]
> Cobble the final game together. [Done this before as well]
I already have plans for any level-creation I need to do; I'll use a layered map from TileStudio; I just have to write an importer; fortunately I find all binary IO pathetically simple to pull off in a short amount of time. :P
For music, I'm probably going to use GMGME, with standard SFML music objects as a fallback.
In addition to this, I'm going to create an Asset manager (You have
no idea how much this speeds up the development process), an Instance manager and who-knows-what-else.
The Instance manager is just a simple system built into my base Game Object's that assigns a unique ID to each instance of the class (Using a global counter), and essentially allows me to remove objects by instance instead of by class.
Well, back to my papered desk (I've got a 'scratchpad' for the RPG design, and another one ready for LD on the weekend).
I've got a checklist for both LD and RPG4D, blank paper stuck on the walls, pencils everywhere, and a blank/cleaned desktop. I think.. Wait, what?!… I'm getting
organized?!?! The world is going to end!
*Runs away and spreads the word with bouts of lunatic yelling*
My LD plan:
Coffee and tea and energy drinks and beer and biscuits and pie.About 12 hours of sleepThe game, you say? errrrrrrrrUnder what weird rock have you been living to only discover base/parent constructors only now?
Or how few open source C++ libraries have you been using?EDIT: Cellphone posting fail'd.
And I still need to get into C#. After only knowing a little bit of each programming language I really need to practice using it since I decided I would like to program with that over other languages.
But maybe a little java on the side.