не нажатый в данный момент мувиклип появляется как истинный

     private var previousClick = null;

        public static var floor1:Array = new Array();
                floor1[0] = [2,1,1,1,1,1,2];
                floor1[1] = [1,1,1,1,1,1,1];
                floor1[2] = [1,1,1,2,1,1,1];
                floor1[3] = [1,1,1,1,1,1,1];
                floor1[4] = [1,1,1,2,1,1,1];
                floor1[5] = [1,1,1,1,1,1,1];
                floor1[6] = [2,1,1,1,1,1,2];

        public function Main()
                {
                    var tilew:int = 60;
                    var tileh:int = 60;

                    for (var i:int=0; i<floor1.length; i++)
                    {
                        for (var u:int=0; u<floor1[i].length; u++)
                        {
                            var cell:MovieClip = new Tile();
                            cell.gotoAndStop(floor1[i][u]);
                            cell.x = ((u-i)*tileh)+365;
                            cell.y = ((u+i)*tileh/2)+70;
                            addChild(cell);

                            cell.addEventListener(MouseEvent.CLICK, mouseclick);
                        }
                    }

    function mouseclick(event:MouseEvent)
                {
                        (event.currentTarget as Tile).outline.gotoAndStop("active");
                        event.currentTarget.cellSelected = true;

                        event.currentTarget.removeEventListener(MouseEvent.CLICK,mouseclick);


                        if (previousClick !== null){
                             (previousClick as Tile).outline.gotoAndStop(1);
                             event.currentTarget.cellSelected = false;

previousClick.addEventListener(MouseEvent.CLICK,mouseclick);
                             trace(previousClick);
                        }
                        previousClick = event.currentTarget;
                        previousClick.cellSelected = true;
}

Итак, у меня есть плитки, называемые ячейками, выстроенные в линию друг к другу, чтобы получился пол. Когда вы щелкаете ячейку, контур этой плитки светится, показывая, что она в данный момент выделена. Я также создал логическое значение, которое проверяет, выбрана ли текущая плитка. Проблема в том, что логическое значение возвращает true плитке, которую я щелкнул, но не выбранной в данный момент, особенно первой плитке, которую я щелкнул при запуске игры.

Итак, мой вопрос: как я могу получить плитку, которую я щелкнул, которая в данный момент не выбрана, чтобы не равняться истине?


person Bindlestick    schedule 12.06.2013    source источник


Ответы (1)


Я думаю, что это вызвано перекрытием.

вы можете попробовать cell.y = ((u+i)*tileh)+70;

person Pan    schedule 12.06.2013
comment
Спасибо за вашу помощь. Кажется, что плитки сдвинуты с места. Я также попытался разделить его на 1,8, чтобы между ними было немного места, но это слишком сильно сдвигает его. - person Bindlestick; 13.06.2013