Add AMBP and AMBM tools (#778)
Co-authored-by: Tamás Bálint Misius <lbphacker@gmail.com>
This commit is contained in:
parent
4ed600b621
commit
a3a45db3e4
25
src/simulation/simtools/AMBM.cpp
Normal file
25
src/simulation/simtools/AMBM.cpp
Normal file
@ -0,0 +1,25 @@
|
||||
#include "simulation/ToolCommon.h"
|
||||
|
||||
static int perform(Simulation * sim, Particle * cpart, int x, int y, int brushX, int brushY, float strength);
|
||||
|
||||
void SimTool::Tool_AMBM()
|
||||
{
|
||||
Identifier = "DEFAULT_TOOL_AMBM";
|
||||
Name = "AMBM";
|
||||
Colour = PIXPACK(0x00DDFF);
|
||||
Description = "Decreases ambient air temperature.";
|
||||
Perform = &perform;
|
||||
}
|
||||
|
||||
static int perform(Simulation *sim, Particle *cpart, int x, int y, int brushX, int brushY, float strength)
|
||||
{
|
||||
if (!sim->aheat_enable)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
sim->hv[y / CELL][x / CELL] -= strength * 2.0f;
|
||||
if (sim->hv[y / CELL][x / CELL] > MAX_TEMP) sim->hv[y / CELL][x / CELL] = MAX_TEMP;
|
||||
if (sim->hv[y / CELL][x / CELL] < MIN_TEMP) sim->hv[y / CELL][x / CELL] = MIN_TEMP;
|
||||
return 1;
|
||||
}
|
25
src/simulation/simtools/AMBP.cpp
Normal file
25
src/simulation/simtools/AMBP.cpp
Normal file
@ -0,0 +1,25 @@
|
||||
#include "simulation/ToolCommon.h"
|
||||
|
||||
static int perform(Simulation * sim, Particle * cpart, int x, int y, int brushX, int brushY, float strength);
|
||||
|
||||
void SimTool::Tool_AMBP()
|
||||
{
|
||||
Identifier = "DEFAULT_TOOL_AMBP";
|
||||
Name = "AMBP";
|
||||
Colour = PIXPACK(0xFFDD00);
|
||||
Description = "Increases ambient air temperature.";
|
||||
Perform = &perform;
|
||||
}
|
||||
|
||||
static int perform(Simulation *sim, Particle *cpart, int x, int y, int brushX, int brushY, float strength)
|
||||
{
|
||||
if (!sim->aheat_enable)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
sim->hv[y / CELL][x / CELL] += strength * 2.0f;
|
||||
if (sim->hv[y / CELL][x / CELL] > MAX_TEMP) sim->hv[y / CELL][x / CELL] = MAX_TEMP;
|
||||
if (sim->hv[y / CELL][x / CELL] < MIN_TEMP) sim->hv[y / CELL][x / CELL] = MIN_TEMP;
|
||||
return 1;
|
||||
}
|
@ -7,6 +7,8 @@ simulation_tool_ids = [
|
||||
[ 'NGRV', 5 ],
|
||||
[ 'MIX', 6 ],
|
||||
[ 'CYCL', 7 ],
|
||||
[ 'AMBM', 8 ],
|
||||
[ 'AMBP', 9 ],
|
||||
]
|
||||
|
||||
simulation_tool_src = []
|
||||
|
Loading…
Reference in New Issue
Block a user