playXP

서브 메뉴

Page. 1 / 21 [내 메뉴에 추가]
글쓰기
작성자 ddqqaaee (207.244.xxx.195)
작성일 2014-08-27 05:25:22 KST 조회 3,642
제목
입력 순서대로 동작하는 임계 부문 만들기

임계 부문 행동을 사용하여 여러 입력들을 처리할 경우

대기 입력은 최근에 입력된 순서부터 순차적으로 처리합니다.

(A->B->C 순서로 입력했을 경우  A->C->B 순서로 처리됨)




입력한 순서대로 처리하는 임계부문을 만들어봅시다.



A. 스크립트 난독화 게시 안하는 사람 버전


1. 전역 정수 변수 A, B 2개를 만든다 (각각 이름은 aaa, bbb)
2. 행동 정의를 새로 만든다. (단축키 Ctrl+Alt+R)
3. 만든 행동 정의의 옵션에 하위 함수 체크
4. 하위 함수 유형을 행동으로 하나 만든다 (이름은 actions)
5. 부울 매개 변수 1개를 만든다. (이름은 lock)
6. 해당 행동의 사용자 지정 스크립트를 밑에거 복붙

#AUTOVAR(number,int) = gv_aaa;
gv_aaa += 1;
while ((#PARAM(lock)) || (#AUTOVAR(number) != gv_bbb)) {
    Wait(1.0, c_timeGame);
}
#PARAM(lock) = true;
#SUBFUNCS(actions)
gv_bbb += 1;
#PARAM(lock) = false;

9. 임계 부문 쓰듯이 쓴다.




B. 스크립트 난독화 게시하는 사람 버전


1~5는 위와 같음
6. 정수 매개 변수 2개를 만든다. (각각 이름은 a, b)
7. 정수 매개 변수 2개의 기본값을 설정한다 (a = aaa, b = bbb)
8. 해당 행동의 사용자 지정 스크립트를 밑에거 복붙
#AUTOVAR(number,int) = #PARAM(a);
#PARAM(a) += 1;
while ((#PARAM(lock)) || (#AUTOVAR(number) != #PARAM(b))) {
    Wait(1.0, c_timeGame);
}
#PARAM(lock) = true;
#SUBFUNCS(actions)
#PARAM(b) += 1;
#PARAM(lock) = false;

9. 임계 부문 쓰듯이 쓴다.




ps. 자날 초기 시절 임계 부문은 부울 변수가 참인 도중에 들어온 입력은 싸그리 무시했습니다.
while을 지우고 나머지 내용을 if (!#PARAM(lock))) { }에 넣는다면 이 때 임계 부문을 구현할 수 있을 것 같네요

지속적인 허위 신고시 신고자가 제재를 받을 수 있습니다.
신고 사유를 입력하십시오:

발도장 찍기
Touko-Aozaki (2014-09-01 14:32:22 KST)
1↑ ↓0
센스 이미지를 등록해 주세요
임계 부문이라는게 설마 critical section...?
댓글을 등록하려면 로그인 하셔야 합니다. 로그인 하시려면 [여기]를 클릭하십시오.
롤토체스 TFT - 롤체지지 LoLCHESS.GG
소환사의 협곡부터 칼바람, 우르프까지 - 포로지지 PORO.GG
배그 전적검색은 닥지지(DAK.GG)에서 가능합니다
  • (주)플레이엑스피
  • 대표: 윤석재
  • 사업자등록번호: 406-86-00726

© PlayXP Inc. All Rights Reserved.