Newer
Older
Cecile Bouette
committed
#include "ascenseur.h"
#include "strategieV2.h"
#include "mediumLevelAction.h"
#include "command.h"
Cecile Bouette
committed
Gobelet::Gobelet(Position goalposition):MediumLevelAction(goalposition){}
Gobelet::~Gobelet(){}
int Gobelet::update()
{
if (status == 0)
{
#ifndef ROBOTHW
qDebug() << "gobelet";
#endif
status++;
}
else if (status == 1)
{
Cecile Bouette
committed
StrategieV2::setCurrentGoal(this->goalPosition, this->goBack);
status++;
}
else if (status == 2)
{
Cecile Bouette
committed
if (Command::isNear(goalPosition, 175.0f))
{
StrategieV2::lookAt(goalPosition);
status++;
}
}
else if (status == 3)
{
if (Command::isLookingAt(goalPosition))
{
Cecile Bouette
committed
qDebug() << "On ouvre les pinces";
Cecile Bouette
committed
Ascenseur::getSingleton()->ouvrirPincesAscenseurs();
Cecile Bouette
committed
else if ((status <23) && (status > 0)) //On attend que l'ascenseur ouvre ses pinces
{
status++;
}
else if (status == 23)
{
#ifndef ROBOTHW
qDebug() << "On baisse l'ascenseur";
#endif
Ascenseur::getSingleton()->baisserAscenseur();
status++;
}
else if ((status <43) && (status > 0)) //On attend que l'ascenseur se baisse
Cecile Bouette
committed
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
else if (status == 43)
{
#ifndef ROBOTHW
qDebug() << "On ferme les pinces";
#endif
Ascenseur::getSingleton()->fermerPincesAscenseur();
status++;
}
else if ((status <63) && (status > 0)) //On attend que l'ascenseur ferme ses pinces
{
status++;
}
else if (status == 63)
{
#ifndef ROBOTHW
qDebug() << "On leve l'ascenseur";
#endif
Ascenseur::getSingleton()->leverAscenseur();
status++;
}
else if ((status <83) && (status > 0)) //On attend que l'ascenseur se leve
{
status++;
}
else if (status == 83)
{
#ifndef ROBOTHW
qDebug() << "Etape tapis finie";
#endif
StrategieV2::setCurrentGoal(this->goalPosition, this->goBack);
status++;
}
else if (status == 84)
{
if (Command::isNear(goalPosition))
{
StrategieV2::lookAt(goalPosition);
status++;
}
}
else if (status == 85)
{
status = -1;
}
return status;
}