#include float pool[5000]; float vengcalc(int timer, int delay){ float retval = 0; if (timer <= 30){ for(int i = timer; i && i > (timer - 20); --i){ retval += pool[i]; // printf("\nDEBUG: %f", pool[i]); } } else{ for(int i = timer - delay; i > (timer - 20); --i){ retval += pool[i]; } retval *= (20 - delay) / 20; retval += pool[timer]; } return retval; } int main(){ printf("Auto attack vengeance simulator \n\n"); int damtaken = 0, timer = 10; //setting timer to 10 takes care of ramp up int swingspeed = 2; //a nice whole number int delay; printf("You're pulling the boss and he hits your for: "); scanf("%d", &damtaken); for (int i = 0; i <= timer; i += swingspeed){ pool[i] = damtaken * 0.02; } printf("\nYour current vengeance is: %f", vengcalc(timer, delay)); while(timer < 5000){ printf("\nA couple seconds pass: "); scanf("%d", &delay); timer += delay; printf("\nAnd the boss hits you again: "); scanf("%d", &damtaken); pool[timer] = damtaken * 0.02; //we're assuming that damage taken is passed as the correct, pre-mitigation value printf("\nYour current vengeance is: %f", vengcalc(timer, delay)); } return 0; }