Показать сообщение отдельно
Старый 16.11.2010, 22:00
DDcH вне форума Посмотреть профиль Отправить личное сообщение для DDcH Найти все сообщения от DDcH
  № 4  
Ответить с цитированием
DDcH

Регистрация: Jul 2008
Сообщений: 40
Код AS1/AS2:
//The main menu's instance name is yourMenu. 
//Find and replace yourMenu to match that of your menu instance.
 
stop();
var btnNum:int;
var highlightNum:int = 1;
 
var menu1Open:Boolean = false;
var menu2Open:Boolean = false;
var menu3Open:Boolean = false;
var menu4Open:Boolean = false;
 
 
 
var bg:MovieClip = new MovieClip();
bg.graphics.beginFill(0x999999, 1); 
bg.graphics.drawRect(0, 0, stage.stageWidth, stage.stageHeight);
bg.graphics.endFill(); 
bg.alpha = 0;
yourMenu.addChildAt(bg, 0);
 
//on mouse over menus: set btn number, highlight, open menu, close other menus
stage.addEventListener(MouseEvent.MOUSE_OVER, overBtn);
function overBtn(evt:MouseEvent):void {
	switch (evt.target) {
		case yourMenu.menu1_btn :
			btnNum=1;
			highlightBtn();
			openMenu();
			menu1Open = true;
			closeOtherMenus();
			break;
 
		case yourMenu.menu2_btn  :
			btnNum=2;
			highlightBtn();
			openMenu();
			menu2Open = true;
			closeOtherMenus();
			break;
 
		case yourMenu.menu3_btn  :
			btnNum=3;
			highlightBtn();
			openMenu();
			menu3Open = true;
			closeOtherMenus();
			break;
 
		case yourMenu.menu4_btn  :
			btnNum=4;
			highlightBtn();
			openMenu();
			menu4Open = true;
			closeOtherMenus();
			break;
 
	}
};
 
//when user mouse leaves a button, set the highlight
stage.addEventListener(MouseEvent.MOUSE_OUT, outBtn);
function outBtn(evt:MouseEvent):void {
	switch (evt.target) {
		case yourMenu.menu1_btn :
			highlightNum=1;
			break;
 
		case yourMenu.menu2_btn  :
			highlightNum=2;
			break;
 
		case yourMenu.menu3_btn  :
			highlightNum=3;
			break;
 
		case yourMenu.menu4_btn  :
			highlightNum=4;
			break;
 
	}
};
 
//mouse out of drop-down, ensure all menus close
bg.addEventListener(MouseEvent.MOUSE_OVER, leaveMenu);
function leaveMenu(evt:MouseEvent):void{
	if(bg.hitTestPoint(mouseX, mouseY, true)){
		closeMenu();
		menu1Open = false;
		menu2Open = false;
		menu3Open = false;
		menu4Open = false;
	}
 
}
 
//functions to open and close menus
function openMenu():void {
	yourMenu.menu_tween.menu_down.addTarget(yourMenu.getChildByName("menu" + btnNum), 1);
}
 
function closeMenu():void {
	yourMenu.menu_tween.menu_up.addTarget(yourMenu.getChildByName("menu" + btnNum), 1);
}
 
//close menus other than the current one
function closeOtherMenus():void {
	if(btnNum == 1 && menu2Open){
		yourMenu.menu_tween.menu_up.addTarget(yourMenu.menu2, 1);
		menu2Open = false;
	}
	if(btnNum == 1 && menu3Open){
		yourMenu.menu_tween.menu_up.addTarget(yourMenu.menu3, 1);
		menu3Open = false;
		}
	if(btnNum == 1 && menu4Open){
		yourMenu.menu_tween.menu_up.addTarget(yourMenu.menu4, 1);
		menu4Open = false;
		}
 
 
 
 
	if(btnNum==2 && menu1Open){
		yourMenu.menu_tween.menu_up.addTarget(yourMenu.menu1, 1);
		menu1Open = false;
	}
	if(btnNum==2 && menu3Open){
		yourMenu.menu_tween.menu_up.addTarget(yourMenu.menu3, 1);
		menu3Open = false;
	}
	if(btnNum==2 && menu4Open){
		yourMenu.menu_tween.menu_up.addTarget(yourMenu.menu4, 1);
		menu4Open = false;
	}
 
 
 
 
	if(btnNum==3 && menu1Open){
		yourMenu.menu_tween.menu_up.addTarget(yourMenu.menu1, 1);
		menu1Open = false;
	}
	if(btnNum==3 && menu2Open){
		yourMenu.menu_tween.menu_up.addTarget(yourMenu.menu2, 1);
		menu2Open = false;
	}
	if(btnNum==3 && menu4Open){
		yourMenu.menu_tween.menu_up.addTarget(yourMenu.menu4, 1);
		menu4Open = false;
	}
 
 
 
 
	if(btnNum==4 && menu1Open){
		yourMenu.menu_tween.menu_up.addTarget(yourMenu.menu1, 1);
		menu1Open = false;
	}
	if(btnNum==4 && menu2Open){
		yourMenu.menu_tween.menu_up.addTarget(yourMenu.menu2, 1);
		menu2Open = false;
	}
	if(btnNum==4 && menu3Open){
		yourMenu.menu_tween.menu_up.addTarget(yourMenu.menu3, 1);
		menu3Open = false;
	}
 
 
 
};
 
