동방탄막풍/ph3 함수: 두 판 사이의 차이

편집 요약 없음
76번째 줄: 76번째 줄:
=== 적 관련 ===
=== 적 관련 ===
=== 탄 관련 ===
=== 탄 관련 ===
* DeleteShotAll(a,b)
*: 화면상의 적탄을 전부 지우는 함수이다.
*: a는 삭제하는 탄의 종류를 가리키며, TYPE_ALL, TYPE_SHOT가 들어갈 수 있다. TYPE_CHILD도 있으나 미실장이다. TYPE_ALL은 적탄 전체를, TYPE_SHOT은 스펠(폭탄) 내성이 없는 탄 전체를 지운다.
*: b는 탄을 삭제하는 방법을 가리키며, TYPE_IMMEDIATE, TYPE_FADE, TYPE_ITEM이 들어갈 수 있다. TYPE_IMMEDIATE는 즉시 삭제, TYPE_FADE는 잔상을 남기며 삭제하며, TYPE_ITEM은 삭제된 탄을 전부 점수 아이템으로 바꾼다.
* DeleteShotInCircle(a,b,c,d,e)
*: 주어진 원 안의 적탄만 전부 지우는 함수이다. a와 b는 DeleteShotAll 함수와 같다. c는 원의 x좌표, d는 원의 y좌표, e는 원의 반지름이다.
* CreateShotA1(a,b,c,d,e,f)
*: 일정한 속도의 탄을 발사하는 함수이다. a는 x좌표, b는 y좌표, c는 속도, d는 각도, e는 탄의 모양, f는 발사까지 지연 시간이다.
* CreateShotA2(a,b,c,d,e,f,g,h)
*: 등가속도 운동을 하는 탄을 발사하는 함수이다. a는 x좌표, b는 y좌표, c는 초기 속도, d는 각도, e는 가속도, f는 최대 속도, g는 탄의 모양, h는 발사까지 지연 시간이다.
* CreateShotOA1(a,b,c,d,e)
*: 지정한 오브젝트 탄을 일정한 속도로 발사하는 함수이다. a는 오브젝트의 ID, b는 속도, c는 각도, d는 탄의 모양, e는 발사까지 지연 시간이다.
* CreateShotB1(a,b,c,d,e,f)
*: 일정한 속도의 탄을 발사하는 함수이다. CreateShotA1 함수와는 달리 속도와 각도가 아닌 x축과 y축 방향 속도를 정해준다. a는 x좌표, b는 y좌표, c는 x축 방향 속도, d는 y축 방향 속도, e는 탄의 모양, f는 발사까지 지연 시간이다.
=== 아이템 관련 ===
=== 아이템 관련 ===
=== 기타 ===
=== 기타 ===

2018년 1월 2일 (화) 03:47 판

동방탄막풍의 ph3 버전에서 사용되는 스크립트 함수들에 대한 설명이다. 최종 버전인 .0 기준이다. 문서 작성에는 공식 홈페이지의 help 글을 참고하였다.

편의상 real 변수는 소문자 알파벳, char 변수는 대문자 알파벳, bool 변수는 T/F로 표시하였다.

공통 함수

수학

  • min(a,b)
    a와 b 중 작은 수를 취득한다.
  • max(a,b)
    a와 b 중 큰 수를 취득한다.
  • cos(a)
    a의 코사인 값을 취득한다. 삼각함수는 60분법을 사용한다.
  • sin(a)
    a의 사인 값을 취득한다. 삼각함수는 60분법을 사용한다.
  • tan(a)
    a의 탄젠트 값을 취득한다. 삼각함수는 60분법을 사용한다.
  • acos(a)
    a의 역코사인(arccos) 값을 취득한다. 삼각함수는 60분법을 사용한다.
  • asin(a)
    a의 역사인(arcsin) 값을 취득한다. 삼각함수는 60분법을 사용한다.
  • atan(a)
    a의 역탄젠트(arctan) 값을 취득한다. 삼각함수는 60분법을 사용한다.
  • atan2(a,b)
    좌표평면에서 원점과 (a,b)를 잇는 선분과 x축 사이의 각도를 취득한다. 예를 들어 총알의 각도를 atan2(1,0)으로 하면 총알이 정면으로 날아오고, atan2(1,1)로 하면 정면 기준 반시계 방향으로 45도만큼 기울어진 방향으로 날아온다.
  • rand(a,b)
    a 이상 b 이하의 난수를 취득한다.
  • round(a)
    a를 반올림한 정수를 취득한다.
  • truncate(a)
    a의 소숫점 아래 값을 지워 정수로 만든 값을 취득한다. trunc(a)와 같다. 예를 들어 truncate(2.5)의 값은 2, truncate(-2.5)의 값은 -2이다.
  • ceil(a)
    a를 올림한 정수를 취득한다. 예를 들어 ceil(2.5)의 값은 3, ceil(-2.5)의 값은 -2이다.
  • floor(a)
    a를 내림한 정수를 취득한다. 예를 들어 floor(2.5)의 값은 2, floor(-2.5)의 값은 -3이다.
  • absolute(a)
    a의 절댓값을 취득한다. 예를 들어 absolute(-2.5)의 값은 2.5이다.
  • modc(a,b)
    a를 b로 나눈 나머지를 취득한다. a%b와 같다.

