From 09d59339c344a5a34ef4f312d8ceceb0e9ea6110 Mon Sep 17 00:00:00 2001
From: Blank_Alt <12406-Blank_Alt@users.noreply.gitgud.io>
Date: Mon, 7 Sep 2020 11:30:01 -0700
Subject: [PATCH] minor tutor system QOL [ready for merge]

---
 src/endWeek/saTakeClasses.js    |  4 ++--
 src/endWeek/schoolroomReport.js |  8 +++++++-
 src/js/slaveListing.js          | 12 ++++++++++++
 src/js/utilsFC.js               | 10 +++++-----
 4 files changed, 26 insertions(+), 8 deletions(-)

diff --git a/src/endWeek/saTakeClasses.js b/src/endWeek/saTakeClasses.js
index 5f68150b36b..5acfdff2aa2 100644
--- a/src/endWeek/saTakeClasses.js
+++ b/src/endWeek/saTakeClasses.js
@@ -24,8 +24,8 @@ App.SlaveAssignment.takeClasses = (function() {
 			he, him, his, hers, himself, girl, He, His, loli
 		} = getPronouns(slave));
 
+		jobPreface(slave);
 		if (slave.fetish !== "mindbroken") {
-			jobPreface(slave);
 			learningDisability(slave);
 			jobHealthImpact(slave);
 			learningProgress(slave);
@@ -40,8 +40,8 @@ App.SlaveAssignment.takeClasses = (function() {
 			if (tutorForSlave(slave) != null) {
 				tutorLessons(slave);
 			}
+			graduation(slave);
 		}
-		graduation(slave);
 		return r;
 	}
 
diff --git a/src/endWeek/schoolroomReport.js b/src/endWeek/schoolroomReport.js
index 0197ef51301..d60e965e297 100644
--- a/src/endWeek/schoolroomReport.js
+++ b/src/endWeek/schoolroomReport.js
@@ -233,7 +233,13 @@ App.EndWeek.schoolroomReport = function() {
 			if (slave.choosesOwnAssignment === 2) {
 				$(slaveEntry).append(App.SlaveAssignment.choosesOwnJob(slave));
 			} else {
-				$(slaveEntry).append(`is studying in ${V.schoolroomName}.`);
+				let leaderTraining = '';
+				for (const role of Object.keys(V.slaveTutor)) {
+					if (V.slaveTutor[role].contains(slave.ID)) {
+						leaderTraining = ` on being a ${role}`; break;
+					}
+				}
+				$(slaveEntry).append(`is studying in ${V.schoolroomName}${leaderTraining}.`);
 			}
 			const studentContent = App.UI.DOM.appendNewElement("div", slaveEntry, '', "indent");
 			$(studentContent).append(`${He} ${App.SlaveAssignment.takeClasses(slave)}`);
diff --git a/src/js/slaveListing.js b/src/js/slaveListing.js
index 1a1deadb415..378e04ff952 100644
--- a/src/js/slaveListing.js
+++ b/src/js/slaveListing.js
@@ -171,6 +171,13 @@ App.UI.SlaveList.render = function() {
 			assignment.innerText = `choose ${getPronouns(slave).possessive} own job`;
 		} else {
 			assignment.innerText = slave.assignment;
+			if (slave.assignment === Job.CLASSES) {
+				for (const role of Object.keys(V.slaveTutor)) {
+					if (V.slaveTutor[role].contains(slave.ID)) {
+						assignment.innerText += ` on being a ${role}`; break;
+					}
+				}
+			}
 			if (slave.sentence > 0) {
 				assignment.innerText += ` ${slave.sentence} weeks`;
 			}
@@ -242,6 +249,11 @@ App.UI.SlaveList.render = function() {
 				}
 			}
 		} else if (slave.assignment === Job.SCHOOL) {
+			for (const role of Object.keys(V.slaveTutor)) {
+				if (V.slaveTutor[role].contains(slave.ID)) {
+					assignment.innerText += ` about being a ${role}`; break;
+				}
+			}
 			let lessons = [];
 			let i;
 			if ((V.schoolroomRemodelBimbo === 1 && slave.intelligenceImplant > -15) || (V.schoolroomRemodelBimbo === 0 && slave.intelligenceImplant < 30)) {
diff --git a/src/js/utilsFC.js b/src/js/utilsFC.js
index 0690e3f524b..194210cc9ba 100644
--- a/src/js/utilsFC.js
+++ b/src/js/utilsFC.js
@@ -2342,13 +2342,13 @@ globalThis.slaveSkillIncrease = function(targetSkill, slave, skillIncrease = 1)
 				case 'entertainment':
 					r += ` flirting, dancing, or stripping.`; break;
 			}
-			if (isleadershipRole()) {
-				V.tutorGraduate.push(slave.ID);
-				V.slaveTutor[capFirstChar(targetSkill)].delete(slave.ID);
-			}
 		}
 	}
-
+	
+	if (isleadershipRole() && slave.skill[targetSkill] + skillIncrease >= 100) {
+		V.tutorGraduate.push(slave.ID);
+		V.slaveTutor[capFirstChar(targetSkill)].delete(slave.ID);
+	}
 	slave.skill[targetSkill] += skillIncrease;
 	return r;
 };
-- 
GitLab