ページ 11

ダメージ計算式で呼び出せる関数の定義

Posted: 2018年1月05日(金) 23:59
by grante
初めまして。granteと申します。
MVを購入して少し動かしてみましたが、自力での解決は困難と思いこちらで質問いたします。
スキルやアイテムに、ダメージの計算式という欄がありますが、(a.atkとか入る場所)
この欄で、独自の関数を呼び出せるようにしたいです。

a.atk * 4 / b.def *2 のようにパラメータだけでなく、hoge(1,8)と入力すれば、
関数hogeが呼び出されReturnの値が返ってくる、という形にしたいです。

GameBattler_Base.prototypeあたりが怪しいかなぁ、とは思っているのですが、
二進も三進もいきませんでした。
皆様のお力をお借りしたいです。よろしくお願いします。

Re: ダメージ計算式で呼び出せる関数の定義

Posted: 2018年1月06日(土) 00:59
by しぐれん
thisなどを付けずに呼び出すためには関数がグローバル名前空間で定義されている必要があります。
なので、即時間数などで囲わずに関数を書けばOKです。

コード: 全て選択

function hoge(a,b){
  return a * b;
}
こんな感じでスクリプトを張ればいけます。
ただ、グローバル名前空間は広いので、Game_Actionのメソッドとして作成する方がいいかもしれません。
ダメージ式でthisと書いた場合、それはGame_Actionを表します。

Re: ダメージ計算式で呼び出せる関数の定義

Posted: 2018年1月06日(土) 20:33
by grante
ありがとうございます。少し難しく考えすぎていたようです。
通常の関数として動かすことで、無事に動きました。
アドバイスありがとうございました。

また何かありましたら、質問させていただきます。よろしくお願いいたします