Releases: MihailJP/MiHaJong
Releases · MihailJP/MiHaJong
Version 2.4.3 令和3年11月12日
Version 2.4.2 令和3年11月9日
- Ver2.4.xでデータが正しく初期化されていなかったのを修正
- ルール設定画面のページ見出しが一部空欄になるのを修正
Version 2.4.1 令和3年11月9日
- Ver2.4.0で瀬戸内三麻の実行ファイルがないのを修正
Version 2.4.0 令和2年11月15日
- 牌譜CSSの改修とWOFFの追加
- Linux版でlibsafecに対応(オプション)
- オープン立直の役満払いの条件を設定できるようにする
- addyaku.mdを次期バージョン向けに修正
- コードをリファクタリング
Version 2.3.5 令和2年11月8日
- 瀬戸内三麻で赤五が正しく設定されないのを修正
- ドキュメント(HTML)の不体裁を修正
Version 2.3.4 令和2年10月22日
- 三人打ちで東二局以降の牌姿が記録されないのを修正
- 三人打ちで抜きドラありの場合に残り牌が4枚少なく表示されるのを修正
- 青天井ルールで13翻扱いにした役満の名前が表示されないのを修正
Version 2.3.3 令和2年10月9日
- 吃三辺、吃四辺、吃小順、吃大順が正しく判定されていなかったのを修正
- 鏡同和の判定が正しくないのを修正
- 凱旋門の判定が正しくなかったのを修正
- コードのリファクタリング
Version 2.3.2 令和2年10月3日
- 三人打ちのネット対戦が進行しなかったのを修正
- ネット対戦を続けて行おうとすると落ちるのを修正
- ネット対戦終了後にデモ画面が進まなくなるのを修正
- 並べ替えの同期処理を修正
- 鳴きの問い合わせ前に状態を同期するようにする
- 特定の条件でポンがチーになるバグを修正
- 特定の条件で鳴くと多牌になるバグを修正
- カンできないけどポンできる状況で状況でポンしようとしたとき牌選択が出ないようにする
- 音量設定が読み込まれていなかったのを修正
- ウィンドウ初期化処理を修正
- Lua 5.4.0に更新
- libogg 1.3.4/libvorbis 1.3.7に更新
- 一部コードのリファクタリング
Version 2.3.1 令和元年12月28日
- Linux/Mac環境でBGMのパスが正しくなかったのを修正
- Windows版にコンフィグツールを用意(4月のリリースで用意していたものの入れ忘れ)
- 開発環境をVisual Studio 2019に切り替え
- 開発用PCをリプレース
- ビルドに関する問題の修正
Version 2.3.0 平成31年4月28日
- MITライセンスに変更
- 開発環境をVisual Studio 2017に切り替え
- Visual Studioでビルド時.dllを.binにする
- Windows XPを対象から外す
- x64に対応
- Visual Studioのコード分析を有効化
- 瀬戸内三麻を追加
- Macでも動くようにする(但しXQuartz依存)
- タイトル画面の修正
- タイトル画面にバージョン番号を表示するようにする
- タイトル画面で放置するとデモプレイが始まるようにする
- タイトル画面、ロード画面に背景を追加
- 卓進行中の挙動を修正
- 手牌のoff-by-oneエラーを修正
- 鳴いた赤ドラが計上されないバグを修正
- 特定の状況で捨て牌の表示に失敗する問題に対処
- 捨て牌表示処理で落ちることがある問題に対処
- 和了表示に鳴いた牌が表示されなかったのを修正
- 花牌を誤ってダブルカウントしていたのを修正
- 三麻で居ないプレイヤーに「不聴」と表示されるのを直す
- AIの食い変えに対処
- リーチ後の暗槓・花牌選択で牌が暗転しないのを修正
- チー、ポンのときに複数候補がある場合は最大2枚選択するように変更
- キーボード操作でWASDも使えるようにする
- コンフィグ周りの挙動修正
- 打牌などの制限時間を設定できるようにする
- マウスホイールでのページ送りの方向を反転
- 設定ツールを別アプリに独立させる
- 環境設定INIファイルで大文字と小文字を区別しないようにする
- ルール設定が保存できなかったのを修正
- 北の漁場の設定項目の誤りを修正
- Windows以外でコンフィグファイルのパスが正しくないのを修正
- チャットウィンドウを廃止
- 時計の位置をサイドバー(以前チャットウィンドウがあった場所)に移動
- 牌譜出力機能のデバッグと機能変更
- XML牌譜がill-formedになる問題を修正
- テキスト形式、HTML形式の牌譜を廃止
- 牌譜にサイコロの出目を記録するようにした
score-after
を記録しないようにする- ルール設定で冗長なものを牌譜に出力しないようにする
- 割れ目や導火線の位置を牌譜に出力
- 割れ目、導火線の位置コメントをXSLTに反映
- 牌譜に役情報を記録するようにする
- 嵌張または大きい方を吃した時のバグを修正
- 花牌がドラになった場合の牌譜データ
- グラフィックの修正
- 中国ルールでサイコロの4を赤くする
- 焼き鳥マークのデザインを変更
- 高解像度版の画像データを用意(Windowsは64bit版のみ)
- Linuxでサーバー時に落ちないように対策
- IPv6に対応
- サーバのアドレス指定に
getaddrinfo()
を使うようにする
- サーバのアドレス指定に
- ウィンドウの挙動修正
- ウィンドウモード時に画面の中央に寄せるようにする
- ウィンドウが正しく表示されないことがあるのを修正
- 全画面モードで落ちるバグを修正
- 擬似フルスクリーンモードを実装(Windowsのみ)
- OpenGLのクリンナップを行うようにする
- 音声周りの挙動修正
- XAudio2でVorbisのイントロ付きループ再生に対応
- Ogg Vorbisの読み込みを並列化
- 結果画面のBGMが鳴りっぱなしになるバグを修正
- MIDIデバイスを指定できるようにする
- 効果音を変更
make install
で不要なドキュメントファイルまでインストールされていたのを修正- コードをリファクタリング
リファクタリングの主な内容
- C++14を使用するようにする
- subdir-objectの指定を追加
- .gitignore更新
- 名前空間を移動
- 関数名の間違いを修正
- POD判定をtrivially copyable/standard layout判定に置き換え
YakuResult::Init()
をコンストラクタに置き換えLargeNum
関係LargeNum
クラスのコンストラクタLNum
ラッパークラスを削除LargeNum
をconstexpr
にする- 型関係の修正
- 役満用のデータを使うかの判定処理を移動
- ドラ込みの翻をイディオムからメソッド化
- 成立役リストの処理をcommonに移動
malloc
/free
をnew
/delete
に書き換えlocaltime()
をlocaltime_s()
に書き換え- 暗黙の型変換をキャストに書き換え
- 符号付きと符号なしの比較を避けるようにする
- ANSI版で碰碰和の文字化けに対処
const
のうち定数はconstexpr
に書き換え- C++スタイルのキャストを使うようにする
- Visual Studio関係
- コード解析をネイティブ推奨規則に設定
- Windows7互換用にプリプロセッサを設定
- Visual Studioでワイド文字版をデフォルトにする
- ANSI版の構成を削除
- Visual Studioプロジェクトファイルにcommonヘッダを入れる
- VersionHelpers.hを使うようにする
LargeNum
→int64_t
で正しくない結果になる可能性があるのを修正ifstream::imbue()
の返り値の破棄を明示- 潜在的な未初期化に対処
- 受信バッファをヒープに移動
- オーバーフローの可能性を排除
- LZMA関係
- LzFindMt.cの警告を無視
- LZMA伸長時ポインタの型が正しくないのを修正
- ルール設定の読み込みに
ifstream
を使う - 二重配列の初期化
- 音声モジュール周り
- 音声データのヘッダファイル・定義ファイルをクラスで分離
- USE_XAUDIO2の有無だけで判断するようにする
- OGG読み込み時のバッファサイズを調整
- libogg、libvorbis関係
- サブモジュールに変更
- リリースビルドを使うようにする
- プロジェクトをソリューションに統合
std::random_shuffle()
を使わないようにする- 行列の計算を関数にまとめる
- グラフィックモジュールの例外オブジェクトを
std::except
派生に変更 - 鳴き選択関係
- リモートの手動理牌に対応させる
- AIの理牌コード
- 牌データにメソッドを追加
- 選択した牌を移動する処理を追加
- ソート処理に標準ライブラリを使うようにする
- Tileオブジェクト周りのリファクタリング
- tilecode.hにコメントを付ける
ShowTile::NewTile
の引数を変更
- Autotools関係
- configure.acでC++14をチェックするようにする
- Pythonのモジュールの有無を確認するようにする
- configureでrubyをチェックするようにする
- カレンダー関係のリファクタリング
- 役判定ルーチン内の関数オブジェクトをconstにする
- md2html.pyを修正
- strcode.hを修正
- Clang++で見つかった問題を修正
- dangling elseを解消
-Wparentheses
に対処- インクリメントを分離
- 喰いタンのルール判定で等号比較していたのをメソッドに修正
- 明示的なoverride指定
- 論理積と論理和の順序を明示
-Wno-switch
を指定
- *.vcxproj.userをリポジトリから除去
- Boost対応を廃止
- 不要になったコードの削除