| Godwarlock |
11.02.2014 17:48 |
Код AS3:
import flash.events.MouseEvent;
import flash.text.TextField;
import flash.events.Event;
import flash.display.DisplayObject;
import flash.display.Stage;
import flash.display.Sprite;
public class Main extends MovieClip
{
public var map:Array = [
[1,1,1,1,1,1,1,1,1,1,1,1],
[1,0,0,2,1,1,1,1,1,2,0,1],
[1,0,0,0,1,1,1,1,1,0,0,1],
[1,0,2,0,0,1,1,1,1,0,1,1],
[1,0,1,0,0,0,1,2,0,0,0,0],
[1,0,0,1,0,0,1,0,0,0,0,0],
[1,1,1,1,0,0,1,0,0,1,1,1],
[1,0,0,0,0,0,0,0,0,0,0,1],
[1,1,1,1,1,1,1,1,1,1,1,1],
];
public var size:uint = 50;
private const IGROK_ID:uint = 0;//создаём константу с номером... или лучше не 0, а 0x000000
private var _array:Array;
public function Main()
{
btn.addEventListener(MouseEvent.CLICK, onClick);
}
public function clicki()
{
buts.addEventListener(MouseEvent.CLICK, onClicks);
}
public function onClicks(e:MouseEvent):void
{
removeChild(_array[IGROK_ID] as DisplayObject);
_array.splice(IGROK_ID, 1);
}
public function onClick(e:MouseEvent):void
{
if (login.text =="1" && pass.text=="1")
{
this.gotoAndStop(2);
createvillage();
createigrok();
}
else
{
res.text = "Вы ввели неправильные данные";
}
}
public function createigrok()
{
_array = [];//создаём массив
var igrok:player = new player;
_array.push(igrok); //Добавляем новый элемент в массив
igrok.x = 200;
igrok.y = 300;
igrok.name = "ssss";
addChild(_array[IGROK_ID]);
trace(igrok);
trace(IGROK_ID);
}
public function createvillage()
{
for (var i:uint=0; i<map.length; i++)
{
for (var j:uint=0; j<map[i].length; j++)
{
if (map[i][j] > 0)
{
var obj:village = new village;
obj.x = j*size;
obj.y = i*size;
obj.gotoAndStop(map[i][j])
addChild(obj);
}
}
}
}
}
}
Переписал немного код, разделив всё по функциям
Трейс IGROK_ID выдаёт 0. Не пойму никак, что сделано не так. А предполагается только 1 игрок, 1 объект которым надо управлять и то с ним проблема какая-то..жуть...Трейсил не в onClicks, ибо там он ничего не показывает по нажатию
|