lklslel2016.11.15 15:03
맵 상에 이벤트로 돌아다니도록 되어있는 개체에게

적용하시려면 $gameMap 객체에서 처리를 하셔야 합니다.


이벤트의 번호를 알고 계신 경우에는

$gameMap._events[ 이벤트번호 ].changeSpeed();
$gameMap._events[ 이벤트번호 ].initSpeed();


이벤트가 발생하는 좌표만 알고 계실 경우에는

변수에

//change speed event
var cs;
var cse = $gameMap.eventsXy(x좌표,y좌표);

와 같이 담으신 다음에 for문을 통해

처음부터 끝까지 배열 인덱스를 훑으시면서

for(cs = 0;cs < cse.length;cs++){
switch(cse[cs]._characterIndex === 찾는 캐릭터의 인덱스 번호){
case true:
cse[cs].changeSpeed();
return true;
}
}

맵상에서 플레이어가 조작가능한 캐릭터와

움직이는 모든 요소에 대해서 적용하시려면

플레이어에게 적용할 것인지, 다른 개체에

적용할 것인지에 대한 분류용 데이터가 필요합니다.


Game_Character.prorotype.changeSpeed = function (category){
switch(category){
case "player":
//플레이어블 캐릭터의 속도 조절에 대한 스크립트
break;
case "npc":
//논-플레이어블 캐릭터의 속도 조절에 대한 스크립트
break;
};

예를 들어서 작성해보면 위와 유사한 구조가 되겠습니다.


따로 만들어 두시고 쓴다고 하면 생각보다는

훨씬 쉽게 작성하실 수 있을 겁니다.
파일 첨부

여기에 파일을 끌어 놓거나 파일 첨부 버튼을 클릭하세요.

파일 크기 제한 : 0MB (허용 확장자 : *.*)

0개 첨부 됨 ( / )






[개인정보취급방침] | [이용약관] | [제휴문의] | [후원창구] | [인디사이드연혁]

Copyright © 1999 - 2016 INdiSide.com/(주)씨엘쓰리디 All Rights Reserved.
인디사이드 운영자 : 천무(이지선) | kernys(김원배) | 사신지(김병국)