zoomed out version of level 9 - call it falling down
this following code loads a whole level in my sprite engine it even separates the layers.
void openfile(string file,string sprite,int num,int depth,bool phys, int phytype,int shape)
{
int clone2=agk::CreateSprite(agk::LoadImage(sprite.c_str()));
int clone =clone2;
int ic=0;
agk::SetSpriteDepth(clone,depth);
// agk::OpenToRead(4,"media/theexporttile.file");
agk::OpenToRead(num,file.c_str());
numframes.numf=agk::ReadInteger(num);
numframes.nums=agk::ReadInteger(num);
numframes.numlayers=agk::ReadInteger(num);
for(int xxc=0;xxc<numframes.numlayers;xxc++)
{
numframes.nums=agk::ReadInteger(num);
for(int ic=0;ic<numframes.nums;ic++)
{
agk::ReadString(num);
agk::ReadInteger(num);
// numframes2.spritechar=agk::ReadLine(4);
numframes2.animated=agk::ReadInteger(num);
numframes2.awidth=agk::ReadInteger(num);
numframes2.ahieght=agk::ReadInteger(num);
numframes2.frame=agk::ReadInteger(num);
agk::SetSpriteAnimation(clone,numframes2.ahieght,numframes2.awidth,
32*32);
clone=agk::CloneSprite(clone2);
numframes2.spriteid=clone;
agk::SetSpriteUVBorder(clone,0);
agk::SetSpriteDepth(clone,depth);
if(phys)
{
agk::SetSpritePhysicsOn(clone,phytype);
agk::SetSpriteShape(clone,shape);
}
numframes2.xpos=agk::ReadFloat(num);
numframes2.ypos=agk::ReadFloat(num)+64;
agk::ReadFloat(num);//angle;
agk::ReadFloat(num);//xsize'
agk::ReadFloat(num);//ysize
agk::ReadInteger(num);//red
agk::ReadInteger(num);//green
agk::ReadInteger(num);//blue
agk::ReadInteger(num);//trans
agk::ReadInteger(num);
numframes2list[numframecntr].push_back(numframes2);
agk::SetSpritePosition(numframes2list[numframecntr][numframes2list[numframecntr].size()-1].spriteid,numframes2list[numframecntr][numframes2list[numframecntr].size()-1].xpos,numframes2list[numframecntr][numframes2list[numframecntr].size()-1].ypos);
agk::SetSpriteFrame(numframes2list[numframecntr][numframes2list[numframecntr].size()-1].spriteid,numframes2list[numframecntr][numframes2list[numframecntr].size()-1].frame);
}
numframecntr++;
}
agk::DeleteSprite(clone2);
//agk::DeleteSprite(clone);
agk::CloseFile(num);
}
void app::Begin ( void )
{
agk::SetPhysicsDebugOn();
agk::SetVirtualResolution ( 640, 480 );
// numframes2.spriteid=agk::CreateSprite(agk::LoadImage("media/backpng (7).png"));
agk::FixSpriteToScreen(numframes2.spriteid,1);
agk::SetSpriteDepth(numframes2.spriteid,10);
numframes2list[numframecntr].push_back(numframes2);
// numframes2++;
int firstfile;//=numframes2list.size();
int endfile;
openfile("media/level1.file","media/rock.png",1,9,false,0,0);
agk::Sync ( );
}
void app::End ( void )
{
// this function gets called when the game ends, in here you can clean up
// all resources and deal with things like saving game data
}
Developer of Space Chips, pianobasic, zipzapzoom, and vet pinball apps. Developed the tiled map engine seen on the showcase. Veteran for the military.