Вопрос по коду(игры)

Устаревшие и ненужные темы форума

Вопрос по коду(игры)

Сообщение KIka_kok » 29 авг 2010, 12:08

Помогите есть код,он должен делать чтоб обьект Rocket при соприкосновении с обьектом Coin обьект coin переходил в рандомное положение а к score прибавлялось 10 очков,но ничего неработает к сожалению при соприкосновении с монеткой она непередвигается некуда( что делать?непоможите
  1. score=0;
  2. var score:int=0;
  3. var screenWidth:int=550;     //шырина сцены;
  4. var screenHeight:int=400;
  5. var leftArrow:Boolean = false;
  6. var rightArrow:Boolean = false;
  7. var upArrow:Boolean = false;
  8.  
  9.  
  10. //Угловая скорость rotationSpeed определяет скорость, с какой поворачивается ракета
  11. var rotationSpeed:Number = 10;
  12.  
  13. //accelaration определяет скорость, с которой движется ракета
  14. var acceleration:Number = 0.5;
  15.  
  16. //Ship x and y speed
  17. var xSpeed:Number = 0;
  18. var ySpeed:Number = 0;
  19. if (rocket.hitTestObject(coin)) {          //кагда машынка сталкивается с монеткой,
  20.                 score+=10;                              //прибавляется 10 очков;
  21.                                 //очки выводим в текстовое поле;
  22.                 coin.x =(screenWidth*Math.random());    //помещаем монетку в случайную
  23.                 coin.y =(screenHeight*Math.random());
  24. }
  25.  
  26. //Добавим ENTER_FRAME который двигает the ship
  27. addEventListener (Event.ENTER_FRAME,moveRocket);
  28.  
  29. //Слушаем нажатия клавиши
  30. stage.addEventListener (KeyboardEvent.KEY_DOWN,keyDownHandler);
  31. stage.addEventListener (KeyboardEvent.KEY_UP,keyUpHandler);
  32.  
  33.  
  34. function moveRocket (e:Event):void {
  35.  
  36. //Вначале мы повернем ракету
  37. if(rightArrow) {
  38.  rocket.rotation += rotationSpeed;
  39. }
  40. if(leftArrow) {
  41.  rocket.rotation -= rotationSpeed;
  42. }
  43.  
  44. //Если пользователь нажимает клавишу со стрелкой вверх, выполняется следующее
  45. if(upArrow) {
  46.  
  47.  //Увеличиваем скорость  по x и y
  48.  xSpeed += Math.cos(Math.PI*rocket.rotation/180)*acceleration;
  49.  ySpeed += Math.sin(Math.PI*rocket.rotation/180)*acceleration;
  50.  
  51.  //Созлаем огонь
  52.  var fire:MovieClip = new MovieClip();
  53.  
  54.  //Рисуем огонь
  55.  drawFire(fire);
  56.  
  57.  //Создаем новый огонь в конце ракеты
  58.  fire.x = rocket.x - Math.cos(Math.PI*rocket.rotation/180)
  59.    * (rocket.width / 2);
  60.  fire.y = rocket.y - Math.sin(Math.PI*rocket.rotation/180)
  61.    * (rocket.height / 2);
  62.  
  63.  //Добавляем огонь на сцену
  64.  addChildAt(fire,0);
  65.  
  66.  fire.addEventListener(Event.ENTER_FRAME, animateFire);
  67. }
  68.  
  69. //Присвоим новые координаты по x и y для ракеты
  70. rocket.x +=  xSpeed;
  71. rocket.y +=  ySpeed;
  72.  
  73. //Заставим ракету появляться на другой стороне, есди она выходит за границы
  74. if (rocket.x > stage.stageWidth) {
  75.  rocket.x = 0;
  76. }
  77. else if (rocket.x < 0) {
  78.  rocket.x = stage.stageWidth;
  79. }
  80. if (rocket.y > stage.stageHeight) {
  81.  rocket.y = 0;
  82. }
  83. if (rocket.y < 0) {
  84.  rocket.y = stage.stageHeight;
  85. }
  86.  
  87. }
  88.  
  89. //Это вызывается, когда пользователь нажимает клавишу
  90. function keyDownHandler (e:KeyboardEvent):void {
  91.  
  92. //Кликнули клавишу с левой стрелкой
  93. if (e.keyCode == 37) {
  94.  leftArrow = true;
  95. }
  96.  
  97. //Кликнули клавишу с правой стрелкой
  98. else if (e.keyCode == 39) {
  99.  rightArrow = true;
  100. }
  101.  
  102. //Кликнули клавишу со стрелкой вверх
  103. else if (e.keyCode == 38) {
  104.  upArrow = true;
  105. }
  106. }
  107.  
  108. //Это вызывается, когда пользователь нажимает клавишу
  109. function keyUpHandler (e:KeyboardEvent):void {
  110.  
  111. //Левая стрелка вверх
  112. if (e.keyCode == 37) {
  113.  leftArrow = false;
  114. }
  115.  
  116. //Правая стрелка вверх
  117. else if (e.keyCode == 39) {
  118.  rightArrow = false;
  119. }
  120.  
  121. //Верхняя стрелка вверх
  122. else if (e.keyCode == 38) {
  123.  upArrow = false;
  124. }
  125. }
  126.  
  127. //Эта функция рисует красный шар
  128. function drawFire (mc:MovieClip):void {
  129.  
  130. //Даем красный цвет для круга
  131. mc.graphics.beginFill (0xff0000);
  132.  
  133. //Рисуем круг
  134. mc.graphics.drawCircle (0, 0, 10);
  135.  
  136. //Конец заливки
  137. mc.graphics.endFill ();
  138. }
  139.  
  140. //Эта функция делает огонь затухающим в каждом кадре
  141. function animateFire(e:Event):void {
  142.  
  143. //В каждом кадре уменьшаем альфа и масштаб следа шара.
  144. e.target.alpha -= 0.04;
  145. e.target.scaleY -= 0.04;
  146. e.target.scaleX -= 0.04;
  147.  
  148. //Удаляем огонь, если альфа меньше чем 0
  149. if(e.target.alpha<0) {
  150.  e.target.removeEventListener(Event.ENTER_FRAME, animateFire);
  151.  removeChild((MovieClip)(e.target));
  152. }
  153. }
  154.  
Изображение
Изображение
KIka_kok
FL Team
FL Team
 
Автор темы
Сообщения: 680
Зарегистрирован: 18 июл 2010, 19:52
Откуда: Apple city
Благодарил (а): 56 раз.
Поблагодарили: 5 раз.

Чтобы убрать блок с рекламой, зарегистрируйтесь на форуме или войдите.

Google
 



Re: Вопрос по коду(игры)

Сообщение 112 » 29 авг 2010, 12:14

  1. var score:int=0;  
  2. if (ass.hitTestObject(as)) {          
  3.                 score+=10;  
  4.                
  5.                 scoreText.text=""+score;              
  6.                 as.x =(screenWidth*Math.random());  
  7.                 as.y =(screenHeight*Math.random());  
  8.             }
  9.  

as=монетка
ass=машинка
scoretext.text=динамич текст
код не проверял но должен работать
Если ты дебил ,оставайся им!
Я бы изменил мир,но Бог не дает исходники!
Изображение
Аватара пользователя
112
Модератор
Модератор
 
Сообщения: 2215
Зарегистрирован: 02 фев 2010, 21:53
Благодарил (а): 51 раз.
Поблагодарили: 80 раз.

Re: Вопрос по коду(игры)

Сообщение 112 » 29 авг 2010, 12:17

И у те тоже вроде код рабочии указан че он не работает хз...
а ошибки какие нить выдает?
Если ты дебил ,оставайся им!
Я бы изменил мир,но Бог не дает исходники!
Изображение
Аватара пользователя
112
Модератор
Модератор
 
Сообщения: 2215
Зарегистрирован: 02 фев 2010, 21:53
Благодарил (а): 51 раз.
Поблагодарили: 80 раз.

Re: Вопрос по коду(игры)

Сообщение KIka_kok » 29 авг 2010, 12:25

112 я нашел ошибку :D ,там просто надо было монетку поставить на тот же фрейм что и ракета,и код надо было поставить после слушателей событий) ;)
Изображение
Изображение
KIka_kok
FL Team
FL Team
 
Автор темы
Сообщения: 680
Зарегистрирован: 18 июл 2010, 19:52
Откуда: Apple city
Благодарил (а): 56 раз.
Поблагодарили: 5 раз.

Re: Вопрос по коду(игры)

Сообщение 112 » 29 авг 2010, 12:29

тему закрываю раз решено)
Если ты дебил ,оставайся им!
Я бы изменил мир,но Бог не дает исходники!
Изображение
Аватара пользователя
112
Модератор
Модератор
 
Сообщения: 2215
Зарегистрирован: 02 фев 2010, 21:53
Благодарил (а): 51 раз.
Поблагодарили: 80 раз.


Вернуться в Корзина



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0