diary       blog       guest

지정된 텍스트가 한 문자씩 ASCII코드 값과 비교해서 출력

http://www.action-scripter.com/blog/trackback/898
// ☞☞ 랜덤 텍스트 제어 액션

// 스테이지에 다이나믹 텍스트 필드를 만들고 인스턴스 네임 typoText 로 지정

var restr = new Array();  // 배열 선언
var rT = "";   // 화면에 보여지는 문자 변수
var xx = random(13)+33;   // 처음 화면에 보여지는 문자를 랜덤하게 보여주기(특수문자)
var destr = String.fromCharCode(xx);   // 처음에 기본적으로 보여질 문자
var num = 0;   // 문자의 단계 넘기기
var sn;   // ASCII 시작 값

function changeText(dec,time){
  for(var i=0;i< dec.length;i++){
    rT = rT.concat(destr);   // 문자 길이만큼 기본 문자로 채워준다.
    restr.push(rT.substr(i,1));  // 기본 문자들을 restr 배열에 요소로 넣어준다.
    typoText.text = rT; // 문자를 보여준다.
  };

var jump = dec.charCodeAt(num);  // 현재 단계의 ASCII 값을 찾아와서 jump한다.
var snF = jump - time;  // 처음 비교 하게될 문자 코드 번호
  sn = snF;

this.onEnterFrame = function(){
    if(num != dec.length){
      // ASCII 값 중에서 32부터 129까지의 값이 대부분 사용되는 키 값들이다.
      if(sn != 130){
        sn++;   // 비교 문자 코드를 1씩 증가 시킨다.
      }else{
        sn = snF; // 처음 시작은 현재 단계의 ASCII 값 부터
      };

      var ag = String.fromCharCode(sn);   // ASCII 값에 해당되는 문자를 반환
      restr[num] = ag;   // 현재 단계 문자에 반환된 문자를 넣어준다.

      if(restr[num] == dec.charAt(num)){   // 현재 단계가 사용자 지정 문자와 같은지 확인
        for(var i=0;i< dec.length;i++){
          reT = restr.join("");   // 배열을 합쳐서 문자열로 전환
          typoText.text = reT;  // 문자를 보여준다.
        }
        num++;   // 단계 상승
        var jump = dec.charCodeAt(num);   // 현재 단계의 ASCII 값을 찾아와서 jump한다.
        if(dec.charAt(num) == " "){  // 공백이 있으면 바로 공백 보여주고 다음 단계 확인
          sn = snF = jump - 1;
        }else{
          // 뒤로 갈수록 점점 속도가 붙는다.
          var plus = Math.round((time-1) * (num/dec.length));
          sn = snF = jump - (time - plus);   // 비교 문자 코드 번호
        }
      }else{
        for(var i=0;i< dec.length;i++){
          reT = restr.join("");   // 배열을 합쳐서 문자열로 전환
          typoText.text = reT;  // 문자를 보여준다.
        }
      }
    }else{
      trace("주인님 끝났습니다.");
      delete this.onEnterFrame;
    }
  }
};
 
changeText("ACTION-SCRIPTER.COM",3);   // 랜덤 텍스트 함수 호출

본 소스는 땡굴이가 직접 제작한 것입니다.
마음것 사용하시구요.. 잘못된 부분 있으면 답글 달아 주세요..
2004/11/06 11:46 2004/11/06 11:46
   1   ... 830  831  832  833  834  835  836  837  838   ... 1286    
ABOUT  |  WORKS  |  @seonggyu
COPYRIGHT ⓒ 2000 - 2010. ACTION-SCRIPTER.COM. ALL RIGHTS RESEVED.