Slow LIGH creation speed, fixes #86

This commit is contained in:
Simon Robertshaw 2012-08-09 21:05:20 +01:00
parent ac45502de9
commit 9971ea63b7
3 changed files with 13 additions and 8 deletions

View File

@ -166,13 +166,17 @@ void WindTool::DrawFill(Simulation * sim, Brush * brush, ui::Point position) {}
void Element_LIGH_Tool::Draw(Simulation * sim, Brush * brush, ui::Point position)
{
int p = sim->create_part(-2, position.X, position.Y, toolID);
if (p != -1)
if(sim->currentTick >= nextUse)
{
sim->parts[p].life = brush->GetRadius().X+brush->GetRadius().Y;
if (sim->parts[p].life > 55)
sim->parts[p].life = 55;
sim->parts[p].temp = sim->parts[p].life*150; // temperature of the lighting shows the power of the lighting
int p = sim->create_part(-2, position.X, position.Y, toolID);
if (p != -1)
{
sim->parts[p].life = brush->GetRadius().X+brush->GetRadius().Y;
if (sim->parts[p].life > 55)
sim->parts[p].life = 55;
sim->parts[p].temp = sim->parts[p].life*150; // temperature of the lighting shows the power of the lighting
nextUse = sim->currentTick+sim->parts[p].life/4;
}
}
}

View File

@ -73,9 +73,11 @@ public:
class Element_LIGH_Tool: public Tool
{
int nextUse;
public:
Element_LIGH_Tool(int id, string name, string description, int r, int g, int b, VideoBuffer * (*textureGen)(int, int, int) = NULL):
Tool(id, name, description, r, g, b)
Tool(id, name, description, r, g, b),
nextUse(0)
{
}
virtual ~Element_LIGH_Tool() {}

View File

@ -3093,7 +3093,6 @@ void Simulation::update_particles_i(int start, int inc)
int excessive_stacking_found = 0;
currentTick++;
currentTick %= 3600;
if (lighting_recreate>0)
{