Advertising:

EI0 Map editor PSP

From GameBrew

EI0 Map editor + OSlib
Ei0mapeditor.png
General
Authorsmealum
Last Updated2006/08/20
TypeOther Games
Version2006
LicenseMixed
Links
Download
Website

EI 0 Map Editor a map editor for Earth Invaders 0 with the option to create maps/your own games.

It was participated in the Neo Summer Coding Compo 2006 (PSP Applications, 7th place).

User guide

It includes a source code that permits you to load maps from external files. This will allow users to create their own maps for games. The map will always be saved to the output folder.

Here's the source code from the developer to load maps (using OSlib):

while (!osl_quit)
{
oslStartDrawing();
oslReadKeys();
oslDrawFillRect(0,0,480,272,RGB(255,255,255));

oslPrintf_xy(20, 20, "Map name : %s/n/n Up/down : Change map/nCross : Select map",maps[choix].name);
if(osl_keys->pressed.up && choix < nbmaps-1)choix++;
else if(osl_keys->pressed.down && choix > 2)choix--;
else if(osl_keys->pressed.cross)break;
oslEndDrawing();
oslSyncFrame();
}
strcpy(mapname,maps[choix].name);
while (!osl_quit)
{
if(chdir(mapname)!=0)oslMessageBox("Critiqual error. Press Triangle to quit.", "Error", oslMake3Buttons(OSL_KEY_TRIANGLE,OSL_MB_QUIT,0,0,0,0));
fond = oslLoadImageFile("fond.png", OSL_IN_RAM, OSL_PF_5551);
maptiles = LoadTileset("tiles.png");
if(!fond || !maptiles)oslMessageBox("Critiqual error. Press Triangle to quit.", "Error", oslMake3Buttons(OSL_KEY_TRIANGLE,OSL_MB_QUIT,0,0,0,0));
col=fopen("col","r");
bg=fopen("bg","r");
events=fopen("events","r");
if(!bg || !col || !events)oslMessageBox("Critiqual error. Press Triangle to quit.", "Error", oslMake3Buttons(OSL_KEY_TRIANGLE,OSL_MB_QUIT,0,0,0,0));
fscanf(col,"%ld;%ld",&map1.sizey,&map1.sizex);
for(i=0;i<map1.sizey;i++)
{
for(j=0;j<map1.sizex;j++)
{
fscanf(col,"%hd,",&map1_map(i,j));
fscanf(bg,"%hd,",&map1_map1(i,j));
fscanf(events,"%hd,",&map1_map2(i,j));
}
}
fclose(col);
fclose(bg);
fclose(events);

map1_map tables are shorts. Also, these are the defines developer used:

#define map1_map(i,j) map1_map[j]
#define map1_map1(i,j) map1_map1[j]
#define map1_map2(i,j) map1_map2[j]

Controls

D-Pad - Move the pointer

Cross - Put tile

Triangle - Delete tile

L/R - Change tile

Start - Save

Known issues

Developer noted that is version is rather buggy and some maps might not work well with it. Also the Story mode in this version is only the map browser.

External links