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

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

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

Регистрация: Jan 2012
Сообщений: 836
По умолчанию Взаимодействие классов

В общем надо организовать управление персонажем. Для этого я создал класс player

Код AS3:
package AS  {
	import flash.display.MovieClip;
	import flash.events.Event;
	import flash.events.KeyboardEvent;
	import flash.ui.Keyboard;
	import flash.display.Sprite;
 
 
	public class player extends Sprite
 {
   var left_press:Boolean;
   var up_press:Boolean;
   var right_press:Boolean;
   var down_press:Boolean;
   var _speed:uint;
 
		public function player() 
		{
		addEventListener(KeyboardEvent.KEY_DOWN, keyDownListener);
        addEventListener(KeyboardEvent.KEY_UP, keyUpListener);
        addEventListener(Event.ENTER_FRAME, go);
		_speed = 3;
		}
public function keyDownListener (e:KeyboardEvent):void 
{
if (e.keyCode==65) left_press = true;
if (e.keyCode==87) up_press = true;
if (e.keyCode==68) right_press = true;
if (e.keyCode==83) down_press = true;
}
public function keyUpListener(e:KeyboardEvent):void 
{
if (e.keyCode==65) left_press = false;
if (e.keyCode==87) up_press = false;
if (e.keyCode==68) right_press = false;
if (e.keyCode==83) down_press = false;
}
public function go(e:Event):void 
{
if (left_press) igrok.x -=_speed;
if (up_press) igrok.y -=_speed;
if (right_press) igrok.x +=_speed;
if (down_press) igrok.y +=_speed;
 
}
		}
 
	}
То есть нажимаем на кнопки и igrok движется. Основной класс Main, где создается этот самый игрок

Код AS3:
package AS 
{
import flash.display.MovieClip;
import flash.events.MouseEvent;
import flash.text.TextField;
import flash.events.Event;
import flash.display.DisplayObject;
import flash.display.Stage;
import flash.display.Sprite;
import flash.events.KeyboardEvent;
import flash.ui.Keyboard;
	public class Main extends MovieClip
	{
		private var igrok:player;
    public function Main() 
   {
   createigrok();
 
   clicki();
 
   }
 
public function createigrok()
{
  {
       igrok = new player;
       igrok.x = 50;
       igrok.y = 50;
       igrok.name = "ssss";
	   trace('Стопудово новый игрок');
   }
   addChild(igrok);
   trace('Чего-то добавили, типа...');
}
 
public function clicki()
{
   rembut.addEventListener(MouseEvent.CLICK, onClicks);
}
 
function onClicks(event:MouseEvent):void
{
 
 
   removeChild(igrok);
   trace("Удаляем игрока");
 
 
	}
	}
}
Также есть спрайт, с синим кружочком, который создается на сцене называется player и связывание AS3 player. Когда я компилирую флешку, вроде никаких ошибок не выдаёт, но и объект не двигается по нажатию кнопок. Что мне надо сделать, чтобы это всё работало?)

Создать новую тему   Часовой пояс GMT +4, время: 17:37.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

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

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


 


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


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