Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public function resize(width:int, height:int):void
- {
- var wallstring:String = walls.saveToString();
- walls = new Tilemap(GFX.WALLS, width << 4, height <<4, 16, 16);
- walls.loadFromString(limit(wallstring, width, height));
- }
- protected function limit(string:String, cols:int, rows:int):String
- {
- var limited:String = '';
- var array:Array = csvToArray(string);
- for(var y:int = 0; y < rows; y++)
- {
- for(var x:int = 0; x < cols; x++)
- {
- var id:int = array[y] ? array[y][x] : 0;
- limited += id ? id : '0';
- if(x < cols-1) limited += ',';
- }
- if(y < rows-1) limited += '\n';
- }
- return limited;
- }
- protected function csvToArray(string:String):Array
- {
- var arr:Array = [];
- var row:Array = string.split('\n');
- var rows:int = row.length;
- var col:Array;
- var cols:int;
- for(var y:int = 0; y < rows; y++)
- {
- if(row[y] == '') continue;
- col = row[y].split(',');
- cols = col.length;
- arr[y] = [];
- for(var x:int = 0; x < cols; x ++)
- {
- if(col[x] == '') continue;
- arr[y][x] = uint(col[x]);
- }
- }
- return arr;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement