![]() |
|
||||||||||
|
|
|
|||||
|
Регистрация: Feb 2013
Сообщений: 51
|
вот обьясните мне почему в этом коде (комментарий читайте ниже)
var nextBulletTime = 0; var nextBullet = 0; var bullets = []; // init score var score = 0; function shootBullet() { // init score // see whether there has been enough time to reload if (getTimer() > nextBulletTime) { trace(nextBulletTime); // почему тут выводит ноль? когда должно выводить сначала 0 потом //(getTimer()+1000;) а оно постоянно дает ноль из-за чего паузы совсем нет ну я не пойму var depth = this.getNextHighestDepth(); var newBullet = attachMovie("bullet","bullet_"+nextBullet,depth); newBullet._x =_root.cat._x+13; newBullet._y = _root.cat._y+25; bullets.push(newBullet); //get set for next bullet nextBullet++; nextBulletTime = getTimer()+1000; var mySound2 = new Sound(); mySound2.attachSound("booll"); mySound2.start(); } } |
|
|||||
|
блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,113
Записей в блоге: 1
|
Ноль дает в самом начале. Так как вы инициализировали переменную с таким значением.
Ctrl + Shift + F автоформатирование кода. Кстати я бы чуток подправил бы код. Вам nextBullet не нужно скорее всего (достаточно использовать "bullet_"+depth для имени новой пули). Если нужно — тогда ассоциативное название не помешало бы, например, bulletCounter (счетчик пуль). И вынес бы в отдельную переменную минимальную задержку перед следующим выстрелом, например так: Чтобы можно было потом подправить в одном месте это значение, а не искать по коду, где эти задержки используются. Добавлено через 4 минуты Да, и изначальное значение для nextBulletTime поставил бы -nextShootDelay , чтобы можно было сразу при старте игры стрелять, а не ждать, пока пауза пройдет.
__________________
hauts.ru |
|
|||||
|
Регистрация: Feb 2013
Сообщений: 51
|
всеравно суть та я понял задержки но сделать ее не получается значение nextBulletTime остается одинаковым и не меняется,может цикл другой поставить просто я считал что эта строка
будет постоянно менять значение nextBulletTime при вызове ф-ции нажатием кнопки а значение всегда остается таким каким я его задал к примеру если будет 1000 изначально будет задержка а потом как время таймера станет больше 1000 все задержки нет уже |
|
|||||
|
блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,113
Записей в блоге: 1
|
dimaMJ, не забывайте про запятые и точки, на форуме принято грамотно писать
![]() var nextBulletTime = 0; function shootBullet() { if (getTimer() > nextBulletTime) { trace(nextBulletTime); nextBulletTime = getTimer() + 1000; } } var keyListener = {}; keyListener.onKeyDown = function() { if (Key.getCode() == Key.SPACE) { shootBullet(); } }; Key.addListener(keyListener);
__________________
hauts.ru |
|
|||||
|
Регистрация: Feb 2013
Сообщений: 51
|
Цитата:
- Этот оператор в определении класса недопустимо. |
|
|||||
|
Регистрация: Feb 2013
Сообщений: 51
|
добавил событие кнопки в кадр и получается такое что при нажатии пробела один раз сначала выводит много нулей, а когда второй раз то вот такое
0 0 0 7167 7185 7185 7185 7185 7185 7185 7185 7185 7185 7185 7185 7185 7185 7186 7186 7186 7186 7186 7186 7186 7186 7186 7186 7186 7186 7186 7186 7186 7187 7187 7187 7187 7187 7187 0 0 0 0 дело в том что у меня при нажатии еще вызывается звук и он как то ужасно искажается от этого |
|
|||||
|
блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,113
Записей в блоге: 1
|
Если вы тестируете во флэше (в среде разработки), то зайдите в меню плеера (при тестировании) "Control" и щелкните "Disable keyboard shortcuts". Что-то мне подсказывает, что у вас там несколько кадров, а по нажатию на пробел (при отладке), у вас включается воспроизведение.
Хотя я не уверен.
__________________
hauts.ru Последний раз редактировалось Hauts; 10.02.2013 в 18:12. |
|
|||||
|
Регистрация: Feb 2013
Сообщений: 51
|
сделал ничего не изменилось странно как то при зажатии пробела паузы нет
|
|
|||||
|
блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,113
Записей в блоге: 1
|
dimaMJ, не забывайте про запятые, точки и большие буквы в начале предложений. Серьезно, правила для всех, не дожидайтесь замечаний от модераторов.
Выкладывайте исходник тестовый, посмотрю, как время будет.
__________________
hauts.ru |
![]() |
![]() |
Часовой пояс GMT +4, время: 08:59. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|