changed clue behavior
This commit is contained in:
parent
2af290c60e
commit
0d7e6dc301
@ -2,6 +2,8 @@
|
|||||||
#include "message.h"
|
#include "message.h"
|
||||||
#include "riddles.h"
|
#include "riddles.h"
|
||||||
#include <time.h>
|
#include <time.h>
|
||||||
|
#include <QHash>
|
||||||
|
#include <ctime>
|
||||||
|
|
||||||
FourasModule::FourasModule() : current(-1)
|
FourasModule::FourasModule() : current(-1)
|
||||||
{
|
{
|
||||||
@ -16,6 +18,7 @@ bool FourasModule::messageHandler(Message msg)
|
|||||||
|
|
||||||
if(msg.args.compare("!fouras") == 0 && riddles->getNbRiddles() != 0)
|
if(msg.args.compare("!fouras") == 0 && riddles->getNbRiddles() != 0)
|
||||||
{
|
{
|
||||||
|
nbClues = 0;
|
||||||
current = rand() % riddles->getNbRiddles();
|
current = rand() % riddles->getNbRiddles();
|
||||||
QStringList riddle = riddles->getRiddle(current);
|
QStringList riddle = riddles->getRiddle(current);
|
||||||
answer = "";
|
answer = "";
|
||||||
@ -50,14 +53,22 @@ bool FourasModule::messageHandler(Message msg)
|
|||||||
if(current != -1)
|
if(current != -1)
|
||||||
{
|
{
|
||||||
QString str = riddles->getAnswer(current);
|
QString str = riddles->getAnswer(current);
|
||||||
QString answerStr = "Indice : ";
|
std::srand(qHash(str));
|
||||||
bool first = true;
|
QString finalString = "_";
|
||||||
for(QChar c : str)
|
for(int i=0; i<str.size() - 1; ++i)
|
||||||
|
finalString.append(" _");
|
||||||
|
for(int i=0; i<nbClues; ++i)
|
||||||
{
|
{
|
||||||
answerStr.append(first ? QString(c) : QString(" _"));
|
int id = std::rand()%str.size();
|
||||||
first = false;
|
if(finalString[id*2] == QChar('_'))
|
||||||
|
finalString[id*2] = str[id];
|
||||||
|
else
|
||||||
|
++nbClues;
|
||||||
|
if(nbClues > str.size())
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
answer = say(answerStr);
|
++nbClues;
|
||||||
|
answer = say(QString("Indice : ").append(str));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -9,6 +9,7 @@ class FourasModule : public Module
|
|||||||
{
|
{
|
||||||
int current;
|
int current;
|
||||||
Riddles* riddles;
|
Riddles* riddles;
|
||||||
|
int nbClues;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
FourasModule();
|
FourasModule();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user