あなたが探している情報は、この日記には記されていない可能性が高いです。(検索で来た人用)
にらどんは一杯500円。尚、出前は承っておりません。ご了承下さい。

programing

リストアップボタンの処理を書いた。 書いたのはいいが、とんでもないバグが発覚した。 性格値乱数の計算が上手くいかない。根幹がバグはひどい。気付けてよかった。 原因はわかっていて、処理回数削減のために乱数計算クラスを使いまわしたせいです。 処理…

バグとろうと思ったらとれてた。 書き直そうと思ってコード読むと別におかしいところがない。 挙動で確認しようとデバッグ追っても正常に動いているっぽい。 リストボックスに表示させてた計算回数を数値だけ表示するようにしたら1440と表示された。 "計算回…

リストボックスに表示したseedを適用できるようにするのをやってなかったので、 アイテムをダブルクリックでメインウィンドウに反映できるようにしました。 試運転したときにやっとseed反映ボタンを作っておいてあったのを思い出しました。このボタンいらな…

再開しようとしたら動かない。 なんぞと思ってデバッグかけまくって、ようやくこないだの連続検索の絡みで変数名置き換えを1箇所ミスってたのを見つけた。 グローバルにおいたのと同じ変数名だったからコンパイルは通って挙動も途中まで普通で、いきなり未初…

予定していたことを一通り。 日付の入力チェックと、初期seedが同じ場合の連続検索の効率を改善。 リストアップは検索部分は流用して書式だけ出来てるのからコピって、次につまづきそうなのはメニューか。

コイントス結果をキーからも入力できるようにしてあったんだけど、2以上の数を入力されてると正しくinputできないので 数値を入力されたときに偶数なら0、奇数なら1を入れるように改造。 文字コード足し算でいいなーと思ったら上手くかけなくて、wsprintfで…

リストビューじゃなくてリストボックスを使ってたのにずっと勘違いしてました。 ここ解決したので一応初期seed検索は復旧です。同じもの作り直すのにどんだけかかるんだっていう。 まぁこれから細かい処理をつけていかなきゃいけないんだけど。

InitCommonControls()が使えないんだよね。なぜか。 リストボックスをリソースに記述してるからどこで宣言すればいいのかわからんし。親ウィンドウ生成時? そもそも参照不能で怒られてまして。 あー、dllへのリンクを記述しないといけないの?そんなんいつ…

とうとう手をつけ始めました。初期seed検索。 検索部分は出来たんだけどリストビューに項目追加するのが上手くいかない。原因究明中。 他のとこからコピペして持ってきた方がはやいかもな。

タブ切り替えで検索コントロールを切り替え。 何度ShowWindowでSW_HIDEしても表示されっぱなしで散々悩んだ。 結果、再描画されてないだけだった。 だってSW_SHOWしたら再描画されてるんだもん。なんでそういう仕様なのか。 SetWindowPosでも全く同じ挙動だ…

仮想リストビューの本体をLVITEM配列からunsigned int配列に変更。 処理回数もメモリ使用量もかなり減ったはずだけど、体感はそんなに・・・。 どこが重いんだろうなぁ。チェック数5000は減らせないし・・・減らせないのか・・・? 攻守値の選択UIは答え出てないから…

トラックバー作ってそれを処理するの忘れてた。 レベル判定だけ追記。 とりあえず検索機能は形になってきたかな。 攻撃力とかの指定をどうするかは課題ですなぁ。

範囲選択トラックバーのサブクラス化による実装

