![]() |
|
||||||||||
|
|||||
|
Регистрация: Jul 2015
Адрес: СПБ
Сообщений: 14
|
1067: Неявное приведение значения типа Number к несоответствующему типу String.
|
|
|||||
|
А вообще, меня немного пугает ваш код. Как вы проверяете столкновение, почему проверка столкновения выполняется только один раз вначале игры?
__________________
There is no thing in this world that is not simple. Последний раз редактировалось ZackMercury; 03.07.2015 в 18:51. |
|
|||||
|
Регистрация: Jul 2015
Адрес: СПБ
Сообщений: 14
|
Исправил всё, стало считать но сколько-бы ни было еды на сцене, очки прибавляються только при столкновении с определённым кружком
Кидаю код(весь): stop(); Mouse.hide(); import flash.display.MovieClip; import flash.text.TextField; import flash.events.Event; var score:Number = 0; // очки var items:Array = []; for(var i:int = 0; i <250; i ++) { var item:Shape = new Shape(); with(item.graphics) { beginFill(Math.random()*0xFFFFFF); drawCircle(4,4,4); endFill(); } addChild(item); item.x = Math.random() * 550; item.y = Math.random() * 400; items[i] = item; } addEventListener(Event.ENTER_FRAME, hit); function hit(e:Event) { if (pl.hitTestObject(item)) { score ++; } } var speed:Number = 0.03; //скорость 0 - не двигается, 1-мгновенно перемещается addEventListener(Event.ENTER_FRAME, apelsin); function apelsin(e:Event) { //можно и так, для плавного результата pl.x += (mouseX - pl.x) * speed; pl.y += (mouseY - pl.y) * speed; } addEventListener(Event.ENTER_FRAME, update); function update(e:Event = null):void { t.text = score.toString(); } var t:TextField = new TextField(); // экземпляр класса addChild(t);// добавляем на сцену t.x = 530; t.y = 10; |
|
|||||
|
__________________
There is no thing in this world that is not simple. |
|
|||||
|
Регистрация: Jul 2015
Адрес: СПБ
Сообщений: 14
|
Сделал вот-так, теперь еда исчезает, но стало по-адски лагать
addEventListener(Event.ENTER_FRAME, update); function update(e:Event = null):void { for(var i:int = 0; i < items.length; i ++) { if(pl.hitTestObject(items[i])) { removeChild(items[i]); t.text = (int(t.text) + 1).toString(); } } } ArgumentError: Error #2025: Предоставленный DisplayObject должен быть дочерним элементом вызывающего объекта. at flash.display::DisplayObjectContainer/removeChild() at AgarIO3_fla::MainTimeline/update() Последний раз редактировалось MarkEvans; 03.07.2015 в 19:40. Причина: Смайл |
|
|||||
|
Регистрация: Jul 2015
Адрес: СПБ
Сообщений: 14
|
Ок, только я незнаю как удалять из массива...
|
|
|||||
|
Тогда думаю есть над чем поэкспериментировать и узнать что-то новенькое ) http://help.adobe.com/ru_RU/FlashPla...t/3/Array.html
|
|
|||||
|
Регистрация: Jul 2015
Адрес: СПБ
Сообщений: 14
|
Спасибо
Нашёл там функцию splice(),а вот как пользоваться незнаю Даже святой гугл не помог... |
![]() |
![]() |
Часовой пояс GMT +4, время: 08:44. |
|
|
« Предыдущая тема | Следующая тема » |
|
|