Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Слишком быстро обрабатывается ASnative(800,2)(4) (http://www.flasher.ru/forum/showthread.php?t=171749)

teror132 23.11.2011 10:24

Слишком быстро обрабатывается ASnative(800,2)(4)
 
Я делаю строителя карт для одной игрухи, и столкнулся с такой проблемой: постоянно нажимать пробел(после чего появляется меню, где можно добавить новый объект, короче говоря эта идея стырена из blender'a) проблематично)) И я решил сделать так: нан нажатие колесика мышки и передвижении мышки новые объекты выравниваются в клету 25х25 и добавляются в то место, где побывала мышь.
Код AS1/AS2:

q=new Object()
q.onMouseMove=function(){//если мыша двигается
        if (ASnative(800,2)(4)) {//и одновременно нажато колесо
                _root.stg.attachMovie('wall','w'+_root.wn,_root.stg.getNextHighestDepth(),{_x:0,_y:0})
                _root.stg['w'+_root.wn].b._x=25*Math.floor(_root.stg._xmouse/25)//выравниваем
                _root.stg['w'+_root.wn].b._y=25*Math.floor(_root.stg._ymouse/25)//выравниваем
                _root.wn++
        }
}
Mouse.addListener(q)

Это все прекрасно работает... Я бы даже сказал слишком прекрасно... Настолько прекрасно, что в одну клетку запихивается по 10 стенок)) Подскажите пожалуйста, как это можно исправить??
P.S: Способ прослушивания нажатий на среднюю кнопку мыши взял отсюда: http://www.flasher.ru/forum/showthread.php?t=158701&highlight=%CF%F0%E0%E2%E0%FF+%EA%ED%EE%EF%EA%E0+%EC%FB%F8%E8

dark256 23.11.2011 13:11

Добавьте проверку на занятость ячейки, и после первого же запихивания, помечайте ее как занятую.

teror132 25.11.2011 16:09

Спасибо))
Работает)) Я немного ступил

Добавлено через 1 минуту
Тема закрыта)


Часовой пояс GMT +4, время: 07:03.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.