add camera and bigger map

This commit is contained in:
bgiraudr 2021-08-19 02:29:51 +02:00
parent bc6cfde444
commit bf8aa10c31
11 changed files with 158 additions and 86 deletions

View File

@ -1,7 +1,7 @@
tileset.png:
type: bopti-image
name: img_tileset
profile:p4
profile:p8
spritesheet.png:
type: bopti-image

View File

@ -1,91 +1,91 @@
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.5" tiledversion="1.7.2" orientation="orthogonal" renderorder="right-down" width="56" height="38" tilewidth="16" tileheight="16" infinite="0" nextlayerid="9" nextobjectid="25">
<map version="1.5" tiledversion="1.7.2" orientation="orthogonal" renderorder="right-down" width="100" height="38" tilewidth="16" tileheight="16" infinite="0" nextlayerid="9" nextobjectid="25">
<editorsettings>
<export target="testCarte.json" format="json"/>
</editorsettings>
<tileset firstgid="1" source="tileset.tsx"/>
<layer id="5" name="1" width="56" height="38">
<layer id="5" name="1" width="100" height="38">
<data encoding="csv">
1,3,2,1,3,38,1,6,6,6,3,3,3,3,1,3,2,0,1,1,1,1,1,209,183,181,212,0,0,0,0,0,175,177,0,0,0,0,0,0,0,0,0,0,0,0,0,146,147,147,147,147,147,147,148,35,
1,2,3,8,1,1,2,3,2,3,6,1,1,1,1,37,40,1,0,0,0,0,0,2,209,210,210,183,212,213,182,0,204,206,0,6,6,6,6,6,6,6,6,6,6,6,0,204,178,0,207,179,205,178,150,148,
1,3,8,3,1,59,0,60,60,61,6,6,1,3,1,1,1,1,6,6,6,6,1,0,2,1,1,180,184,210,211,1,0,0,61,1,6,6,6,6,6,6,6,6,6,6,2,0,175,207,207,177,1,204,178,150,
1,1,3,32,36,88,89,89,89,63,61,6,3,1,2,0,0,3,1,1,1,3,3,1,0,1,1,209,211,1,59,60,62,121,90,1,6,6,6,2,3,1,1,1,6,6,6,0,175,176,207,177,2,32,175,207,
6,2,1,1,1,117,118,118,118,91,90,2,37,2,2,0,0,1,2,3,3,2,32,2,1,0,2,1,1,1,88,120,92,118,119,1,6,6,34,0,0,0,0,0,1,1,1,0,204,178,176,150,148,32,204,178,
6,1,0,0,3,3,32,32,1,117,119,2,39,1,98,99,100,1,3,3,0,3,38,1,1,146,0,1,1,0,88,120,90,1,1,1,4,35,1,0,205,205,0,0,1,1,1,1,0,204,178,208,150,148,31,175,
6,2,0,0,3,3,3,1,1,3,2,1,3,3,98,99,73,71,1,1,2,3,2,2,1,175,0,1,1,59,62,92,119,1,1,0,0,0,0,1,240,242,175,0,1,1,1,1,1,0,175,208,207,150,0,149,
1,98,99,100,3,1,2,3,3,2,3,2,3,1,98,99,99,100,3,32,3,2,2,2,1,175,0,1,1,88,121,90,1,1,6,0,177,39,109,240,243,271,175,0,39,1,1,1,1,0,204,178,208,176,208,176,
1,98,99,73,70,70,70,70,70,70,70,70,70,70,72,99,99,100,2,37,33,36,1,2,1,175,0,1,1,88,89,90,1,1,6,0,177,240,241,243,273,300,175,0,31,1,0,0,1,1,0,204,205,205,205,205,
39,98,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,100,1,3,1,3,3,3,1,204,0,6,1,117,91,63,61,1,6,0,177,298,272,301,271,39,175,0,34,32,0,0,1,1,1,0,0,0,0,1,
1,127,128,128,128,128,101,99,99,102,128,128,128,128,128,101,99,100,3,2,1,0,0,1,2,0,6,6,6,2,117,91,90,1,6,0,177,4,298,299,300,31,175,0,37,151,154,182,1,1,1,0,1,1,1,0,
1,40,1,59,60,61,98,99,99,100,240,241,242,1,38,98,99,73,71,1,0,0,0,0,1,0,6,6,6,1,3,88,63,61,1,0,150,147,147,147,147,147,149,0,1,180,181,155,153,2,1,1,1,1,6,6,
6,1,1,88,89,90,98,99,99,100,269,270,271,1,35,98,99,99,73,70,70,0,0,70,71,0,38,6,6,3,3,88,121,90,1,0,176,176,176,176,176,176,176,0,151,154,213,184,211,2,1,1,1,6,6,6,
6,1,1,0,118,119,98,99,99,100,298,272,244,242,3,127,128,128,101,99,99,99,99,99,100,146,0,3,2,1,1,88,89,90,2,6,6,6,6,6,6,6,1,151,154,213,213,182,59,60,60,61,3,6,6,6,
6,6,1,1,1,1,98,99,99,100,1,269,270,271,2,40,35,2,98,99,99,99,99,99,100,175,0,2,3,1,3,117,91,90,3,1,6,6,6,6,6,6,6,180,181,181,184,211,88,120,92,119,2,2,6,6,
7,7,1,1,1,1,98,99,99,100,1,298,272,244,241,242,1,1,127,128,128,128,128,128,129,175,0,151,0,2,2,2,88,63,61,2,1,1,6,6,6,6,2,180,184,210,211,59,62,92,119,1,3,2,151,152,
8,1,33,1,1,1,98,99,99,100,3,1,298,272,301,271,3,3,2,2,3,2,3,1,1,175,0,180,155,152,153,2,117,91,63,60,61,1,1,1,6,6,3,209,211,59,60,62,121,90,1,151,152,152,154,213,
1,1,1,1,1,1,98,99,99,100,2,40,1,298,299,300,39,1,1,2,1,1,2,2,2,175,0,209,183,213,155,153,1,117,118,91,63,60,60,60,61,1,1,1,59,62,89,120,89,90,3,180,0,213,213,181,
1,34,1,1,1,1,98,99,99,73,71,37,2,1,3,32,5,1,3,1,3,2,1,3,1,175,0,2,180,212,181,155,152,153,1,117,118,118,91,120,63,61,59,60,62,120,121,92,118,119,3,180,213,184,210,210,
36,38,1,1,1,1,98,99,99,130,73,70,71,2,2,3,1,33,40,38,2,2,1,3,1,175,0,3,209,210,210,210,210,211,1,1,1,1,88,120,121,63,62,89,121,89,92,119,2,1,3,180,184,211,240,241,
1,1,1,1,1,69,72,99,99,130,130,131,100,0,2,1,1,3,1,36,39,1,2,2,2,175,0,1,1,1,1,1,1,3,6,6,6,1,117,91,120,121,89,89,92,118,119,2,2,3,151,154,182,240,243,270,
1,1,1,59,61,127,128,128,128,128,128,128,129,2,2,1,3,2,3,3,2,3,3,3,2,204,206,0,0,0,0,0,0,6,6,0,6,6,1,88,121,121,121,92,119,1,1,1,151,152,154,213,182,298,272,270,
1,1,1,88,63,61,1,1,1,1,38,2,2,2,1,3,0,33,3,3,3,1,1,3,3,3,2,204,205,205,205,178,0,6,6,6,6,6,1,117,91,89,121,90,3,1,2,151,154,212,212,213,155,153,298,272,
1,0,60,62,121,90,161,162,162,163,1,59,60,61,2,3,1,0,0,3,0,3,1,2,3,2,1,1,1,3,1,175,0,1,6,6,6,6,6,1,117,91,121,63,61,1,1,209,183,213,212,212,213,155,153,298,
59,62,89,121,92,119,190,191,223,192,59,62,89,63,60,61,2,1,3,0,3,2,2,2,1,59,60,60,61,1,2,204,206,0,0,0,0,0,0,1,1,117,118,118,119,3,3,2,209,183,212,181,213,181,155,152,
117,118,91,89,90,161,164,223,194,221,117,118,118,91,89,90,3,2,2,3,2,1,59,60,60,62,120,121,90,1,1,1,1,3,2,240,241,242,1,0,0,0,138,138,0,0,0,0,3,209,210,183,212,213,213,181,
241,242,117,118,119,190,223,194,221,146,147,147,148,88,121,90,146,148,3,3,2,59,62,121,121,121,120,120,63,61,1,1,0,0,3,298,272,244,241,242,204,205,0,0,204,178,176,150,0,0,2,209,210,210,210,210,
301,244,242,5,2,190,223,192,146,149,0,176,177,88,120,90,175,150,148,3,3,88,121,120,121,92,91,121,121,63,61,0,0,0,0,1,269,301,270,244,242,1,156,158,2,204,205,205,178,150,0,2,1,1,1,1,
301,270,271,4,1,190,223,192,175,176,207,207,177,88,120,90,204,178,150,148,3,88,120,120,92,119,117,91,121,120,63,60,0,0,1,1,269,270,270,270,271,1,185,187,1,3,2,2,204,178,150,0,0,0,0,1,
270,301,271,3,161,164,223,192,175,176,176,208,177,88,120,63,61,204,205,206,2,88,89,120,90,1,2,117,118,91,121,121,121,63,61,1,269,301,301,270,271,1,185,187,1,2,1,1,1,204,205,205,178,208,150,0,
301,270,271,4,190,191,194,221,175,176,176,176,177,88,120,121,90,3,2,2,1,88,120,120,90,3,3,2,2,117,91,121,120,121,90,1,269,301,270,270,271,156,159,187,5,39,1,240,241,242,3,3,204,205,205,205,
301,273,300,1,190,194,221,146,149,176,176,176,177,88,89,121,63,60,60,60,60,62,89,89,90,2,1,2,3,2,117,91,121,92,119,240,243,270,301,270,271,185,217,187,35,33,240,243,302,244,241,241,242,1,1,1,
301,271,4,161,164,192,146,149,208,176,176,176,177,117,91,121,120,121,120,89,120,121,120,89,90,3,3,1,1,2,1,88,89,281,282,282,282,282,282,282,282,283,217,187,40,37,269,301,273,299,272,301,271,1,1,1,
299,300,3,190,191,192,175,208,0,176,176,176,150,148,88,89,120,89,120,120,89,120,120,121,90,2,3,3,2,3,3,117,91,310,311,311,311,311,311,311,311,312,218,160,158,240,243,273,300,1,298,272,244,241,241,241,
147,148,1,190,222,192,204,178,176,176,176,176,179,206,88,120,121,92,118,118,118,118,118,118,119,1,2,1,1,2,1,1,117,119,298,272,301,301,270,270,271,185,218,189,216,269,270,271,2,2,1,298,272,270,301,270,
176,177,161,164,222,165,163,204,178,207,176,179,206,59,62,0,92,119,3,2,2,3,1,3,1,3,2,2,2,3,2,2,3,3,2,298,272,270,301,301,271,185,186,187,240,243,270,244,242,2,0,2,298,272,301,301,
176,177,190,222,222,191,165,163,204,205,205,206,59,62,89,89,90,2,1,3,2,3,2,2,1,2,1,0,1,3,0,1,2,0,156,158,298,299,299,299,300,185,217,187,298,299,272,302,271,2,2,3,3,298,272,301,
176,177,190,191,223,191,222,165,162,162,162,163,88,89,89,120,63,61,3,1,1,2,3,3,3,2,1,3,2,2,1,1,1,3,185,160,157,157,157,157,157,159,186,160,158,3,298,299,300,1,1,2,1,1,298,272
1,3,2,1,3,38,1,6,6,6,3,3,3,3,1,3,2,0,1,1,1,1,1,209,183,181,212,0,0,0,0,0,175,177,0,0,0,0,0,0,0,0,0,0,0,0,0,146,147,147,147,147,147,147,148,35,1,1,1,1,146,147,149,207,208,150,149,177,1,2,2,1,298,299,299,272,301,301,273,299,299,299,299,272,270,270,270,270,270,301,270,301,301,270,301,301,301,270,301,301,
1,2,3,8,1,1,2,3,2,3,6,1,1,1,1,37,40,1,0,0,0,0,0,2,209,210,210,183,212,213,182,0,204,206,0,6,6,6,6,6,6,6,6,6,6,6,0,204,178,0,207,179,205,178,150,148,1,1,1,146,149,176,207,208,179,205,205,206,1,32,2,2,2,3,2,298,299,299,300,3,3,2,2,298,299,299,299,299,299,299,299,299,272,301,270,270,270,270,301,270,
1,3,8,3,1,59,0,60,60,61,6,6,1,3,1,1,1,1,6,6,6,6,1,0,2,1,1,180,184,210,211,1,0,0,61,1,6,6,6,6,6,6,6,6,6,6,2,0,175,207,207,177,1,204,178,150,148,1,1,175,176,176,179,205,206,2,2,2,2,2,2,3,3,3,33,38,1,2,2,1,31,32,39,38,1,2,30,30,30,1,3,1,298,299,299,299,272,301,301,270,
1,1,3,32,36,88,89,89,89,63,61,6,3,1,2,0,0,3,1,1,1,3,3,1,0,1,1,209,211,1,59,60,62,121,90,1,6,6,6,2,3,1,1,1,6,6,6,0,175,176,207,177,2,32,175,176,150,147,147,149,208,176,177,1,2,3,2,1,2,1,2,59,61,3,34,37,1,3,3,3,36,35,1,34,3,2,38,109,30,39,36,4,2,1,3,1,298,299,272,301,
6,2,1,1,1,117,118,118,118,91,90,2,37,2,2,0,0,1,2,3,3,2,32,2,1,0,2,1,1,1,88,120,92,118,119,1,6,6,34,0,0,0,0,0,2,3,2,0,204,178,176,150,148,32,204,205,205,178,208,207,176,207,177,3,2,2,3,3,32,2,3,88,63,60,61,1,3,2,1,2,1,3,2,3,3,3,161,162,163,33,2,5,39,34,40,37,30,3,298,299,
6,1,0,0,3,3,32,32,1,117,119,2,39,1,98,99,100,1,3,3,0,3,38,1,1,146,0,1,1,0,88,120,90,1,1,1,4,35,1,0,205,205,0,0,2,3,3,1,0,204,178,208,150,148,31,109,37,175,176,176,179,178,150,147,148,2,2,1,1,2,1,117,91,121,90,2,1,1,1,2,1,2,1,2,2,2,190,191,192,31,32,161,162,162,162,162,163,109,37,5,
6,2,0,0,3,3,3,1,1,3,2,1,3,3,98,99,73,71,1,1,2,3,2,2,1,175,0,1,1,59,62,92,119,1,1,0,0,0,0,1,240,242,175,0,1,2,1,3,1,0,175,208,207,150,0,147,147,149,176,176,177,204,205,178,177,2,3,2,1,3,2,1,117,91,63,61,1,2,2,2,3,2,3,1,1,1,190,223,165,162,162,164,223,222,191,222,165,162,163,30,
1,98,99,100,3,1,2,3,3,2,3,2,3,1,98,99,99,100,3,32,3,2,2,2,1,175,0,1,1,88,121,90,1,1,6,0,177,39,109,240,243,271,175,0,39,2,3,2,3,0,204,178,208,176,208,208,179,205,205,205,206,3,3,204,206,1,1,2,2,1,2,1,3,117,91,63,61,1,1,6,2,1,1,3,3,3,190,223,223,223,223,223,191,191,191,223,191,191,165,163,
1,98,99,73,70,70,70,70,70,70,70,70,70,70,72,99,99,100,2,37,33,36,1,2,1,175,0,1,1,88,89,90,1,1,6,0,177,240,241,243,273,300,175,0,31,3,0,0,3,1,0,204,205,205,205,205,206,3,32,1,2,2,2,3,2,3,1,1,2,3,2,1,3,1,117,91,90,6,6,6,1,2,161,162,162,162,164,223,191,223,223,191,222,191,191,191,222,222,222,192,
39,98,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,100,1,3,1,3,3,3,1,204,0,6,1,117,91,63,61,1,6,0,177,298,272,301,271,39,175,0,34,32,0,0,1,1,1,0,0,0,0,2,3,1,3,2,3,2,2,3,1,1,6,2,2,3,3,3,6,3,33,117,119,6,6,6,6,3,190,191,191,223,191,194,220,220,193,191,222,222,191,222,223,194,220,221,
1,127,128,128,128,128,101,99,99,102,128,128,128,128,128,101,99,100,3,2,1,0,0,1,2,0,6,6,6,2,117,91,90,1,6,0,177,4,298,299,300,31,175,0,37,151,154,182,3,1,1,0,2,2,1,2,3,2,1,3,2,2,3,6,6,6,6,3,1,2,6,6,6,3,39,2,6,6,6,6,6,6,219,220,220,193,222,192,2,1,190,223,222,223,191,223,194,221,2,6,
1,40,1,59,60,61,98,99,99,100,240,241,242,1,38,98,99,73,71,1,0,0,0,0,1,0,6,6,6,1,3,88,63,61,1,0,150,147,147,147,147,147,149,0,1,180,181,155,153,2,2,3,2,2,6,6,6,2,36,40,1,1,2,2,6,6,6,1,1,1,6,6,2,3,38,36,6,3,3,2,1,3,3,1,1,190,191,165,162,162,164,223,223,223,191,191,192,3,1,6,
6,1,1,88,89,90,98,99,99,100,269,270,271,1,35,98,99,99,73,70,70,0,0,70,71,0,38,6,6,3,3,88,121,90,1,0,176,176,176,176,176,176,176,0,151,154,213,184,211,2,1,3,1,6,6,6,6,2,40,38,36,39,2,1,2,6,6,1,2,151,153,151,152,153,34,31,3,161,162,162,163,161,163,3,2,190,194,220,220,220,193,223,194,220,220,220,221,1,6,6,
6,1,1,0,118,119,98,99,99,100,298,272,244,242,3,127,128,128,101,99,99,99,99,99,100,146,0,3,2,1,1,88,89,90,2,6,6,6,6,6,6,6,1,151,154,213,213,182,59,60,60,61,3,6,6,6,6,2,1,2,1,1,3,151,152,152,152,153,3,180,155,154,212,182,2,32,3,190,191,223,165,164,165,163,1,190,192,3,30,4,190,194,221,2,2,1,1,6,6,6,
6,6,1,1,1,1,98,99,99,100,1,269,270,271,2,40,35,2,98,99,99,99,99,99,100,175,0,2,3,1,3,117,91,90,3,1,6,6,6,6,6,6,6,180,181,181,184,211,88,120,92,119,2,2,6,6,2,1,151,152,153,11,2,180,181,213,213,182,3,180,181,212,213,155,153,2,2,190,194,193,222,223,222,165,162,164,192,39,38,1,190,192,3,2,6,6,6,6,6,6,
7,7,1,1,1,1,98,99,99,100,1,298,272,244,241,242,1,1,127,128,128,128,128,128,129,175,0,151,0,2,2,2,88,63,61,2,1,1,6,6,6,6,2,180,184,210,211,59,62,92,119,1,3,2,151,152,153,3,180,212,182,11,11,209,210,210,210,211,2,209,210,210,183,181,182,2,3,190,165,164,222,222,191,222,191,191,165,162,162,162,164,192,1,3,6,6,6,6,6,6,
8,1,33,1,1,1,98,99,99,100,3,1,298,272,301,271,3,3,2,2,3,2,3,1,1,175,0,180,155,152,153,2,117,91,63,60,61,1,1,1,6,6,3,209,211,59,60,62,121,90,1,151,152,152,154,181,155,152,154,213,182,1,2,6,6,6,3,1,2,1,3,3,209,210,211,2,3,190,191,223,223,223,222,223,222,223,222,222,191,223,191,192,2,1,2,3,3,6,6,6,
1,1,1,1,1,1,98,99,99,100,2,40,1,298,299,300,39,1,1,2,1,1,2,2,2,175,0,209,183,213,155,153,1,117,118,91,63,60,60,60,61,1,1,1,59,62,89,120,89,90,3,180,0,213,213,213,213,212,213,181,182,3,6,6,6,6,1,1,3,1,3,3,1,1,2,2,3,190,222,191,191,194,220,220,220,220,220,220,193,222,222,165,163,1,1,3,1,2,6,6,
1,34,1,1,1,1,98,99,99,73,71,37,2,1,3,32,5,1,3,1,3,2,1,3,1,175,0,2,180,212,181,155,152,153,1,117,118,118,91,120,63,61,59,60,62,120,121,92,118,119,3,180,213,184,210,210,210,183,213,213,155,153,6,6,6,3,2,1,2,1,3,161,163,3,3,3,161,164,223,222,194,221,1,3,6,6,2,2,219,193,223,191,192,109,3,1,1,3,2,2,
36,38,1,1,1,1,98,99,99,130,73,70,71,2,2,3,1,33,40,38,2,2,1,3,1,175,0,3,209,210,210,210,210,211,1,1,1,1,88,120,121,63,62,89,121,89,92,119,2,1,3,180,184,211,240,241,242,209,183,212,181,182,1,6,2,2,1,2,3,2,2,190,165,162,162,162,164,222,222,191,192,6,6,6,6,6,6,6,3,219,220,193,165,163,3,161,163,1,1,3,
1,1,1,1,1,69,72,99,99,130,130,131,100,0,2,1,1,3,1,36,39,1,2,2,2,175,0,1,1,1,1,1,1,3,6,6,6,1,117,91,120,121,89,89,92,118,119,2,2,3,151,154,182,240,243,301,244,242,180,181,213,182,3,1,3,3,3,3,2,1,1,190,223,191,223,191,191,191,222,194,221,3,6,6,6,6,6,2,2,1,2,219,193,165,162,164,192,3,240,241,
1,1,1,59,61,127,128,128,128,128,128,128,129,2,2,1,3,2,3,3,2,3,3,3,2,204,206,0,0,0,0,0,0,6,6,0,6,6,1,88,121,121,121,92,119,1,1,1,151,152,154,213,182,298,272,301,273,300,180,212,181,182,35,39,2,1,2,3,35,33,32,219,193,191,223,223,194,220,193,192,40,1,2,6,6,6,1,1,1,1,3,1,219,220,220,220,221,240,243,270,
1,1,1,88,63,61,1,1,1,1,38,2,2,2,1,3,0,33,3,3,3,1,1,3,3,3,2,204,205,205,205,178,0,6,6,6,6,6,1,117,91,89,121,90,3,1,2,151,154,212,212,213,155,153,298,299,300,1,180,213,181,182,34,33,2,2,2,6,2,2,1,2,219,220,220,220,221,2,190,192,39,31,3,1,2,1,2,151,153,1,2,1,240,241,241,241,241,243,302,301,
1,0,60,62,121,90,161,162,162,163,1,59,60,61,2,3,1,0,0,3,0,3,1,2,3,2,1,1,1,3,1,175,0,1,6,6,6,6,6,1,117,91,121,63,61,1,1,209,183,213,212,212,213,155,153,3,151,152,154,181,184,211,1,3,2,2,1,6,6,3,2,1,2,1,1,2,3,1,190,192,34,36,2,2,3,151,152,154,182,3,1,240,243,270,273,299,299,272,270,301,
59,62,89,121,92,119,190,191,223,192,59,62,89,63,60,61,2,1,3,0,3,2,2,2,1,59,60,60,61,1,2,204,206,0,0,0,0,0,0,1,1,117,118,118,119,3,3,2,209,183,212,181,213,181,155,152,154,213,212,184,211,3,9,1,2,2,6,6,6,6,2,1,2,39,36,37,37,161,164,165,163,3,1,151,152,154,213,184,211,2,240,243,301,273,300,2,3,298,272,270,
117,118,91,89,90,161,164,223,194,221,117,118,118,91,89,90,3,2,2,3,2,1,59,60,60,62,120,121,90,1,1,1,1,3,2,240,241,242,1,0,0,0,138,138,0,0,0,0,3,209,210,183,212,213,213,181,181,184,210,211,3,2,2,2,2,1,6,6,6,6,1,3,39,32,30,30,109,219,193,194,221,3,2,180,213,212,212,182,2,2,269,301,301,271,3,156,158,1,298,299,
241,242,117,118,119,190,223,194,221,146,147,147,148,88,121,90,146,148,3,3,2,59,62,121,121,121,120,120,63,61,1,1,0,0,3,298,272,244,241,242,204,205,0,0,204,178,176,150,0,0,2,209,210,210,210,210,210,211,6,6,3,3,1,3,2,6,6,6,6,6,1,1,31,109,2,240,241,242,219,221,39,2,2,209,183,212,212,182,1,240,243,301,273,300,156,159,160,158,3,1,
301,244,242,5,2,190,223,192,146,149,0,176,177,88,120,90,175,150,148,3,3,88,121,120,121,92,91,121,121,63,61,0,0,0,0,1,269,301,270,244,242,1,156,158,2,204,205,205,178,150,0,2,1,9,3,3,6,6,6,3,2,1,1,2,6,6,6,6,6,6,1,240,241,241,241,243,270,244,241,241,242,109,1,2,209,210,210,211,2,269,270,301,271,3,185,217,218,160,157,157,
301,270,271,4,1,190,223,192,175,176,207,207,177,88,120,90,204,178,150,148,3,88,120,120,92,119,117,91,121,120,63,60,0,0,1,1,269,270,270,270,271,1,185,187,1,3,2,2,204,178,150,0,0,0,0,2,3,2,146,148,1,3,1,3,6,6,3,1,3,240,241,243,301,270,301,270,270,270,301,301,244,242,3,34,34,2,34,1,240,243,270,270,271,156,159,218,186,186,217,217,
270,301,271,3,161,164,223,192,175,176,176,208,177,88,120,63,61,204,205,206,2,88,89,120,90,1,2,117,118,91,121,121,121,63,61,1,269,301,301,270,271,1,185,187,1,2,1,1,1,204,205,205,178,208,150,147,147,147,149,177,1,1,3,3,1,1,240,241,241,243,270,301,270,270,270,270,270,270,270,301,270,244,241,241,242,2,40,109,269,301,301,270,271,185,218,218,217,218,217,217,
301,270,271,4,190,191,194,221,175,176,176,176,177,88,120,121,90,3,2,2,1,88,120,120,90,3,3,2,2,117,91,121,120,121,90,1,269,301,270,270,271,156,159,187,5,39,1,240,241,242,3,3,204,205,205,205,205,205,205,206,3,1,3,240,241,241,243,301,301,301,270,270,302,270,270,270,270,270,270,270,301,270,270,270,244,241,241,241,243,301,301,301,271,214,215,188,186,186,218,186,
301,273,300,1,190,194,221,146,149,176,176,176,177,88,89,121,63,60,60,60,60,62,89,89,90,2,1,2,3,2,117,91,121,92,119,240,243,270,301,270,271,185,217,187,35,33,240,243,302,244,241,241,242,2,1,3,1,1,2,1,2,240,241,243,270,270,301,301,270,270,270,270,270,270,270,270,273,299,272,270,270,270,273,299,299,272,270,270,301,270,301,301,244,242,36,214,215,188,186,218,
301,271,4,161,164,192,146,149,208,176,176,176,177,117,91,121,120,121,120,89,120,121,120,89,90,3,3,1,1,2,1,88,89,281,282,282,282,282,282,282,282,283,217,187,40,37,269,301,273,299,272,301,271,3,2,2,1,3,1,240,241,243,270,270,301,270,270,270,270,270,270,270,270,270,273,299,300,32,298,299,299,299,300,1,37,298,299,272,301,301,270,301,270,244,242,1,5,214,188,186,
299,300,3,190,191,192,175,208,0,176,176,176,150,148,88,89,120,89,120,120,89,120,120,121,90,2,3,3,2,3,3,117,91,310,311,311,311,311,311,311,311,312,218,160,158,240,243,273,300,1,298,272,244,241,241,241,241,241,241,243,270,270,301,270,270,270,270,270,270,270,270,270,270,270,271,2,40,69,70,70,71,38,3,69,70,71,38,298,299,272,301,270,270,301,244,241,242,3,185,217,
147,148,1,190,222,192,204,178,176,176,176,176,179,206,88,120,121,92,118,118,118,118,118,118,119,1,2,1,1,2,1,1,117,119,298,272,301,301,270,270,271,185,218,189,216,269,270,271,2,2,1,298,272,270,301,270,270,301,301,301,270,270,270,302,270,270,270,270,270,270,270,270,270,270,244,242,109,127,128,101,73,70,70,72,99,73,71,33,35,298,272,270,270,270,301,270,271,3,214,215,
176,177,161,164,222,165,163,204,178,207,176,179,206,59,62,0,92,119,3,2,2,3,1,3,1,3,2,2,2,3,2,2,3,3,2,298,272,270,301,301,271,185,186,187,240,243,270,244,242,2,0,2,298,272,301,301,301,270,301,270,270,270,270,273,299,299,299,272,270,270,270,270,270,270,270,244,241,242,34,127,128,128,101,99,99,99,73,70,71,30,269,270,270,270,270,270,244,242,30,34,
176,177,190,222,222,191,165,163,204,205,205,206,59,62,89,89,90,2,1,3,2,3,2,2,1,2,1,0,1,3,0,1,2,0,156,158,298,299,299,299,300,185,217,187,298,299,272,302,271,2,2,3,3,298,272,301,270,270,270,270,270,270,273,300,35,33,33,269,270,270,270,270,270,270,270,270,270,244,241,241,242,4,127,128,101,130,130,99,100,36,269,270,270,270,302,270,270,244,241,242,
176,177,190,191,223,191,222,165,162,162,162,163,88,89,89,120,63,61,3,1,1,2,3,3,3,2,1,3,2,2,1,1,1,3,185,160,157,157,157,157,157,159,186,160,158,3,298,299,300,1,1,2,1,1,298,272,270,270,270,270,270,270,271,40,2,39,37,269,270,270,270,270,270,270,270,270,270,270,270,270,271,34,38,33,127,128,128,128,129,40,269,270,270,270,270,270,270,270,270,244
</data>
</layer>
<layer id="1" name="2" width="56" height="38">
<layer id="1" name="2" width="100" height="38">
<data encoding="csv">
295,295,294,294,0,0,0,0,0,0,294,294,295,295,294,0,0,108,0,0,0,0,0,0,0,0,137,138,138,138,138,84,0,0,82,138,138,138,138,138,138,138,138,138,138,138,84,0,320,321,322,0,0,0,0,0,
294,295,294,0,0,320,321,322,0,0,0,294,295,294,0,0,0,137,138,138,138,138,84,0,0,0,0,0,0,0,0,108,0,0,110,0,0,0,0,0,0,0,0,0,0,0,113,0,349,350,351,0,28,0,0,0,
294,0,0,0,0,349,350,351,0,0,0,0,294,0,660,661,662,663,0,0,0,0,137,84,0,0,0,0,0,0,0,137,138,138,139,0,0,0,0,0,0,0,0,0,0,0,137,84,378,379,380,0,57,0,0,0,
294,0,0,0,0,378,379,380,22,23,0,0,0,0,689,690,691,692,0,0,0,0,0,137,84,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,174,0,0,0,0,113,0,0,0,0,0,0,0,0,
0,656,657,658,659,0,0,0,51,52,0,0,0,0,718,719,720,721,0,323,324,325,0,0,137,84,0,0,320,321,322,0,0,0,0,0,0,0,0,82,83,83,203,84,0,0,0,113,0,0,0,0,0,0,0,0,
0,685,686,687,688,0,0,0,0,0,0,0,0,0,747,748,749,750,0,352,353,354,0,0,0,137,84,0,349,350,351,0,0,0,0,0,0,0,0,111,0,0,232,113,0,0,0,137,84,0,0,0,0,320,321,322,
0,714,715,716,717,245,24,25,0,246,0,24,25,245,0,0,0,0,0,381,382,383,0,0,0,0,108,0,378,379,380,0,0,0,0,82,83,83,83,139,0,0,0,113,0,0,0,0,137,84,0,0,0,349,350,351,
0,743,744,745,746,274,53,54,0,275,0,53,54,274,0,0,0,0,0,0,0,0,0,0,0,0,108,0,0,0,0,0,0,0,0,111,0,0,0,0,0,0,0,113,0,656,657,658,659,108,0,0,0,378,379,380,
0,0,29,0,0,303,0,0,0,304,0,0,0,303,0,0,0,0,0,0,0,0,0,0,0,0,108,0,0,0,0,0,0,0,0,111,0,0,0,0,0,0,0,113,0,685,686,687,688,137,84,174,0,0,0,0,
0,0,58,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,635,636,637,638,0,79,142,0,0,0,0,0,0,0,0,111,0,0,0,0,0,29,0,113,0,714,715,716,717,0,137,203,138,138,84,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,664,665,666,667,0,108,0,0,0,0,0,0,0,0,0,111,0,0,0,0,0,58,0,113,0,743,744,745,746,0,0,232,0,0,137,138,
0,0,0,0,0,0,245,0,0,245,0,0,0,0,0,0,0,0,0,0,693,694,695,696,0,108,0,0,0,0,0,0,0,0,0,111,0,0,0,0,0,0,0,113,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,320,321,322,0,274,0,0,274,0,0,0,0,0,0,0,0,0,0,722,723,724,725,0,108,0,0,0,0,0,0,0,0,0,140,141,141,141,141,141,141,141,142,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,349,350,351,0,303,0,0,303,0,0,0,0,0,0,0,0,0,0,751,752,753,754,0,137,84,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,378,379,380,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,113,320,321,322,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,108,349,350,351,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,294,0,0,0,0,0,0,0,0,0,0,0,294,294,294,294,294,294,294,294,0,108,378,379,380,0,0,0,0,0,0,0,0,0,0,0,0,26,0,0,0,0,0,0,0,0,320,321,322,0,0,
0,0,0,0,294,294,0,0,0,0,0,0,0,0,0,0,0,0,294,294,294,294,294,294,294,0,108,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,55,0,0,0,0,0,0,0,0,349,350,351,0,0,
0,0,0,0,294,294,245,0,0,245,0,0,0,0,0,0,0,0,0,0,0,294,294,294,0,0,108,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,378,379,380,0,0,
0,0,0,294,294,294,274,0,0,274,20,21,320,321,322,0,0,0,0,0,0,0,294,0,0,0,108,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,294,294,294,303,0,0,303,49,50,349,350,351,0,0,0,0,0,0,0,0,0,0,0,108,0,0,0,0,0,0,0,320,321,322,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,378,379,380,0,79,80,81,0,0,0,0,0,0,0,137,138,138,138,138,138,84,0,349,350,351,0,0,0,0,0,0,0,20,21,0,0,0,0,0,0,0,0,0,0,
320,321,322,0,0,0,0,0,0,0,0,0,0,306,249,249,108,0,140,80,81,0,0,0,0,0,0,0,0,0,0,0,108,0,378,379,380,0,0,0,0,0,0,0,49,50,0,0,0,0,22,23,0,0,0,0,
349,350,351,0,0,0,0,0,0,0,0,0,0,0,0,0,137,138,84,0,110,249,249,249,249,249,249,249,250,249,251,0,108,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,51,52,0,0,0,0,
378,379,380,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,137,138,139,0,0,0,0,0,0,0,0,0,280,0,137,138,138,138,138,138,84,0,0,0,174,174,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,280,635,636,637,638,0,0,0,137,83,138,138,203,203,138,138,138,84,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,320,321,322,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,280,664,665,666,667,0,0,0,0,0,0,0,232,232,0,0,0,137,138,84,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,349,350,351,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,306,693,694,695,696,0,0,0,0,0,0,0,0,0,0,0,0,0,0,137,84,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,378,379,380,0,0,0,0,0,0,0,0,294,0,0,0,0,0,0,0,0,0,0,722,723,724,725,0,0,12,13,0,0,0,0,0,294,0,0,0,0,0,137,138,138,138,84,0,
0,0,0,0,0,0,0,0,0,294,294,0,0,0,0,0,0,0,0,0,294,0,0,0,0,294,0,0,0,0,0,751,752,753,754,0,0,41,42,0,0,0,0,0,294,294,0,0,0,0,29,0,0,0,137,138,
0,0,0,0,0,0,0,0,0,294,294,56,0,0,0,0,0,0,294,294,294,0,0,0,0,294,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,294,294,0,0,0,0,58,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,294,294,294,0,0,0,0,0,0,0,0,0,0,0,0,0,294,294,0,0,0,0,0,0,252,253,253,0,28,0,253,253,254,0,0,294,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,320,321,322,294,294,0,0,0,0,0,0,0,0,0,0,0,0,0,294,294,0,0,0,0,0,0,0,0,0,0,57,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,349,350,351,56,294,0,0,0,0,0,0,0,0,0,0,0,0,0,294,294,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,378,379,380,294,294,0,0,320,321,322,0,0,0,0,0,0,0,0,294,0,0,0,0,0,0,0,339,340,340,340,340,340,340,340,341,0,0,0,0,0,0,0,320,321,322,0,0,0,0,
294,0,0,0,0,0,0,0,0,0,0,0,0,0,349,350,351,0,0,294,294,294,294,294,294,294,323,324,325,323,324,325,323,324,325,0,0,0,0,0,0,0,0,0,0,0,0,0,0,349,350,351,0,0,0,0,
294,0,0,0,0,0,0,0,0,0,0,0,0,0,378,379,380,0,0,0,294,294,294,294,0,0,352,353,354,352,353,354,352,353,354,0,0,0,0,0,0,0,0,0,0,0,0,0,0,378,379,380,0,0,0,0,
294,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,381,382,383,381,382,383,381,382,383,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
295,295,294,294,0,0,0,0,0,0,294,294,295,295,294,0,0,108,0,0,0,0,0,0,0,0,137,138,138,138,138,84,0,0,82,138,138,138,138,138,138,138,138,138,138,138,84,0,320,321,322,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,21,0,110,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
294,295,294,0,0,320,321,322,0,0,0,294,295,294,0,0,0,137,138,138,138,138,84,0,0,0,0,0,0,0,0,108,0,0,110,0,0,0,0,0,0,0,0,0,0,0,113,0,349,350,351,0,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,49,50,0,110,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
294,0,0,0,0,349,350,351,0,0,0,0,294,0,660,661,662,663,0,0,0,0,137,84,0,0,0,0,0,0,0,137,138,138,139,0,0,0,0,0,0,0,0,0,0,0,137,84,378,379,380,0,57,0,0,0,0,0,0,0,0,0,0,0,0,320,321,322,0,0,0,82,139,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
294,0,0,0,0,378,379,380,22,23,0,0,0,0,689,690,691,692,0,0,0,0,0,137,84,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,174,0,0,0,0,113,0,0,0,0,0,0,0,0,0,0,0,26,0,0,0,0,0,349,350,351,0,0,82,139,0,0,0,0,0,323,324,325,0,0,0,0,0,0,0,28,0,323,324,325,0,0,0,0,0,0,0,0,
0,656,657,658,659,0,0,0,51,52,0,0,0,0,718,719,720,721,0,323,324,325,0,0,137,84,0,0,320,321,322,0,0,0,0,0,0,0,0,82,83,83,203,84,0,0,0,113,0,0,0,0,0,0,0,0,0,0,0,55,0,0,0,0,0,378,379,380,0,259,260,261,0,0,0,0,0,352,353,354,0,0,0,635,636,637,638,57,0,352,353,354,0,0,0,0,0,0,0,0,
0,685,686,687,688,0,0,0,0,0,0,0,0,0,747,748,749,750,0,352,353,354,0,0,0,137,84,0,349,350,351,0,0,0,0,0,0,0,0,111,0,0,232,113,0,0,0,137,84,0,0,0,0,320,321,322,0,0,0,0,0,0,0,0,0,0,0,0,0,82,139,0,0,0,0,0,0,381,382,383,0,245,0,664,665,666,667,0,0,381,382,383,0,0,0,0,0,0,0,0,
0,714,715,716,717,245,24,25,0,246,0,24,25,245,0,0,0,0,0,381,382,383,0,0,0,0,108,0,378,379,380,0,0,0,0,82,83,83,83,139,0,0,0,113,0,0,0,0,137,84,0,0,0,349,350,351,0,0,0,0,0,0,0,0,0,0,0,0,82,139,0,0,0,0,0,0,0,0,0,0,0,274,0,693,694,695,696,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,743,744,745,746,274,53,54,0,275,0,53,54,274,0,0,0,0,0,0,0,0,0,0,0,0,108,0,0,0,0,0,0,0,0,111,0,0,0,0,0,0,0,113,0,656,657,658,659,108,0,0,0,378,379,380,0,0,0,0,0,0,0,0,0,0,82,138,139,0,0,0,0,0,0,0,0,0,0,0,0,303,0,722,723,724,725,0,0,0,0,0,635,636,637,638,0,245,0,0,
0,0,29,0,0,303,0,0,0,304,0,0,0,303,0,0,0,0,0,0,0,0,0,0,0,0,108,0,0,0,0,0,0,0,0,111,0,0,0,0,0,0,0,113,0,685,686,687,688,137,84,174,0,0,0,0,0,0,0,0,0,0,0,0,0,82,139,111,0,0,18,19,0,0,0,0,0,0,0,0,0,0,0,751,752,753,754,0,0,0,0,0,664,665,666,667,0,274,0,0,
0,0,58,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,635,636,637,638,0,79,142,0,0,0,0,0,0,0,0,111,0,0,0,0,0,29,0,113,0,714,715,716,717,0,137,203,138,138,84,0,0,0,0,0,0,0,82,138,138,139,0,140,81,0,47,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,25,0,0,693,694,695,696,0,303,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,664,665,666,667,0,108,0,0,0,0,0,0,0,0,0,111,0,0,0,0,0,58,0,113,0,743,744,745,746,0,0,232,0,0,137,138,138,138,138,138,138,138,139,0,0,0,0,0,111,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,53,54,0,0,722,723,724,725,0,0,0,0,
0,0,0,0,0,0,245,0,0,245,0,0,0,0,0,0,0,0,0,0,693,694,695,696,0,108,0,0,0,0,0,0,0,0,0,111,0,0,0,0,0,0,0,113,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,111,0,0,0,0,0,0,0,0,0,635,636,637,638,0,0,0,245,0,0,0,0,245,0,751,752,753,754,0,0,0,0,
0,0,320,321,322,0,274,0,0,274,0,0,0,0,0,0,0,0,0,0,722,723,724,725,0,108,0,0,0,0,0,0,0,0,0,140,141,141,141,141,141,141,141,142,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,320,321,322,0,0,0,111,0,0,323,324,325,0,0,0,0,664,665,666,667,0,0,0,274,0,323,324,325,274,0,0,0,0,0,0,0,0,0,
0,0,349,350,351,0,303,0,0,303,0,0,0,0,0,0,0,0,0,0,751,752,753,754,0,137,84,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,349,350,351,0,0,0,111,0,0,352,353,354,0,0,0,0,693,694,695,696,0,0,0,303,0,352,353,354,303,0,0,0,0,0,0,0,0,0,
0,0,378,379,380,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,113,320,321,322,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,378,379,380,0,0,0,111,0,0,381,382,383,0,0,0,0,722,723,724,725,0,0,0,0,0,381,382,383,0,0,0,0,0,0,323,324,325,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,108,349,350,351,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,111,0,0,0,0,0,0,0,0,0,751,752,753,754,0,0,0,0,0,22,23,0,29,0,0,0,0,0,352,353,354,0,
0,0,0,0,0,294,0,0,0,0,0,0,0,0,0,0,0,294,294,294,294,294,294,294,294,0,108,378,379,380,0,0,0,0,0,0,0,0,0,0,0,0,26,0,0,0,0,0,0,0,0,320,321,322,0,0,0,0,0,0,0,0,0,0,0,0,0,82,139,0,0,0,0,0,0,0,0,0,0,0,0,0,24,25,0,0,0,51,52,0,58,0,0,0,0,0,381,382,383,0,
0,0,0,0,294,294,0,0,0,0,0,0,0,0,0,0,0,0,294,294,294,294,294,294,294,0,108,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,55,0,0,0,0,0,0,0,0,349,350,351,0,0,0,0,0,0,0,0,0,0,0,0,0,111,0,0,0,660,661,662,663,0,28,0,0,0,0,0,53,54,0,0,0,0,0,0,0,0,0,656,657,658,659,0,0,0,
0,0,0,0,294,294,245,0,0,245,0,0,0,0,0,0,0,0,0,0,0,294,294,294,0,0,108,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,378,379,380,0,0,0,0,0,0,0,0,0,0,0,0,0,111,0,0,0,689,690,691,692,0,57,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,685,686,687,688,0,0,0,
0,0,0,294,294,294,274,0,0,274,20,21,320,321,322,0,0,0,0,0,0,0,294,0,0,0,108,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,82,139,0,0,0,718,719,720,721,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,714,715,716,717,0,0,0,
0,0,0,0,0,0,303,0,0,303,49,50,349,350,351,0,0,0,0,0,0,0,0,0,0,0,108,0,0,0,0,0,0,0,320,321,322,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,111,0,0,0,0,747,748,749,750,0,0,245,0,0,0,0,0,0,0,0,0,0,0,0,24,25,0,743,744,745,746,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,378,379,380,0,79,80,81,0,0,0,0,0,0,0,137,138,138,138,138,138,84,0,349,350,351,0,0,0,0,0,0,0,20,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,82,139,0,0,0,0,0,0,0,0,0,0,274,0,0,0,0,0,0,0,0,0,0,0,0,53,54,0,0,0,0,0,0,0,0,
320,321,322,0,0,0,0,0,0,0,0,0,0,306,249,249,108,0,140,80,81,0,0,0,0,0,0,0,0,0,0,0,108,0,378,379,380,0,0,0,0,0,0,0,49,50,0,0,0,0,22,23,0,0,0,0,0,0,0,0,0,0,0,0,0,111,0,0,0,0,0,0,0,0,0,0,0,303,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
349,350,351,0,0,0,0,0,0,0,0,0,0,0,0,0,137,138,84,0,110,249,249,249,249,249,249,249,250,249,251,0,108,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,51,52,0,0,0,0,0,0,0,0,320,321,322,0,82,139,0,0,0,0,0,0,323,324,325,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
378,379,380,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,137,138,139,0,0,0,0,0,0,0,0,0,280,0,137,138,138,138,138,138,84,0,0,0,174,174,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,349,350,351,0,111,0,0,0,0,0,0,0,352,353,354,0,0,0,0,0,0,0,0,0,323,324,325,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,280,635,636,637,638,0,0,0,137,83,138,138,203,203,138,138,138,84,0,0,0,0,0,0,0,0,0,0,0,0,378,379,380,82,139,0,0,0,0,0,0,0,381,382,383,0,0,255,256,257,258,0,0,0,352,353,354,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,320,321,322,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,280,664,665,666,667,0,0,0,0,0,0,0,232,232,0,0,0,137,138,84,0,0,0,0,0,0,0,0,0,0,0,0,82,139,0,0,0,0,0,0,0,0,0,0,0,0,0,284,285,286,287,0,0,0,381,382,383,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,349,350,351,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,306,693,694,695,696,0,0,0,0,0,0,0,0,0,0,0,0,0,0,137,84,0,0,0,0,0,0,0,0,0,82,138,139,0,0,0,0,0,0,0,0,0,0,0,0,0,0,284,285,286,287,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,378,379,380,0,0,0,0,0,0,0,0,294,0,0,0,0,0,0,0,0,0,0,722,723,724,725,0,0,12,13,0,0,0,0,0,294,0,0,0,0,0,137,138,138,138,84,0,0,0,82,138,139,0,280,0,0,0,0,0,0,0,0,0,0,0,0,0,0,284,285,286,287,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,19,
0,0,0,0,0,0,0,0,0,294,294,0,0,0,0,0,0,0,0,0,294,0,0,0,0,294,0,0,0,0,0,751,752,753,754,0,0,41,42,0,0,0,0,0,294,294,0,0,0,0,29,0,0,0,137,138,138,138,139,0,0,0,280,0,0,0,0,0,0,0,0,0,0,0,0,0,0,284,285,286,287,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,48,
0,0,0,0,0,0,0,0,0,294,294,56,0,0,0,0,0,0,294,294,294,0,0,0,0,294,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,294,294,0,0,0,0,58,0,0,0,0,0,0,0,0,0,0,0,280,0,0,0,0,0,0,0,0,0,0,0,0,0,0,284,285,286,287,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,294,294,294,0,0,0,0,0,0,0,0,0,0,0,0,0,294,294,0,0,0,0,0,0,252,253,253,0,28,0,253,253,254,0,0,294,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,284,285,286,287,0,0,0,0,0,0,0,0,0,12,13,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,320,321,322,294,294,0,0,0,0,0,0,0,0,0,0,0,0,0,294,294,0,0,0,0,0,0,0,0,0,0,57,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,313,314,315,316,0,0,0,656,657,658,659,0,0,41,42,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,349,350,351,56,294,0,0,0,0,0,0,0,0,0,0,0,0,0,294,294,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,342,343,344,345,0,0,0,685,686,687,688,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,378,379,380,294,294,0,0,320,321,322,0,0,0,0,0,0,0,0,294,0,0,0,0,0,0,0,339,340,340,340,340,340,340,340,341,0,0,0,0,0,0,0,320,321,322,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,714,715,716,717,0,0,0,0,0,0,0,0,0,0,0,0,
294,0,0,0,0,0,0,0,0,0,0,0,0,0,349,350,351,0,0,294,294,294,294,294,294,294,323,324,325,323,324,325,323,324,325,0,0,0,0,0,0,0,0,0,0,0,0,0,0,349,350,351,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,13,0,0,0,0,0,0,0,0,28,0,743,744,745,746,0,0,0,0,0,0,0,0,0,0,0,0,
294,0,0,0,0,0,0,0,0,0,0,0,0,0,378,379,380,0,0,0,294,294,294,294,0,0,352,353,354,352,353,354,352,353,354,0,0,0,0,0,0,0,0,0,0,0,0,0,0,378,379,380,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,41,42,0,0,0,0,0,0,0,0,57,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
294,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,381,382,383,381,382,383,381,382,383,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
</data>
</layer>
</map>