문자열 조작

패스 관련

시간 관련

디버그 관련

공동 데이터

음악 조작 관련

키 입력

그림 묘사

3D 카메라

2D 카메라

스크립트 조작

시스템 관련

플레이어 기체 관련

적 관련

탄 관련

  • DeleteShotAll(a,b)
    화면상의 적탄을 전부 지우는 함수이다.
    a는 삭제하는 탄의 종류를 가리키며, TYPE_ALL, TYPE_SHOT가 들어갈 수 있다. TYPE_CHILD도 있으나 미실장이다. TYPE_ALL은 적탄 전체를, TYPE_SHOT은 스펠(폭탄) 내성이 없는 탄 전체를 지운다.
    b는 탄을 삭제하는 방법을 가리키며, TYPE_IMMEDIATE, TYPE_FADE, TYPE_ITEM이 들어갈 수 있다. TYPE_IMMEDIATE는 즉시 삭제, TYPE_FADE는 잔상을 남기며 삭제하며, TYPE_ITEM은 삭제된 탄을 전부 점수 아이템으로 바꾼다.
  • DeleteShotInCircle(a,b,c,d,e)
    주어진 원 안의 적탄만 전부 지우는 함수이다. a와 b는 DeleteShotAll 함수와 같다. c는 원의 x좌표, d는 원의 y좌표, e는 원의 반지름이다.
  • CreateShotA1(a,b,c,d,e,f)
    일정한 속도의 탄을 발사하는 함수이다. a는 x좌표, b는 y좌표, c는 속도, d는 각도, e는 탄의 모양, f는 발사까지 지연 시간이다.
  • CreateShotA2(a,b,c,d,e,f,g,h)
    등가속도 운동을 하는 탄을 발사하는 함수이다. a는 x좌표, b는 y좌표, c는 초기 속도, d는 각도, e는 가속도, f는 최대 속도, g는 탄의 모양, h는 발사까지 지연 시간이다.
  • CreateShotOA1(a,b,c,d,e)
    지정한 오브젝트 탄을 일정한 속도로 발사하는 함수이다. a는 오브젝트의 ID, b는 속도, c는 각도, d는 탄의 모양, e는 발사까지 지연 시간이다.
  • CreateShotB1(a,b,c,d,e,f)
    일정한 속도의 탄을 발사하는 함수이다. CreateShotA1 함수와는 달리 속도와 각도가 아닌 x축과 y축 방향 속도를 정해준다. a는 x좌표, b는 y좌표, c는 x축 방향 속도, d는 y축 방향 속도, e는 탄의 모양, f는 발사까지 지연 시간이다.

아이템 관련

기타

공동 오브젝트 조작 (Obj_)

그림 묘사 오브젝트 조작 (ObjRender_)

정점 오브젝트 조작 (ObjPrim_)

2D구형 오브젝트 조작 (ObjSprite2D_)

2D구형 리스트 오브젝트 조작 (ObjSpriteList2D_)

3D구형 오브젝트 조작 (ObjSprite3D_)

3D메시 오브젝트 (ObjMesh_)

텍스트 오브젝트 조작 (ObjText_)

음성 오브젝트 조작 (ObjSound_)

파일 오브젝트 조작 (ObjFile)

텍스트 파일 오브젝트 조작 (ObjFileT_)

바이너리 파일 오브젝트 조작 (ObjFileB_)

이동 오브젝트 조작 (ObjMove_)

적 오브젝트 조작 (ObjEnemy)

보스 신 오브젝트 조작 (ObjEnemyBossScene_)

탄 (레이저 포함) 오브젝트 조작 (ObjShot_)

아이템 오브젝트 조작 (ObjItem_)

플레이어 기체 오브젝트 조작 (ObjPlayer_)

충돌 판정 오브젝트 조작 (ObjCol_)

플레이어 기체 스크립트 전용 함수

플레이어 기체 전용 함수

스펠 오브젝트 조작 (ObjSpell_)

시스템 스크립트 전용 함수

패키지 스크립트 전용 함수