i->timer -= trigger_interval;
actual_interval = trigger_interval;
}
- ActiveABM aabm;
- aabm.abm = abm;
float intervals = actual_interval / trigger_interval;
+ if(intervals == 0)
+ continue;
float chance = abm->getTriggerChance();
if(chance == 0)
chance = 1;
- aabm.chance = 1.0 / pow((float)1.0/chance, (float)intervals);
+ ActiveABM aabm;
+ aabm.abm = abm;
+ aabm.chance = chance / intervals;
if(aabm.chance == 0)
aabm.chance = 1;
// Trigger neighbors