조회 수 225 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
몬스터 이름은 데이터 베이스에서 적케릭터에 쓰라고 하는 것입니다. 스크립트 부분에서 쓰느게 아니라.

그리고 역시 데이터 베이스의 속성에서 훔친다 라는 속성을 만들어 그 속성의 스킬을 작성하라는 것이군요.


>$game_special_elements["steal"] = $data_system.elements.index("훔친다")
                                                                                                 --------- 이부분 위 부분이
속성 부분 입니다.

그나저나 kgc 스크립트를 많이 가져다 쓰시면.. 차라리 kgc 스크립트가 완전 하게 적용된

스크립트를 가져다가 쓰시는게 낳지 않을까 싶네요....

그리고 kgc 사이트를 가보면 xp용 예제가 있습니다. 그걸 받아서 어떻게 적용시키는지 직접

연구해보는 것도 나쁘지 않다고 생각됩니다.



>스크립트는 다음과 같고. 설명도 밑과 같습니다.
>
>저거 에러는 없는 거 같은데
>
>'어떻게' 적용시킵니까?;
>
>어디에 몬스터 이름 넣고 어디에 아이템 써야 하는지 모르겠다는..
>
>참 난 감하네요; 대답 부탁드립니다!
>
>
>도입 후, 속성[ 훔친다 ](을)를 작성해, 스킬에 세트 해 주세요.
>이것이 「훔친다」효과를 가지는 스킬이 됩니다.
>
>(스킬 자체의) 명중율:[명중율]% 「훔친다」의 기본 성공율:[위력]%
>(기본 성공율은, 아군의 손재주가 있음과 적의 민첩함에 의해 변동)
>
>훔칠 수 있는 요소는
> 고블린 /I1 /W2
>(와)과 같이, [적명] /{종류}{ID} 그렇다고 하는 서식에서 설정합니다.
>(↑의 예에서는, 고블린으로부터 ID1의 아이템과 ID2의 무기를 훔칠 수 있다)
>종류 에는, 이하의 5종류를 지정할 수 있습니다.(대문자·소문자는 묻지 않는다)
>B :공난    I :아이템
>W :무기    A :방어구
>G :골드
>
>입수 판정은 좌측에서 순서에 행해져 우측만큼 성공율이 낮아집니다.
>( 「공난(B)」 「입수가 끝난 상태」 「실패」의 어느 쪽인가에 해당하면 우측으로 이행)
>성공율은 1개 오른쪽으로 갈 때 마다 반이 됩니다.(1%미만은 되지 않는다)
>즉, 기본 성공율이 80%라면 「2개목:40%」 「3개목:20%」…라고 하는 상태입니다.
>이것은 /B 그리고 공난을 지정했을 경우도 동일한의로,
> 가고일 /B /B /I8
>(와)과 같이 지정하면, 레어 아이템을 만드는 것이 가능합니다.
>
>
>#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
>#_/  ◆훔치는 - KGC_Steal◆
>#_/----------------------------------------------------------------------------
>#_/ 「훔친다」효과를 가지는 스킬을 작성합니다.
>#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
>
>#==============================================================================
># ★ 커스터마이즈 항목 ★
>#==============================================================================
>
>module KGC
># ◆성공시의 데미지 문자열
>STE AL_SUCCESS_DMG = "Stole"
>
># ◆아무것도 가지고 있지 않을 때의 메세지
>STEAL_EMPTY_MSG = "아무것도 가지고 있지 않다"
># ◆훔칠 수 없었을 때의 메세지
>STEAL_FAIL_MSG = "훔칠 수 없었다"
># ◆돈을 훔쳤을 때의 메세지
># 【{gold}…금액 {unit}…금의 단위】
>STEAL_GOLD_MSG = "「{gold}{unit}」훔쳤다!"
># ◆아이템을 훔쳤을 때의 메세지
># 【{item}…아이템명】
>STEAL_ITEM_MSG = "「{item}」를 훔쳤다!"
>end
>
>#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
>
>$imported["Steal"] = true
>
># 「훔친다」용속성
>$game_special_elements["steal"] = $data_system.elements.index("훔친다")
>
>#==============================================================================
># ■ RPG::Enemy
>#================================ ==============================================
>
>class RPG::Enemy
>#--------------------------------------------------------------------------
># ● 이름의 취득
>#--------------------------------------------------------------------------
>alias name_KGC_Steal name
>def name
>return name_KGC_ Steal.split(/ /)[0]
>end
>#--------------------------------------------------------------------------
># ● 훔칠 수 있는 요소의 일람을 취득
>#--------------------------------------------------------------------------
>def steal_items
>data = @name.split(/ /)
>data.delete_at(0)
>items = []
>for i in 0...data.size
>items[i] = data[i].split(/[/]([ABGIW])([0-9]+)?/i)
>items[i].delete_at(0)
>items[i][1] = items[i][1].to_i
>end
>return items
>end
>end
>
>#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
>
>#==================================================================== ==========
># ■ Game_Battler (분할 정의 3)
>#==============================================================================
>
>class Game_Battler
>#--------------------------------------------------------------------------
># ● 스킬의 효과 적용
># user : 스킬의 사용자 (버틀러)
># skill : 스킬
>#------- -------------------------------------------------------------------
>alias skill_effect_KGC_Steal skill_effect
>def skill_effect(user, skill)
># 「훔친다」속성을 가지고 있는 경우는 돌아온다
>return if skill.element_set.include?($game_special_elements["steal"])
>
># 원래의 처리를 실행
>return skill_effect_KGC_Steal(us er, skill)
>end
>#--------------------------------------------------------------------------
># ● 「훔친다」의 효과 적용
># user : 스킬의 사용자 (버틀러)
># skill : 스킬
>#--------------------------------------------------------------------------
>def steal_effect(user, skill)
># 위기 플래그를 클리어
>self.critical = false
># 스킬의 효과 범위가 HP 1 이상의 아군으로, 자신의 HP 가 0,
># 또는 스킬의 효과 범위가 HP 0 의 아군으로, 자신의 HP 가 1 이상의 경우
>if ((skill.scope == 3 || skill.scope == 4) && self.hp == 0) ||
>((skill.scope == 5 || skill.scope == 6) && self.hp >= 1)
># 메소드 종료
>return false
>end
># 훔친 요소를 클리어
>steal_item = nil
>
># 대상이 적, 한편 무적 상태의 경우
>if self.states.include?($game_state_invincible) &&
>(skill.scope == 1 || skill.scope == 2)
># 절대로 명중하지 않는다
>hit_result = false
>else
> # 第一命中判定
>      hit_result = (rand(100) < skill.hit)
>    end
>    # 命中の場合
>    if hit_result
>      # 基本成功率を計算
>      steal_prob = skill.power * user.dex / self.agi / 100.0
>      # 属性修正
>      steal_prob *= elements_correct(skill.element_set)
>      steal_prob /= 100
>      items = $data_enemies[self.id].steal_items
>      # 盗める要素があるか判定
>      count = 0
>      for i in 0...items.size
>        if (items[i][0] == "B" || items[i][0] == "b") ||
>            self.stolen_items_flag[i]
>          next
>        end
>        count += 1
>      end
>      # 盗める要素がある場合
>      if count > 0
>        # 成功率設定(最初は基本値の2倍)
>        hit = steal_prob * 200
>        # 成功判定
>        for i in 0...items.size
>          # 成功率半減
>          hit = [hit / 2, 1].max
>          # 既に盗んでいる場合は次へ
>          next if self.stolen_items_flag[i]
>          item = items[i]
>          hit_result = (rand(100) < hit)
>          # 成功した場合
>          if hit_result
>            case item[0].upcase
>            when "B"  # ブランク
>              self.stolen_items_flag[i] = true
>              next
>            when "I"  # アイテム
>              steal_item = $data_items[item[1]].name
>              $game_party.gain_item(item[1], 1)
>            when "W"  # 武器
>              steal_item = $data_weapons[item[1]].name
>              $game_party.gain_weapon(item[1], 1)
>            when "A"  # 防具
>              steal_item = $data_armors[item[1]].name
>              $game_party.gain_armor(item[1], 1)
>            when "G"  # ゴールド
>              steal_item = item[1]
>              $game_party.gain_gold(item[1])
>            end
>            # 成功フラグをオン
>            self.stolen_items_flag[i] = true
>            break
>          end
>        end
>      # 盗める要素が無い場合はそのまま
>      else
>        hit_result = true
>      end
>    end
>    # 成功の場合
>    if hit_result
>      # 何も持っていない場合
>      if steal_item == nil
>        self.damage = "Miss"
>        steal_item = "No Item"
>      # 成功した場合
>      else
>        self.damage = KGC::STEAL_SUCCESS_DMG
>      end
>    # ミスの場合
>    else
>      self.damage = "Miss"
>      steal_item = "Miss"
>    end
>    # メソッド終了(盗んだ要素を返す)
>    return steal_item
>  end
>end
>
>#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
>
>#==============================================================================
># ■ Game_Enemy
>#==============================================================================
>
>class Game_Enemy < Game_Battler
>  #--------------------------------------------------------------------------
>  # ● 公開インスタンス変数
>  #--------------------------------------------------------------------------
>  attr_accessor :stolen_items_flag        # 盗んだ要素フラグ
>  #--------------------------------------------------------------------------
>  # ● オブジェクト初期化
>  #     troop_id     : トループ ID
>  #     member_index : トループメンバーのインデックス
>  #--------------------------------------------------------------------------
>  alias initialize_KGC_Steal initialize
>  def initialize(troop_id, member_index)
>    # 元の処理を実行
>    initialize_KGC_Steal(troop_id, member_index)
>
>    @stolen_items_flag = []
>  end
>end
>
>#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
>
>#==============================================================================
># ■ Scene_Battle (分割定義 4)
>#==============================================================================
>
>class Scene_Battle
>  #--------------------------------------------------------------------------
>  # ● スキルアクション 結果作成
>  #--------------------------------------------------------------------------
>  alias make_skill_action_result_KGC_Steal make_skill_action_result
>  def make_skill_action_result
>    # 元の処理を実行
>    make_skill_action_result_KGC_Steal
>
>    # 「盗む」属性を持っている場合
>    if @skill.element_set.include?($game_special_elements["steal"])
>      target = @target_battlers[0]
>      @steal_item = target.steal_effect(@active_battler, @skill)
>    end
>  end
>  #--------------------------------------------------------------------------
>  # ● フレーム更新 (メインフェーズ ステップ 5 : ダメージ表示)
>  #--------------------------------------------------------------------------
>  alias update_phase4_step5_KGC_Steal update_phase4_step5
>  def update_phase4_step5
>    # 元の処理を実行
>    update_phase4_step5_KGC_Steal
>
>    if @steal_item != nil
>      case @steal_item
>      when "No Item"
>        @help_window.set_text(KGC::STEAL_EMPTY_MSG, 1)
>      when "Miss"
>        @help_window.set_text(KGC::STEAL_FAIL_MSG, 1)
>      when Integer
>        text = KGC::STEAL_GOLD_MSG.dup
>        text.gsub!(/{gold}/i) {"#{@steal_item}"}
>        text.gsub!(/{unit}/i) {"#{$data_system.words.gold}"}
>        @help_window.set_text(text, 1)
>      else
>        text = KGC::STEAL_ITEM_MSG.dup
>        text.gsub!(/{item}/i) {"#{@steal_item}"}
>        @help_window.set_text(text, 1)
>      end
>      @steal_item = nil
>      @wait_count = 30
>    end
>  end
>  #--------------------------------------------------------------------------
>  # ● フレーム更新 (メインフェーズ ステップ 6 : リフレッシュ)
>  #--------------------------------------------------------------------------
>  alias update_phase4_step6_KGC_Steal update_phase4_step6
>  def update_phase4_step6
>    # ヘルプウィンドウを隠す
>    @help_window.visible = false
>    @help_window2.visible = false if $imported["HelpExtension"]
>
>    # 元の処理を実行
>    update_phase4_step6_KGC_Steal
>  end
>end
?

  1. 쯔꾸르 mv 게임을 apk 파일로 변환했는데...

    Date2023.01.14 By박하맛 Views1330
    Read More
  2. 쯔꾸르 젖소이야기 결혼 방법좀 알려주세요...

    Date2021.12.20 By백지씨 Views2627
    Read More
  3. apk포팅 승인 어케 하나요?

    Date2021.11.29 Bygame메이커xp Views1257
    Read More
  4. Yanfly님의 Action Sequence Pack 질문드립니다

    Date2021.07.15 ByNeuromancer Views1541
    Read More
  5. 싸게 MV 를 먼저? 아니면 돈을 더 들어서라도 MZ?

    Date2021.07.06 ByXatra Views1752
    Read More
  6. RMMV - 스탯창과 대화창 변견 관련 질문입니다. (초보입니다 도움좀 주세요 ㅜㅜ)

    Date2021.01.22 Byscribble Views1553
    Read More
  7. 아오오니를 하는 사람인데요 질문 두가지가 있어요

    Date2021.01.16 By오니개무서워 Views1634
    Read More
  8. 재밌는게임

    Date2020.12.07 Byland_tnt Views1455
    Read More
  9. c언어 질문

    Date2020.11.10 By세종기항19 Views1684
    Read More
  10. 코딩 질문

    Date2020.11.08 By세종기항19 Views1539
    Read More
  11. 혹시나 물어보는데

    Date2020.11.07 By드래곤규 Views1402
    Read More
  12. 오픈보 게임 더블드래곤 리로디드 얼티네이트에 대해 궁금

    Date2020.09.09 By이부닝 Views1224
    Read More
  13. 상태이상 확률 결정

    Date2020.09.02 By스트레이보우 Views1006
    Read More
  14. 다음 인디사이드 제작대회는 언제쯤 열릴까요?

    Date2020.05.23 ByWOONAALAA Views963
    Read More
  15. xp로 제작된 어플 실행자체가 안된다는 분이 있습니다.(제생각엔 apk로 변환하는 과정에서 버전자체가 낮은 것 같습니다)

    Date2020.05.04 By라엔 Views1415
    Read More
  16. apk 포팅하는데 게임 이름이 필요합니다 뜨는데

    Date2020.05.03 Bykashu Views1350
    Read More
  17. 쯔꾸르VX Ace렉먹음 도와주세요...

    Date2020.03.22 By랖랖 Views1780
    Read More
  18. 안녕하세요

    Date2020.02.14 By청월령 Views834
    Read More
  19. 포팅 중 '게임 이름이 필요합니다' 오류

    Date2020.02.11 By아이비스 Views817
    Read More
  20. RPGMV 거리 추적

    Date2020.01.19 By정욱 Views931
    Read More
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 442 Next
/ 442


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

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