Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 30.06.2011, 15:41
yo3o вне форума Посмотреть профиль Отправить личное сообщение для yo3o Найти все сообщения от yo3o
  № 1  
Ответить с цитированием
yo3o

Регистрация: Jun 2010
Сообщений: 153
По умолчанию Реализация стрельбы без остановки!

Реализация стрельбы без остановки! (помогите!)

не-могу придумать как реализовать стрельбу без остановки при удержании левой кнопки мышки!
а именно как отлавливать события что мышь зажата?

Старый 30.06.2011, 17:18
petyar вне форума Посмотреть профиль Отправить личное сообщение для petyar Найти все сообщения от petyar
  № 2  
Ответить с цитированием
petyar

Регистрация: Sep 2005
Сообщений: 106
Код AS1/AS2:
onEnterFrame = function() {
	if (Key.isDown(1)) {
		// ПЫЩ ПЫЩ ПЫЩ
	}
}

Старый 30.06.2011, 17:34
yo3o вне форума Посмотреть профиль Отправить личное сообщение для yo3o Найти все сообщения от yo3o
  № 3  
Ответить с цитированием
yo3o

Регистрация: Jun 2010
Сообщений: 153
можете помочь ?

у меня тут проблема с кодом а именно в коде ниже есть __reg4.onEnterFrame и оно создает новую пулю каждые там onEnterFrame но меня это не устраивает как можно заменить на setInterval ??? можете помочь?

Код AS1/AS2:
bulletSpeed = 150;
lev = 9;
placeBullet = function (tgt)
{
   ++lev;
   var __reg5 = {x: tgt._x, y: tgt._y};
   tgt._parent.localToGlobal(__reg5);
   globalToLocal(__reg5);
   var __reg4 = bullet.duplicateMovieClip("b" + lev, lev);
   __reg4._x = __reg5.x;
   __reg4._y = __reg5.y;
   __reg4._rotation = hero._rotation + hero.body._rotation;
   __reg4.a = __reg4._rotation / 180 * 3.14159265359;
 
   __reg4.onEnterFrame = function ()
   {
    this._x = this._x + bulletSpeed * Math.cos(this.a);
       this._y = this._y + bulletSpeed * Math.sin(this.a);
 
       if (this._x < ground._x - this._width || this._x > ground._x + ground._width + this._width || this._y < ground._y - this._height || this._y > ground._y + ground._height + this._height)
       {
           this.removeMovieClip();
       }
       var __reg3 = zombies.length;
       for (;;)
       {
           if (!(__reg3--))
           {
               return;
           }
           var __reg2 = zombies[__reg3];
           if (__reg2.hit.hitTest(this))
           {
               this.removeMovieClip();
               __reg2.gotoAndStop(2);
 
   var add_exp = new LoadVars ();
   add_exp.exp = 0;
   add_exp.sendAndLoad ("http://test1.ru/script/We_accept_new_data_for_server.php?name="+_root.vname+"&password="+_root.vpass+"&newexp=5", add_exp, "POST");
           }
       }
   };
};

Старый 30.06.2011, 17:37
dark256 вне форума Посмотреть профиль Отправить личное сообщение для dark256 Посетить домашнюю страницу dark256 Найти все сообщения от dark256
  № 4  
Ответить с цитированием
dark256
 
Аватар для dark256

блогер
Регистрация: Apr 2008
Адрес: SPb
Сообщений: 3,718
Записей в блоге: 5
Отправить сообщение для dark256 с помощью ICQ Отправить сообщение для dark256 с помощью Skype™
onMousedDown - пуляяяяем
onMouseUp - перезаряжаем и остужаем ствол...


код смахивает на декомпил....

Добавлено через 4 минуты
Код AS1/AS2:
   __reg4.onEnterFrame = function ()
   {
       for (;;)
       {
           if (__reg2.hit.hitTest(this))
           {
			   add_exp.sendAndLoad ("http://test1.ru/script/We_accept_new_data_for_server.php?name="+_root.vname+"&password="+_root.vpass+"&newexp=5", add_exp, "POST");
           }
       }
   }
sendAndLoad - ни сервак, ни канал не потянет столько запросов.
Допустим у вас 100 попаданий... ха...
__________________
FLASHER.MAP SOUNDSTAGE / CS3 / AS2