//adds animation based on current and previous button
function highlightBtn():void {
 
	if(btnNum == 1 && highlightNum == 2){
		yourMenu.highlight_tween.two_one.addTarget(yourMenu.highlight_mc, 1);
	}
	if(btnNum == 1 && highlightNum ==3){
		yourMenu.highlight_tween.three_one.addTarget(yourMenu.highlight_mc, 1);
	}
	if(btnNum == 1 && highlightNum ==4){
		yourMenu.highlight_tween.four_one.addTarget(yourMenu.highlight_mc, 1);
	}
 
 
 
	if(btnNum == 2 && highlightNum == 1){
		yourMenu.highlight_tween.one_two.addTarget(yourMenu.highlight_mc, 1);
	}
	if(btnNum == 2 && highlightNum ==3){
		yourMenu.highlight_tween.three_two.addTarget(yourMenu.highlight_mc, 1);
	}
	if(btnNum == 2 && highlightNum ==4){
		yourMenu.highlight_tween.four_two.addTarget(yourMenu.highlight_mc, 1);
	}
 
 
	if(btnNum == 3 && highlightNum == 1){
		yourMenu.highlight_tween.one_three.addTarget(yourMenu.highlight_mc, 1);
	}
	if(btnNum == 3 && highlightNum == 2){
		yourMenu.highlight_tween.two_three.addTarget(yourMenu.highlight_mc, 1);
	}
	if(btnNum == 3 && highlightNum == 4){
		yourMenu.highlight_tween.four_three.addTarget(yourMenu.highlight_mc, 1);
	}
 
 
	if(btnNum == 4 && highlightNum == 1){
		yourMenu.highlight_tween.one_four.addTarget(yourMenu.highlight_mc, 1);
	}
	if(btnNum == 4 && highlightNum == 2){
		yourMenu.highlight_tween.two_four.addTarget(yourMenu.highlight_mc, 1);
	}
	if(btnNum == 4 && highlightNum == 3){
		yourMenu.highlight_tween.three_four.addTarget(yourMenu.highlight_mc, 1);
 
	}
 
 
};
 
//Assign appropriate button actions for menu items
stage.addEventListener(MouseEvent.CLICK, itemButtons);
function itemButtons(evt:MouseEvent):void {
	switch (evt.target) {
 
		case yourMenu.menu1.item1_btn :
			trace("Menu 1, button 1");
			break;
 
		case yourMenu.menu1.item2_btn :
			trace("Menu 1, button 2");
			break;
 
		case yourMenu.menu1.item3_btn :
			trace("Menu 1, button 3");
			break;
 
 
 
		case yourMenu.menu2.item1_btn :
			trace("Menu 2, button 1");
			break;
 
		case yourMenu.menu2.item2_btn :
			trace("Menu 2, button 2");
			break;
 
		case yourMenu.menu2.item3_btn :
			trace("Menu 2, button 3");
			break;
 
 
 
		case yourMenu.menu3.item1_btn :
			trace("Menu 3, button 1");
			break;
 
		case yourMenu.menu3.item2_btn :
			trace("Menu 3, button 2");
			break;
 
		case yourMenu.menu3.item3_btn :
			trace("Menu 3, button 3");
			break;
 
 
 
		case yourMenu.menu4.item1_btn :
			trace("Menu 4, button 1");
			break;
 
		case yourMenu.menu4.item2_btn :
			trace("Menu 4, button 2");
			break;
 
		case yourMenu.menu4.item3_btn :
			trace("Menu 4, button 3");
			break;
 
	}
};