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

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

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

Регистрация: May 2006
Сообщений: 48
По умолчанию Процедура в ActionScript.

Вообщем, у меня следующая цель:
Поле n*n клеток.
У каждой клетки есть свои параметры:
- местоположение - A1, B7 и так далее, как в морском бое/шахматах
- имя текста

Эти параметры нужны для того чтобы при клике на клетку открывался хинт (изначально пустой муви-клип из библиотеки) и в нем было показано
место положение и заданный текст.


Мне нужна эта функция для того, чтобы не тупо вручную дублировать клетки... а все это упростить до прописывания в первом кадре мувика.

Люди, подскажите что и как делать, ибо с ЭкшнСкриптом я не дружу

саму функцию я себе представляю так:
параметры: "местоположение" и "текст"
"местоположение" = *заданный пользователем текст"
"текст" = *заданный пользователем текст"

Старый 23.05.2006, 23:22
Usnul вне форума Посмотреть профиль Отправить личное сообщение для Usnul Посетить домашнюю страницу Usnul Найти все сообщения от Usnul
  № 2  
Usnul
 
Аватар для Usnul

Регистрация: Mar 2001
Адрес: во сне
Сообщений: 2,701
Отправить сообщение для Usnul с помощью ICQ
малость переувлекся примером, но в общем приверно так:
Код:
_root.cellSize=50;
cCell = function(x,y,hint){
	_root.createEmptyMovieClip("c_"+x+"_"+y,x*100+y);
	_root["c_"+x+"_"+y]._x=x*_root.cellSize;
	_root["c_"+x+"_"+y]._y=y*_root.cellSize;
	_root["c_"+x+"_"+y].createTextField("h",1,0,0,45,45);
	_root["c_"+x+"_"+y].h.html = true;
	_root["c_"+x+"_"+y].h.wordWrap = true;
	_root["c_"+x+"_"+y].h.border = true;
	_root["c_"+x+"_"+y].h.htmlText = "<font face='Tahoma' size='10'>"+hint+"</font>";
}

_root.hints = new Array("Lol","Rolf!","Lmao","IKnowYou","YourMom","YourFace","WTF","OMG","YHBT","Me is flasher","CowSayMoo","CatSayMeow","Well, Hi There.","This is a hint.");
_root.colors = new Array("000000","FFcc00","FF00FF","00FF00","FF0000","0000FF","ccFF00","00ccFF","cc00FF","FF00cc","00FFFF","FFFF00");
for(i=0;i<=13;i++){
	for(j=0;j<=13;j++){
		cCell(i,j,"<font color='#"+_root.colors[Math.floor(Math.random()*_root.colors.length)]+"'>"+_root.hints[Math.floor(Math.random()*_root.hints.length)]+"</font>");
	}
}
скопируй это все в скрипт первого карда пустого флеш фильма и нажми Ctrl+Enter.

ЗЫ
если что непонятно спрашивай.
__________________
I'm only happy when it rains.
Waka Laka

Старый 24.05.2006, 01:45
VoCz вне форума Посмотреть профиль Отправить личное сообщение для VoCz Найти все сообщения от VoCz
  № 3  
VoCz

Регистрация: May 2006
Сообщений: 48
Пасиб, меня больше интересует как бы заменить
" for(j=0;j<=13;j++){
cCell(i,j,"<font color='#"+_root.colors[Math.floor(Math.random()*_root.colors.length)]+"'>"+_root.hints[Math.floor(Math.random()*_root.hints.length)]+"</font>");
}"

на прописание параметров для кнопок и, соответственно, самой функции.

Старый 24.05.2006, 01:53
Usnul вне форума Посмотреть профиль Отправить личное сообщение для Usnul Посетить домашнюю страницу Usnul Найти все сообщения от Usnul
  № 4  
Usnul
 
Аватар для Usnul

Регистрация: Mar 2001
Адрес: во сне
Сообщений: 2,701
Отправить сообщение для Usnul с помощью ICQ
_root.c_1_1.onPress = function(){
trace("Ты нажал на кнопку с координатами (1,1)!")д
}
__________________
I'm only happy when it rains.
Waka Laka

Старый 27.05.2006, 22:05
VoCz вне форума Посмотреть профиль Отправить личное сообщение для VoCz Найти все сообщения от VoCz
  № 5  
VoCz

Регистрация: May 2006
Сообщений: 48
Видимо я очень тупой

Но как сделать вместо рандомизации текста рандомизацию мувиков из библиотеки?

В массиве ясно: _root.hints = new Array("movie1","movie2","movie3","movie4","movie5");

_root["c_"+x+"_"+y].createTextField("h",1,0,0,45,45); - а вот тут как быть?
Я понимаю что где-то нужно DuplicateMovieClip вставить, но не догоняю где... Перечитываю второй раз учебник по ЭкшнСкрипту, но все равно для меня он полная загадка...

Старый 28.05.2006, 10:22
VoCz вне форума Посмотреть профиль Отправить личное сообщение для VoCz Найти все сообщения от VoCz
  № 6  
VoCz

Регистрация: May 2006
Сообщений: 48
ап!!!

Старый 28.05.2006, 16:08
VoCz вне форума Посмотреть профиль Отправить личное сообщение для VoCz Найти все сообщения от VoCz
  № 7  
VoCz

Регистрация: May 2006
Сообщений: 48
Никто не подскажет?

Старый 28.05.2006, 16:23
Nirth вне форума Посмотреть профиль Отправить личное сообщение для Nirth Посетить домашнюю страницу Nirth Найти все сообщения от Nirth
  № 8  
Nirth
4AM Games
 
Аватар для Nirth

блогер
Регистрация: Nov 2002
Адрес: Sofia
Сообщений: 6,264
Записей в блоге: 1
Отправить сообщение для Nirth с помощью ICQ Отправить сообщение для Nirth с помощью AIM Отправить сообщение для Nirth с помощью MSN Отправить сообщение для Nirth с помощью Yahoo Отправить сообщение для Nirth с помощью Skype™
тема закрыта, так как автор начал в ней флудить.
__________________
Я перестал переписывать, начал редактировать, еще лет 15 и я стану писателем ^_^

Старый 28.05.2006, 16:30
KUZEN вне форума Посмотреть профиль Отправить личное сообщение для KUZEN Посетить домашнюю страницу KUZEN Найти все сообщения от KUZEN
  № 9  
KUZEN
Ветеран форума
 
Аватар для KUZEN

Регистрация: Jun 2005
Адрес: MOSCOW
Сообщений: 6,852
Отправить сообщение для KUZEN с помощью ICQ Отправить сообщение для KUZEN с помощью Yahoo Отправить сообщение для KUZEN с помощью Skype™
Код:
numCubes = 100;
numColumns = 10;
margin = 10;
for (var i = 0; i<numCubes; i++) {
	_root.attachMovie("mc", "mc"+i, i);
	var m = _root["mc"+i];
	m._x = (m._width+margin)*(i%numColumns);
	m._y = Math.floor(i/numColumns)*(m._height+margin);
	//
	m.onPress = function() {
		trace("x : "+this._x);
		trace("y : "+this._y);
	};
}
Вместо трейсов поставишь аттачт твоего пустого мувика и там уже будешь отображать свои координаты ... mc - Linkage мувика с нарисованной клеткой
__________________
BestMasterиZация

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

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

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


 


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


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