more life types using states, put them in new menu. Maybe get some way to switch to new menu on mouseover of last spot of current life menu
This commit is contained in:
parent
db5bb618c1
commit
926450a9a3
@ -61,7 +61,7 @@ extern unsigned char ZSIZE;
|
||||
#define STAMP_Y 4
|
||||
#define STAMP_MAX 120
|
||||
|
||||
#define NGOL 23
|
||||
#define NGOL 25
|
||||
|
||||
#define CIRCLE_BRUSH 0
|
||||
#define SQUARE_BRUSH 1
|
||||
|
@ -52,9 +52,10 @@ static menu_wall mwalls[] =
|
||||
#define SC_LIQUID 4
|
||||
#define SC_NUCLEAR 7
|
||||
#define SC_LIFE 9
|
||||
#define SC_CRACKER 10
|
||||
#define SC_CRACKER2 11
|
||||
#define SC_TOTAL 10
|
||||
#define SC_LIFE2 10
|
||||
#define SC_CRACKER 12
|
||||
#define SC_CRACKER2 13
|
||||
#define SC_TOTAL 11
|
||||
|
||||
static menu_section msections[] =
|
||||
{
|
||||
@ -68,6 +69,7 @@ static menu_section msections[] =
|
||||
{"\xC6", "Radioactive", 0, 1},
|
||||
{"\xCC", "Special", 0, 1},
|
||||
{"\xD2", "Life", 0, 1},
|
||||
{"\xD2", "More Life", 0, 1},
|
||||
{"\xC8", "Cracker", 0, 0},
|
||||
{"\xC8", "Cracker!", 0, 0},
|
||||
};
|
||||
|
@ -193,7 +193,9 @@
|
||||
#define PT_TEST 142
|
||||
#define PT_TEST2 143
|
||||
#define PT_TEST3 144
|
||||
#define PT_NUM 145
|
||||
#define PT_FROG 145
|
||||
#define PT_BRAN 146
|
||||
#define PT_NUM 147
|
||||
|
||||
#define R_TEMP 22
|
||||
#define MAX_TEMP 9999
|
||||
@ -430,9 +432,11 @@ static const part_type ptypes[PT_NUM] =
|
||||
{"REPL", PIXPACK(0x259588), 0.0f, 0.00f * CFDS, 0.90f, 0.00f, 0.0f, 0.0f, 0.00f, 0.000f * CFDS, 0, 0, 0, 0, 0, 1, 100, SC_LIFE, 9000.0f, 40, "B1357/S1357", TYPE_SOLID|PROP_LIFE, NULL},
|
||||
{"MYST", PIXPACK(0x0C3C00), 0.0f, 0.00f * CFDS, 0.90f, 0.00f, 0.0f, 0.0f, 0.00f, 0.000f * CFDS, 0, 0, 0, 0, 0, 1, 100, SC_LIFE, 9000.0f, 40, "B3458/S05678", TYPE_SOLID|PROP_LIFE, NULL},
|
||||
{"BOYL", PIXPACK(0x0A3200), 1.0f, 0.01f * CFDS, 0.99f, 0.30f, -0.1f, 0.0f, 0.18f, 0.000f * CFDS, 0, 0, 0, 0, 1, 1, 1, SC_GAS, R_TEMP+2.0f +273.15f, 42, "Boyle, variable pressure gas. Expands when heated.", TYPE_GAS, NULL},
|
||||
{"TEST", PIXPACK(0xFF0000), 0.0f, 0.00f * CFDS, 0.90f, 0.00f, 0.0f, 0.0f, 0.00f, 0.000f * CFDS, 0, 0, 0, 0, 0, 1, 100, SC_SPECIAL, 9000.0f, 40, "S3458/B37/4", TYPE_SOLID|PROP_LIFE, NULL},
|
||||
{"TES2", PIXPACK(0x00FF00), 0.0f, 0.00f * CFDS, 0.90f, 0.00f, 0.0f, 0.0f, 0.00f, 0.000f * CFDS, 0, 0, 0, 0, 0, 1, 100, SC_SPECIAL, 9000.0f, 40, "S124/B3/3", TYPE_SOLID|PROP_LIFE, NULL},
|
||||
{"TES4", PIXPACK(0x0000FF), 0.0f, 0.00f * CFDS, 0.90f, 0.00f, 0.0f, 0.0f, 0.00f, 0.000f * CFDS, 0, 0, 0, 0, 0, 1, 100, SC_SPECIAL, 9000.0f, 40, "S3456/B278/6", TYPE_SOLID|PROP_LIFE, NULL},
|
||||
{"LOTE", PIXPACK(0xFF0000), 0.0f, 0.00f * CFDS, 0.90f, 0.00f, 0.0f, 0.0f, 0.00f, 0.000f * CFDS, 0, 0, 0, 0, 0, 1, 100, SC_LIFE2, 9000.0f, 40, "Behaves kinda like Living on the Edge S3458/B37/4", TYPE_SOLID|PROP_LIFE, NULL},
|
||||
{"FRG2", PIXPACK(0x00FF00), 0.0f, 0.00f * CFDS, 0.90f, 0.00f, 0.0f, 0.0f, 0.00f, 0.000f * CFDS, 0, 0, 0, 0, 0, 1, 100, SC_LIFE2, 9000.0f, 40, "Like Frogs rule S124/B3/3", TYPE_SOLID|PROP_LIFE, NULL},
|
||||
{"STAR", PIXPACK(0x0000FF), 0.0f, 0.00f * CFDS, 0.90f, 0.00f, 0.0f, 0.0f, 0.00f, 0.000f * CFDS, 0, 0, 0, 0, 0, 1, 100, SC_LIFE2, 9000.0f, 40, "Like Star Wars rule S3456/B278/6", TYPE_SOLID|PROP_LIFE, NULL},
|
||||
{"FROG", PIXPACK(0x00AA00), 0.0f, 0.00f * CFDS, 0.90f, 0.00f, 0.0f, 0.0f, 0.00f, 0.000f * CFDS, 0, 0, 0, 0, 0, 1, 100, SC_LIFE2, 9000.0f, 40, "Frogs S12/B34/3", TYPE_SOLID|PROP_LIFE, NULL},
|
||||
{"BRAN", PIXPACK(0xCCCC00), 0.0f, 0.00f * CFDS, 0.90f, 0.00f, 0.0f, 0.0f, 0.00f, 0.000f * CFDS, 0, 0, 0, 0, 0, 1, 100, SC_LIFE2, 9000.0f, 40, "Brian 6 S6/B246/3", TYPE_SOLID|PROP_LIFE, NULL},
|
||||
//Name Colour Advec Airdrag Airloss Loss Collid Grav Diffus Hotair Fal Burn Exp Mel Hrd M Weights Section H Ins Description
|
||||
};
|
||||
|
||||
@ -584,6 +588,8 @@ static part_state pstates[PT_NUM] =
|
||||
/* GOL */ {ST_NONE, PT_NONE, 0.0f, PT_NONE, 0.0f, PT_NONE, 0.0f, PT_NONE, 0.0f},
|
||||
/* GOL */ {ST_NONE, PT_NONE, 0.0f, PT_NONE, 0.0f, PT_NONE, 0.0f, PT_NONE, 0.0f},
|
||||
/* GOL */ {ST_NONE, PT_NONE, 0.0f, PT_NONE, 0.0f, PT_NONE, 0.0f, PT_NONE, 0.0f},
|
||||
/* GOL */ {ST_NONE, PT_NONE, 0.0f, PT_NONE, 0.0f, PT_NONE, 0.0f, PT_NONE, 0.0f},
|
||||
/* GOL */ {ST_NONE, PT_NONE, 0.0f, PT_NONE, 0.0f, PT_NONE, 0.0f, PT_NONE, 0.0f},
|
||||
|
||||
};
|
||||
static int grule[NGOL][10] =
|
||||
@ -611,7 +617,9 @@ static int grule[NGOL][10] =
|
||||
{1,0,0,2,2,3,1,1,3,2},//MYST
|
||||
{0,0,0,3,1,1,0,2,1,4},//TEST
|
||||
{0,1,1,2,1,0,0,0,0,3},//TEST2
|
||||
{0,0,2,1,1,1,1,2,2,6},//TEST2
|
||||
{0,0,2,1,1,1,1,2,2,6},//TEST3
|
||||
{0,1,1,2,2,0,0,0,0,3},//FROG
|
||||
{0,0,2,0,2,0,3,0,0,3},//BRAN
|
||||
};
|
||||
static int goltype[NGOL] =
|
||||
{
|
||||
@ -637,6 +645,8 @@ static int goltype[NGOL] =
|
||||
PT_TEST,
|
||||
PT_TEST2,
|
||||
PT_TEST3,
|
||||
PT_FROG,
|
||||
PT_BRAN,
|
||||
};
|
||||
static int loverule[9][9] =
|
||||
{
|
||||
|
@ -1726,9 +1726,9 @@ void draw_parts(pixel *vid)
|
||||
else if(t==PT_TEST2)
|
||||
{
|
||||
if(parts[i].tmp==2)
|
||||
blendpixel(vid, nx, ny, 0, 100, 0, 255);
|
||||
blendpixel(vid, nx, ny, 0, 100, 50, 255);
|
||||
else
|
||||
blendpixel(vid, nx, ny, 0, 255, 0, 255);
|
||||
blendpixel(vid, nx, ny, 0, 255, 90, 255);
|
||||
}
|
||||
else if(t==PT_TEST3)
|
||||
{
|
||||
@ -1743,6 +1743,20 @@ void draw_parts(pixel *vid)
|
||||
else
|
||||
blendpixel(vid, nx, ny, 0, 0, 70, 255);
|
||||
}
|
||||
else if(t==PT_FROG)
|
||||
{
|
||||
if(parts[i].tmp==2)
|
||||
blendpixel(vid, nx, ny, 0, 100, 0, 255);
|
||||
else
|
||||
blendpixel(vid, nx, ny, 0, 255, 0, 255);
|
||||
}
|
||||
else if(t==PT_BRAN)
|
||||
{
|
||||
if(parts[i].tmp==1)
|
||||
blendpixel(vid, nx, ny, 150, 150, 0, 255);
|
||||
else
|
||||
blendpixel(vid, nx, ny, 255, 255, 0, 255);
|
||||
}
|
||||
else if(t==PT_DEUT)
|
||||
{
|
||||
|
||||
|
@ -1522,7 +1522,7 @@ int main(int argc, char *argv[])
|
||||
}
|
||||
}
|
||||
if((sdl_mod & (KMOD_RCTRL) )&&( sdl_mod & (KMOD_RALT)))
|
||||
active_menu = 11;
|
||||
active_menu = 12;
|
||||
if(sdl_key==SDLK_INSERT || sdl_key==SDLK_BACKQUOTE)
|
||||
REPLACE_MODE = !REPLACE_MODE;
|
||||
if(sdl_key=='g')
|
||||
|
Loading…
Reference in New Issue
Block a user