ENIGMA Development Environment
Website is in read-only mode due to a recent attack.

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

Issues Help Desk / Re: Global arrays inside with(){}
« on: January 14, 2012, 05:57:41 PM »
I haven't the foggiest.

Issues Help Desk / Re: Global arrays inside with(){}
« on: January 14, 2012, 08:28:35 AM »
Unfortunately, this'll have to wait for the completion of the new parser set I'm working on. I don't want to make changes to the existing system when I'm about to go in and make hundreds.

Announcements / Re: New GitHub Repository
« on: January 07, 2012, 04:05:16 PM »
You buried my neat shit. >:(

Announcements / Re: Neat Stuff
« on: January 06, 2012, 02:54:40 PM »
The second picture has grass in it.

Announcements / Re: Neat Stuff
« on: January 06, 2012, 02:46:11 PM »
Chickens are neat.

Announcements / Neat Stuff
« on: January 06, 2012, 09:48:41 AM »
I was working on this new parser yesterday, and I thought it'd be kind of neat to make my AST generator export SVGs. So I did.

So, given this expression: 2 << 1 + 6 / 2 - 2 / 2 << 8 % 5 + 5 / 2

The AST looks like this, step by step:

ast << create_token_dec_literal("2",1);

ast << create_token_operator("<<",2);

ast << create_token_dec_literal("1",1);

ast << create_token_operator("+",1);

ast << create_token_dec_literal("6",1);

ast << create_token_operator("/",1);

ast << create_token_dec_literal("2",1);

ast << create_token_operator("-",1);

ast << create_token_dec_literal("2",1);

ast << create_token_operator("/",1);

ast << create_token_dec_literal("2",1);

ast << create_token_operator("<<",2);

ast << create_token_dec_literal("8",1);

ast << create_token_operator("%",1);

ast << create_token_dec_literal("5",1);

ast << create_token_operator("+",1);

ast << create_token_dec_literal("5",1);

ast << create_token_operator("/",1);

ast << create_token_dec_literal("2",1);


Announcements / Re: Happy New Year!
« on: January 02, 2012, 11:33:37 PM »
I figure if he has a happy new year, he'll shut the fuck up for a while.

Off-Topic / Re: Hey! I'm new!
« on: January 02, 2012, 11:32:48 PM »

General ENIGMA / Re: Use git instead of SVN.
« on: January 02, 2012, 11:09:53 AM »
I thought I replied to this thread.

Switching would bring serious benefit to the tagging system; it takes too fucking long and consistently fails trying to mark the trunk as stable or testing. So huge benefit to be gained.

Difficulty is, everything is already set up in LGM to use SVN for downloading updates, via SVNkit. JGit seems to be what we'd look to for its replacement.

Also, the Wiki install pages all give SVN checkout instructions; those would either need to be replaced or supplemented (in case we want to keep the SVN version current) with the git how-tos.

If either of you are volunteering, I'll be happy to make the switch. I don't speak for Ism.

Announcements / Happy New Year!
« on: December 31, 2011, 04:50:28 PM »
I'm tired as ass. And sick as a dog.

Really, though. I hope that 2012 is a great year for everyone. Except Yoyo, I mean. Obviously.

Off-Topic / Re: Hey! I'm new!
« on: December 28, 2011, 08:58:42 PM »
Eh, 18's only ignored by fede. And most of us exercise decent grammar.

Off-Topic / Re: Hey! I'm new!
« on: December 27, 2011, 03:00:46 PM »
*cocks gun*

Issues Help Desk / Re: Error: multiple definition of
« on: December 27, 2011, 10:45:10 AM »
It doesn't matter if you guard it if you are including the header from two source files.
Don't declare globals in headers, except with extern.
Don't implement functions in headers unless they are static and/or inline.

To expand on what has been said, all C++ functions are game in ENIGMA provided you include them from Definitions, which IsmAvatar will be adding to the resource tree as an instantiable resource shortly. EDL is very similar to C++, but you must configure some settings to use otherwise ambiguous operators (such as ++). Currently, the string behavior setting is broken.

Instances are not freed immediately; their iterators are unlinked and any open iterators are updated to be kept valid. The instance is then added to a set for deletion at the end of the step. This way, you can do asinine garbage like with (a) { instance_destroy(); instance_create(x,y,obj_explosion); } without tripping any access violations.

The new parser I am working on will correctly integrate the new C++ syntax features. Presently, member access is limited due to the dynamic nature of GML, and ternary expressions can often cause compile error if you mix types in them (expression? var : int gives an ambiguous cast error, because var can cast to int as well as construct from int).