2016-07-08 13 views
0

私はゲームを書いています。ゲームの一環として、30秒以内に部屋から脱出できなければ、主人公は殺されます。私がDjangoでこれを行うことを可能にするメカニズムはありますか?私の現在の解決策は、Djangoで30秒後にイベントをトリガーする方法は?

InformProtagonists("Escape in 30 seconds!") 
time.sleep(30); 
if protagonists in room: 
    NotifyProtagonists("YOU DIE"); 

です。しかし、もっと良いアプローチがあるかどうかは疑問です。

+1

* "Django" *とは何を意味していますか?クライアント側でJSタイマーを実行できます。 – jonrsharpe

+0

マルチプレイヤーゲームです。 1人がタイマーを起動し、それは誰にも影響します... – Irvan

答えて

0
import threading 
timer = threading.Timer(30.0, KillPlayers, [request, player]) 
timer.start() 
0

私はdjangoをバックエンドのためだけに使用したいと考えています(DBからapiでデータを取得し、必要に応じてデータを送り返す)。

そして、残りの部分はreactreduxのようなjavascriptで処理してください。

djangoは本当に物を表示するために作られていません。

+1

面白い探しているpythonコード...! :) – wim

+0

:)そこに私の答えを混ぜる。彼は別の言語でそれをすべきだと言いたいと思っていました –

+0

django(とこの場合はpython)は問題の正しいツールではありませんが、あなたの答えではそれを明確にする必要があります。私は 'switch'コードサンプルはここでは必要ないと思います。 –

0

Djangoはサーバー側のWebフレームワークです。あなたはネットワークの要求と応答を通じてそれと対話します。バックエンドデータの管理以外にリアルタイムゲーム開発のどの部分にも適していません。

あなたはおそらく、いくつかのフロントエンドのJavaScriptを使ってゲームを構築する必要があります。

+0

これはマルチプレイヤーゲームであるという問題があります... – Irvan

+1

あなたはプレイヤーに他のプレイヤーと共有する必要があるデータをサーバーに送り返してもらいたいでしょう。 1つの本当に良い方法は、フロントエンドで[socket.io](http://socket.io/)のようなものを使うことです。 DjangoはNode.JSのようにバックエンドに適しているとは言えませんが、それは別の問題です。 :) –

関連する問題