질문과 답변

Extra Form
음.. 이걸 스크립트 제작의뢰로 남겨야할지 말아야할지 모르겠지만..
 
일단 가능여부부터 알고자 여쭙습니다.
 
아시겠지만 XP의 [이동경로설정]은 병렬이 조금만 늘어도 왠만하면 다 십혀버립니다.
 
그래서 [순간이동]이라는 시스템을 투명으로 빠른속도로 이동시키기 보다는
 
액터로부터 2칸 앞의 좌표를 계산해서 [장소이동]:변수를 시켜두었는데~
 
무분별하게 [장소이동]이 되다보니 벽속으로도 이동이 됩니다.. 일명 사기스킬이 되는거죠..
 
그래서 [장소이동]:변수 이용시에 해당 위치변수(X,Y)에 해당하는 맵칩이 이동불능옵션이 걸려있을때 제한했으면 하는데
 
스크립트로 가능한지 여쭙습니다.
 
스크립트 고수분들의 의견이 간절합니다.
 
 
 bandicam 2012-08-01 16-10-59-757.jpg
 
 p's - XP입니다.
 
 
 
아마도 이게 스크립트로 구현된다면
 
텔레포트 기능을 이용하는 많은 분들에게 큰 도움이 될거라 예상됩니다!!!
 
 
 

Who's 칸타모

profile

3D 그래픽 디자이너 입니다. 하지만 디자이너라기 보단 개발자라는 명칭이 좋습니다.

기획에 목표가 있고, 그래픽에 몸담고 있으며, 팀관리에 적극적이며, 누구보다 열정적인 한 사람으로써...

Comment '6'
  • profile
    습작 2012.08.01 16:34

    0.


      만일 스크립트 자체를 수정한다고 생각하면 아래의 코드를 새로운 스크립트 섹션에 추가하세요.


    class Game_Player < Game_Character

      alias teleport_moveto moveto

      def moveto(x, y)

        return unless passable?(x, y, 0)

        teleport_moveto(x, y)

      end

    end


      굳이 스크립트 자체를 수정하지 않고 조건분기에서 스크립트를 사용하여 판단하는 방법도 있습니다.


       예를들면 조건분기란에 특정 지형태그인경우를 판별하거나 이동불가 구역을 판별하는 것이지요.


      예를들어 이동할 장소에 대해서 변수 m번에 x좌표를, 변수 n번에 y좌표를 대입했다고 가정했을 경우 (x,y)좌표의 지형태그가 a일 경우를 판별하기 위해 조건분기에 적어야 할 내용은 아래와 같습니다.


      $game_map.terrain_tag($game_variables[n], $game_variables[m]) == a


      마찬가지로 이동할 장소에 대해서 변수 m번에 x좌표를, 변수 n번에 y좌표를 대입했다고 가정했을 경우 (x,y)좌표가 통행불가인 경우를 판별하는 것은 다음과 같습니다.


      $game_player.passable?($game_variables[n], $game_variables[m], 0)


      아무래도 XP유저가 아닌관계로 부족할 수도 있습니다. 그 부분은 다른 분들께서 채워주시라 생각되는군요. 아무쪼록 좋은 제작활동하세요.^^


  • profile
    칸타모 2012.08.01 19:06

    역시 습작님 ㅎㅎ 신경써주셔서 감사합니다 ^^
    자체 스크립트 수정으로는 통하는 것 같지 않았지만,
    조건분기에 스크립트 추가가 효과가 있는 것 같네요!

     

    복잡하지 않을거란 생각은 했지만 단 한줄에 해결될줄은 꿈에도 몰랐습니다 ㅋ

    $game_player.passable?($game_variables[n], $game_variables[m], 3)

    이렇게 뒤에 3인 경우가 이동가능맵타일인것 같아서,
    텔레포트를 하는 조건에 넣어주었고, 나머지 경우 텔레포트를 종료하게
    해두었더니 완벽하게 해결되었습니다 감사합니다 ^^

    그런데 통행가/불에는 가능과 불가능 2가지만 있는데 어찌

    통행가에 해당하는 숫자가 3인지 모르겠내요..
    그럼 0,1,2중에 통행불가는 무엇이며, 통행불가가아닌 나머진 무슨 숫자일지 조금 궁금하긴하네요 ㅋ

  • profile
    습작 2012.08.01 19:34

    1.

     

      뒤쪽에 추가되는 숫자는 통행 방향입니다. 숫자패드를 보시면 쉽게 이해하시겠습니다만, 대걔 방향에 할당된 번호들은 8방을 가리킵니다. 


     ⑦⑧⑨

     ④○⑥

     ①②③


      위와 같이 보시면 될꺼라 생각되는군요. 방향의 합치 판정을 해야 하는데, 4방향 보행이므로 2, 4, 6, 8이 사용되고, 0과 10은 전방향 통행불가시 사용된다고 합니다. 사용하신 3의 경우 해당되지 않으므로 통행가능으로 된 것이지요. 하지만 8방향 이동과 같이 사용된다면 문제의 소지가 있으리라 생각되는군요.


      !$game_player.passable?($game_variables[n], $game_variables[m], 0)


      이런식으로 적어주시는 편이 더 나으리라 생각됩니다.


      그럼 수고하세요.^^



  • profile
    칸타모 2012.08.01 20:53
    3으로도 큰 문제는 없었지만, 조언해주신대로 0을 사용하여 마찬가지
    아무문제 없이 잘 사용하고있습니다!
    친절한 답변에 항상 감사하고있습니다 습작님! ^^ㅋ

    수고하세요!
  • profile
    JACKY 2012.08.02 20:23
    습작님도 말씀을 해주셨지만
    이런경우에는 passable?(x,y,d) 함수를 쓰심 됩니다.
    passable 함수가 true 면 통행가능, false 면 통행불가니
    이걸로 이동의 여부를 판단하면 됩죠.
  • profile
    칸타모 2012.08.02 21:02
    아 그런 방법도 있군요 ㅎㅎ 둘의 차이는 크게 없겠죠? ㅋ

