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

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

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

Регистрация: Jun 2009
Сообщений: 81
Question QuickBox объект создается не там где должен

Есть код, где при нажатой клавише создается перевернутый объект, и при отпущенной клавише возвращается прежний. Только вот при возврате, объект как будто подпрыгивает. Уже все перерыл, не могу понять в чем дело. Вроде вычисление правильные: берем Y и плюсуем 40 px и обратно минусуем, разница между центром двух объектов ровно 40.
Код AS3:
package{
	import flash.display.*;
	import flash.events.*;
	import flash.geom.*;
	import flash.net.*;
	import flash.text.*;
	import flash.utils.*
	import com.actionsnippet.qbox.*;
	import Box2D.*;
	public class test extends Sprite{
		var sim:QuickBox2D;
		private var hero:QuickObject;
		var bol:Boolean =false;
		public function test() {
    			this.addEventListener(Event.ADDED_TO_STAGE, onAddedToStage);
    		}
 
    		public function onAddedToStage(e: Event): void {
			removeEventListener(Event.ADDED_TO_STAGE, onAddedToStage);
				sim = new QuickBox2D(con);
				sim.addBox({x:447/30, y:622.5/30, width:910/30, height:37/30, density:0});
				hero = sim.addBox({x:300/30, y:529/30, width:89.8/30, height:150/30, density:0.07,allowSleep:false,restitution:0.0,fixedRotation:true});
				stage.addEventListener(KeyboardEvent.KEY_DOWN,onKeyPressed);
				stage.addEventListener(KeyboardEvent.KEY_UP, onKeyReleased);
				sim.start();
			}
			function onKeyPressed(evt:KeyboardEvent):void {
				if(!bol){
					bol = true
				var ySave:Number = hero.y+(40/30);
				hero.destroy();
				hero = sim.addBox({x:300/30, y:ySave, width:118/30, height:70/30, density:0.07,allowSleep:false,restitution:0.0,fixedRotation:true});
				}
			}
			function onKeyReleased(evt:KeyboardEvent):void {
				if(bol){
				bol = false
				var ySave:Number = hero.y-(40/30);
				hero.destroy()
				hero = sim.addBox({x:300/30, y:ySave, width:89.8/30, height:150/30, density:0.07,allowSleep:false,restitution:0.0,fixedRotation:true});
				}
			}
	}
}
http://serg1992.ucoz.com/test.swf
Вложения
Тип файла: rar test.fla.rar (203.6 Кб, 26 просмотров)


Последний раз редактировалось GoodWin74; 11.08.2012 в 01:59.
Создать новую тему   Часовой пояс GMT +4, время: 13:19.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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