![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
|
|||||
|
Регистрация: Jan 2009
Сообщений: 41
|
Ну лана небуду пока тревожить)))
Добавлено через 22 часа 27 минут Вот ещё вопросик. Иду по коду предложенной игры и сотавляю свой. package main{ import flash.display.MovieClip; import flash.display.DisplayObject; import flash.events.Event; import main.*; dynamic public class GameAs3Class_Robots_World extends MovieClip {; public var all_moving:Array; public function GameAs3Class_Robots_World() { all_moving = new Array(); addEventListener(Event.ENTER_FRAME, Update); } public function DropSeveralAsteroids():void { var cnt, i, Type1, Type2, Type3 :Number; var new_BFR:GameAs3Class_Robots_Soldat; cnt=10; for (i=1; i<=cnt; i++) { Type1=Math.floor(Math.random()*2)+1; Type2=Math.floor(Math.random()*3)+1; Type3=Math.floor(Math.random()*2)+1; new_BFR = new GameAs3Class_Robots_Soldat(); addChild(new_BFR); all_moving.push(new_BFR); new_BFR.drop(1) } } public function Update(e : Event):void { DropSeveralAsteroids() this.x=super.stage.mouseX-300; this.y=super.stage.mouseY-300; for each (var obj:GameAs3Class_Robots_Soldat in all_moving) { obj.move() } } } } package main{ import flash.display.MovieClip; import flash.display.DisplayObject; import flash.events.Event; import main.*; dynamic public class GameAs3Class_Robots_Soldat extends MovieClip{; public function GameAs3Class_Robots_Soldat() { } public function move():void { x += 10; y += 10; } public function drop(Type1:Number):void { if(Type1==1){ x=20; y=300; } if(Type1==2){ x=300; y=20; } } } } Моеё целью должно быть чтобы в классе "GameAs3Class_Robots_World" вызывались 2 функции move() и drop(Type1:Number). Но при их вызове вылезает данная ошибка: TypeError: Error #1006: drop is not a function. at main::GameAs3Class_Robots_World/DropSeveralAsteroids() at main::GameAs3Class_Robots_World/Update() Что помойму означает что нет данной функции в DropSeveralAsteroids() нет и в Update(). Хотя в примере именно так все реализованно. Для функции мува таже самая ошибка. 2) Второй вопрос. Когда нам надо писать что "GameAs3Class_Robots_World extends MovieClip", а когда" GameAs3Class_Robots_World extends GameAs3Class_Robots_World_02" Как я понял это и есть наследование (вопрос "3)" Это наследование или что???) либо от мувиклипов на сцене либо от кода, потипу продолжения чтоли? или если я непонял что это такое то можете (кто нибудь) объяснить что да как? 4) Как я еще понял мы записываем all_moving = new Array(); поочередно не просто какую то переменную, а целый "блок данных" включающий себя направление на выполнение каких либо функций а потом просто перебирай все по очереди в результате чего "блок данных" у нас начинает выполняться для каждого объекта (вопрос "5)" это бред как я понял либо это реально так?). В результате чего нам ненада индексировать никакие объекты по 100 раз. Вот возникает вопрос (все ещё четвертый) а чето я непонял как колизия (столкновение) проверяется исходя из двух объектов??? Как надо вызывать их??? зы не в тему "Добавлено через 22 часа 27 минут" порадовало) Последний раз редактировалось ZlobaZl; 19.01.2009 в 00:42. |
![]() |
Часовой пояс GMT +4, время: 23:35. |
|
|
« Предыдущая тема | Следующая тема » |
|
|