初めて質問させていただきます。
件名の通り、アイテムを消費して使用する武器と、武器自体を投げて使用する武器(投げナイフなど)を
作りたいと思いましたが、それらしいプラグインもなかったので素人なりにスクリプトを書いてみました。
しかし、思うように動かないのが現状です。
スクリプトは以下の通りです。
------------------------ここから------------------------
(function() {
Game_Action.prototype.makeDamageValue = function(target, critical) {
var item = this.item();
var baseValue = this.evalDamageFormula(target);
var value = baseValue * this.calcElementRate(target);
if (this.isPhysical()) {
value *= target.pdr;
}
if (this.isMagical()) {
value *= target.mdr;
}
if (baseValue < 0) {
value *= target.rec;
}
if (critical) {
value = this.applyCritical(value);
}
value = this.applyVariance(value, item.damage.variance);
value = this.applyGuard(value, target);
value /= this.checkUseWeapon(target); //必要なアイテムが無い場合は攻撃力ダウン
value = Math.round(value);
return value;
};
Game_Action.prototype.checkUseWeapon = function(target) {
var weapon = target._equips[0]._itemId;
if (weapon.meta.use_item) {
if ($dataItems[weapon.meta.use_item] >= 1) {
$gameParty.loseItem($dataItems[weapon.meta.use_item], 1);
return 1;
} else {
return 4;
}
} else if (weapon.meta.use_weapon) {
$gameParty.loseItem($dataWeapons[weapon], 1, true);
return 1;
}
return 1;
};
})();
------------------------ここまで------------------------
補足ですが、武器のメモ欄に<use_item:1>として、アイテムの番号を指定します。
投擲武器の場合は<use_weapon>としています。
また、テストプレイにてアクターが攻撃しようとすると「Cannot read property '0' of undefined」と表示され、
エネミーが攻撃しようとすると「Cannot read property 'use_item' of undefined」と表示されます。
後者についてはアクターかエネミーかを判別して条件分岐すれば回避できそうな気もしますが……。
javascriptの知識も乏しく、限界を感じましたので、皆様のお力添えをいただきたいと思います。
どうぞよろしくお願いいたします。
【解決済】アイテム消費武器&投擲武器
【解決済】アイテム消費武器&投擲武器
最後に編集したユーザー 安曇野 [ 2017年7月09日(日) 17:11 ], 累計 1 回
Re: アイテム消費武器&投擲武器
追記
書き忘れておりました。
テストプレイに関しては投擲武器を試してそこでつまづいてしまいましたので、
アイテム消費武器についてはチェックしておりません。
よろしくお願いします。
書き忘れておりました。
テストプレイに関しては投擲武器を試してそこでつまづいてしまいましたので、
アイテム消費武器についてはチェックしておりません。
よろしくお願いします。
Re: アイテム消費武器&投擲武器
安曇野様
お世話になります。
エラーが出るのはエネミーに装備が設定されていないからです。
お世話になります。
エラーが出るのはエネミーに装備が設定されていないからです。
RPGで笑顔を・・・
ツイッター(ツクラーの巣窟)(閲覧は自己責任でお願いします)
https://twitter.com/mattuup
github
https://github.com/mattuup/RPGMakerMZ
ツイッター(ツクラーの巣窟)(閲覧は自己責任でお願いします)
https://twitter.com/mattuup
github
https://github.com/mattuup/RPGMakerMZ
Re: アイテム消費武器&投擲武器
こんばんは。
おそらく2つとも、「武器ごとに通常攻撃のIDを指定するプラグイン」と「アイテムを消費するスキルのプラグイン」で可能だと思います。
前者は特典のプラグインに WeaponSkill.js というのがあります。
後者は「ひきも記は閉鎖しました。」様(http://hikimoki.sakura.ne.jp/index.html)にスキルコスト拡張というプラグインがあるので、そちらを利用されると良いと思います。
おそらく2つとも、「武器ごとに通常攻撃のIDを指定するプラグイン」と「アイテムを消費するスキルのプラグイン」で可能だと思います。
前者は特典のプラグインに WeaponSkill.js というのがあります。
後者は「ひきも記は閉鎖しました。」様(http://hikimoki.sakura.ne.jp/index.html)にスキルコスト拡張というプラグインがあるので、そちらを利用されると良いと思います。
---------------------------------------------------------------------------------------
[Homepage] http://nyannyannyan.bake-neko.net/
RGSS3/RGSS2/Pluginの配布を行っています。
HPでのみ配布しているPluginもあります。
[Blog] http://kazaricat.blog.fc2.com/
主にゲーム製作の進捗。
[Plugin]
サンプルに「ゆるドラシル」を使用します(`・ω・´)
http://yurudora.com/tkool/
[Homepage] http://nyannyannyan.bake-neko.net/
RGSS3/RGSS2/Pluginの配布を行っています。
HPでのみ配布しているPluginもあります。
[Blog] http://kazaricat.blog.fc2.com/
主にゲーム製作の進捗。
[Plugin]
サンプルに「ゆるドラシル」を使用します(`・ω・´)
http://yurudora.com/tkool/
Re: アイテム消費武器&投擲武器
◆まっつUP様◆
早速の返信ありがとうございます。
コードの書き直しをしてみました。
また、以前は
となっていましたが、これでは以降がおかしくなってしまうので修正しました。
ただ、これではエラーが出てうまく動きませんでした。
アクターかエネミーかを判別する方法は調べてもなかなか見つからず、おそらくこれだろうというところです。
◆ぶちょー様◆
プラグインの紹介ありがとうございます。
たしかに、教えてくださったプラグインでいけそうですね。
勉強がてら自分で作ってみたいので、紹介されたプラグインのスクリプトを参考にしてみようかと思います。
早速の返信ありがとうございます。
コードの書き直しをしてみました。
コード: 全て選択
Game_Action.prototype.checkUseWeapon = function(target) {
if (target.isActor()) {
var weapon = target._equips[0];
if (weapon.meta.use_item) {
if ($dataItems[weapon.meta.use_item] >= 1) {
$gameParty.loseItem($dataItems[weapon.meta.use_item], 1);
return 1;
} else {
return 4;
}
} else if (weapon.meta.use_weapon) {
$gameParty.loseItem($dataWeapons[weapon.item_Id], 1, true);
return 1;
}
}
return 1;
};
コード: 全て選択
var weapon = target._equips[0]._itemId;
ただ、これではエラーが出てうまく動きませんでした。
アクターかエネミーかを判別する方法は調べてもなかなか見つからず、おそらくこれだろうというところです。
◆ぶちょー様◆
プラグインの紹介ありがとうございます。
たしかに、教えてくださったプラグインでいけそうですね。
勉強がてら自分で作ってみたいので、紹介されたプラグインのスクリプトを参考にしてみようかと思います。
Re: アイテム消費武器&投擲武器
>>安曇野様
ご自身での制作の件、了解したしました。
答えを言うだけなのは簡単ですが、勉強されているということですので、
お節介ながら、いくつか助言をさせてください。
……書いてから、本当にお節介かもと思い、添付ファイルにまとめました。
不要であれば見なくても大丈夫です。
adivice.txt に助言が書いてあります。答えは書いてありません。
useItemOrWeapon.txt は私なりに書いたスクリプトです。
ご自身での制作の件、了解したしました。
答えを言うだけなのは簡単ですが、勉強されているということですので、
お節介ながら、いくつか助言をさせてください。
……書いてから、本当にお節介かもと思い、添付ファイルにまとめました。
不要であれば見なくても大丈夫です。
adivice.txt に助言が書いてあります。答えは書いてありません。
useItemOrWeapon.txt は私なりに書いたスクリプトです。
- 添付ファイル
-
advice.txt
- (765 バイト) ダウンロード数: 26 回
-
useItemOrWeapon.txt
- (1.37 KiB) ダウンロード数: 47 回
---------------------------------------------------------------------------------------
[Homepage] http://nyannyannyan.bake-neko.net/
RGSS3/RGSS2/Pluginの配布を行っています。
HPでのみ配布しているPluginもあります。
[Blog] http://kazaricat.blog.fc2.com/
主にゲーム製作の進捗。
[Plugin]
サンプルに「ゆるドラシル」を使用します(`・ω・´)
http://yurudora.com/tkool/
[Homepage] http://nyannyannyan.bake-neko.net/
RGSS3/RGSS2/Pluginの配布を行っています。
HPでのみ配布しているPluginもあります。
[Blog] http://kazaricat.blog.fc2.com/
主にゲーム製作の進捗。
[Plugin]
サンプルに「ゆるドラシル」を使用します(`・ω・´)
http://yurudora.com/tkool/
Re: アイテム消費武器&投擲武器
ぶちょー様
アドバイスとスクリプトありがとうございます!
お節介だなど、とんでもございません。
さっそくアドバイスの方を読ませていただきました。これを参考に直していってみようと思います。
書いていただいたスクリプトは自分で完成させた暁に、もしくはどうしても行き詰った際に開こうかと思います。
私のために時間を割いていただき、ありがとうございました。
アドバイスとスクリプトありがとうございます!
お節介だなど、とんでもございません。
さっそくアドバイスの方を読ませていただきました。これを参考に直していってみようと思います。
書いていただいたスクリプトは自分で完成させた暁に、もしくはどうしても行き詰った際に開こうかと思います。
私のために時間を割いていただき、ありがとうございました。
Re: アイテム消費武器&投擲武器
あ、良かったです。
私もJavascriptは勉強中でして、何かの足しになれば幸いです。
私もJavascriptは勉強中でして、何かの足しになれば幸いです。
---------------------------------------------------------------------------------------
[Homepage] http://nyannyannyan.bake-neko.net/
RGSS3/RGSS2/Pluginの配布を行っています。
HPでのみ配布しているPluginもあります。
[Blog] http://kazaricat.blog.fc2.com/
主にゲーム製作の進捗。
[Plugin]
サンプルに「ゆるドラシル」を使用します(`・ω・´)
http://yurudora.com/tkool/
[Homepage] http://nyannyannyan.bake-neko.net/
RGSS3/RGSS2/Pluginの配布を行っています。
HPでのみ配布しているPluginもあります。
[Blog] http://kazaricat.blog.fc2.com/
主にゲーム製作の進捗。
[Plugin]
サンプルに「ゆるドラシル」を使用します(`・ω・´)
http://yurudora.com/tkool/