Skip to content
Snippets Groups Projects
Commit 89d19348 authored by svornost's avatar svornost
Browse files

Fix logic for education of very dumb slaves and deeducation of very smart...

Fix logic for education of very dumb slaves and deeducation of very smart ones.  Now, the smarter they are, the faster they learn and the slower they unlearn, and the bonus always improves their chance of learning or unlearning depending on the goal of the schoolroom.  Added comments to make it clearer what's going on.
parent c246288a
No related branches found
No related tags found
No related merge requests found
......@@ -142,46 +142,46 @@ window.saTakeClasses = (function saServeThePublic() {
*/
function learningProgress(slave) {
if (V.schoolroomRemodelBimbo !== 1 || slave.assignment !== "learn in the schoolroom") {
if (slave.intelligence > 95) {
if (slave.intelligence > 95) { /* 200% education for brilliant */
learning += 2;
} else if (slave.intelligence > 50) {
} else if (slave.intelligence > 50) { /* normal for very smart */
learning++;
} else if (slave.intelligence > 15) {
} else if (slave.intelligence > 15) { /* 70% for smart */
if (jsRandom(1, 100) < 70) {
learning++;
}
} else if (slave.intelligence >= -15) {
} else if (slave.intelligence >= -15) { /* 50% for average */
if (jsRandom(1, 100) < 50) {
learning++;
}
} else {
} else { /* slow, very slow, and retards */
let slaveDensity = (50 + slave.intelligence);
if (V.schoolroomUpgradeRemedial === 1 && jsRandom(1, 100) < 50) {
if (V.schoolroomUpgradeRemedial === 1 && jsRandom(1, 100) < 50) { /* 50% chance to benefit from upgrade */
slaveDensity = 55;
}
if (jsRandom(1, 100) > slaveDensity) {
if (jsRandom(1, 100) < slaveDensity) { /* 55% with upgrade, [-50 to 34]% without, mapped from [-100 to -16] intelligence */
learning++;
}
}
} else {
if (slave.intelligence < -95) {
if (slave.intelligence < -95) { /* 200% de-education for retards */
learning += 2;
} else if (slave.intelligence < -50) {
} else if (slave.intelligence < -50) { /* normal for very slow */
learning++;
} else if (slave.intelligence < -15) {
} else if (slave.intelligence < -15) { /* 70% for slow */
if (jsRandom(1, 100) < 70) {
learning++;
}
} else if (slave.intelligence > 15) {
} else if (slave.intelligence <= 15) { /* 50% for average */
if (jsRandom(1, 100) < 50) {
learning++;
}
} else {
let slaveDensity = (-10 + slave.intelligence);
if (V.schoolroomUpgradeRemedial === 1 && jsRandom(1, 100) < 50) {
} else { /* smart, very smart, and brilliant */
let slaveDensity = (50 - slave.intelligence);
if (V.schoolroomUpgradeRemedial === 1 && jsRandom(1, 100) < 50) { /* 50% chance to benefit from upgrade */
slaveDensity = 55;
}
if (jsRandom(1, 100) < slaveDensity) {
if (jsRandom(1, 100) < slaveDensity) { /* 55% with upgrade, [-50 to 34]% without, mapped from [16 to 100] intelligence */
learning++;
}
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment