bug fixes ?
This commit is contained in:
parent
c3f06772cb
commit
c15da6c839
@ -20,7 +20,7 @@ QString RPGCharacter::toString()
|
|||||||
|
|
||||||
bool RPGCharacter::fromString(QString str)
|
bool RPGCharacter::fromString(QString str)
|
||||||
{
|
{
|
||||||
QStringList list = str.split(" ");
|
QStringList list = str.split(QChar(' '));
|
||||||
if(list.size() == 6)
|
if(list.size() == 6)
|
||||||
{
|
{
|
||||||
bool ok;
|
bool ok;
|
||||||
@ -73,7 +73,10 @@ void RPGModule::saveCharacters()
|
|||||||
}
|
}
|
||||||
QTextStream out(&f);
|
QTextStream out(&f);
|
||||||
for(const std::string &name : charList.names)
|
for(const std::string &name : charList.names)
|
||||||
|
{
|
||||||
|
if(name != "trash")
|
||||||
out << charList.get(name)->toString() << "\n";
|
out << charList.get(name)->toString() << "\n";
|
||||||
|
}
|
||||||
f.close();
|
f.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -111,7 +114,7 @@ QString RPGModule::getTerrainName(int type)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
QString RPGModule::playerTravel(RPGCharacter *c, QString dir)
|
QString RPGModule::playerTravel(RPGCharacter *c, QString dir, bool repeat)
|
||||||
{
|
{
|
||||||
char terrainType = WORLDMAP[c->x][c->y];
|
char terrainType = WORLDMAP[c->x][c->y];
|
||||||
QString direction;
|
QString direction;
|
||||||
@ -246,6 +249,13 @@ bool RPGModule::messageHandler(Message msg)
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else if(msg.args.compare("!rpg reset") == 0 && src->isOp())
|
||||||
|
{
|
||||||
|
charList.data.clear();
|
||||||
|
charList.names.clear();
|
||||||
|
answer = say("cleared character database");
|
||||||
|
return true;
|
||||||
|
}
|
||||||
else if(msg.args.compare("!rpg save") == 0)
|
else if(msg.args.compare("!rpg save") == 0)
|
||||||
{
|
{
|
||||||
saveCharacters();
|
saveCharacters();
|
||||||
@ -266,15 +276,24 @@ bool RPGModule::messageHandler(Message msg)
|
|||||||
QStringList paramList = msg.args.split(' ');
|
QStringList paramList = msg.args.split(' ');
|
||||||
if(charOnline.count(src) > 0 && paramList.size() == 2)
|
if(charOnline.count(src) > 0 && paramList.size() == 2)
|
||||||
{
|
{
|
||||||
answer = say(playerTravel(charOnline[src], paramList[1]));
|
answer = say(playerTravel(charOnline[src], paramList[1], true));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if(msg.args.startsWith("look "))
|
else if(msg.args.startsWith("look "))
|
||||||
{
|
{
|
||||||
// look around
|
answer = say("you look around and you find a walnut.");
|
||||||
|
return true;
|
||||||
// look at [object]
|
}
|
||||||
|
else if(msg.args.compare("break walnut") == 0)
|
||||||
|
{
|
||||||
|
answer = say("you use a rock to break the walnut, there is a walnut kernel inside.");
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
else if(msg.args.compare("eat walnut kernel") == 0)
|
||||||
|
{
|
||||||
|
answer = say("you eat the walnut kernel, and you feel repleted.");
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
else if(msg.args.compare("!rpg help") == 0)
|
else if(msg.args.compare("!rpg help") == 0)
|
||||||
{
|
{
|
||||||
|
@ -113,7 +113,7 @@ public:
|
|||||||
|
|
||||||
void playerJoin(User* user, RPGCharacter *c);
|
void playerJoin(User* user, RPGCharacter *c);
|
||||||
void playerLeave(User* user);
|
void playerLeave(User* user);
|
||||||
QString playerTravel(RPGCharacter *c, QString dir);
|
QString playerTravel(RPGCharacter *c, QString dir, bool repeat=false);
|
||||||
QString getTerrainName(int type);
|
QString getTerrainName(int type);
|
||||||
|
|
||||||
virtual bool messageHandler(Message msg);
|
virtual bool messageHandler(Message msg);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user