Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Josh @ Dreamland

106
General ENIGMA / Re: Animated GIFs
« on: December 13, 2014, 10:26:37 PM »
First thought is that the image_load function shouldn't crash, no matter what's in the file. Super slow isn't ideal, yes, but (a) it's better than nothing, and (b) it's an image loader; it shouldn't be called that frequently. Third thought: how did you handle the many GIF compositing methods? Or does it just not support animation?

My other thoughts are of decreasing relevance. Looks good! Thanks!

107
General ENIGMA / Re: Code Action Comments
« on: December 13, 2014, 11:41:22 AM »
The question isn't about a tag so much as an actual GUI field—Something users would be able to find without looking for it. But whatever.

Any of ///, //!, /** */, or /*! */ are perfectly valid ways of specifying a formal comment. JoshEdit supports highlighting them correctly. By default, the first sentence (up to the first period or pair of newlines) is used as the brief. Otherwise, the tag is @brief, or \brief in vanilla Doxygen. The explicit tags extend the brief to as many sentences as you like; it ends at the first pair of newlines (or end of the comment).

JoshEdit already knows where block boundaries are (strings, comments, etc), so you can either ask it, or just recompute them yourself (which is pretty simple).


To clarify:
Code: (EDL) [Select]
/// This is a function that
/// does some stuff. This
/// text elaborates on it.
The brief of the above is "This is a function that does some stuff."

Code: (EDL) [Select]
/*!
 * This is a function that does some stuff and
 * was written by someone who just has no
 * concept of what a period is
 *
 * This text elaborates on it
 */
The brief of the above is "This is a function that does some stuff and was written by someone who just has no concept of what a period is." Note that the behavior is not affected at all by the existence of asterisks.

Code: (EDL) [Select]
/**
 * @brief This is a function that does some
 *     stuff. Really well, actually. (Thanks for asking.)
 *
 * This text elaborates on it.
 */
The brief of the above is the entire paragraph, "This is a function that does some stuff. Really well, actually. (Thanks for asking.)."

Code: (EDL) [Select]
/// \brief This is a function that
/// does some stuff. It's also pretty
/// serious with Doxygen.
/// \param foo  the first parameter
The brief of the above is "This is a function that does some stuff. It's also pretty serious with Doxygen."


As long as I'm repeatedly adding information to this post, I'll point out one more thing: Normally a Doxygen comment precedes a function or variable. If we are REALLY shooting for Doxygen compliance, the "correct" way to do this terrible hack is to leverage the @file tag, or create a new @action tag.

This is the only way to denote to Doxygen that a comment applies to the file, not to a function or other object.

108
Issues Help Desk / Re: Compile Error (C++ Bad Reloc)
« on: December 13, 2014, 09:21:02 AM »
Apparently room_last and room_first aren't actually being written, even though the engine expects them to be. I guess he just stopped using them.

109
General ENIGMA / Re: Extension Depends on Extension?
« on: December 13, 2014, 09:19:46 AM »
I don't think I coded such a system, no. Just let it go for now and make people aware of the issue. Otherwise, well, dependency resolution on purely optional extensions is pretty easy to write. Probably easier than hacking up one fucking extension to include the other.

110
Proposals / Re: Improving tiles editing
« on: December 13, 2014, 09:15:07 AM »
If we're writing a wish list, I've always wanted tile and object grouping. I think Robert was working on something where you could assign non-ID ordering to objects, but it'd probably help him just to have the ability to group strings of identical objects in that tree view. (Or is it a list view? I forget if Swing distinguishes.)

111
Issues Help Desk / Re: Symbols???
« on: December 13, 2014, 09:12:19 AM »
"Written correctly" here isn't well-defined. You probably wrote a completely correct CP-1252 copyright symbol. But the rest of the world has moved on; apparently, even pieces of Windows Exploder. Could you paste a hex dump of the file you go that "Legal Copyright" line from? I'm not sure if you'll have the CP-1252 or UTF-8 version (I sincerely hope you have the former), but whichever it is, we'll need to change it or specify encoding options to the resource compiler.

112
General ENIGMA / Re: Code Action Comments
« on: December 08, 2014, 12:25:57 AM »
It's a cheap hack compared to actually allowing you to name it in a field, which I'd recommend doing since EGM and GMX are extensible. Why Dailly didn't do that, I'll never know.

113
Off-Topic / Re: what if Atari bought GM instead?
« on: December 07, 2014, 09:52:41 PM »
If he'd done that, ENIGMA wouldn't exist. I don't know if GM would be so good that I'd still use it, but it would at least be substantially better, or it would be dead. Atari is a big enough, wise enough corporation that it would either make GM great, or drop it. It wouldn't have a perfect PR record, either, but it wouldn't be the publicity trainwreck GM became. And yes, maybe the development scheme would have been slow, but face facts: it's been seven years.

Still, no sense dwelling on what might have been.

114
Developing ENIGMA / Re: Switch to C++11?
« on: December 07, 2014, 05:12:32 PM »
After attempts to glean more information, I believe the best course of action is to wait for more problems or assume this is solved. Ignore me.

115
Ideas and Design / Re: In need of a Sonic fangame engine for Enigma
« on: December 07, 2014, 12:30:08 PM »
We've merged a number of pull requests recently. What fix are you waiting for?

116
Developing ENIGMA / Re: Switch to C++11?
« on: December 07, 2014, 12:10:07 PM »
We're getting users with build errors because something isn't correctly configured to use ISO 11. On Windows, if I'm not mistaken. Is there an INI somewhere they can add --std=c++11 to?

117
Issues Help Desk / Re: Trying something different... (Fedora 20 Install)
« on: December 06, 2014, 10:28:53 AM »
Hi there,

I've pushed a commit that removes the affected lines from the repository. You should be able to build, now, after you update (git pull). The only file which depended on stropts was the Linux Joystick API. I was basically being pedantic and making sure I wasn't passed partial data, which the API should already be doing. The Linux joystick driver is ancient and venerable and lacks support for a lot of modern features, but it isn't so bad it'll send us garbage.

Anyone who is so inclined can test out Linux joysticks using this test game.

Cheers

118
General ENIGMA / Re: Busy busy, like a bee
« on: December 06, 2014, 10:23:08 AM »
Oh, that's awesome. I'm going to sit this LD out. I entered a few of them with ENIGMA in the past. One of these days I'll take vacation on Friday and join in, again.

Anyway, best of luck!

119
Proposals / Re: Allow me to use C++ in EDL
« on: December 02, 2014, 12:35:15 AM »
You'd have to access those objects the same way you access them in other C++ functions. Ie, using instance_event_iterator.

The main reason you can't use vector with the current compiler is that it's terrible at coercing types. It was always bad at it, but it's actually gotten worse over time. Originally, you could access vector like an array, but couldn't call functions because the type resolution wasn't good enough to get accurate function information from template types, so I never bothered coding checks for member function calls. I fixed the template types issue in JDI, but in the meantime, someone broke it to the point that it doesn't even realize anything in the code is not a var, anymore. No idea why. Don't feel like investigating.

120
Programming Help / Re: Embedding Enigma into GUI
« on: November 26, 2014, 12:44:05 AM »
Creating a Qt window system wouldn't be that hard. You could tweak the code to allow you to specify an existing Qt widget to contain the GL context. You'd create the GL context in a new Bridges directory, Qt-OpenGL. There are plenty of existing systems to use as reference.

Same goes for wx.