Small changes to SING from cracker
This commit is contained in:
commit
c98099f8df
@ -407,10 +407,10 @@ static const part_type ptypes[PT_NUM] =
|
||||
{"STK2", PIXPACK(0x000000), 0.5f, 0.00f * CFDS, 0.2f, 1.0f, 0.0f, 0.0f, 0.0f, 0.00f * CFDS, 0, 0, 0, 0, 0, 1, 50, SC_SPECIAL, R_TEMP+14.6f+273.15f, 0, "Stickman. Don't kill him!", 0, NULL},
|
||||
{"BOMB", PIXPACK(0xFFF288), 0.6f, 0.01f * CFDS, 0.98f, 0.95f, 0.0f, 0.1f, 0.00f, 0.000f * CFDS, 1, 0, 0, 0, 20, 1, 30, SC_EXPLOSIVE, R_TEMP-2.0f +273.15f, 29, "Bomb.", TYPE_PART, NULL},
|
||||
{"C-5", PIXPACK(0x2050E0), 0.0f, 0.00f * CFDS, 0.90f, 0.00f, 0.0f, 0.0f, 0.00f, 0.000f * CFDS, 0, 0, 0, 0, 1, 1, 100, SC_EXPLOSIVE, R_TEMP+0.0f +273.15f, 88, "Cold explosive", TYPE_SOLID | PROP_NEUTPENETRATE, NULL},
|
||||
{"SING", PIXPACK(0x242424), 0.7f, 0.02f * CFDS, 0.96f, 0.80f, 0.0f, 0.12f, 0.00f, -0.001f * CFDS, 1, 0, 0, 0, 0, 1, 86, SC_NUCLEAR, R_TEMP+0.0f +273.15f, 70, "Singularity", TYPE_PART, NULL},
|
||||
{"SING", PIXPACK(0x242424), 0.7f, 0.36f * CFDS, 0.96f, 0.80f, 0.1f, 0.12f, 0.00f, -0.001f * CFDS, 1, 0, 0, 0, 0, 1, 86, SC_NUCLEAR, R_TEMP+0.0f +273.15f, 70, "Singularity", TYPE_PART, NULL},
|
||||
{"QRTZ", PIXPACK(0xAADDDD), 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_SOLIDS, R_TEMP+0.0f +273.15f, 3, "Quartz, breakable mineral. Conducts but becomes brittle at lower temperatures.", TYPE_SOLID| PROP_HOT_GLOW, NULL},
|
||||
{"PQRT", PIXPACK(0x88BBBB), 0.4f, 0.04f * CFDS, 0.94f, 0.95f, -0.1f, 0.27f, 0.00f, 0.000f * CFDS, 1, 0, 0, 0, 0, 1, 90, SC_POWDERS, R_TEMP+0.0f +273.15f, 3, "Broken quartz.", TYPE_PART| PROP_HOT_GLOW, NULL},
|
||||
//Name Colour Advec Airdrag Airloss Loss Collid Grav Diffus Hotair Fal Burn Exp Mel Hrd M Weights Section H Ins Description
|
||||
//Name Colour Advec Airdrag Airloss Loss Collid Grav Diffus Hotair Fal Burn Exp Mel Hrd M Weights Section H Ins Description
|
||||
};
|
||||
|
||||
static part_state pstates[PT_NUM] =
|
||||
|
25
src/powder.c
25
src/powder.c
@ -1446,6 +1446,14 @@ void update_particles_i(pixel *vid, int start, int inc)
|
||||
if(y+CELL<YRES)
|
||||
pv[y/CELL+1][x/CELL+1] += 0.1f*(singularity-pv[y/CELL+1][x/CELL+1]);
|
||||
}
|
||||
if(y+CELL>0 && pv[y/CELL-1][x/CELL]<singularity)
|
||||
pv[y/CELL-1][x/CELL] += 0.1f*(singularity-pv[y/CELL-1][x/CELL]);
|
||||
if(x+CELL>0)
|
||||
{
|
||||
pv[y/CELL][x/CELL-1] += 0.1f*(singularity-pv[y/CELL][x/CELL-1]);
|
||||
if(y+CELL>0)
|
||||
pv[y/CELL-1][x/CELL-1] += 0.1f*(singularity-pv[y/CELL-1][x/CELL-1]);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -2516,7 +2524,7 @@ void update_particles_i(pixel *vid, int start, int inc)
|
||||
|
||||
}
|
||||
else
|
||||
parts[r>>8].type = PT_NONE;
|
||||
parts[r>>8].type = PT_NONE;
|
||||
#endif
|
||||
}
|
||||
if((r&0xFF)==PT_GUNP && 15>(rand()%1000))
|
||||
@ -3647,31 +3655,24 @@ void update_particles_i(pixel *vid, int start, int inc)
|
||||
continue;
|
||||
if(parts[r>>8].type!=PT_DMND&&33>=rand()/(RAND_MAX/100)+1)
|
||||
{
|
||||
if(parts[r>>8].life >10)
|
||||
if(parts[r>>8].type==PT_SING && parts[r>>8].life >10)
|
||||
{
|
||||
if(parts[i].life+parts[r>>8].life > 255)
|
||||
{
|
||||
if(parts[r>>8].type!=PT_SING && 1>rand()%20000)
|
||||
{
|
||||
parts[r>>8].type = PT_SING;
|
||||
parts[r>>8].life = rand()%50+60;
|
||||
}
|
||||
continue;
|
||||
}
|
||||
parts[i].life += parts[r>>8].life;
|
||||
}
|
||||
else
|
||||
{
|
||||
if(parts[i].life+1 > 255)
|
||||
if(parts[i].life+3 > 255)
|
||||
{
|
||||
if(parts[r>>8].type!=PT_SING && 1>rand()%20000)
|
||||
if(parts[r>>8].type!=PT_SING && 1>rand()%100)
|
||||
{
|
||||
parts[r>>8].type = PT_SING;
|
||||
parts[r>>8].life = rand()%50+60;
|
||||
}
|
||||
continue;
|
||||
}
|
||||
parts[i].life += 1;
|
||||
parts[i].life += 3;
|
||||
}
|
||||
parts[i].temp = restrict_flt(parts[r>>8].temp+parts[i].temp, MIN_TEMP, MAX_TEMP);
|
||||
parts[r>>8].type=PT_NONE;
|
||||
|
Reference in New Issue
Block a user