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.

Topics - RetroX

Pages: 1 2 3 4 5
Off-Topic / Brilliant.
« on: April 13, 2012, 09:00:34 pm »

Announcements / New GitHub Repository
« on: January 06, 2012, 05:45:49 pm »
I've just set up a repository on GitHub for ENIGMA. You can find it here:

If you're running a Linux-based distro, you can install the git package, then run the following command to create a local copy:
Code: [Select]
git clone git:// git checkout is not like svn checkout; git clone is svn checkout)

For those of you that want something like TortoiseSVN, TortoiseGit is also available. If you don't know how Git works, I'd suggest learning it (it's not the same as SVN) or asking someone how to use it.

From GitHub, you can fork the repository (and then push changes in your fork back to us), submit bugs (either there or on flyspray here), and watch for changes. You can also view a list of files and commits with much more ease. If you want to download a copy of the repo at any time, GitHub also supports this:

One of the largest differences between Git and SVN is Git's naming of commits; instead of using incremented numbers, it uses hashes. Commits can be named using tags (git tag <name> <commit>), and you can switch to a specific tag or branch with (git checkout <tag/branch>). Git also makes a single .git directory in the root instead of SVN's recursive .svn nonsense.

Note that the SVN repo is still up, but I'm not entirely sure of how things are going to work with either.  This is a very large change, however, is really for the better.

General ENIGMA / Use git instead of SVN.
« on: January 01, 2012, 04:47:29 pm »
Because it's better.

Proposals / Laziness Buffer
« on: October 15, 2011, 04:20:27 pm »
typedef signed char byte;
typedef unsigned char ubyte;
typedef signed char schar;
typedef unsigned char uchar;
typedef unsigned short ushort;
typedef unsigned int uint;
typedef unsigned long ulong;
typedef long long llong;
typedef unsigned long long ullong;

General ENIGMA / MIME Localisation
« on: August 19, 2011, 02:58:31 pm »
Simply because I don't trust Google at all:

For the file type associations under both Linux and Windows, I need translations for "Game Maker Project" and "ENIGMA Game Project."  I don't think that GM localises at all (correct me if I'm wrong), so, "Game Maker" should be left as that regardless of language.  I also need a translation for "Game Maker (Unknown Version)".

If you feel like helping out with localisation, help give me a localisation in whatever languages that you know.  I know French, but that's about all that I've got.

In addition to the words, if you'd mind listing the number formatting as well (for example, "Game Maker 8.1" is "Game Maker 8,1" in French), that would help a bit.

Off-Topic / FORK YES
« on: August 17, 2011, 08:48:01 pm »

Proposals / Fix Wiki Namespaces
« on: August 17, 2011, 03:24:09 pm »
None of you know how to wiki.

Someone should read this and fix the pages.

Nested namespaces don't work.

Proposals / Remove GLU dependency
« on: July 31, 2011, 01:07:35 pm »
Currently, the only two functions from it that are used are gluLookAt and gluPerspective.  I also see a line with gluBuild2DMipmaps that is commented out, but it's really not necessary.

Both of these functions can be replicated with basic GL calls.  Currently, they are only used in GSd3d.h and GSd3d.cpp.

General ENIGMA / Dependency List
« on: July 31, 2011, 12:58:55 pm »
Because so many people ask for it.

Dependencies for Ubuntu:

Dependencies for Arch Linux:

Off-Topic / Linux Poll
« on: May 26, 2011, 09:22:52 pm »
Curious, is all.  I'm going to do this primarily to see what packages that I need to make, even though I'm going to be making Ubuntu, Arch, and Fedora packages.

Off-Topic / Hey, IsmAvatar
« on: May 21, 2011, 09:31:10 am »
Why did you ban me from the IRC again?

Proposals / ENIGMA Project Icons
« on: April 22, 2011, 08:32:08 pm »
Might make sense to have some kind of icon for both GM projects and ENIGMA projects (not made yet), so that they can be used for file associations.

I've mentioned this a million times before, but whatever.  Does anyone have enough artistic ability to work on this?  We really only need two icons.

General ENIGMA / dear a2h
« on: April 01, 2011, 04:21:39 pm »
it's not funny

Off-Topic / Test
« on: March 25, 2011, 03:13:54 pm »
Which one looks the best?

The third for me.

Function Peer Review / Fede-lasse's functions
« on: March 12, 2011, 10:59:21 am »
Because he didn't post them in their own topic, and I can't move topics:

Code: [Select]
//bool place_snapped(double hsnap,double vsnap)
bool place_snapped(double hsnap,double vsnap) {
  return (bool)(X == X%hsnap) && (Y == Y%vsnap);

//int move_random(double hsnap,double vsnap)
int move_random(double hsnap,double vsnap) {
  X = floor(random(room_width)/hsnap)*hsnap;
  Y = floor(random(room_height)/vsnap)*vsnap;
  return (int)0;

//int move_snap(double hsnap,double vsnap)
int move_snap(double hsnap,double vsnap) {
  X = floor(X/hsnap)*hsnap;
  Y = floor(Y/vsnap)*vsnap;
  return (int)0;

//int move_wrap(double hor,double vert,double margin)
int move_wrap(double hor,double vert,double margin) {
  //not sure whether two IFs are faster than one big calculation in a single IF
  if (hor) {
    if (X < -margin || X > room_width+margin) {
      X = -(X-room_width);
  if (vert) {
    if (Y < -margin || Y > room_height+margin) {
      Y = -(Y-room_height);
  return (int)0;

//int move_towards_point(double x,double y,double sp)
int move_towards_point(double x,double y,double sp) {
  DIRECTION = point_direction(X,Y,x,y);
  SPEED = sp;
  return (int)0;

Note that these functions have already been committed (in working forms), but I'll post them anyways:
Code: [Select]
//double distance_to_point(double x,double y)
double distance_to_point(double x,double y) {
  return (double)point_distance(median(BBOX_LEFT,x,BBOX_RIGHT),median(BBOX_TOP,y,BBOX_BOTTOM),x,y);

//double distance_to_object(int obj)
double distance_to_object(int obj) {
  double _edgeX,_edgeY;
  _edgeX = median(BBOX_LEFT,obj.X,BBOX_RIGHT);
  _edgeY = median(BBOX_TOP,obj.Y,BBOX_BOTTOM);
  if (_edgeX > obj.BBOX_LEFT && _edgeX < obj.BBOX_RIGHT && _edgeY > obj.BBOX_TOP && _edgeY < obj.BBOX_BOTTOM) {
    return (double)0;
  return (double)point_distance(_edgeX,_edgeY,median(obj.BBOX_LEFT,X,obj.BBOX_RIGHT),median(obj.BBOX_TOP,Y,obj.BBOX_BOTTOM));

Pages: 1 2 3 4 5