diff --git a/includes/powder.h b/includes/powder.h index aded05f03..70b94a1dc 100644 --- a/includes/powder.h +++ b/includes/powder.h @@ -23,7 +23,7 @@ #define UI_WALLSTART 222 #define UI_ACTUALSTART 122 -#define UI_WALLCOUNT 19 +#define UI_WALLCOUNT 20 #define WL_WALLELEC 122 #define WL_EWALL 123 @@ -45,6 +45,7 @@ #define SPC_HEAT 237 #define SPC_COOL 238 #define SPC_VACUUM 239 +#define SPC_WIND 241 #define WL_ALLOWGAS 140 @@ -197,7 +198,7 @@ #define PT_STAR 144 #define PT_FROG 145 #define PT_BRAN 146 -#define PT_WIND 147 +#define OLD_PT_WIND 147 #define PT_H2 148 #define PT_SOAP 149 #define PT_NUM 150 @@ -529,7 +530,7 @@ static const part_type ptypes[PT_NUM] = {"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_LIFE, 9000.0f, 40, "Like Star Wars rule S3456/B278/6", ST_NONE, 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_LIFE, 9000.0f, 40, "Frogs S12/B34/3", ST_NONE, 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_LIFE, 9000.0f, 40, "Brian 6 S6/B246/3", ST_NONE, TYPE_SOLID|PROP_LIFE, NULL}, - {"WIND", PIXPACK(0x000000), 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, 0.0f, 40, "Drag tool", ST_NONE, ST_NONE, NULL}, + {"WIND", PIXPACK(0x101010), 0.0f, 0.00f * CFDS, 0.90f, 0.00f, 0.0f, 0.0f, 0.00f, 0.000f * CFDS, 0, 0, 0, 0, 0, 0, 100, SC_SPECIAL, 0.0f, 40, "", ST_NONE, ST_NONE, NULL}, {"H2", PIXPACK(0x5070FF), 2.0f, 0.00f * CFDS, 0.99f, 0.30f, -0.10f, 0.00f, 3.00f, 0.000f * CFDS, 0, 0, 0, 0, 0, 1, 1, SC_GAS, R_TEMP+0.0f +273.15f, 251, "Combines with O2 to make WATR", ST_GAS, TYPE_GAS, &update_H2}, {"SOAP", PIXPACK(0xF5F5DC), 0.6f, 0.01f * CFDS, 0.98f, 0.95f, 0.0f, 0.1f, 0.00f, 0.000f * CFDS, 2, 0, 0, 0, 20, 1, 35, SC_LIQUID, R_TEMP-2.0f +273.15f, 29, "Soap. Creates bubbles.", ST_LIQUID, TYPE_LIQUID|PROP_NEUTPENETRATE, &update_SOAP}, //Name Colour Advec Airdrag Airloss Loss Collid Grav Diffus Hotair Fal Burn Exp Mel Hrd M Weights Section H Ins Description @@ -817,6 +818,7 @@ static wall_type wtypes[] = {PIXPACK(0x00BBFF), PIXPACK(0x000000), -1, "Cools the targetted element."}, {PIXPACK(0x303030), PIXPACK(0x000000), -1, "Vacuum, reduces air pressure."}, {PIXPACK(0x579777), PIXPACK(0x000000), 1, "Wall. Indestructible. Blocks liquids and solids, allows gasses"}, + {PIXPACK(0x000000), PIXPACK(0x000000), -1, "Drag tool"}, }; #define CHANNELS ((int)(MAX_TEMP-73.15f)/100+2) diff --git a/src/graphics.c b/src/graphics.c index a981acdfb..66c4c8149 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -562,6 +562,7 @@ int draw_tool_xy(pixel *vid_buf, int x, int y, int b, unsigned pc) case SPC_HEAT: case SPC_COOL: case SPC_VACUUM: + case SPC_WIND: for (j=1; j<15; j++) for (i=1; i<27; i++) vid_buf[(XRES+BARSIZE)*(y+j)+(x+i)] = pc; @@ -582,6 +583,8 @@ int draw_tool_xy(pixel *vid_buf, int x, int y, int b, unsigned pc) drawtext(vid_buf, x+14-textwidth("COOL")/2, y+4, "COOL", c, c, c, 255); else if (b==SPC_VACUUM) drawtext(vid_buf, x+14-textwidth("VAC")/2, y+4, "VAC", c, c, c, 255); + else if (b==SPC_WIND) + drawtext(vid_buf, x+14-textwidth("WIND")/2, y+4, "WIND", c, c, c, 255); break; default: for (j=1; j<15; j++) @@ -3757,7 +3760,7 @@ corrupt: void render_cursor(pixel *vid, int x, int y, int t, int rx, int ry) { int i,j,c; - if (t