Commit 9c5021b9 authored by matthieu.berg's avatar matthieu.berg
Browse files

ajout méthode examen

parent 525e670e
......@@ -75,6 +75,11 @@ class Classroom : public Texturable {
* Cette fonction détruit également l'enseignant ainsi que tous les élèves.
*/
~Classroom();
/**
* @brief ajoute des notes aux élèves lors d'un clic sur le bouton examen
*/
void examen() const;
};
#endif /* CLASSROOM_H */
......@@ -37,7 +37,7 @@ class Teacher : public Actor {
*
* @return double Niveau de pédagogie du professeur
*/
double getPedagogue() { return pedagogue; }
double getPedagogue() const { return pedagogue; }
/**
* @brief Set le niveau de pédagogie du professeur
......@@ -51,7 +51,7 @@ class Teacher : public Actor {
*
* @return double
*/
double getMeritocratic() { return meritocratic; }
double getMeritocratic() const{ return meritocratic; }
/**
* @brief Set le niveau de méritocratie du professeur
......
......@@ -10,6 +10,7 @@
#include "model/Classroom.h"
#include "model/Student.h"
#include "model/Teacher.h"
#include "model/Subject.h"
#define NB_STUDENTS 5
......@@ -43,7 +44,10 @@ Classroom::render() const
ImGui::GetWindowPos(),
ImVec2(ImGui::GetWindowPos().x + ImGui::GetContentRegionAvail().x,
ImGui::GetWindowPos().y + ImGui::GetContentRegionAvail().y));
ImGui::Button("Examen");
if (ImGui::Button("Examen"))
{
examen();
}
ImGui::SameLine();
ImGui::Dummy(ImVec2(0., 120.));
teacher->render();
......@@ -65,3 +69,15 @@ Classroom::~Classroom()
}
delete teacher;
}
void
Classroom::examen() const
{
double grade;
for (Student *s : students)
{
grade = (teacher->getMeritocratic() * s->getSkill()) / 10 + (teacher->getPedagogue() * s->getMotivation()) / 10; //note sur 20 en fonction du skill et de la motivation de l'élève et du type d'enseignement du prof
grade += s->getMood() * 0.2; // entre 0 et 2 points bonus en fonction du mood de l'élève
s->addGrades(new Subject("Maths", 2), grade);
}
}
\ No newline at end of file
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment