Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

rg:デッキ機能の実装 #11

Open
ochaochaocha3 opened this issue Feb 5, 2015 · 6 comments
Open

rg:デッキ機能の実装 #11

ochaochaocha3 opened this issue Feb 5, 2015 · 6 comments
Assignees

Comments

@ochaochaocha3
Copy link
Member

トランプ、カードゲーム等のデッキを再現する機能を実装する。

参考にできるもの

@koi-chan
Copy link
Member

issue #51 の実装待ち

@koi-chan
Copy link
Member

koi-chan commented Nov 8, 2017

とりあえず状態を保存しない形で実装を開始しました。commit: f4b96b5
デッキの初期化と、山札からカードを引くコマンドを実装しました。

以下、コミットメッセージを転記します。

  • SDBMではなくHashに現在の記録を保存するように変更
    • TODO: このままではデータを保存しておけないため、仮のもの
  • RandomGenerator プラグインを参考に、デッキのデータファイルを読み込むようにした
  • ランダムモード(要するにランダムジェネレータと同じ機能)を廃止
  • 不要な関数定義を削除
  • デッキ・山札を新規作成するために用意していた準備を削除

@koi-chan
Copy link
Member

Pstore を使ってチャンネルごとのデッキ設定を記録することを検討中。

@koi-chan
Copy link
Member

koi-chan commented Dec 5, 2017

Pstore は Ruby 実行環境のバージョンに依存するらしい。
ということで、JSON ファイルに保存するようにしました。

koi-chan added a commit that referenced this issue Dec 5, 2017
正規表現の半角空白を \s で表現するように変更
issue: #11
koi-chan added a commit that referenced this issue Dec 5, 2017
デッキを破棄して、初期化するという処理
issue: #11
koi-chan added a commit that referenced this issue Dec 5, 2017
ToDo:
  * Generator で同様の処理が繰り返されているため、リファクタリングが必要

issue: #11
koi-chan added a commit that referenced this issue Dec 11, 2017
ChannelData をクラスとしてまとめ、Generator から抽象化した。

ToDo:
* ChannelData には存在するが、データファイルのないデッキの扱い

issue: #11
@koi-chan koi-chan self-assigned this Dec 11, 2017
@koi-chan
Copy link
Member

ChannelData クラスのメソッドにて、例外として投げるようにした諸々の処理について。
本来は何処までをエラーとして例外にして、何処までを通常の if での処理にすべきだったのだろうか。

@koi-chan
Copy link
Member

新しく、PR #134 を参考に実装する。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants