xxxxxxxxxx
61
let a = { Name: "Modus Ponens", Speed: 6, CT: 20, Turns: 0, Hero: true };
let b = { Name: "Osric ", Speed: 6, CT: 20, Turns: 0, };
let c = { Name: "Rianna ", Speed: 6, CT: 20, Turns: 0, };
let d = { Name: "Anna ", Speed: 6, CT: 20, Turns: 0, };
let e = { Name: "Claudia ", Speed: 6, CT: 20, Turns: 0, };
let party = [ a, b, c, d, e ];
let sequence = [ a, a, a, a, a, a, a, a, a, a, b, c, d, e, ];
let sequenceIndex = 0;
let speedMax = 50;
let ctResetValue = 20;
let ctMax = 100;
let tickCount = 500;
function setup()
{
createCanvas(400, 400);
background(40);
for (let i = 0; i < tickCount; ++i)
{
for (const character of party)
{
character.CT += character.Speed;
if (character.CT >= ctMax)
Turn(character);
}
}
let totalTurns = 0;
for (const character of party)
{
let name = character.Name;
let sp = character.Speed;
let turns = character.Turns;
print(`${name} | Speed: ${sp} | Turns: ${turns}`);
totalTurns += turns;
}
print(`Total turns: ${totalTurns}`);
}
function Turn(character)
{
if (character.Hero)
{
let target = sequence[sequenceIndex];
target.Speed = min(target.Speed + 1, speedMax);
sequenceIndex = (sequenceIndex + 1) % sequence.length;
}
++character.Turns;
character.CT = ctResetValue;
}