View File

@ -27,6 +27,7 @@
<tile id="56" type="character"/>
<tile id="57" type="character"/>
<tile id="78" type="solid"/>
<tile id="79" type="solid"/>
<tile id="80" type="solid"/>
<tile id="81" type="solid"/>
<tile id="82" type="solid"/>
@ -78,6 +79,8 @@
<tile id="255" type="bridge"/>
<tile id="256" type="bridge"/>
<tile id="257" type="solid"/>
<tile id="259" type="bridge"/>
<tile id="260" type="bridge"/>
<tile id="268" type="solid"/>
<tile id="269" type="solid"/>
<tile id="270" type="solid"/>
@ -97,6 +100,8 @@
<tile id="284" type="bridge"/>
<tile id="285" type="bridge"/>
<tile id="286" type="solid"/>
<tile id="287" type="bridge"/>
<tile id="288" type="bridge"/>
<tile id="297" type="solid"/>
<tile id="298" type="solid"/>
<tile id="299" type="solid"/>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 55 KiB

After

Width:  |  Height:  |  Size: 55 KiB

5
include/camera.h Normal file
View File

@ -0,0 +1,5 @@
#pragma once
struct Camera {
int x, y;
};

View File

@ -4,3 +4,5 @@
#define PLAYER_VIEW_Y 8
/*the width of the tileset*/
#define TILESET_WIDTH 29
#define TILE_SIZE 16

