Page 1 of 1

EventTrigger内のArbor.SendTriggerが<Missing ArborFSM.SendTrigger>になる

Posted: 2020/10/05 05:31
by Ingu111
OS : Windows10
Unityバージョン : Unity2019.4.11f
Arborバージョン : 3.69 → 3.74
ビルドプラットフォーム : Android IL2CPP
再現方法:
1.Arborバージョン3.69からアップデートガイドの手順通りに3.74にアップデート。
2.以前はEventTrigger内に存在していたArborFSM.Sendtriggerがなくなり、<Missing ArborFSM.SendTrigger>となってしまい。
TriggerがArborFSMへ送れなくなる。

EventTriggerなどで組み込んでいたSendtriggerが使えない状態になっております。
念のため、新たなプロジェクトでArborを導入して確認した所。EventTrigger内のArborFSM.SendTrigger事体が存在しないので、
仕様変更に伴うアップデートの場合、対処方法を教えてもらえれば幸いです。

Re: EventTrigger内のArbor.SendTriggerが<Missing ArborFSM.SendTrigger>になる

Posted: 2020/10/05 06:15
by caitsithware
ご報告ありがとうございます。

ArborFSM.SendTriggerの引数が2個(追加分はデフォルト値アリ)になったことにより、Unity側のEventTrigger(正確にはUnityEvent)では使用できなくなったようですね。
SendTriggerをUnityEvent経由で呼び出す点については想定外でしたが、呼び出せると便利な利点もありますので対応いたします。

また、SendTriggerは対応いたしますが、他のArbor側のメソッドについてはUnityEvent経由で呼び出すことを全て想定するのは困難なので原則サポート外とさせてください。
SendTrigger以外でもUnityEvent経由で呼び出すところがありましたら、一旦ラッパークラスを介してUnityの仕様とArborの仕様の齟齬を回避するなどの対策をお願いいたします。
(追記:必要であれば個別に報告していただければ出来る限り対応いたします)

対処方法:
  • Assets/Plugins/Arbor/Internal/Scripts/StateMachine/ArborFSMInternal.csを開く。
  • 1872行目を以下のように変更。

    Code: Select all

    public void SendTrigger(string message, SendTriggerFlags flags)
  • 1925行目に以下のコードを追加。

    Code: Select all

    public void SendTrigger(string message)
    {
    	SendTrigger(message, allSendTrigger);
    }
    

Re: EventTrigger内のArbor.SendTriggerが<Missing ArborFSM.SendTrigger>になる

Posted: 2020/10/27 07:43
by caitsithware
Arbor 3.7.5にて修正いたしました。
アセットストアから再DLし、リリースノートやreadme記載の更新手順に従って再インポートしてください。
Arbor 3.7.5 リリース | Arbor 3