diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/accounthandler.cpp | 2 | ||||
-rw-r--r-- | src/client.cpp | 17 |
2 files changed, 14 insertions, 5 deletions
diff --git a/src/accounthandler.cpp b/src/accounthandler.cpp index 90327118..389bed13 100644 --- a/src/accounthandler.cpp +++ b/src/accounthandler.cpp @@ -223,7 +223,7 @@ void AccountHandler::receiveMessage(NetComputer &computer, MessageIn &message) result.writeByte(REGISTER_INVALID_EMAIL); LOG_INFO(email << ": Email Invalid, only a@b.c format is accepted.", 1) } - if (stringFilter->findDoubleQuotes(email)) + else if (stringFilter->findDoubleQuotes(email)) { result.writeByte(REGISTER_INVALID_EMAIL); LOG_INFO(email << ": has got double quotes in it.", 1) diff --git a/src/client.cpp b/src/client.cpp index ce134427..b9c9ea71 100644 --- a/src/client.cpp +++ b/src/client.cpp @@ -104,6 +104,7 @@ int main(int argc, char *argv[]) std::cout << "8) Create character" << std::endl; std::cout << "Choose your option: "; std::cin >> answer; + std::cin.getline(line, 256); // skip the remaining of the line MessageOut msg; @@ -124,7 +125,7 @@ int main(int argc, char *argv[]) std::cout << "Account name: "; std::cin >> line; msg.writeString(line); - std::cout <<"Password: "; + std::cout << "Password: "; std::cin >> line; msg.writeString(line); std::cout << "Email address: "; @@ -275,14 +276,16 @@ int main(int argc, char *argv[]) } break; case 13: + { // Chat msg.writeShort(CMSG_SAY); std::cout << "Chat: "; - std::cin >> line; + std::cin.getline(line, 256); + line[255] = '\0'; msg.writeString(line); msg.writeShort(0); responseRequired = false; - break; + } break; case 14: { @@ -346,7 +349,7 @@ int main(int argc, char *argv[]) break; case ENET_EVENT_TYPE_DISCONNECT: - printf("Disconected.\n"); + printf("Disconnected.\n"); connected = false; break; @@ -694,6 +697,12 @@ void parsePacket(char *data, int recvLength) { } } break; + case SMSG_CHAT: + { + short channel = msg.readShort(); + std::cout << "Chat on channel " << channel << ':' << std::endl + << msg.readString() << std::endl; + } break; default: break; |