From 807162bb0fa389130f203927e42261618d7947c6 Mon Sep 17 00:00:00 2001 From: HatjigeorgiouDimitri Date: Thu, 2 Jun 2016 16:10:00 +0200 Subject: [PATCH] added a generator with a world map --- generators/image.gif | Bin 0 -> 4688 bytes generators/image.h | 13155 +++++++++++++++++++++++++++++++++++++ generators/realWorld.cpp | 36 + 3 files changed, 13191 insertions(+) create mode 100644 generators/image.gif create mode 100644 generators/image.h create mode 100644 generators/realWorld.cpp diff --git a/generators/image.gif b/generators/image.gif new file mode 100644 index 0000000000000000000000000000000000000000..f21a53c3f8a4a9d8145bf6604288b86a94eafba9 GIT binary patch literal 4688 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 +#include +#include "image.h" + +// windows MinGW +// g++ -shared realWorld.cpp -o realWorld.dll -I../include + +// linux gcc +// g++ -shared realWorld.cpp -o realWorld.so -I../include -fPIC + +extern "C" void generate(Map *mapPtr) +{ + Map &map = *mapPtr; + int w = map.getWidth(); + int h = map.getHeight(); + int n = map.getNbTeams(); + for(int i = 0 ; i < h ; i++){ + for(int j = 0 ; j < w ; j++){ + int ti = i*height/h; + int tj = j*width/w; + int to = ti*width+tj; + unsigned char * pix = (unsigned char*)header_data_cmap[(unsigned char)header_data[to]]; + map[j][i].type = pix[0]?BERRIES:GRASS; + } + } + + for(int i=0; i