Старый 30.06.2011, 17:44
yo3o вне форума Посмотреть профиль Отправить личное сообщение для yo3o Найти все сообщения от yo3o
  № 5  
Ответить с цитированием
yo3o

Регистрация: Jun 2010
Сообщений: 153
это я знаю)))
можете помочь?

Старый 30.06.2011, 17:52
dark256 вне форума Посмотреть профиль Отправить личное сообщение для dark256 Посетить домашнюю страницу dark256 Найти все сообщения от dark256
  № 6  
Ответить с цитированием
dark256
 
Аватар для dark256

блогер
Регистрация: Apr 2008
Адрес: SPb
Сообщений: 3,718
Записей в блоге: 5
Отправить сообщение для dark256 с помощью ICQ Отправить сообщение для dark256 с помощью Skype™
С чем? С архитектурой?
__________________
FLASHER.MAP SOUNDSTAGE / CS3 / AS2

Старый 30.06.2011, 17:57
yo3o вне форума Посмотреть профиль Отправить личное сообщение для yo3o Найти все сообщения от yo3o
  № 7  
Ответить с цитированием
yo3o

Регистрация: Jun 2010
Сообщений: 153
помогите с кодом который я выложил выше! просто скорость создания новых пуль зависит от FPS
а мне нужно чтоб например от setInterval
поможете?

Старый 30.06.2011, 20:18
dark256 вне форума Посмотреть профиль Отправить личное сообщение для dark256 Посетить домашнюю страницу dark256 Найти все сообщения от dark256
  № 8  
Ответить с цитированием
dark256
 
Аватар для dark256

блогер
Регистрация: Apr 2008
Адрес: SPb
Сообщений: 3,718
Записей в блоге: 5
Отправить сообщение для dark256 с помощью ICQ Отправить сообщение для dark256 с помощью Skype™
Код AS1/AS2:
var FIRING = setInterval(this, "fireFunction", 1);
 
function fireFunction()
{
    //то, что у вас в ОЕФ
}
Только один фиг ерунда будет, вы не постигли еще суть задачи
__________________
FLASHER.MAP SOUNDSTAGE / CS3 / AS2

Старый 01.07.2011, 06:18
yo3o вне форума Посмотреть профиль Отправить личное сообщение для yo3o Найти все сообщения от yo3o
  № 9  
Ответить с цитированием
yo3o

Регистрация: Jun 2010
Сообщений: 153
не получилось -( пули создаются но не летят и скорость создания осталась прежней!
dark256 помогите мне постигнуть суд задачи!

Добавлено через 1 час 31 минуту
получилось так (код ниже) но есть проблема пули летят не от героя а от 0 x и 0 y
Код AS1/AS2:
function newmydataFunction333 () {
function newmydataFunctionw () {
//hero.body.play();
placeBullet();
};
 
onMouseDown = function (){NumberFunctionw = setInterval (newmydataFunctionw, 1);};
onMouseUp = function (){clearInterval (NumberFunctionw);};
};
Number = setInterval (newmydataFunction333, 1);

Старый 01.07.2011, 11:13
dark256 вне форума Посмотреть профиль Отправить личное сообщение для dark256 Посетить домашнюю страницу dark256 Найти все сообщения от dark256
  № 10  
Ответить с цитированием
dark256
 
Аватар для dark256

блогер
Регистрация: Apr 2008
Адрес: SPb
Сообщений: 3,718
Записей в блоге: 5
Отправить сообщение для dark256 с помощью ICQ Отправить сообщение для dark256 с помощью Skype™
Вот скажите - вы ХЭЛП почитали по интервалу? Или нет?
Клавиша F1. или нажать даже лень?
Скопируйте оттуда код для интервала и экспериментируйте.

Number = setInterval (newmydataFunction333, 1); - вот это вообще бред.
Number - служебное слово, видно даже по подсветке синтаксиса.
Это все равно что написать:
for ( var i=0; i<10; i++) = "Привет, мир!"

Про onMouse - также читайте хэлп. У вас нет листенера.
__________________
FLASHER.MAP SOUNDSTAGE / CS3 / AS2


Последний раз редактировалось dark256; 01.07.2011 в 11:15.
Создать новую тему Ответ Часовой пояс GMT +4, время: 05:09.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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