Fixed love crash on mac, added adjustable grid mode, hit 'g', goes up to 9.
This commit is contained in:
parent
bb16ffa2bb
commit
491016eaf4
@ -131,6 +131,7 @@ int SEC;
|
|||||||
int SEC2;
|
int SEC2;
|
||||||
int REPLACE_MODE;
|
int REPLACE_MODE;
|
||||||
int CURRENT_BRUSH;
|
int CURRENT_BRUSH;
|
||||||
|
int GRID_MODE;
|
||||||
extern sign signs[MAXSIGNS];
|
extern sign signs[MAXSIGNS];
|
||||||
extern stamp stamps[STAMP_MAX];
|
extern stamp stamps[STAMP_MAX];
|
||||||
extern int stamp_count;
|
extern int stamp_count;
|
||||||
|
@ -369,8 +369,8 @@ static const part_type ptypes[PT_NUM] =
|
|||||||
{"PRTO", PIXPACK(0x0020EB), 0.0f, 0.00f * CFDS, 0.90f, 0.00f, 0.0f, 0.0f, 0.00f, 0.005f * CFDS, 0, 0, 0, 0, 0, 1, 100, SC_CRACKER, R_TEMP+0.0f +273.15f, 40, "Portal OUT. Things come out here", TYPE_SOLID},
|
{"PRTO", PIXPACK(0x0020EB), 0.0f, 0.00f * CFDS, 0.90f, 0.00f, 0.0f, 0.0f, 0.00f, 0.005f * CFDS, 0, 0, 0, 0, 0, 1, 100, SC_CRACKER, R_TEMP+0.0f +273.15f, 40, "Portal OUT. Things come out here", TYPE_SOLID},
|
||||||
{"PSTE", PIXPACK(0xAA99AA), 0.6f, 0.01f * CFDS, 0.98f, 0.95f, 0.0f, 0.1f, 0.00f, 0.000f * CFDS, 2, 0, 0, 0, 20, 1, 31, SC_CRACKER, R_TEMP-2.0f +273.15f, 29, "Colloid", TYPE_LIQUID},
|
{"PSTE", PIXPACK(0xAA99AA), 0.6f, 0.01f * CFDS, 0.98f, 0.95f, 0.0f, 0.1f, 0.00f, 0.000f * CFDS, 2, 0, 0, 0, 20, 1, 31, SC_CRACKER, R_TEMP-2.0f +273.15f, 29, "Colloid", TYPE_LIQUID},
|
||||||
{"PSTS", PIXPACK(0x776677), 0.0f, 0.00f * CFDS, 0.00f, 0.00f, 0.0f, 0.0f, 0.00f, 0.000f * CFDS, 0, 0, 0, 0, 20, 0, 100, SC_CRACKER, R_TEMP-2.0f +273.15f, 29, "blah blah solid not in the menu", TYPE_SOLID},
|
{"PSTS", PIXPACK(0x776677), 0.0f, 0.00f * CFDS, 0.00f, 0.00f, 0.0f, 0.0f, 0.00f, 0.000f * CFDS, 0, 0, 0, 0, 20, 0, 100, SC_CRACKER, R_TEMP-2.0f +273.15f, 29, "blah blah solid not in the menu", TYPE_SOLID},
|
||||||
{"ANAR", PIXPACK(0xFFFFEE), 0.7f, 0.02f * CFDS, 0.96f, 0.80f, 0.1f, 0.1f, 0.00f, 0.000f * CFDS, 1, 10, 0, 0, 30, 1, 85, SC_POWDERS, R_TEMP+0.0f +273.15f, 70, "Very light dust. Behaves", TYPE_PART},
|
{"ANAR", PIXPACK(0xFFFFEE), 0.7f, 0.02f * CFDS, 0.96f, 0.80f, 0.1f, 0.1f, 0.00f, 0.000f * CFDS, 1, 10, 0, 0, 30, 1, 85, SC_POWDERS, R_TEMP+0.0f +273.15f, 70, "Very light dust. Behaves opposite", TYPE_PART},
|
||||||
{"VINE", PIXPACK(0x079A00), 0.0f, 0.00f * CFDS, 0.95f, 0.00f, 0.0f, 0.0f, 0.00f, 0.000f * CFDS, 0, 20, 0, 0, 10, 1, 100, SC_CRACKER, R_TEMP+0.0f +273.15f, 65, "Vine, not in menu", TYPE_SOLID},
|
{"VINE", PIXPACK(0x079A00), 0.0f, 0.00f * CFDS, 0.95f, 0.00f, 0.0f, 0.0f, 0.00f, 0.000f * CFDS, 0, 20, 0, 0, 10, 1, 100, SC_CRACKER, R_TEMP+0.0f +273.15f, 65, "Vine, grows", TYPE_SOLID},
|
||||||
{"INVS", PIXPACK(0x00CCCC), 0.0f, 0.00f * CFDS, 0.90f, 0.00f, 0.0f, 0.0f, 0.00f, 0.000f * CFDS, 0, 0, 0, 0, 15, 1, 100, SC_CRACKER, R_TEMP+0.0f +273.15f, 164, "Invisible to everything while under pressure.", TYPE_SOLID},
|
{"INVS", PIXPACK(0x00CCCC), 0.0f, 0.00f * CFDS, 0.90f, 0.00f, 0.0f, 0.0f, 0.00f, 0.000f * CFDS, 0, 0, 0, 0, 15, 1, 100, SC_CRACKER, R_TEMP+0.0f +273.15f, 164, "Invisible to everything while under pressure.", TYPE_SOLID},
|
||||||
{"EQVE", PIXPACK(0xFFE0A0), 0.7f, 0.02f * CFDS, 0.96f, 0.80f, 0.0f, 0.1f, 0.00f, 0.000f * CFDS, 1, 0, 0, 0, 30, 0, 85, SC_CRACKER, R_TEMP+0.0f +273.15f, 70, "Shared velocity test", TYPE_PART},
|
{"EQVE", PIXPACK(0xFFE0A0), 0.7f, 0.02f * CFDS, 0.96f, 0.80f, 0.0f, 0.1f, 0.00f, 0.000f * CFDS, 1, 0, 0, 0, 30, 0, 85, SC_CRACKER, R_TEMP+0.0f +273.15f, 70, "Shared velocity test", TYPE_PART},
|
||||||
{"INST", PIXPACK(0xAAAAAA), 0.0f, 0.00f * CFDS, 1.00f, 0.00f, 0.0f, 0.0f, 0.00f, 0.000f * CFDS, 0, 0, 0, 0, 1, 0, 100, SC_SPECIAL, R_TEMP+0.0f +273.15f, 251, "helper for INST", 0},
|
{"INST", PIXPACK(0xAAAAAA), 0.0f, 0.00f * CFDS, 1.00f, 0.00f, 0.0f, 0.0f, 0.00f, 0.000f * CFDS, 0, 0, 0, 0, 1, 0, 100, SC_SPECIAL, R_TEMP+0.0f +273.15f, 251, "helper for INST", 0},
|
||||||
|
@ -1304,6 +1304,17 @@ void draw_parts(pixel *vid)
|
|||||||
int cr, cg, cb;
|
int cr, cg, cb;
|
||||||
float fr, fg, fb;
|
float fr, fg, fb;
|
||||||
float pt = R_TEMP;
|
float pt = R_TEMP;
|
||||||
|
if(GRID_MODE)
|
||||||
|
{
|
||||||
|
for(ny=0;ny<YRES;ny++)
|
||||||
|
for(nx=0;nx<XRES;nx++)
|
||||||
|
{
|
||||||
|
if(ny%(4*GRID_MODE)==0)
|
||||||
|
blendpixel(vid, nx, ny, 100, 100, 100, 80);
|
||||||
|
if(nx%(4*GRID_MODE)==0)
|
||||||
|
blendpixel(vid, nx, ny, 100, 100, 100, 80);
|
||||||
|
}
|
||||||
|
}
|
||||||
for(i = 0; i<NPART; i++) {
|
for(i = 0; i<NPART; i++) {
|
||||||
#ifdef OpenGL
|
#ifdef OpenGL
|
||||||
if(cmode == CM_FANCY) //If fancy mode
|
if(cmode == CM_FANCY) //If fancy mode
|
||||||
|
@ -1393,6 +1393,8 @@ int main(int argc, char *argv[])
|
|||||||
}
|
}
|
||||||
if(sdl_key==SDLK_INSERT)
|
if(sdl_key==SDLK_INSERT)
|
||||||
REPLACE_MODE = !REPLACE_MODE;
|
REPLACE_MODE = !REPLACE_MODE;
|
||||||
|
if(sdl_key=='g')
|
||||||
|
GRID_MODE = (GRID_MODE+1)%10;
|
||||||
if(sdl_key==SDLK_SPACE)
|
if(sdl_key==SDLK_SPACE)
|
||||||
sys_pause = !sys_pause;
|
sys_pause = !sys_pause;
|
||||||
if(sdl_key=='h')
|
if(sdl_key=='h')
|
||||||
@ -2165,6 +2167,8 @@ int main(int argc, char *argv[])
|
|||||||
sprintf(uitext, "Cracker's V%d FPS:%d Parts:%d REPLACE MODE", SAVE_VERSION, FPS,NUM_PARTS);
|
sprintf(uitext, "Cracker's V%d FPS:%d Parts:%d REPLACE MODE", SAVE_VERSION, FPS,NUM_PARTS);
|
||||||
else if(sdl_mod&(KMOD_CAPS))
|
else if(sdl_mod&(KMOD_CAPS))
|
||||||
sprintf(uitext, "Cracker's V%d FPS:%d Parts:%d CAPS LOCK ON", SAVE_VERSION, FPS, NUM_PARTS);
|
sprintf(uitext, "Cracker's V%d FPS:%d Parts:%d CAPS LOCK ON", SAVE_VERSION, FPS, NUM_PARTS);
|
||||||
|
else if(GRID_MODE)
|
||||||
|
sprintf(uitext, "Cracker's V%d FPS:%d Parts:%d Grid:%d", SAVE_VERSION, FPS, NUM_PARTS,GRID_MODE);
|
||||||
else
|
else
|
||||||
sprintf(uitext, "Cracker's V%d FPS:%d Parts:%d", SAVE_VERSION, FPS, NUM_PARTS);
|
sprintf(uitext, "Cracker's V%d FPS:%d Parts:%d", SAVE_VERSION, FPS, NUM_PARTS);
|
||||||
//printf("%s\n", uitext);
|
//printf("%s\n", uitext);
|
||||||
|
14
src/powder.c
14
src/powder.c
@ -922,25 +922,27 @@ void update_particles_i(pixel *vid, int start, int inc)
|
|||||||
if(ISLOVE==1)
|
if(ISLOVE==1)
|
||||||
{
|
{
|
||||||
ISLOVE = 0;
|
ISLOVE = 0;
|
||||||
for(ny=4;ny<YRES-4;ny++)
|
for(ny=0;ny<YRES-4;ny++)
|
||||||
{
|
{
|
||||||
for(nx=4;nx<XRES-4;nx++)
|
for(nx=0;nx<XRES-4;nx++)
|
||||||
{
|
{
|
||||||
r=pmap[ny][nx];
|
r=pmap[ny][nx];
|
||||||
if((r>>8)>=NPART || !r)
|
if((r>>8)>=NPART || !r)
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if(parts[r>>8].type==PT_LOVE)
|
else if((ny<9||nx<9||ny>YRES-7||nx>XRES-10)&&parts[r>>8].type==PT_LOVE)
|
||||||
|
parts[r>>8].type = PT_NONE;
|
||||||
|
else if(parts[r>>8].type==PT_LOVE)
|
||||||
{
|
{
|
||||||
love[nx/9][ny/9] = 1;
|
love[nx/9][ny/9] = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
for(nx=0;nx<=XRES-4;nx++)
|
for(nx=9;nx<=XRES-18;nx++)
|
||||||
{
|
{
|
||||||
for(ny=0;ny<=YRES-4;ny++)
|
for(ny=9;ny<=YRES-7;ny++)
|
||||||
{
|
{
|
||||||
if(love[nx/9][ny/9]==1)
|
if(love[nx/9][ny/9]==1)
|
||||||
{
|
{
|
||||||
@ -956,6 +958,8 @@ void update_particles_i(pixel *vid, int start, int inc)
|
|||||||
}
|
}
|
||||||
if(!rt&&loverule[nnx][nny]==1)
|
if(!rt&&loverule[nnx][nny]==1)
|
||||||
create_part(-1,nx+nnx,ny+nny,PT_LOVE);
|
create_part(-1,nx+nnx,ny+nny,PT_LOVE);
|
||||||
|
else if(!rt)
|
||||||
|
continue;
|
||||||
else if(parts[rt>>8].type==PT_LOVE&&loverule[nnx][nny]==0)
|
else if(parts[rt>>8].type==PT_LOVE&&loverule[nnx][nny]==0)
|
||||||
parts[rt>>8].type=PT_NONE;
|
parts[rt>>8].type=PT_NONE;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user