RPG製作情報など
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
07/01/31記事の 『仲間をたくさん呼びつつABCvol.03』で、
変な記述をしていたので、修正してみた。
スクリプト内の↓部分なのだが、
# □戦闘中、隠れフラグがONの場合、戦闘不能を付加
self.add_state(0)
そもそも、xxx.exist?ってのは、存在判定で、! xxx.exist?(not xxx.exist? )は、
戦闘不能もしくは、隠れ状態の場合と同意なので、
隠れ状態の場合に、わざわざ、戦闘不能を付加する必要はなかったのだ...
しかも、xxx.add_state(ID)ってのは、ステートを付加する命令なのだが、
IDの部分が、0なので、全く意味のない命令になっていたのだ!
とりあえず、今回は↑部分の削除と、呼び出し(仲間を呼ぶ)が成功した場合に、
何かしらの、処理を追加できるように、call_end(user,target)を追記してみた。
例えば、『分裂』するエネミーを再現する場合、
処理的には、『仲間を呼ぶ』なのだが、使用者と対象のHP/SPを50%にする処理を
追加すれば、それっぽく見える? ってことで追加してみた。
変な記述をしていたので、修正してみた。
スクリプト内の↓部分なのだが、
# □戦闘中、隠れフラグがONの場合、戦闘不能を付加
self.add_state(0)
そもそも、xxx.exist?ってのは、存在判定で、! xxx.exist?(not xxx.exist? )は、
戦闘不能もしくは、隠れ状態の場合と同意なので、
隠れ状態の場合に、わざわざ、戦闘不能を付加する必要はなかったのだ...
しかも、xxx.add_state(ID)ってのは、ステートを付加する命令なのだが、
IDの部分が、0なので、全く意味のない命令になっていたのだ!
とりあえず、今回は↑部分の削除と、呼び出し(仲間を呼ぶ)が成功した場合に、
何かしらの、処理を追加できるように、call_end(user,target)を追記してみた。
例えば、『分裂』するエネミーを再現する場合、
処理的には、『仲間を呼ぶ』なのだが、使用者と対象のHP/SPを50%にする処理を
追加すれば、それっぽく見える? ってことで追加してみた。
PR
この記事にコメントする
仲間をたくさん呼びつつABC バグ?
hide様はじめまして、AntwerpBlueと申します。
【仲間をたくさん呼びつつABC】のスクリプトをお借りしたのですが、戦闘中に
スクリプトの247行目でNoMethodErrorが発生しました。
undefined method`[]'for nil:Class
と表示されました。
デフォルトのスクリプトを多少改造しているのでそれが原因かと思い新規作成し、
・スクリプト:無改造
・ステート名:仲間を呼ぶ
・効果範囲:使用者
・トループ設定:途中から出現
で試してみましたが同じ結果でした。
他に設定し忘れている所があるのでしょうか・・・。
お忙しいこととは思いますが、宜しくお願い致します。
【仲間をたくさん呼びつつABC】のスクリプトをお借りしたのですが、戦闘中に
スクリプトの247行目でNoMethodErrorが発生しました。
undefined method`[]'for nil:Class
と表示されました。
デフォルトのスクリプトを多少改造しているのでそれが原因かと思い新規作成し、
・スクリプト:無改造
・ステート名:仲間を呼ぶ
・効果範囲:使用者
・トループ設定:途中から出現
で試してみましたが同じ結果でした。
他に設定し忘れている所があるのでしょうか・・・。
お忙しいこととは思いますが、宜しくお願い致します。
Re:仲間をたくさん呼びつつABC バグ?
はじめまして、AntwerpBlueさん。
早速、本題ですが...
無改造でもエラーとのことですが、
>・スクリプト:無改造
>・ステート名:仲間を呼ぶ
>・効果範囲:使用者
>・トループ設定:途中から出現
>・ステート名:仲間を呼ぶ ←ココのステート名ではなく、スキル名です。
属性やステートなどの指定は在りません、単純に「名前」で認識させています。
他所では、ステート名や属性名を指定するのが一般的?ですので...
これでも不具合があるようでしたら、ご気軽にご一報頂ければ幸いです。
早速、本題ですが...
無改造でもエラーとのことですが、
>・スクリプト:無改造
>・ステート名:仲間を呼ぶ
>・効果範囲:使用者
>・トループ設定:途中から出現
>・ステート名:仲間を呼ぶ ←ココのステート名ではなく、スキル名です。
属性やステートなどの指定は在りません、単純に「名前」で認識させています。
他所では、ステート名や属性名を指定するのが一般的?ですので...
これでも不具合があるようでしたら、ご気軽にご一報頂ければ幸いです。
早速のご返答,有難うございます
早速のご返答、有難うございます。
前回の文章でステート名と書いていますが、スキル名の誤りです。(スキル名:仲間を呼ぶで設定しています。)
ご返信いただくまで気が付きませんでした。よく確認してから返信するべきでした。申し訳ありません。
エラーダイアログの出るタイミングもバラバラで、すぐに出る時もあれば長時間戦闘しないと出ない時もあります。
前回の文章でステート名と書いていますが、スキル名の誤りです。(スキル名:仲間を呼ぶで設定しています。)
ご返信いただくまで気が付きませんでした。よく確認してから返信するべきでした。申し訳ありません。
エラーダイアログの出るタイミングもバラバラで、すぐに出る時もあれば長時間戦闘しないと出ない時もあります。
Re:早速のご返答,有難うございます
私事ですが、今週は夜勤です。
不規則な時間の返信の為、ニートと思われると悲しいので(笑)
エラー箇所が247行目ということは、
if user.enemy_call["開始"] == true
↑部分でNoMethodError が起こっているようですね。
こちらの環境では再現できないのですが、検証してみます。
class Game_Enemy < Game_Battler
の8行目以下 # ■ オブジェクト初期化 が動作してないようです。
undefined method`[]'for nil:Class なので、↓全てが動作してないハズ
@enemy_call = {"開始"=>false,"対象"=>nil,"使用者ID"=>nil}
@plus_name = ""
@enemy_call_count = 0
@enemy_call_hidden = []
@call_index = 0
# □呼び出されたエネミーを含めたエネミー配列
$call_enemies = []
上記全てをオリジナルの
class Game_Enemy < Game_Battler
#--------------------------------------------------------------------------
# ● オブジェクト初期化
# troop_id : トループ ID
# member_index : トループメンバーのインデックス
#--------------------------------------------------------------------------
def initialize(troop_id, member_index)
super()
@troop_id = troop_id
@member_index = member_index
troop = $data_troops[@troop_id]
@enemy_id = troop.members[@member_index].enemy_id
enemy = $data_enemies[@enemy_id]
@battler_name = enemy.battler_name
@battler_hue = enemy.battler_hue
@hp = maxhp
@sp = maxsp
@hidden = troop.members[@member_index].hidden
@immortal = troop.members[@member_index].immortal
※※ ここから下に貼り付ける
@enemy_call = {"開始"=>false,"対象"=>nil,"使用者ID"=>nil}
@plus_name = ""
@enemy_call_count = 0
@enemy_call_hidden = []
@call_index = 0
# □呼び出されたエネミーを含めたエネミー配列
$call_enemies = []
end
これで一応、動作はすると思います。 根本的な解決ではないですが...
検証に時間が掛かると思いますが、hideに問題がある場合は修正volを公開します。
不規則な時間の返信の為、ニートと思われると悲しいので(笑)
エラー箇所が247行目ということは、
if user.enemy_call["開始"] == true
↑部分でNoMethodError が起こっているようですね。
こちらの環境では再現できないのですが、検証してみます。
class Game_Enemy < Game_Battler
の8行目以下 # ■ オブジェクト初期化 が動作してないようです。
undefined method`[]'for nil:Class なので、↓全てが動作してないハズ
@enemy_call = {"開始"=>false,"対象"=>nil,"使用者ID"=>nil}
@plus_name = ""
@enemy_call_count = 0
@enemy_call_hidden = []
@call_index = 0
# □呼び出されたエネミーを含めたエネミー配列
$call_enemies = []
上記全てをオリジナルの
class Game_Enemy < Game_Battler
#--------------------------------------------------------------------------
# ● オブジェクト初期化
# troop_id : トループ ID
# member_index : トループメンバーのインデックス
#--------------------------------------------------------------------------
def initialize(troop_id, member_index)
super()
@troop_id = troop_id
@member_index = member_index
troop = $data_troops[@troop_id]
@enemy_id = troop.members[@member_index].enemy_id
enemy = $data_enemies[@enemy_id]
@battler_name = enemy.battler_name
@battler_hue = enemy.battler_hue
@hp = maxhp
@sp = maxsp
@hidden = troop.members[@member_index].hidden
@immortal = troop.members[@member_index].immortal
※※ ここから下に貼り付ける
@enemy_call = {"開始"=>false,"対象"=>nil,"使用者ID"=>nil}
@plus_name = ""
@enemy_call_count = 0
@enemy_call_hidden = []
@call_index = 0
# □呼び出されたエネミーを含めたエネミー配列
$call_enemies = []
end
これで一応、動作はすると思います。 根本的な解決ではないですが...
検証に時間が掛かると思いますが、hideに問題がある場合は修正volを公開します。
カレンダー
12 | 2025/01 | 02 |
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
最新コメント
[08/04 Faust]
[05/26 takku]
[11/12 ぱんだ]
[06/28 AntwerpBlue]
[06/28 AntwerpBlue]
[02/07 ジャリン]
[02/07 ジャリン]
[02/05 白豆]
[11/28 I・S]
[11/26 I・S]
ブログ内検索
最古記事
(09/12)
(09/15)
(09/15)
(09/15)
(09/16)
カウンター
忍者アナライズ