List of Articles
종류 분류 제목 글쓴이 날짜 조회 수
공지 묻고 답하기 가이드 습작 2014.06.14 12448
Visual Novel 예전에 아방스님이 다시 올려주신 연시만2 링크가 안되네요 ㅠㅠ 1 AccelHacker 2016.12.03 269
Visual Novel 네코노벨로 미연시를 만드는데 캐릭터 일러스트가 부족하네요 ㅠㅠ 1 AccelHacker 2016.12.04 315
RMVXA 캐릭터 등장 연출 4 햇냔 2016.12.04 288
기타 특정 대사에서 에러가 발생해서 튕깁니다. file 종숙 2016.12.04 95
RMVXA 알만툴 온라인 새준 2016.12.07 467
RMVXA 맵전체를 일러스트화 시킬수있는방법은 없나요?? 25 file ckck 2016.12.08 3549
RMVXA 이벤트를 이용해 특정 스킬 사용시 추가 데미지를 주고 싶습니다. tricheur 2016.12.08 65
기타 스페이스바를 통해 대시기능을 넣고싶습니다. HaYul 2016.12.08 93
RPG XP한글판 새준 2016.12.09 456
기타 audio문제가 있습니다ㅠㅠ 세니 2016.12.10 607
RMVXA 캐릭터의 이동에 영향을 받지 않고 상단에 메세지를 띄울수 있는 방법에 대해 질문합니다. 겜맨602 2016.12.11 107
RMMV 타일셋은 어떻게 추가하는건가요? 4 강철군 2016.12.11 391
RMVXA 이벤트 연습.. 질문 1 배수지 2016.12.12 81
RMVX rpg maker vx 에서 움직이는 물체 삽입 1 업소용휴지 2016.12.12 176
RMMV 배틀시 프론트 뷰 관련 플러그인 있나요? AANNSS 2016.12.12 251
RMVXA 도트를 찍고 있는데요 1 file GyoBe 2016.12.14 203
RMMV Crafting System 플러그인 오류 겜제작광 2016.12.14 80
RMVXA 플레이어의 모습이 보이지 않습니다. 4 file Sleep 2016.12.15 95
RMVXA 해당 스크립트 사용방법 겜제작광 2016.12.16 81
RMMV 스크립트 while 문 ? for 문? 반복관련 질문드립니다... 1 몽롱하다 2016.12.16 109
Board Pagination Prev 1 ... 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 ... 516 Next
/ 516