summaryrefslogtreecommitdiffstats
path: root/engine/flatobject.cpp
diff options
context:
space:
mode:
authorancarola <raffaele.ancarola@epfl.ch>2019-01-19 13:07:37 +0100
committerancarola <raffaele.ancarola@epfl.ch>2019-01-19 13:07:37 +0100
commit3922c797671cdc23d9233ff76909489e45fd0006 (patch)
treed385754f00159b93a8966fb5080a51dc2d0eb4a0 /engine/flatobject.cpp
parentedas (diff)
downloadflatland-3922c797671cdc23d9233ff76909489e45fd0006.tar.gz
flatland-3922c797671cdc23d9233ff76909489e45fd0006.zip
Test two completed successfully
Diffstat (limited to 'engine/flatobject.cpp')
-rw-r--r--engine/flatobject.cpp25
1 files changed, 17 insertions, 8 deletions
diff --git a/engine/flatobject.cpp b/engine/flatobject.cpp
index bfbff0b..a325942 100644
--- a/engine/flatobject.cpp
+++ b/engine/flatobject.cpp
@@ -1,6 +1,6 @@
#include "flatobject.h"
-#include <string.h>
+#include <stdlib.h>
using namespace std;
@@ -18,15 +18,24 @@ FlatObject::~FlatObject()
FlatObject::allObjects.remove(this);
}
-void FlatObject::setID(const char *id)
+void FlatObject::setID(const string& id)
{
- strncpy(this->id, id, 31);
- this->id[31] = '\0';
+ this->id = id;
}
-const char* FlatObject::getID() const
+const string& FlatObject::getID() const
{
- return &id[0];
+ return id;
+}
+
+string FlatObject::randomID(Uint8 length) {
+
+ string out;
+
+ for (Uint8 i = 0; i < length; ++i)
+ out += (char)(rand() % 93 + 33);
+
+ return out;
}
bool FlatObject::isAllocated(FlatObject *obj)
@@ -40,11 +49,11 @@ bool FlatObject::isAllocated(FlatObject *obj)
return false;
}
-vector<FlatObject*>& FlatObject::getByID(const char *id, vector<FlatObject*>& l)
+vector<FlatObject*>& FlatObject::getByID(const string& id, vector<FlatObject*>& l)
{
for (FlatObject * obj : FlatObject::allObjects)
{
- if (!strcmp(id, obj->getID()))
+ if (id == obj->getID())
l.push_back(obj);
}