질문과 답변

Extra Form

현재 파티에 있는 멤버의 액터 아이디를 취득해서 변수로  저장을시켰는데


이 취득한 수치의 해당 멤버의 능력이나 착용장비를 분기로 사용하고 싶은데 분기에서는


멤버를 변수로 선택하는 항목이 없어서 분기를 스크립트로 해야할거 같은데 스크립트 까막눈이라


관련 스크립트좀 알려주시면 감사하겠습니다.


고수님들의 도움이 절실합니다.

Comment '4'
  • profile
    러닝은빛 2014.10.20 00:02

    아예 필요에 따라 조건 분기 스크립트를 변경해서 사용하시는 건 어떻습니까?


    조건 분기도... 스크립트에서 처리되는데 그 처리 구문이 스크립트 에디터에 정의되어있습니다.


    그래서 원하는 대로 바꿀 수 있습니다.


    아래 스크립트를 소재 밑에 추가하면 됩니다.


    액터의 번호가 있는 변수의 번호를 아래 굵은 부분에 넣어주시면 조건 분기를 질문자님께서 원하는 방향으로 사용하실 수 있습니다.


    기존에 액터를 고를 수 있는 부분만 무시하시고 쓰면 됩니다. 액터를 골라도 어차피 액터의 번호가 저장되어있는 변수의 값으로 골라집니다.




    class Game_Interpreter

      def command_111

        result = false

        case @params[0]

        when 0  # Switch

          result = ($game_switches[@params[1]] == (@params[2] == 0))

        when 1  # Variable

          value1 = $game_variables[@params[1]]

          if @params[2] == 0

            value2 = @params[3]

          else

            value2 = $game_variables[@params[3]]

          end

          case @params[4]

          when 0  # value1 is equal to value2

            result = (value1 == value2)

          when 1  # value1 is greater than or equal to value2

            result = (value1 >= value2)

          when 2  # value1 is less than or equal to value2

            result = (value1 <= value2)

          when 3  # value1 is greater than value2

            result = (value1 > value2)

          when 4  # value1 is less than value2

            result = (value1 < value2)

          when 5  # value1 is not equal to value2

            result = (value1 != value2)

          end

        when 2  # Self switch

          if @event_id > 0

            key = [@map_id, @event_id, @params[1]]

            result = ($game_self_switches[key] == (@params[2] == 0))

          end

        when 3  # Timer

          if $game_timer.working?

            if @params[2] == 0

              result = ($game_timer.sec >= @params[1])

            else

              result = ($game_timer.sec <= @params[1])

            end

          end

        when 4  # Actor

          actor = $game_actors[[1,$game_variables[100]].max]

          if actor

            case @params[2]

            when 0  # in party

              result = ($game_party.members.include?(actor))

            when 1  # name

              result = (actor.name == @params[3])

            when 2  # Class

              result = (actor.class_id == @params[3])

            when 3  # Skills

              result = (actor.skill_learn?($data_skills[@params[3]]))

            when 4  # Weapons

              result = (actor.weapons.include?($data_weapons[@params[3]]))

            when 5  # Armors

              result = (actor.armors.include?($data_armors[@params[3]]))

            when 6  # States

              result = (actor.state?(@params[3]))

            end

          end

        when 5  # Enemy

          enemy = $game_troop.members[@params[1]]

          if enemy

            case @params[2]

            when 0  # appear

              result = (enemy.alive?)

            when 1  # state

              result = (enemy.state?(@params[3]))

            end

          end

        when 6  # Character

          character = get_character(@params[1])

          if character

            result = (character.direction == @params[2])

          end

        when 7  # Gold

          case @params[2]

          when 0  # Greater than or equal to

            result = ($game_party.gold >= @params[1])

          when 1  # Less than or equal to

            result = ($game_party.gold <= @params[1])

          when 2  # Less than

            result = ($game_party.gold < @params[1])

          end

        when 8  # Item

          result = $game_party.has_item?($data_items[@params[1]])

        when 9  # Weapon

          result = $game_party.has_item?($data_weapons[@params[1]], @params[2])

        when 10  # Armor

          result = $game_party.has_item?($data_armors[@params[1]], @params[2])

        when 11  # Button

          result = Input.press?(@params[1])

        when 12  # Script

          result = eval(@params[1])

        when 13  # Vehicle

          result = ($game_player.vehicle == $game_map.vehicles[@params[1]])

        end

        @branch[@indent] = result

        command_skip if !@branch[@indent]

      end

    end




  • ?
    귀칸 2014.10.20 12:47
    오오옷!감사합니다!
    크으 드디어 일일히 설정하던 조건분기 지옥에서 벗어날수 있겠군요 ㅠㅠ
    정말 다시 한번 감사의 말 드립니다.
  • ?
    귀칸 2014.10.20 13:21
    으으 기존의 분기들로만 하려니 제약이 너무 많네요..
    해당 멤버의 파타메터도 계산하고 변경도 해야하는데...
    다시 찾아봐야겠네요 ㅜ
  • profile
    러닝은빛 2014.10.20 15:29
    새롭게 올리신 질문에 답변을 달았습니다.

