メメメモモ

プログラミング、筋トレ、ゲーム、etc

Unity5.4以上でジョーカースクリプトを動くようにする修正する

概要

ジョーカースクリプト|Unityで動くノベルゲーム開発環境

現在、ジョーカースクリプトは開発を停止しているようですので、エラーが出た時は自力で直す必要があります。

Unity5.4以上でジョーカースクリプトを導入して実行しようとすると、以下のようなエラーが出ます。

Assets/JOKER/Scripts/Novel/Core/SaveManager.cs(121,48): error CS0619: `UnityEngine.RuntimePlatform.WindowsWebPlayer' is obsolete: `WebPlayer export is no longer supported in Unity 5.4+.'

このエラーを自力で修正する方法を記載しております。

解決方法

1. コンソールを開く

[Window] -> [General] -> [Console] で、コンソールを開きます。

f:id:memememomo:20181027130955p:plain

2. コンソールからエラー該当の箇所のソースを開く

コンソールを開くと、警告メッセージやエラーメッセージが表示されているのが確認できます。赤いマークがついているメッセージがエラーです。メッセージをダブルクリックします。

f:id:memememomo:20181027131533p:plain

すると、何かしらのテキストエディタが開き、該当の箇所のソースコードが表示されます。

3. ソースを修正する

エラーが出ている箇所は複数ありますが、いずれも以下のようなif-else文が記載されている部分になります。

//WebPlayer の場合保存方法に変化を入れる
if (Application.platform == RuntimePlatform.WindowsWebPlayer || Application.platform == RuntimePlatform.OSXWebPlayer) {

    PlayerPrefs.SetString("setting.dat", json);

} else {

    string path = storagePath + "/setting.dat";

    .... 
}

if文に当たる箇所は削除し、else文の中身を残します。

f:id:memememomo:20181027132214p:plain

この作業をエラーが出ている箇所で繰り返しおこなって行きます。全て修正が終わったら、正常に動作するようになります。

解説

かつては、WebブラウザのプラグインとしてWebPlayerをインストールして、Unityで作ったアプリをその上で動かす方式がありました。Flashと同じですね。

5.4からはこの方式がサポートされなくなりました。今後はWebGLを使うのが推奨されているようです。

今回削除した部分は、WebPlayerに対応したコードでした。