View File

@ -9,6 +9,8 @@ struct Game {
struct Player *player;
/*list of all the characters on the map*/
struct Character **characters;
/*the camera*/
struct Camera *camera;
/*the background color*/
int background;
};
@ -16,7 +18,7 @@ struct Game {
/*draw the current state of the game*/
void engine_draw(struct Game const *game);
/*draw the map around the player*/
void engine_draw_map_around_player(struct Game const *game);
void engine_draw_map(struct Game const *game);
/*draw the player*/
void engine_draw_player(struct Player const *player);
/*move the player to the direction*/
@ -29,3 +31,4 @@ void engine_set_background(struct Game *game, int color);
void engine_action(struct Game const *game, int action);
/*check the current position of the player. To perform action depends of his location*/
void engine_check_position(struct Game *game);
void vec_lerp(struct Camera *from, struct Player const *to, float scale);

View File

@ -5,7 +5,7 @@
struct Map {
/*width, height and the number of layer of the map (max 2)*/
int w, h, nb_layer;
int w, h, nb_layers;
/*the tileset to use*/
bopti_image_t *tileset;
/*state of each tile on the map (solid, air ...)*/

View File

@ -4,8 +4,10 @@
#include "engine.h"
struct Player {
/*current position of the player on the map*/
/*current position of the player on the map - Tile*/
int x, y;
/*player mid - offset pixels*/
int x_mid, y_mid;
/*the direction the player facing to*/
int direction;
/*current frame of the animation*/

View File

@ -7,11 +7,13 @@
#include "animation.h"
#include "define.h"
#include "character.h"
#include "camera.h"
/*draw the current state of the game*/
void engine_draw(struct Game const *game) {
dclear(game->background);
engine_draw_map_around_player(game);
//engine_draw_map_around_player(game);
engine_draw_map(game);
engine_draw_player(game->player);
}
@ -69,7 +71,7 @@ void engine_draw_map_around_player(struct Game const *game) {
for(int i = beginmap; i <= endmap; i++) {
int y = j + (posy-ycentre);
for(int layer = 0; layer < game->map->nb_layer; layer++) {
for(int layer = 0; layer < game->map->nb_layers; layer++) {
int tile = game->map->layers[layer][i]-1;
if(tile != -1) {
int tile_x = tile % TILESET_WIDTH;
@ -88,6 +90,40 @@ void engine_draw_map_around_player(struct Game const *game) {
}
}
void engine_draw_map(struct Game const *game) {
int x_offset = (game->camera->x - DWIDTH/2);
int y_offset = (game->camera->y - DHEIGHT/2);
//currently -1 to avoid white during transition
for (int layer = 0 ; layer < game->map->nb_layers; layer++) {
for (int y = -1 ; y <= DHEIGHT / TILE_SIZE + 1; y++) {
for (int x = -1 ; x <= DWIDTH / TILE_SIZE + 1; x++) {
unsigned int tile_id = 0;
if(game->map->w > x && game->map->h > y) {
//detect if the map is oob
int indexY = (y + y_offset / TILE_SIZE);
int indexX = (x + x_offset / TILE_SIZE);
if(indexX >= 0 && indexX < game->map->w
&& indexY >= 0 && indexY < game->map->h)
tile_id = game->map->layers[layer][indexX + indexY * game->map->w];
}
if (tile_id != 0) {
tile_id--;
unsigned int tile_x = TILE_SIZE * (tile_id % TILESET_WIDTH);
unsigned int tile_y = TILE_SIZE * (tile_id / TILESET_WIDTH);
//provisoire le temps de trouver une manière propre
dsubimage(x * TILE_SIZE - x_offset%TILE_SIZE - game->player->anim.dx * 3,
y * TILE_SIZE - y_offset%TILE_SIZE - game->player->anim.dy * 3, game->map->tileset,
tile_x, tile_y, TILE_SIZE, TILE_SIZE, DIMAGE_NONE);
}
}
}
}
}
/*draw the player*/
void engine_draw_player(struct Player const *player) {
dframe(player->show_x * 16, player->show_y * 16 - 5, player->anim.img); //draw the player 5 pixel up
@ -105,6 +141,10 @@ int engine_move(struct Game *game, int direction) {
if(map_walkable(game->map, game->player->x + dx, game->player->y + dy)) {
game->player->x += dx;
game->player->y += dy;
game->camera->x += dx*16;
game->camera->y += dy*16;
game->player->idle = !anim_player_walking(&game->player->anim, 1);
engine_check_position(game);
} else {
@ -120,7 +160,7 @@ int engine_move(struct Game *game, int direction) {
/*update the player animation*/
void engine_tick(struct Game *game, int dt) {
game->player->anim.duration -= dt;
vec_lerp(game->camera, game->player, 0.05);
if(game->player->anim.duration <= 0) {
game->player->idle = !game->player->anim.function(&game->player->anim, 0);
}
@ -152,3 +192,8 @@ void engine_check_position(struct Game *game) {
engine_set_background(game, C_WHITE);
}
}
void vec_lerp(struct Camera *from, struct Player const *to, float scale) {
from->x = from->x * (1 - scale) + (to->x*TILE_SIZE + to->x_mid) * scale;
from->y = from->y * (1 - scale) + (to->y*TILE_SIZE + to->y_mid) * scale;
}

View File

@ -6,6 +6,8 @@
#include "player.h"
#include "animation.h"
#include "character.h"
#include "camera.h"
#include "define.h"
#include <gint/timer.h>
#include <gint/clock.h>
@ -26,6 +28,8 @@ int main(void) {
struct Player player = {
.x = 32,
.y = 30,
.x_mid = 7,
.y_mid = 2,
.show_x = 12,
.show_y = 7,
.direction = DIR_DOWN,
@ -34,9 +38,15 @@ int main(void) {
};
player.idle = !anim_player_idle(&player.anim, 1);
struct Camera camera = {
.x = player.x * TILE_SIZE + player.x_mid,
.y = player.y * TILE_SIZE + player.y_mid
};
struct Game game = {
.map = maps[0],
.player = &player,
.camera = &camera,
.background = C_WHITE
};
game.characters = get_map_characters(1);