상세 컨텐츠

본문 제목

Action Script 2.0 기초

컴퓨터 언어/Script

by cepiloth 2021. 2. 18. 07:22

본문

728x90
반응형

Action Script 란?

 액션스크립트(ActionScript)는 ECMA스크립트를 기반으로 하는 스크립팅 언어이며, 주로 어도비 플래시 및 어도비 플래시 플레이어를 사용하는 소프트웨어나 웹사이트를 개발하기 위해 (웹 페이지에 SWF 파일 형식으로) 사용된다. 하이퍼카드의 스크립트 언어인 하이퍼토크의 파생이다.

 

1) Action Script 2.0 예시

class com.example.Greeter extends MovieClip
{
    public function Greeter()
    {
        var txtHello:TextField = this.createTextField("txtHello", 0, 0, 0, 100, 100);
        txtHello.text = "Hello, world";
    }
}

 

2) Action Script 3.0 예시

package com.example
{
    import flash.text.TextField;
    import flash.display.Sprite;

    public class Greeter extends Sprite
    {
        public function Greeter()
        {
            var txtHello:TextField = new TextField();
            txtHello.text = "Hello World";
            addChild(txtHello);
        }
    }
}

 

Action Script 2.0 컴포넌트 제어

1) 변수의 범위

Action Script 2.0 기준 세가지 유형의 변수 범위가 있다.
로컬 변수, 타임라인변수, 전역 변수
각 변수를 제어하는 범위는 아래와 같다.

function movie() {
 
    var a;        // 로컬변수
    
    for(a=0; a<=10; a++) {
        _root.MX._alpha = a;
    }
    
}


_global 식별자는 변수뿐만 아니라 객체, 함수 등을 전역적인 범위를 갖도록 만든다.
플래시 무비의 모든 타임라인과 범위 내에서 동일한 이름으로 나타나게된다

Init_value = 10; // 타임라인변수
_global.myName = "sung"; // 전역변수


만약 무비클립이 비행기의 인스턴스명이 Plane, 엔진 engine,  오일 oil 일때
모든 무비클립의 최상의 위치의 고유의 인스턴스명은 _root이며 
버튼클립에서 이벤트로 제어할 경우 아래와 같다.

on(release) {
 
    Plane.engine.oil = 10;
    Plane.engine._x += 10;
    
}

 


무비클립에서 제어하는 경우에는 아래와 같다.

onClipEvent (enterFrame) {
	// 무비클립으로 제어할 경우 _root 최상단 키워드를 사용해야 한다.
	_root.Plane.engine._x += 10;
 
}


- 하위 무브클립에 영향을 끼치는 속성(키워드)
_x, _y, _rotation, _xscale, y_scale, _height, _width, _alpha, _visible
- 자기 자신(this)
_focusrect, _highquality, _quality, _soundbuftime 은 전체 플래시 무비에 영향을 준다.

 

2) Button, MovieClip 제어 하기

on(release)
{
  play(); // 프레임재생
  gotoAndStop(1); // 1번프레임으로 이동후 정지
  gotoAndPlay(2); // 2번프레으로 이동후 재생
  nextFrame(); // 다음프레임으로 이동 정지
  prevFrame(); // 이전프레임으로 이동 정지
 
  //button 심볼을 제어하는 경우
  무비심볼에 인스턴스명 : sphere
  _root.sphere._x += 20; // 현심볼객체의 자리에서 20 이동

}
 
// 프레임이 읽어졌을 때 해당 심볼에 알파값을 50 으로 제어
onClipEvent(load)
{
 _alpha = 50;
}
 

// 프레임이 지나가면서 심볼의 좌표를 이동
onClipEvent(enterFrame)
{
 _x += 5;
 _y += 5;
}
 
// 버튼심볼에 액션스크립트로 sphere 객체 제어
on(release)
{
 sphere._x += 10;
 sphere._y += 10;
 sphere._alpha = 50;
}
 
 
/-
새로운 무비클립 객체를 원본으로부터 복제하고
드래그될 수 있도록 합니다.
*-
on(press)
{
 this.duplicateMovieClip(this._name+_root.cnt,_root.cnt);
 _root[this._name+_root.cnt].startDrag();
}
 

 

3) 플래시에서 영상 읽어 오기

// root 에서의 사용법
loadMovie("url","target","method")

 
loadMovie("경로",1);
첫번째 경로 두번째 레벨값
특정위치에 불러올때 사용

만약 무비클립에 인스턴스명이 img 일경우
_root.img.loadMovie("경로");

 

 

728x90
반응형

관련글 더보기

댓글 영역