close_btn
로그인, 회원가입후 더 많은 혜택을 누리세요 로그인 회원가입 닫기

[DR] CANMOVE

2016.12.08 22:23

우지냥 조회 수:524

원본

http://blog.naver.com/bug_ping/220556078742

 

function CANMOVE { // callfunc("CANMOVE", 오브젝트, 방향);

set .@id, getarg(0);

 

switch(getarg(1))

{

  case 0:

   set @x, get_x(.@id);

   set @y, get_y(.@id) - 1;

   break;

  case 1:

   set @x, get_x(.@id) + 1;

   set @y, get_y(.@id);

   break;

  case 2:

   set @x, get_x(.@id);

   set @y, get_y(.@id) + 1;

   break;

  case 3:

   set @x, get_x(.@id) - 1;

   set @y, get_y(.@id);

   break;

 

  default:

   set @x, get_x(.@id);

   set @y, get_y(.@id);

   break;

}

 

return ismove(.@id, @x, @y, -1, 31);

}

 

callfunc("CANMOVE", 오브젝트, 방향)

반환값은 0 혹은 1을 반환

1을 반환하면 그앞은 돈무브 좌표 즉 갈수없는 방향입니다.

 

응용

 

dasdf.gif

 

set @npcid, npcid(); // npc의 오브젝트 값을 불러옴

while(1) // 움직임을 계속 줘야하기 때문에 반복문을 돌림

{

  set @dir, get_dir(@npcid); // npc의 방향을 불러옴

  set @canmove, callfunc("MOBCANMOVE", @dir); // 사용자정의 함수로 돈무브 좌표 못가는 방향을 구해줌

 

  set @move_rand, rand(0, 3); // 우선 NPC에게 어느 방향을 가게할껀지 랜덤을 줌

  if(@dir == @move_rand && @canmove == 1) // 랜덤으로 방향을 정했지만 그방향이 돈무브 좌표일경우

  {

   set @dont_move, @move_rand; // 가지 말아야할 방향을 이 변수에 넣어줌

   for(;;) // 다른 방향이 나올때까지 돌려줌

   {

    set @move_rand, rand(0, 3);

    if(@dont_move != @move_rand) break; // 그후 폴문 종료

   }

  }

 

  move(@npcid, 1, @move_rand); // 랜덤 이동

  sleep(4000);

}

번호 제목 글쓴이 날짜 조회 수
25 [DR] F2 운영자 메뉴에 간단한 승급 변경 추가 호밍 2022.06.19 206
24 [ DH ] 초등학생도 이해할수있는 구축방법 [8] file 디에이치 2019.10.22 2234
23 DR구축 방법 및 스크립트 구성과 변수의 종류 [2] file 에이전시 2019.04.09 1854
22 dr] 대화창 스타일 혹등고래 2018.07.28 609
21 [DR] 함수 기능 정리 [1] 마사카 2017.01.06 2158
20 [DR] 류미피의 자문자답 DR관련 소소한 FAQ ver1.2 우지냥 2016.12.08 837
19 [기타] 몬스터 마법정보 및 마법데미지 우지냥 2016.12.08 613
18 DR] 각 직업별 승급마법 공식데미지 포함. 7.34 이전 공식자료 우지냥 2016.12.08 951
17 [기타] 각직업별 데미지 공식.(734이후기연마법종류) 우지냥 2016.12.08 609
» [DR] CANMOVE file 우지냥 2016.12.08 524
15 [DR] CR에서 DR로 넘어갈 때 혼동되지 않게 꼭 짚어봐야 하는 함수들! [1] 우지냥 2016.12.08 614
14 [DR] NPC 가상 PC 만들기 file 행복e 2016.11.30 532
13 [DR] 김태희의 모든 DB 양식목록. 16.2.16 NEW 최신화 행복e 2016.11.30 769
12 DR] 타라님의! 염색약을 만들어보자! 행복e 2016.11.30 312
11 [DR] CR에서 DR로 넘어갈 때 혼동되지 않게 꼭 짚어봐야 하는 함수들! 행복e 2016.11.30 333
10 [DR] Say 스크립트 /이동 맵이름 x y 추가 행복e 2016.11.30 312
9 [DR] DB 양식목록. 16.2.16 NEW 최신화 [1] 행복e 2016.08.01 601
8 [DR] 천상 미궁 좌표 현황입니다. file 행복e 2016.08.01 285
7 [DR] 염색약을 만들어보자! [2] 행복e 2016.08.01 315
6 [DR] Seol님의 부활마법 만들어보기! 행복e 2016.08.01 315
5 [DR] 전설의 소소 팁! 행복e 2016.08.01 567
4 [DR] 전설의 effect_xy file 행복e 2016.08.01 342
3 [DR] NPC 가상 PC 만들기 file 행복e 2016.08.01 248
2 [DR] 자문자답 DR관련 소소한 FAQ ver1.2 행복e 2016.08.01 619
1 [DR] CR에서 DR로 넘어갈 때 혼동되지 않게 꼭 짚어봐야 하는 함수들! [1] 행복e 2016.08.01 375