Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   несостыковочки с книгой (http://www.flasher.ru/forum/showthread.php?t=130635)

zzlo 30.09.2009 16:10

несостыковочки с книгой
 
Привет всем!
у меня вопрос: купил книжку по флэшу (8-му).Пытаюсь освоить AS с азов.
У меня стоит flash CS3
там стоит простой пример:
создайте круг и, чтобы он увеличивался при нажатии на него на 10% в размерах, наберите такой код:
Код AS1/AS2:

onClipEvent (mouseDown) {
  _xscale+=10;
  _Yscale+=10;
}

Я это всё в точности набрал как написано, а flash мне выдаёт следующую синтаксическую ошибку:
Код:

Description: Clip events are permitted only for movie clip instances
Source: onClipEvent (mouseDown) {

В общем хотел попросить содействия! Заранее спасибо!

amesqit 30.09.2009 16:33

что за книжка? интересно откуда берется такой код?

zzlo 30.09.2009 16:36

Д.Гурский, Ю.Гурский
"Flash 8 и Action Scrupt только практика!")))
Если посоветуете чего - нить толковее (т.к. взял буквально первое по незнанию) - буду бескрайне признателен!

amesqit 30.09.2009 17:05

Колин Мук, я вообще как-то по его книгам разбирался и Гурского не читал, судя по примеру, правильно делал :)
по поводу кода, лучше сделать вот так:
Код AS1/AS2:

mc.onPress = function()
{
        this._xscale += 10;
        this._yscale += 10;
}

где mc - какой-то клип
onPress - событие в клипе на то что левая кнопка мыши поущена на клипе
код должен находится на том же таймлайне что и клип. но именно на таймлайне, а не на самом клипе.
Код назмещенный на клипах сложнее искать, он обладает плохой гибкостью и вообще у него куча недостатков из-за которых от него следовало отказаться с появлением 6-го флеша. Плюс ко всему если вы решили заниматься изучением языка, то советую вам смотреть литературу по ActionScript 3, например того же Колина Мука, у этого языка больше различных приятных возможностей :)

zzlo 30.09.2009 17:13

Извините,а что значит "код должен находится на том же таймлайне что и клип. но именно на таймлайне, а не на самом клипе" ?
За совет по книге - большое спасибо!

HunTGuN 30.09.2009 17:15

Код AS1/AS2:

on (rollover) {
// Задаем новый размер для увеличения,
newscale = 150;
} on (rollout) {
// Задаем новый размер для уменьшения.
newscale = 100;
}
on (release) {
// Код, исполняемый при нажатии на кнопку.
trace("Home");
}
onClipEvent(load) {
// Начальный размер кнопки 100%.
newscale =100;
onClipEvent(enterFrame) {
if (this._xscale > newscale) {
// Уменьшаем значения параметров.
this._xscale -= 10; this._yscale -= 10;
} else if (this._xscale < newscale) {
// Увеличиваем значения параметров.
this,_xscale += 10;
this._yscale += 10;
}
}

попробуй.У меня работало.Делал по Розенцвейг Г.Не плохой учебник.Советую.

amesqit 30.09.2009 17:24

Вложений: 1
Вот что это значит (см. вложения), а код на кнопкках/клипах лишает код гибкости, его становится сложнее обнаружить и вообще это зло.

zzlo 30.09.2009 17:30

ребят!огромное всем спасибо! в голове хоть что-то зашевелилось..)))

amesqit 30.09.2009 17:32

почитай хелп про класс MoviClip, все должно не только зашевелиться, но и начать бегать и прыгать )))

HunTGuN 01.10.2009 22:42

Если уж на то пошло у меня тоже не состыковка с книгой.В общем в учебнике есть пример игры(прилагается).Я беру и делаю подобную ей.Все код прописал все дела, но когда я запускаю то мой корабль не хочет летать.Исходник моей игры и игры с учебника прилагается.

http://*****************/files/oe2hsru8n
http://*****************/files/j1f2pd1wq


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

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