List of Articles
종류 분류 제목 글쓴이 날짜 조회 수
공지 묻고 답하기 가이드 습작 2014.06.14 12451
스크립트 작성 RMVXA 특정 상태에서 치명피해량이 증가하는 상태를 구현하고 싶습니다. 2 AAAA. 2023.09.22 36
스크립트 작성 RMVXA XAS를 사용하기 시작한 후 커맨드 혹은 @move_speed 이런걸로 이동속도 변경 불가 오류 질문 슈필러 2019.06.30 72
스크립트 작성 RMVXA 이동경로 스크립트 질문 환경사랑 2021.10.15 70
스크립트 작성 RMVXA 캐릭터 sprites 프레임 수정 file 게이킹덤 2020.03.25 115
스크립트 작성 RMVXA 스킬의 일괄 삭제와 특정 변수 값을 가진 스킬을 배우게 하고 싶습니다 김탲누 2020.05.11 48
스크립트 작성 RMVXA 메뉴의 Continue와 Exit의 스크립트 질문 4 해비 2021.11.28 173
스크립트 작성 RMVXA 파일이름 변경 배경 2020.07.10 58
스크립트 작성 RMVXA 챗GPT가 만들어준 스크립트 2 rsy1189a 2024.02.26 79
스크립트 작성 RMVXA 선택을 해야지 그래픽이 보이도록하고 싶습니다. 2 라임오렌지나무 2020.08.30 89
스크립트 작성 RMVXA Ace에서 게임 파일이름과 아이콘 변경방법을 알고싶습니다. 1 file 홍홍이1 2020.06.21 151
스크립트 작성 RMVXA vx ace) 변수에 스크립트 대입하는 방법 2 게임이만들고파 2021.03.13 169
스크립트 작성 RMVXA 스플래시 이미지를 매번 바뀌게 하고 싶습니다. 2 objuan 2019.07.29 203
스크립트 작성 RMVXA 이거 스크립트를 적용하고 싶은데 2 Wolfclaw 2020.03.19 125
스크립트 작성 RMVXA 타이틀에서 새로하기 눌러도 브금 안끊기게 하는 법 3 슈필러 2019.02.26 159
스크립트 작성 RMVXA 다시 올려봅니다.. 해상도 1280 x 720으로 하고싶어요 3 Lamiassss3 2019.04.25 2428
스크립트 작성 RMVXA 특정 위치 위에 있을 때 방향키나 기타 특정 키를 입력받았을때 정해진 기능이 실행되게 하려고 합니다. 1 무명유실 2019.12.09 68
스크립트 작성 RMVXA 오류 메세지 창 띄우기 2 file 핏치문 2019.05.29 235
스크립트 작성 RMVXA 러닝은빛 님의 한글메세지 시스템 스크립트 게시글이 삭제되서 해당 스크립트를 찾고 있습니다ㅠㅠ 2 objuan 2019.09.04 234
스크립트 작성 RMVXA 저장 스크린이 열릴 때에만 커서 효과음이 바뀌게 하는 법 슈필러 2019.07.07 57
스크립트 작성 RMVXA vx ace 스크립트 공부를 하고싶은데 혹시 참고나 시작에 도움이 될만한 자료가 있을까요? 2 무명유실 2019.11.11 208
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Next
/ 19