public static void setEveryWaterElementRectangle(ref Map map, Rectangle[] waterRectTab, Texture2D[] listOfTextures, Background backG) { foreach(Element elem in map.ElementTab) if (elem.Type == Element.ElementType.Water) elem.SourceRectangle = Water_Texture_Manager.getWaterRectangle(elem.UpdatedLocation, waterRectTab, listOfTextures[2], map, listOfTextures[3]); }
private static int setWaterPositionValue(Vector2 actualPosWater, Map map, Texture2D _water, Texture2D _bridge) { int value = 0; if (isWaterUp(actualPosWater, map.PosWaterTable, map.PosBridgeTable, _water, _bridge)) value += 10000000; if (isWaterDown(actualPosWater, map.PosWaterTable, map.PosBridgeTable, _water, _bridge)) value += 1000000; if (isWaterLeft(actualPosWater, map.PosWaterTable, map.PosBridgeTable, _water, _bridge)) value += 100000; if (isWaterRight(actualPosWater, map.PosWaterTable, map.PosBridgeTable, _water, _bridge)) value += 10000; if (isWaterUpLeft(actualPosWater, map.PosWaterTable, map.PosBridgeTable, _water, _bridge)) value += 1000; if (isWaterUpRight(actualPosWater, map.PosWaterTable, map.PosBridgeTable, _water, _bridge)) value += 100; if (isWaterDownLeft(actualPosWater, map.PosWaterTable, map.PosBridgeTable, _water, _bridge)) value += 10; if (isWaterDownRight(actualPosWater, map.PosWaterTable, map.PosBridgeTable, _water, _bridge)) value += 1; return value; }
public static Rectangle getWaterRectangle(Vector2 actualPosWater, Rectangle[] waterRectTab, Texture2D _water, Map map, Texture2D _bridge) { int res = setWaterPositionValue(actualPosWater, map, _water, _bridge); if (res / 10000 == 0) return waterRectTab[0]; else if (res / 10000 == 1) return waterRectTab[41]; else if (res / 10000 == 10) return waterRectTab[42]; else if (res / 10000 == 11) return waterRectTab[45]; else if (res / 10000 == 100) return waterRectTab[43]; else if (res == 01010000) return waterRectTab[2]; else if (res == 01010001) return waterRectTab[1]; else if (res == 01010010) return waterRectTab[2]; else if (res == 01010011) return waterRectTab[1]; else if (res == 01010100) return waterRectTab[2]; else if (res == 01010101) return waterRectTab[2]; else if (res == 01010110) return waterRectTab[2]; else if (res == 01010111) return waterRectTab[1]; else if (res == 01011000) return waterRectTab[2]; else if (res == 01011001) return waterRectTab[1]; else if (res == 01011010) return waterRectTab[2]; else if (res == 01011011) return waterRectTab[1]; else if (res == 01011100) return waterRectTab[2]; else if (res == 01011101) return waterRectTab[1]; else if (res == 01011110) return waterRectTab[2]; else if (res == 01011111) return waterRectTab[1]; else if (res == 01100000) return waterRectTab[8]; else if (res == 01100001) return waterRectTab[7]; else if (res == 01100010) return waterRectTab[7]; else if (res == 01100011) return waterRectTab[7]; else if (res == 01100100) return waterRectTab[8]; else if (res == 01100101) return waterRectTab[7]; else if (res == 01100110) return waterRectTab[8]; else if (res == 01100111) return waterRectTab[7]; else if (res == 01101000) return waterRectTab[8]; else if (res == 01101001) return waterRectTab[8]; else if (res == 01101010) return waterRectTab[7]; else if (res == 01101011) return waterRectTab[7]; else if (res == 01101100) return waterRectTab[8]; else if (res == 01101101) return waterRectTab[7]; else if (res == 01101110) return waterRectTab[8]; else if (res == 01101111) return waterRectTab[7]; else if (res == 01110000) return waterRectTab[6]; else if (res == 01110001) return waterRectTab[4]; else if (res == 01110010) return waterRectTab[5]; else if (res == 01110011) return waterRectTab[3]; else if (res == 01110100) return waterRectTab[6]; else if (res == 01110101) return waterRectTab[4]; else if (res == 01110110) return waterRectTab[5]; else if (res == 01110111) return waterRectTab[3]; else if (res == 01111000) return waterRectTab[6]; else if (res == 01111001) return waterRectTab[4]; else if (res == 01111010) return waterRectTab[5]; else if (res == 01111011) return waterRectTab[3]; else if (res == 01111100) return waterRectTab[6]; else if (res == 01111101) return waterRectTab[4]; else if (res == 01111110) return waterRectTab[5]; else if (res == 01111111) return waterRectTab[3]; else if (res / 10000 == 1000) return waterRectTab[44]; else if (res == 10010000) return waterRectTab[34]; else if (res == 10010001) return waterRectTab[34]; else if (res == 10010010) return waterRectTab[34]; else if (res == 10010011) return waterRectTab[34]; else if (res == 10010100) return waterRectTab[33]; else if (res == 10010101) return waterRectTab[33]; else if (res == 10010110) return waterRectTab[33]; else if (res == 10010111) return waterRectTab[33]; else if (res == 10011000) return waterRectTab[34]; else if (res == 10011001) return waterRectTab[34]; else if (res == 10011010) return waterRectTab[34]; else if (res == 10011011) return waterRectTab[34]; else if (res == 10011100) return waterRectTab[33]; else if (res == 10011101) return waterRectTab[33]; else if (res == 10011110) return waterRectTab[33]; else if (res == 10011111) return waterRectTab[33]; else if (res == 10100000) return waterRectTab[40]; else if (res == 10100001) return waterRectTab[40]; else if (res == 10100010) return waterRectTab[40]; else if (res == 10100011) return waterRectTab[40]; else if (res == 10100100) return waterRectTab[40]; else if (res == 10100101) return waterRectTab[40]; else if (res == 10100110) return waterRectTab[40]; else if (res == 10100111) return waterRectTab[40]; else if (res == 10101000) return waterRectTab[39]; else if (res == 10101001) return waterRectTab[39]; else if (res == 10101010) return waterRectTab[39]; else if (res == 10101011) return waterRectTab[39]; else if (res == 10101100) return waterRectTab[39]; else if (res == 10101101) return waterRectTab[39]; else if (res == 10101110) return waterRectTab[39]; else if (res == 10101111) return waterRectTab[39]; else if (res == 10110000) return waterRectTab[38]; else if (res == 10110001) return waterRectTab[38]; else if (res == 10110010) return waterRectTab[38]; else if (res == 10110011) return waterRectTab[38]; else if (res == 10110100) return waterRectTab[36]; else if (res == 10110101) return waterRectTab[36]; else if (res == 10110110) return waterRectTab[36]; else if (res == 10110111) return waterRectTab[36]; else if (res == 10111000) return waterRectTab[37]; else if (res == 10111001) return waterRectTab[37]; else if (res == 10111010) return waterRectTab[37]; else if (res == 10111011) return waterRectTab[37]; else if (res == 10111100) return waterRectTab[35]; else if (res == 10111101) return waterRectTab[35]; else if (res == 10111110) return waterRectTab[35]; else if (res == 10111111) return waterRectTab[35]; else if (res / 10000 == 1100) return waterRectTab[46]; else if (res == 11010000) return waterRectTab[12]; else if (res == 11010001) return waterRectTab[10]; else if (res == 11010010) return waterRectTab[12]; else if (res == 11010011) return waterRectTab[10]; else if (res == 11010100) return waterRectTab[11]; else if (res == 11010101) return waterRectTab[9]; else if (res == 11010110) return waterRectTab[11]; else if (res == 11010111) return waterRectTab[9]; else if (res == 11011000) return waterRectTab[12]; else if (res == 11011001) return waterRectTab[10]; else if (res == 11011010) return waterRectTab[12]; else if (res == 11011011) return waterRectTab[9]; else if (res == 11011100) return waterRectTab[11]; else if (res == 11011101) return waterRectTab[9]; else if (res == 11011110) return waterRectTab[11]; else if (res == 11011111) return waterRectTab[9]; else if (res == 11100000) return waterRectTab[32]; else if (res == 11100001) return waterRectTab[32]; else if (res == 11100010) return waterRectTab[30]; else if (res == 11100011) return waterRectTab[30]; else if (res == 11100100) return waterRectTab[32]; else if (res == 11100101) return waterRectTab[32]; else if (res == 11100110) return waterRectTab[30]; else if (res == 11100111) return waterRectTab[30]; else if (res == 11101000) return waterRectTab[31]; else if (res == 11101001) return waterRectTab[31]; else if (res == 11101010) return waterRectTab[29]; else if (res == 11101011) return waterRectTab[29]; else if (res == 11101100) return waterRectTab[31]; else if (res == 11101101) return waterRectTab[31]; else if (res == 11101110) return waterRectTab[29]; else if (res == 11101111) return waterRectTab[29]; else if (res == 11110000) return waterRectTab[28]; else if (res == 11110001) return waterRectTab[24]; else if (res == 11110010) return waterRectTab[25]; else if (res == 11110011) return waterRectTab[18]; else if (res == 11110100) return waterRectTab[26]; else if (res == 11110101) return waterRectTab[19]; else if (res == 11110110) return waterRectTab[20]; else if (res == 11110111) return waterRectTab[14]; else if (res == 11111000) return waterRectTab[27]; else if (res == 11111001) return waterRectTab[21]; else if (res == 11111010) return waterRectTab[22]; else if (res == 11111011) return waterRectTab[15]; else if (res == 11111100) return waterRectTab[23]; else if (res == 11111101) return waterRectTab[16]; else if (res == 11111110) return waterRectTab[17]; else //if (res == 11111111) return waterRectTab[13]; }