コード上で警告文が出ていると嫌な気分になります。
エラーではないため、そのままにしていても動くことが多いです。
ただ気持ち悪い、とても気持ち悪い!
中には関数やプロパティを誤った使い方をしているため、警告文が出ていることも多いため、放っておくのは感心しません。
前回、このプロジェクトのPUNを1.80に更新しました。
そしたら、出てくる出てくる警告文。
警告文は消毒だ!
この記事にはUnity5.5.1f1及びPUN1.80を使用しています。
なぜ警告文が……。
これが、PUNを1.80に更新した後の私のプロジェクトのConsoleウィンドウの様子です。
えらいことのなっておる。
警告文は常に気を付けて、見つけたら消すようにしているのですが突然なぜこんなことに……。
ただ警告文をよく見てみましょう
Room.playerCount
is obsolete:
PhotonPlayer.name
is obsolete:
PhotonPlayer.isLocal
is obsolete:
...
obsoleteばかりですね。
これは関数名やプロパティ名がPUN上で変更された可能性がありますね。
実際のソースコードを見てみましょう。
やっぱり、プロパティ名が変更されています。
PUNのチェンジログを見る限り。1.80から更新されたようですね。
それにしても、System.Obsolete
内ののコメントが実にいいですね。わかりやすいです。
どの名前のプロパティに変更すればいいのかが困らないのでとても助かります。
PUN1.80で変わったプロパティ一覧
さて、折角なのでPUN1.80で変更したプロパティを纏めておきます。
私が確認した限り、プロパティ名変更を促すSystem.Obsolete
が記述されていたのは以下の三つのファイルです。
- Room.cs
- PhotonPlayer.cs
- RoomInfo.cs
Room.cs
- name
→ Name - open
→ IsOpen - visible
→ IsVisible - propertiesListedInLobby
→ PropertiesListedInLobby - autoCleanUp
→ AutoCleanUp - maxPlayers
→ MaxPlayers - playerCount
→ PlayerCount - expectedUsers
→ ExpectedUsers - masterClientId
→ MasterClientId
PhotonPlayer.cs
- name
→ NickName - userId
→ UserId - isLocal
→ IsLocal - isMasterClient
→ IsMasterClient - isInactive
→ IsInactive - customProperties
→ CustomProperties - allProperties
→ AllProperties
RoomInfo.cs
- customProperties
→ CustomProperties - name
→ Name - playerCount
→ PlayerCount - isLocalClientInside
→ IsLocalClientInside - maxPlayers
→ MaxPlayers - open
→ IsOpen - visible
→ IsVisible
nameからNickNameなど大きな変化のものもありますが、基本Pascal形式に変わったようですね。
C#の命名規則は私もマイクロソフトの命名規則に乗っ取って使っていますので、コードに一貫性が出て助かります。
https://msdn.microsoft.com/ja-jp/library/ms229043(v=vs.110).aspx
まあUnityのプロパティ名はcamel形式なので、どっちにしろ完全に一貫性を持つことは難しいのですが……。
まだ警告文との戦いは続く……
さて、上記の廃止予定のプロパティ名を変更してUnityのConsoleウィンドウから警告文が一掃され綺麗にになりました。
いやぁ、よかったよかった。
さあ、これでいい気分でゲーム作りが出来そうです。
さっそく自分のコードを修正していきましょうか。
VisualStudioでビルドボタン、ポチっとな。
( д) ゚ ゚
UnityのConsoleウィンドウから警告文が消えても、VisualStudioではまだ警告文が出ていやがる。
まあ出ている内容は、warning CS0649とwarning CS0169だけです。
https://msdn.microsoft.com/ja-jp/library/03b5270t.aspx
https://msdn.microsoft.com/ja-jp/library/x7sk421w.aspx
PUN内で、フィールド初期化子で初期化していないものや、使われていない変数があるようですね。
こんな感じです。
まあ、特に大きな問題にはならなさそうですし、これは放っておきましょう。
PUNライブラリ内の警告文ですし、修正したところで、バージョンが上がればまた元に戻ってしまいますしね。
このぐらいにしておきましょう。
…。
……。
………。
嘘だけどな!
警告文は全て消毒だぜ!
みなさんはほどほどに。