忍者ブログ
windowsやブラウザ のゲーム作ったりとか。

RPGツクールVX Aceのお話です。
今回は、スクリプトエディタでスクリプトをいじってみました。
その研究結果の覚書です。

課題は3つありました。
1.メニューから今回使わない項目を消す
2.フォントを変える。
3.今使ったアイテムが何だったかを取得する

1、2はヘルプやFSMさんの掲示板等のおかげで
3は半生さんのご助力により解決しました。
ありがとうございます!

------------------------------------------------------------
1.メニューから今回使わない項目を消す。

メニュー項目はデフォルトで7つ。
アイテム、スキル、装備、ステータス、並び替え、セーブ、ゲーム終了 がありますね。
その内アイテムとセーブだけを残します。

まず、スクリプトエディタの「Window_MenuCommand」のページを開きます。
44行目あたりに「● 主要コマンドをリストに追加」があるので
使わないコマンドの前に「#」を挿入してコメントアウトします。
(大体74行目くらいまでがコマンドの追加命令)

例)スキル、装備、ステータスをコメントアウトする。

  def add_main_commands
    add_command(Vocab::item,   :item,   main_commands_enabled)
    add_command(Vocab::skill,  :skill,  main_commands_enabled)
    add_command(Vocab::equip,  :equip,  main_commands_enabled)
    add_command(Vocab::status, :status, main_commands_enabled)
  end



  def add_main_commands
    add_command(Vocab::item,   :item,   main_commands_enabled)
#    add_command(Vocab::skill,  :skill,  main_commands_enabled)
#    add_command(Vocab::equip,  :equip,  main_commands_enabled)
#    add_command(Vocab::status, :status, main_commands_enabled)
  end

以上。
ちなみに、所持金のウィンドウも消したい場合は
Scene_Menuというページの「● 開始処理」から
「create_gold_window」という行をコメントアウト。
戦闘中、のコマンドを減らしたい時は
「Window_ActorCommand」の「● コマンドリストの作成」のとこです。

------------------------------------------------------------
2.フォントを変える。

一応前置きしておくと、「起動時のフォント」を変える方法です。
ゲーム中にフォントを変える方法はまだ模索中です。

「▼ メイン」と「Main」の間にページを挿入します。
挿入したページにフォントの変更命令を入れます。

    Font.default_name = "MT たれ"  #フォント変更
    Font.default_size = 18         #フォントサイズ変更
    Font.default_outline = false   #縁取り変更(デフォルトはtrueらしい)

上記以外の設定を変えたいときは
ヘルプをfontで検索するとプロパティの一覧が出てきます。

------------------------------------------------------------
3.直前に使用したアイテムのIDを取得する。

半生さんが、スクリプト素材を作ってくれました。
ありがとうございます。

ただアイテムIDを取得するだけでなく
使用されたのが、アイテムかスキルか
それを誰が使用したかまでわかるようにしてくださいました。

使い方は、「素材」の下に以下のスクリプトを挿入し
変数の指定をしている部分の変数IDを任意の番号に変更するだけです。

ご利用になる場合は、著作権は半生さんにあります。
 
 
#ここから
# 戦闘中のスキル、アイテムからコモンイベント起動するときに変数にID取得

module GetItemEventTrigger
  TRRIGER_TYPE_VAR      = 11 # 変数11 原因の種類 スキル:1, アイテム:2
  TRRIGER_ITEM_ID_VAR   = 12 # 変数12 原因のSkillID or ItemID
  TRRIGER_USER_TYPE_VAR = 13 # 変数13 使用者 アクター:1, エネミー:2
  TRRIGER_USER_ID_VAR   = 14 # 変数14 使用者のID ActorID or EnemyID
  module ExtendBattler
    def use_item(item)
      $game_variables[GetItemEventTrigger::TRRIGER_TYPE_VAR] = item.is_a?(RPG::Skill) ? 1 : 2
      $game_variables[GetItemEventTrigger::TRRIGER_ITEM_ID_VAR] = item.id
      $game_variables[GetItemEventTrigger::TRRIGER_USER_TYPE_VAR] = self.is_a?(Game_Actor) ? 1 : 2
      $game_variables[GetItemEventTrigger::TRRIGER_USER_ID_VAR] = self.is_a?(Game_Enemy) ? self.enemy_id : self.id
      super
    end
  end
end

class Game_Actor
  include GetItemEventTrigger::ExtendBattler
end

class Game_Enemy
  include GetItemEventTrigger::ExtendBattler
end
#ここまで


おしまい。
ゲーム製作に活かしたいと思います。
情報のご提供及びアドバイスくださった方々に感謝をこめて。
ありがとうございます!!

拍手[12回]

PR
この記事にコメントする
name
title
color
mail
URL
comment
pass   Vodafone絵文字 i-mode絵文字 Ezweb絵文字
secret (チェックを入れると管理人だけに表示できます)
広告枠
アクセス解析

ATOM  
ATOM 
RSS  
RSS 


ソフトウェア制作講座





Copyright ©   YUWAKA'S SOFT   All Rights Reserved
Design by MMIT / TemplateB3  Powered by NINJA TOOLS
忍者ブログ [PR]