多くのWebベースのテキストゲームは、実際の世界の時間がかかるタスクを持っています。基本的な例は、あるリソースを処理する必要があるゲームです。加工工場を「アップグレード」することができますが、そうすることで6時間かかることがあります。このアップグレードを行うことを選択した場合、6時間が経過するまで残りの時間画面以外の操作は実行できません。 PHPで書かれたゲームでこれがどのように達成されるのか、誰にも示唆はありますか?PHPテキストベースのゲームタイムパッセージ
答えて
それは実際にはかなり簡単です:
- 各タスクは、タスクがアクティブである間は、他のタスクが時に今
を開始することはできない
ですから、
とUser
とActive_Tasks
のための1のための
- ID
- 名
- 説明
- time_to_complete
と別のテーブルとテーブルTasks
を持つことができます
- のuser_id
- TASK_ID started_at
- ends_at
そして、あなたのPHPスクリプトで使用すると、それらのテーブルを照会し、更新するためのコードを対応しています。
説明から何かを試してみてください。どんなロードブロックにも当たったら、特定の部分について新しい質問をしてください。
答えはいくつかの異なるものに依存します。これをPHPで行う方法は複数あります。 例:
あなたは「処理工場は、」あなたは、PHPの睡眠かはusleep関数を使用することができ、アップグレードされている間に起こるために何かをしたくない場合。私はphp.netからドキュメントを読むだろうが、基本的には、xミリ秒間PHP関数の実行をさらに遅らせる。
"処理プラント"のアップグレード中にユーザーが他のタスクを実行できるようにする必要がある場合は、関数を起動した時点の正確なUNIXタイムスタンプを取得するtime関数を使用できます。ゲームで他の機能を実行するときには、それらの機能の1つが、アップグレードプロセスが完了するのを待つのに必要な時間を保持する変数に対してタイムスタンプをチェックすることができます。
希望します。
まずは、これらのゲームのほとんどはPHPで書かれていません(私があなたが話していることをよく知っています)。
PHPで実行する必要がある場合は、いくつかのタイプのデータベースも使用する必要があります(これは、mysqlをタグの1つとして持つこともできます)。
あなたのゲームで何をしたいかはわかりませんが、たとえばゲームのオブジェクトは、ユーザーがお互いに競合するビジネス向けのものであるとします。
表:ユーザー
- ID
- ユーザ名
- パスワード
表:business_types
- ID
- タイトル(例:ベーカリー、コーヒーショップ、小売店
- 価格(ビジネスのこのタイプを構築するためのコスト)
表:users_businesses(1人のユーザーが複数のビジネスを所有することができます)
- ID
- USER_ID(明らかにユーザテーブルに相当)
- business_type(corres
- レベル(現在のビジネスレベル)
- 最後のアクティビティ(datetime、あなたはビジネスをアップグレードできないクエリを実行できます。一定の時間が経過するまでレベルを上げてください。また、ビジネスレベルに応じて待つ時間を増やすことができます。レベルが上がるほど待ち時間が長くなります。待機時間が経過するまで、活動は行うことができない)
- 他のフィールドこのビジネスは時間あたりの生成どのくらいのお金のよう
表:。users_resources
- ID
- のuser_id
- 金額(正または負の整数。ユーザーはビジネスから毎時お金を得て、新しいビジネスのアップグレードや購入にお金を使うことができます)
これは単なる例です...ログインしていなくてもユーザーが1時間ごとに所有するビジネスごとにリソースを賞賛するには、cronジョブが必要です。
もう一度、これはPHPではないことをお勧めします。
- 1. Javaテキストベースのアプリケーション
- 2. テキストベースのメールのテスト
- 3. テキストベースのゲームでのUnboundLocalError
- 4. プロファイリング結果のテキストベースのビューア
- 5. テキストベースの冒険ゲームの冒険クラス
- 6. テキストベースのゲームの処理時間(Java)
- 7. Android Dev - アプリ内のテキストベースのゲーム
- 8. Java:テキストベースのrpgゲームのsetText GUIコード
- 9. テキストベースのユーザーインターフェイスライブラリ(CまたはC++)Windows?
- 10. 垂直配向テキストベースの弾丸
- 11. ラジオボックスのテキストベースを作成する方法
- 12. テキストベースの看板と十字架
- 13. テキストベースのAndroid RPGの場所、アイテム、および説明の保存
- 14. C++テキストベースの冒険のためのJavascriptインタプリタ
- 15. テキストベースのプログレスバーの実装はありますか?
- 16. 独自のテキストベースのデータストレージを作成する
- 17. バルクウェブサイトのクエリ使用して、テキストベースのブラウザは
- 18. Python乱数ジェネレータと通貨システムのテキストベースのRPG
- 19. C++でテキストベースのRPGゲーム/テンプレートを作成する際の問題
- 20. テキストベースのゲームにQtを使ったGUIを作成する
- 21. リフレクションを使用してテキストベースのメニューを構築する
- 22. テキストベースの計算機が動作しない
- 23. 単純なテキストベースの完全なWebページ回帰テスト
- 24. 音声ベースのテキストベースのソフトウェアの開発に関する問い合わせ
- 25. Javaテキストベースのゲームのシリアル番号ベースの保存システムを作成するには?
- 26. シンプルなテキストベースのデータファイルを解析するための正規表現
- 27. チャットAPI - TokBoxのようなサービスですが、テキストベースのチャットは可能ですか?
- 28. 円内の相対位置にテキストベースのdivを配置します
- 29. AS3 - テキストベースのファイルから変数をインポートするにはどうすればよいですか?
- 30. テキストベースのウェブページをより効率的に提供するにはどうすればよいですか?
それは貧しい質問ですが、それはimhoを閉めるべきではありません。 – Layke
詳細情報が役立ちます。おそらく、既存のコードのビットですか? – CoffeeRain