]> jfr.im git - irc/gameservirc.git/blobdiff - gameserv/aClient.cpp
Added a lot of functionality. Added player flags and save/load them in the players...
[irc/gameservirc.git] / gameserv / aClient.cpp
index e95c33243f620b13280d7757a7b75173e6c93ae5..64884d39117cdb276351894edf446954ab348abd 100644 (file)
@@ -8,6 +8,7 @@ aClient::aClient(char *n)
         << (n[0] == '\0' ? "NULL" : n) << endl;
     strcpy(nick, n);
     stats = NULL;
+    flags = 0;
 }
 
 aClient::aClient(const aClient &right)
@@ -15,12 +16,14 @@ aClient::aClient(const aClient &right)
     cout << "aClient created from another aClient: " << right.nick 
         << endl;
     stats = NULL;
+    flags = 0;
     setData(&right);
 }
 
 aClient::aClient()
 {
     aClient("");
+    flags = 0;
 }
 
 aClient::~aClient()
@@ -31,6 +34,7 @@ aClient::~aClient()
        cout << ' ' << stats->name << ' ' << stats->password << endl << flush;
        delete stats;
     }
+    flags = 0;
     cout << endl << flush;
 }
 
@@ -55,3 +59,21 @@ void aClient::setData(const aClient *right)
        }
     }
 }
+
+long int aClient::setFlags(long int newflags)
+{
+    flags = newflags;
+    return getFlags();
+}
+
+long int aClient::addFlag(long int flag)
+{
+    flags |= flag;
+    return getFlags();
+}
+
+long int aClient::remFlag(long int flag)
+{
+    flags &= ~flag;
+    return getFlags();
+}