シヴァのブログ

UnityやUE4や趣味とかいろいろ...

開発メモ 「現在の時刻、曜日を取得」

簡単でした。

忘れないようにメモ。

 

年:System.DateTime.Now.Year

月:System.DateTime.Now.Month

日:System.DateTime.Now.Day

時:System.DateTime.Now.Hour

分:System.DateTime.Now.Minute

秒:System.DateTime.Now.Second

 

曜日:System.DateTime.Now.DayOfWeek

 

以上です。

これでログイン機能を実装したり、

Update()関数とか、OnGUI()関数に入れて表示したら、

時計機能を実装できる。

曜日限定クエストとかの方法がやっと分かった。

 

ちなみに、

簡単なログイン機能は以下です。

***************************************************************************

if(System.DateTime.Now.Year == PlayerPrefs.GetInt("year") && System.DateTime.Now.Month == PlayerPrefs.GetInt("month") && System.DateTime.Now.Day == PlayerPrefs.GetInt("day")){
    //今日すでにログインている
}else{
    //今日初めてログインした
}

***************************************************************************

 

また、

曜日限定機能を考えてみてやってみると少しつまずいたので、

つまずいた点も含めてメモ。

まず、以下のようにして、やろうとするとエラーが出る。

***************************************************************************

//日曜日限定
if(System.DateTime.Now.DayOfWeek == "Sunday"){
    Debug.Log(1);
}

***************************************************************************

BCE0051: Operator '==' cannot be used with a left hand side of type 'System.DayOfWeek' and a right hand side of type 'String'.

 

if文内の右と左のタイプが違うらしい...。

という事で、

以下のように変更するとうまくいきました。

***************************************************************************

//日曜日限定
if("" + System.DateTime.Now.DayOfWeek == "Sunday"){
    Debug.Log(1);
}

***************************************************************************

 

 

メモメモ...。