Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.IO;
- using System.Drawing;
- namespace SalemMapper
- {
- class MainClass
- {
- static void Main(String[] args)
- {
- DirectoryInfo di = new DirectoryInfo(Environment.CurrentDirectory);
- FileInfo[] fi = di.GetFiles();
- int minx = 100, maxx = -100, miny = 100, maxy = -100;
- foreach (FileInfo fiTemp in fi)
- {
- if(fiTemp.Name.StartsWith("tile")){
- String s1 = fiTemp.Name.Substring(fiTemp.Name.IndexOf('_') + 1, fiTemp.Name.LastIndexOf('_') - fiTemp.Name.IndexOf('_') - 1);
- int x = Convert.ToInt32(s1);
- int i1 = fiTemp.Name.LastIndexOf('_') + 1;
- int i2 = fiTemp.Name.IndexOf('.') - fiTemp.Name.LastIndexOf('_') - 1;
- String s2 = fiTemp.Name.Substring(i1, i2);
- int y = Convert.ToInt32(s2);
- if (minx > x) minx = x;
- if (maxx < x) maxx = x;
- if (miny > y) miny = y;
- if (maxy < y) maxy = y;
- }
- }
- FileInfo[,] fis = new FileInfo[maxx - minx + 1, maxy - miny + 1];
- foreach (FileInfo fiTemp in fi)
- {
- if(fiTemp.Name.StartsWith("tile")){
- String s1 = fiTemp.Name.Substring(fiTemp.Name.IndexOf('_') + 1, fiTemp.Name.LastIndexOf('_') - fiTemp.Name.IndexOf('_') - 1);
- int x = Convert.ToInt32(s1);
- int i1 = fiTemp.Name.LastIndexOf('_') + 1;
- int i2 = fiTemp.Name.IndexOf('.') - fiTemp.Name.LastIndexOf('_') - 1;
- String s2 = fiTemp.Name.Substring(i1, i2);
- int y = Convert.ToInt32(s2);
- fis[x - minx, y - miny] = fiTemp;
- }
- }
- Bitmap b = new Bitmap((maxx - minx + 1)*100, (maxy - miny +1)*100);
- for (int i = 0; i < fis.GetLength(0); i++)
- {
- for (int j = 0; j < fis.GetLength(1); j++)
- {
- try
- {
- Bitmap bt = new Bitmap(fis[i, j].Name);
- Graphics g = Graphics.FromImage(b);
- g.DrawImage(bt, new Point(i * 100, j * 100));
- }catch(Exception){
- }
- }
- }
- b.Save("mapped.png");
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment