diff --git a/C++ProjectTemplate b/C++ProjectTemplate index 05efab0..67cce0d 100755 Binary files a/C++ProjectTemplate and b/C++ProjectTemplate differ diff --git a/assets/maps/map0 b/assets/maps/map0 index de87448..45d565c 100644 --- a/assets/maps/map0 +++ b/assets/maps/map0 @@ -62,4 +62,5 @@ 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 -OBJECT17;30; \ No newline at end of file +OBJECT17;30;0 +OBJECT7;4;0 \ No newline at end of file diff --git a/main.cpp b/main.cpp index 341a089..365cc0c 100644 --- a/main.cpp +++ b/main.cpp @@ -71,7 +71,7 @@ public: std::vector> MAP; std::map SPRITES; std::map ANIMATIONS; - std::map OBJ_INFO; + std::map OBJ_INFO; std::vector OBJECTS; bool OnUserCreate() override @@ -87,7 +87,7 @@ public: //OBJ_INFO["PLAYER"]=PLAYER_ANIMATION; - //LoadMap(MAP_ONETT); + LoadMap(MAP_ONETT); return true; } @@ -136,9 +136,33 @@ public: MAP_WIDTH=data.length(); printf("Map Width: %d\n",MAP_WIDTH); } - - MAP_HEIGHT++; + if (data.find("OBJECT")!=std::string::npos) { + int marker=data.find_first_of(';'); + int lastMarker=marker; + std::stringstream split1(data.substr(6,marker-6)); + marker=data.find_first_of(';',marker+1); + std::stringstream split2(data.substr(lastMarker+1,marker-lastMarker-1)); + lastMarker=marker; + marker=data.find_first_of(';',marker+1); + std::stringstream split3(data.substr(lastMarker+1,marker-lastMarker-1)); + lastMarker=marker; + + double x,y; + + split1>>x; + split2>>y; + + int id; + split3>>id; + + Object*newObj = new Object(OBJ_INFO[id]->name,{x,y},OBJ_INFO[id]->spr); + OBJECTS.push_back(newObj); + //printf("Object: %s %s %s\n",split1.c_str(),split2.c_str(),split3.c_str()); + } else { + MAP_HEIGHT++; + } } + printf("Loaded map %s.\n",map->filename.c_str()); } void SetupAnimations() {