タイトル通りです よろしくおねがいします
スクリプトですが 以下のサイト様にて委託配布されているものです
http://declarewar.blog.fc2.com/blog-entry-6.html
零の軌跡風料理システム RGSS3において
合成するキャラクターを選択できるのですが
そのときに合成結果が3タイプ(通常、大成功、失敗)あるのですが
それぞれに加算される経験値を設定できるようにしたいです
わからないスクリプトを眺めておりましたが
やはりいくら眺めても解決の糸口すら見つからない有様です
規約がなくなったということなのでこちらでお願いしたいと思いました
どうかお力をおかし願えないでしょうか
スクリプトのレシピの横に取得できる経験値を表記するイメージです
【解決済】レーネ様の零の軌跡風料理システム RGSS3で製作者に経験値を加算するようにしたい
Re: レーネ様の零の軌跡風料理システム RGSS3で製作者に経験値を加算するようにしたい
軽く弄ってみたんですけど追加仕様がイマイチよく分からないです。
経験値の設定について
①.大成功、成功、予想外、失敗の4パターンで経験値を設定する(全料理共通)
②.レシピ毎に経験値を設定する
③レシピ毎、かつ成功3段階に応じて経験値を設定する
のどれでしょうか?
また、リザルト画面の表示領域がカツカツなんですけど獲得経験値の表示等はするのでしょうか?
するとしたらどこに加えるのでしょう?
経験値の設定について
①.大成功、成功、予想外、失敗の4パターンで経験値を設定する(全料理共通)
②.レシピ毎に経験値を設定する
③レシピ毎、かつ成功3段階に応じて経験値を設定する
のどれでしょうか?
また、リザルト画面の表示領域がカツカツなんですけど獲得経験値の表示等はするのでしょうか?
するとしたらどこに加えるのでしょう?
Re: レーネ様の零の軌跡風料理システム RGSS3で製作者に経験値を加算するようにしたい
返信ありがとうございます
3番を想定していました
が、書き込んだ後自分でも取得した経験値を表示できないなと思いました
作成前の成功率のウインドウを右に伸ばしてそこに追加できるといいなと思いました
画像のようにできますでしょうか?
自分ではどの程度改造できるのかわかっておらず
そんなことできないぞというようなことを言っていたら申し訳ありませんが
よろしくおねがいします
3番を想定していました
が、書き込んだ後自分でも取得した経験値を表示できないなと思いました
作成前の成功率のウインドウを右に伸ばしてそこに追加できるといいなと思いました
画像のようにできますでしょうか?
自分ではどの程度改造できるのかわかっておらず
そんなことできないぞというようなことを言っていたら申し訳ありませんが
よろしくおねがいします
Re: レーネ様の零の軌跡風料理システム RGSS3で製作者に経験値を加算するようにしたい
適当に弄るならこんな感じですかね
他人のコードなので理解が甘いところがあるかもしれません
544*416だとこのくらいが限界だと思いますけど
640*480やそれ以上の解像度ならもう少し余裕を持たせられますね
主に4点追加しています。
・レシピに対応した経験値の設定項目
・料理実行時に経験値の加算
・事前確認ウィンドウでの経験値表示
・リザルト画面でのレベルアップ簡易表示
4番目はデフォルトのレベルアップ表示だと違和感があったので勝手に追加しました
他人のコードなので理解が甘いところがあるかもしれません
544*416だとこのくらいが限界だと思いますけど
640*480やそれ以上の解像度ならもう少し余裕を持たせられますね
コード: 全て選択
#==============================================================================
# ■ 零の軌跡風料理システム拡張
#------------------------------------------------------------------------------
# 「零の軌跡風料理システム」よりも下のセクションに追加してください
#==============================================================================
module RENNE::COOKING
#--------------------------------------------------------------------------
# ◆ 設定項目
#--------------------------------------------------------------------------
# ITEMS[レシピID][:exp] = [大成功経験値, 成功経験値, 予想外経験値]
ITEMS[2][:exp] = [99999, 500, 200]
ITEMS[7][:exp] = [128, 64, 8]
STR_22 = "#{STR_14}【経験値】"
STR_23 = "levelup!"
module_function
#--------------------------------------------------------------------------
# ● レシピに対応した獲得経験値の取得
#--------------------------------------------------------------------------
def exp(recepe_id, idx)
ITEMS[recepe_id][:exp] ? (ITEMS[recepe_id][:exp][idx] || 0) : 0
end
end
class Game_Party < Game_Unit
#--------------------------------------------------------------------------
# ○ 料理開始
#--------------------------------------------------------------------------
alias :_old_go_cooking :go_cooking
def go_cooking(actor, item, number)
_old_go_cooking(actor, item, number)
gain_cooking_exp #
end
#--------------------------------------------------------------------------
# ● 料理による経験値獲得
#--------------------------------------------------------------------------
def gain_cooking_exp
actor = @cooking[:a]
exp_total = 0
@cooking[:oc].each_with_index do |item, i|
exp_total += RENNE::COOKING::exp(@cooking[:i].id, i) * item.size
end
last_level = actor.level
actor.change_exp(actor.exp + exp_total, false)
@cooking[:level_up] = last_level < actor.level
end
end
class Window_Cooking_Member_Info < Window_Base
#--------------------------------------------------------------------------
# ○ オブジェクト初期化
#--------------------------------------------------------------------------
def initialize(mw_w)
super(mw_w + 32, 48, 200 + 80, 144)
hide
draw_title
end
#--------------------------------------------------------------------------
# ○ タイトルの描画
#--------------------------------------------------------------------------
def draw_title
draw_text(0, 0, contents.width, 24, STR_22, 2)
draw_horz_line(24)
end
#--------------------------------------------------------------------------
# ○ リフレッシュ
#--------------------------------------------------------------------------
alias :_old_refresh :refresh
def refresh(actor)
_old_refresh(actor)
draw_gain_exp
end
#--------------------------------------------------------------------------
# ○ 成功率の描画
#--------------------------------------------------------------------------
def draw_suc_rate
[STR_8, STR_9, STR_10].each_with_index do |str, idx|
draw_text(0, (idx+2)*24, 104, 24, str)
draw_text(100, (idx+2)*24, 56, 24, suc_rate(idx).to_s + "%",2)
end
end
#--------------------------------------------------------------------------
# ● 取得経験値の描画
#--------------------------------------------------------------------------
def draw_gain_exp
3.times do |idx|
draw_text(160, (idx+2)*24, 88, 24, "#{exp(c_item.id, idx)}exp", 2)
end
end
end
class Window_Cooking_Result < Window_Base
#--------------------------------------------------------------------------
# ○ リフレッシュ
#--------------------------------------------------------------------------
alias :_old_refresh :refresh
def refresh(data)
@level_up = data[:level_up]
_old_refresh(data)
end
#--------------------------------------------------------------------------
# ○ リザルトの描画
#--------------------------------------------------------------------------
alias :_old_draw_result :draw_result
def draw_result
_old_draw_result
draw_level_up
end
#--------------------------------------------------------------------------
# ● レベルアップの描画
#--------------------------------------------------------------------------
def draw_level_up
return unless @level_up
change_color(system_color)
contents.font.size = 18
draw_text(0, 12, contents.width, 20, STR_23, 2)
reset_font_settings
end
end
主に4点追加しています。
・レシピに対応した経験値の設定項目
・料理実行時に経験値の加算
・事前確認ウィンドウでの経験値表示
・リザルト画面でのレベルアップ簡易表示
4番目はデフォルトのレベルアップ表示だと違和感があったので勝手に追加しました
Re: レーネ様の零の軌跡風料理システム RGSS3で製作者に経験値を加算するようにしたい
名無し蛙さま、ありがとうございます。
無事にできました
本当にありがとうございます
ほとんど諦めていたので本当に助かりました
お名前を表記させていただきます
無事にできました
本当にありがとうございます
ほとんど諦めていたので本当に助かりました
お名前を表記させていただきます
Re: レーネ様の零の軌跡風料理システム RGSS3で製作者に経験値を加算するようにしたい
すみません、もう一つお願いしたいのですが
取得した経験値の合計を表示する方法をお教え願いないでしょうか
取得した経験値の合計を表示する方法をお教え願いないでしょうか
Re: レーネ様の零の軌跡風料理システム RGSS3で製作者に経験値を加算するようにしたい
既にもう忘れかけてるんですけど
取得予想経験値を個数に応じて変動させるならこんな感じですかね
・Window_Cooking_Member_Infoにnumber_windowの参照を持つように仕様変更
・及び取得経験値予想に個数反映
取得予想経験値を個数に応じて変動させるならこんな感じですかね
・Window_Cooking_Member_Infoにnumber_windowの参照を持つように仕様変更
・及び取得経験値予想に個数反映
コード: 全て選択
#==============================================================================
# ■ 零の軌跡風料理システム拡張
#------------------------------------------------------------------------------
# 「零の軌跡風料理システム」よりも下のセクションに追加してください
#==============================================================================
module RENNE::COOKING
#--------------------------------------------------------------------------
# ◆ 設定項目
#--------------------------------------------------------------------------
# ITEMS[レシピID][:exp] = [大成功経験値, 成功経験値, 予想外経験値]
ITEMS[2][:exp] = [99999, 500, 200]
ITEMS[7][:exp] = [128, 64, 8]
STR_22 = "#{STR_14}【経験値】"
STR_23 = "levelup!"
module_function
#--------------------------------------------------------------------------
# ● レシピに対応した獲得経験値の取得
#--------------------------------------------------------------------------
def exp(recepe_id, idx)
ITEMS[recepe_id][:exp] ? (ITEMS[recepe_id][:exp][idx] || 0) : 0
end
end
class Game_Party < Game_Unit
#--------------------------------------------------------------------------
# ○ 料理開始
#--------------------------------------------------------------------------
alias :_old_go_cooking :go_cooking
def go_cooking(actor, item, number)
_old_go_cooking(actor, item, number)
gain_cooking_exp #
end
#--------------------------------------------------------------------------
# ● 料理による経験値獲得
#--------------------------------------------------------------------------
def gain_cooking_exp
actor = @cooking[:a]
exp_total = 0
@cooking[:oc].each_with_index do |item, i|
exp_total += RENNE::COOKING::exp(@cooking[:i].id, i) * item.size
end
last_level = actor.level
actor.change_exp(actor.exp + exp_total, false)
@cooking[:level_up] = last_level < actor.level
end
end
class Window_Cooking_Member_Info < Window_Base
#--------------------------------------------------------------------------
# ● 公開インスタンス変数
#--------------------------------------------------------------------------
attr_writer :number_window
#--------------------------------------------------------------------------
# ○ オブジェクト初期化
#--------------------------------------------------------------------------
def initialize(mw_w)
super(mw_w + 32, 48, 200 + 80, 144)
hide
draw_title
end
#--------------------------------------------------------------------------
# ○ タイトルの描画
#--------------------------------------------------------------------------
def draw_title
draw_text(0, 0, contents.width, 24, STR_22, 2)
draw_horz_line(24)
end
#--------------------------------------------------------------------------
# ○ リフレッシュ
#--------------------------------------------------------------------------
alias :_old_refresh :refresh
def refresh(actor)
_old_refresh(actor)
draw_gain_exp
end
#--------------------------------------------------------------------------
# ○ 成功率の描画
#--------------------------------------------------------------------------
def draw_suc_rate
[STR_8, STR_9, STR_10].each_with_index do |str, idx|
draw_text(0, (idx+2)*24, 104, 24, str)
draw_text(100, (idx+2)*24, 56, 24, suc_rate(idx).to_s + "%",2)
end
end
#--------------------------------------------------------------------------
# ● 取得経験値の描画
#--------------------------------------------------------------------------
def draw_gain_exp
number = @number_window ? @number_window.number : 0
3.times do |idx|
draw_text(160, (idx+2)*24, 88, 24, "#{exp(c_item.id, idx) * number}exp", 2)
end
end
end
class Window_Cooking_Result < Window_Base
#--------------------------------------------------------------------------
# ○ リフレッシュ
#--------------------------------------------------------------------------
alias :_old_refresh :refresh
def refresh(data)
@level_up = data[:level_up]
_old_refresh(data)
end
#--------------------------------------------------------------------------
# ○ リザルトの描画
#--------------------------------------------------------------------------
alias :_old_draw_result :draw_result
def draw_result
_old_draw_result
draw_level_up
end
#--------------------------------------------------------------------------
# ● レベルアップの描画
#--------------------------------------------------------------------------
def draw_level_up
return unless @level_up
change_color(system_color)
contents.font.size = 18
draw_text(0, 12, contents.width, 20, STR_23, 2)
reset_font_settings
end
end
class Scene_Cooking < Scene_MenuBase
#--------------------------------------------------------------------------
# ○ メンバーのインフォを表示するウィンドウの作成
#--------------------------------------------------------------------------
alias :_old_create_member_info_window :create_member_info_window
def create_member_info_window
_old_create_member_info_window
@info_window.number_window = @number_window
end
end
Re: レーネ様の零の軌跡風料理システム RGSS3で製作者に経験値を加算するようにしたい
ありがとうございます
実際に出来た(大成功、成功、予想外)経験値の合計は表示できないでしょうか?
実際に出来た(大成功、成功、予想外)経験値の合計は表示できないでしょうか?
Re: レーネ様の零の軌跡風料理システム RGSS3で製作者に経験値を加算するようにしたい
そういえば失敗する可能性があるから予想時点で個数に合わせて調整しても紛らわしいだけですね
思い出しました
ボツにしときましょうか
出来ますけども前回も言いましたけど表示スペースに余裕がない事が一番の問題ですね。
以前聞き忘れたんですけど解像度は544*416,あるいは640*480のどちらでしょうか?
入れるとしたらどの辺に挿し込めば良いのでしょう
思い出しました
ボツにしときましょうか
イシモチ さんが書きました:実際に出来た(大成功、成功、予想外)経験値の合計は表示できないでしょうか?
出来ますけども前回も言いましたけど表示スペースに余裕がない事が一番の問題ですね。
以前聞き忘れたんですけど解像度は544*416,あるいは640*480のどちらでしょうか?
入れるとしたらどの辺に挿し込めば良いのでしょう
Re: レーネ様の零の軌跡風料理システム RGSS3で製作者に経験値を加算するようにしたい
ありがとうございます
640*480です
こんな感じで一番上のところに合計が出るだけでもありがたいです
以前入れていただいたレベルアップ表示はなくてもかまいません
個別表示はあれば嬉しいですがなくてもかまいません
640*480です
こんな感じで一番上のところに合計が出るだけでもありがたいです
以前入れていただいたレベルアップ表示はなくてもかまいません
個別表示はあれば嬉しいですがなくてもかまいません