LRESULT CALLBACK MyTrackProc(HWND hTrack, UINT msg, WPARAM wParam, LPARAM lParam) { DWORD dwPos, dwStart; RECT rect; POINT pos; switch(msg) { case WM_LBUTTONDOWN: GetWindowRect(hTrack, (LPRECT)&rect); GetCursorPos((LPPOINT)&pos); dwPos = (…

レベルは範囲が狭いからトラックバーでよかったけど 攻撃力守備力はそうもいかんよなぁ。フリップボタンとかにするか、Editを2つにして範囲で指定させちゃうか。 ラジオが最善ではない、とは思うんだけど代替案が出てこない。

トラックバーのサブクラス化

うぉらー、書いたぞー。 コードも公開予定だけど汎用化どころか整理も終わってないから今度。 トラックバーの名前を検索するところから始めたにしては上出来。 納得いくUIになったので今日は満足。 あとGroupBoxはうんこ。

レベルの選択RadioButtonと範囲指定のエディット&ラジオを置いてあったんですが これって使い易いですかね。 ラジオはともかく、レベル指定が数値入力ってのが微妙かなぁと。 でも上手いコントロールなんてないから自作コントロールになっちゃうのかな。 と…

調べごとしてる途中で面白い記事を見つけた。 forループを多重にする場合、ループ回数が多いものを内側に置くと処理が高速になる。らしい。 そんなアホなと思ったら本当に処理回数が変わっている。 初期化と最後の加算はforの実行につき1度余分に行われるか…

ラジオボタンって一括で取得できないのかな。 折角グループ化出来るのに、グループ内のどこにチェックがあるのか確認するマクロはないの。自分で書けってか。 本当に挙動のみのためのスタイルなんですね。 その関数書こうと思ってI/F確認したら属性種族のが…

初心者向けビットフラグの使い方

をまとめようと思ってたけどぐぐったらもうあった。 今まで僕は何を検索していたのだろう。 自分で考えて筆算して苦戦してたのに。 とりあえず使いやすいのをまとめておく。 #define x 0x01 #define y 0x02 #define z 0x04 // 16進数で書くと見やすく書き易…

なんでこれだけのことがこんなに難しいのだろう。 もう一個ずつ処理書くか!と思っても他との兼ね合い考えると今のやり方しかないんですよ。 今ここに書き出してたバグを書いたおかげでミスに気付いてさくっと取って これで動くktkrと思ったら最初の状態…

デッキビルダー製作中

根本的に間違ってたんだよ。 今どうなってるかを説明しておくと、 通常・効果・儀式で枠ごとにふるいにかけようとしてたんですけど、 これをチェックボックスで管理して重複選択できるようにしておいたんですね。 ここで期待される動作は 111で全部表示。000で…

DO触ってみたらやっぱりリストの更新が超早い。 アイテム配列をデータ用と表示用に作るんじゃなくて データ用のアイテム配列と、表示用のIndex配列(int型)を使えばいいんじゃねと思ったので今度実装する。 でも劇的に早くなるわけではなさそう・・・

つわけでこっちに手を出したはいいが、条件分岐がやっぱりめんどくさい。 通常・効果・儀式の分類と、トゥーンスピリットユニオンデュアルチューナーの特性をまとめて管理しようとしたところまではよかったけど 完全なバニラのフラグが0x00になっていて、単純…

魔法罠の検索は簡単だからやってしまおうと思ったら 種別をコントロールIDに割り振るのが不可能で泣いた。 フラグ式にしてたんですよ。速攻なら0x01、装備なら0x10、永続なら0x100みたいな。 それやると、連番で振ってるラジオボタンのコントロールIDに直で…

げっそー。 久々に触ったら何しようとしてたかわからんくなったし、 ちょいちょいっと不要なコード削っていってたらリストビューが表示されなくなって原因探って時間全部潰れた。 一括でいろいろ削ったり追加してたからどれが原因かわからず1つずつ脳みそ復…

著作権すげーめんどい

パッチール検索、oupoさんのパッチールペインタにくっ付けて使うのを推奨しようと思ってたんだけど 僕が二次配布するのはもちろんだけど、そうやって改造を推奨してしまうのも問題なんじゃないだろうか。 公開前に許可取らないとダメかなぁ。 くっつけないま…

キャリー付き演算、wikipediaに載ってるじゃないですか。 つまり無限ループって怖くね?ってことか。違うな。 単純なローテートにしておくとそれにしか使えないけど、 キャリーフラグを設定可能にしておくとローテートにも出来て論理・算術もスイッチできて三…

C言語のおかげか、アセンブリの処理自体はすんなり理解できるんだけど ニーモニックはいちいち調べないとダメだし、戻り値やキャリーフラグはいまいち挙動が飲み込めない。 よく出るcmpの戻り値はどこに格納されて何時参照してるんだ。 021AA9F6 2019 mov r0…

砂煙乱数

oh, i see. thenってそのまま「その後で」って意味なんだ。意味というか繋ぎなんだ。 前後逆転してたよ。 正しく読むと、 r[1]の上位32bitに0x3E8を乗算し、その後32bit右シフト。 その値が0x190未満なら戦闘、以上ならアイテム判定へ。 この時計算された値…

そもそも資料集めが難しい件。 乱数調整の方法自体は簡単で確立されちゃってるから、そのガイドページばっかかかるんだよね。 数値を詳細にまとめているところがなくて。 まぁ今までもコイルさん頼みでしたけど。 sumogonからようやく1つ拾ってこれた。http:…