본문 바로가기
GameMaker강좌[GM8]/예제 모음

텍스트 웨이브 효과 예제

by 타락카얀 2016. 12. 1.
728x90

텍스트 표시에  웨이브 효과를 줄 수 있는 스크립트 예제입니다.





아래는 스크립트 목록입니다.

⊙ 초기화 스크립트
     text_effect_init( ) : 스크립트 초기화

⊙ 설정 스크립트
     text_effect_value(value) : 웨이브 애니메이션 속도 값 설정. 적절한 값은 1~10.
     text_effect_typing_speed(speed) : 타이핑 속도. 값은 0 이상.
     text_effect_typing_reset(default) : 타이핑 리셋. 기본값은 0.

⊙ 표시 스크립트
     draw_text_effect(x,y,str,type,ef_value) : 기본 표시 스크립트
     draw_text_effect_typing(x,y,str,type,ef_value) : 타이핑 스크립트
     draw_text_effect_typing_general(x,y,str,type,ef_value,color,alpha,icon_spr) : 타이핑 확장 스크립트


//기본 표시 스크립트
draw_text_effect(x,y,str,type,ef_value)


⊙ type : 텍스트 효과 타입 (ef_value 값)

     0 : 기본값 (0)
     1 : 흔들림 (0~)
     2 : 피스톤 흔들림 (0~)
     3 : 웨이브 (0~9)
     4 : 피스톤 웨이브 (0~9)
     5 : 웨이브 회전 (type value 0~9 / [0:default] [1:piston] [2~:wave])



type 값을 0으로 설정하면, 텍스트 효과를 주지 않고, 텍스트 그대로 표시합니다.



//타이핑 스크립트
draw_text_effect_typing(x,y,str,type,ef_value)

⊙ 텍스트 명령

     delay (지연시간, D): |D+시간| 예) |D10|


type : 텍스트 효과 타입 (ef_value 값)

     0 : 기본값 (0)
     1 : 흔들림 (0~)
     2 : 피스톤 흔들림 (0~)
     3 : 웨이브 (0~9)
     4 : 피스톤 웨이브 (0~9)
     5 : 웨이브 회전 (type value 0~9 / [0:default] [1:piston] [2~:wave])




//타이핑 확장 스크립트
draw_text_effect_typing_general(x,y,str,type,ef_value,color,alpha,icon_spr)


⊙ 텍스트 명령

     color (색상, $): |$+hex|  예) |$FF|
     alpha (투명도, A): |A+alpha|  예) |A0.5|
     icon (아이콘, I): |I+icon|  예) |I5|    icon_spr 에 지정한 이미지의 서브 이미지를 지정
     delay (지연시간, D): |D+delay| 예) |D10|


type : 텍스트 효과 타입 (ef_value 값)

     [기본 및 세로 타입]
     0 : 기본값 (0)
     1 : 흔들림 (0~)
     2 : 피스톤 흔들림 (0~)
     3 : 웨이브 1 (0~9)
     4 : 피스톤 웨이브 1 (0~9)
     5 : 웨이브 회전 (type value 0~9 / [0:default] [1:piston] [2~:wave])

     [가로 타입]
     6 : 웨이브 2 (0~9)
     7 : 피스톤 웨이브 2 (0~9)
     8 : 웨이브 3 (0~9)
     9 : 피스톤 웨이브 3 (0~9)
     10 : 흔들림 (0~)
     11 : 웨이브 4 (0~9)
     12 : 웨이브 5 (0~9)

     13 : 웨이브+흔들림 1 (0~9)
     14 : 웨이브+흔들림 2 (0~9)
     15 : 웨이브+흔들림 3 (0~9)



위 스크립트는 텍스트 사이에 이미지를 추가로 표시할 수 있는 스크립트입니다.
icon_spr 에 텍스트용 스프라이트를 지정해주면 됩니다.



예제 1)

- Create Event -
text_effect_init();

- Step Event -
text_effect_value(8);

- Draw Event-
draw_text_effect(x,y,"Hello, World!",1,1);





예제 2)  타이핑 타입

- Create Event -
text_effect_init();

- Step Event -
text_effect_value(8);
text_effect_typing_speed(1);

- Draw Event -
draw_text_effect_typing(x,y,"Hello, World!",1,1);

또는,

draw_text_effect_typing_general(x,y,"Hello, |D10||$C2803E|World!",1,1,c_black,1,spr_icon);

- typing Reset -
text_effect_typing_reset(0);







- 스크립트 -

text_wave_ex-simple.gml


- 예 제 -

text_wave_ex-simple.gmk


300x250

댓글