ゲームエフェクトデザイナーのブログ | A Real-Time VFX Artist's Blog

About Making Materials on UE, Making Tools with C#, etc

インストール / アンインストール

『TaskQuest』のインストール方法


ご購入時にダウンロードいただいた zipファイルを解凍すると、アプリ本体である「TaskQuest.exe」が入ったフォルダが作成されますので、お使いのパソコンの好きな場所に置いてご使用ください。

f:id:moko_03_25:20181228051516p:plain

また、アプリ本体と同じ場所にセーブデータ等のファイルが作られるので、本体をフォルダに格納した状態でお使いください。

『TaskQuest』のアンインストール方法


「TaskQuest.exe」本体が入ったフォルダをまるごと削除してください。
※本アプリはレジストリや「AppData」フォルダ等を使用しないため、削除だけでアンインストールになります

Windows用タスク管理アプリ『TaskQuest』について

TaskQuest』はちょっとしたタスクを管理できるシンプルなアプリケーションです。

そしてタスク管理が少しでも楽しくなるよう、タスクを追加したり完了することで経験値が入ってドット絵のキャラクターがレベルアップしたり、ステータスに応じてジョブチェンジしたりするオマケ要素があるのが特徴です。

f:id:moko_03_25:20181228030228p:plain

BOOTHにて500円で販売中!です。

※PIXIV FANBOXで500円以上ご支援いただいている方にはこちらで配布しています

ぜひぜひ、お手に取って使ってみて頂けると嬉しいです!

更新履歴


2018.12.29 ver.1.0 リリースしました
2019.01.02 ver.1.1 工数の単位に関わらずタスク追加による取得経験値を50固定に変更しました

ドキュメント目次


インストール / アンインストール

はじめての起動時

プロジェクトの切り替え

タスクの追加 / 複製 / 削除

タスク編集画面とタスク完了

リストの操作 / ソート / フィルタ

オプション画面

キャラクターの成長

保存ファイル
 「Settings.txt」の内容説明

Q&A

使用条件 / 免責事項

C# テキストの暗号化と複合の方法について

文字列をそのままテキストデータとして保存するのではなく、データを改変できないよう暗号化して保存し、読み込む際には複合して元に戻したい場合があります。

こちらの記事の「ASE暗号」を試してみてうまくいったのでメモっておきたいと思います。

続きを読む

動画再生プレイヤーを作りたいメモ

シンプルな動画再生プレイヤーをC#で自作したいと思って軽く調べてみたところ、WindowsMediaPlayerのコントロールが利用できるという情報がまず目に入りました。

しかし‥

個人的に最低限必須と思っている「MP4を再生可能」「再生」「停止」「一時停止」「コマ送り」「コマ戻し」「ループ再生」「区間指定してのループ再生」(これら全てがショートカットキーで操作可能)といったあたりは全然満たせないっぽい?

ということで、さらに少しだけ調べたことをメモっておきます。
もうこのまま制作しない可能性が大きいですが。。

続きを読む

WPF導入に良さそうな情報まとめ

.NETを使ってWindowsアプリケーションを作成する際に「Windows Form」では不自由だ!‥と思い始めたあたりで耳にし始める「WPF」。

触ってみようと思いつつまだ全然触れていませんが、とりあえず色々とググってみて良さそうなページをいくつか見つけたので、後々のために列挙しておきたいと思います。

続きを読む

C# タスクをリスト管理するツールの基礎となるサンプルデータを公開

現在、個人向けお気楽タスク管理アプリ「TaskQuest」を製作中で、2018年内にリリースしたいと目論んでいるのですが、”タスクを登録したり完了するとドット絵キャラのレベルが上がってステータスに応じてジョブチェンジする”という要素がウリというものになっています。

しかし、業務で使用したい人に「そんな要素いらないのでオプション設定で非表示にしたい」みたいな要望も出るだろうなあ~と想像しているのですが、その代わりになるかは分かりませんが、私のようにC#初学者で同じようなツールを作ろうと思っている方向けにタスク登録してリスト管理するツールのベースになるサンプルをGitHubにアップしました。

こちらを用意した元々の理由は、TaskQuestの制作を進めるにつれリスト操作周りのコードがごちゃごちゃして不具合を修正しにくくなっていき、実装したいいくつかの機能がうまく動作しない状態になってしまっているので、その道のプロの方にスマートな実装方法を聞くために用意したデータになります。。

なのでそれらの実装周りが一通りうまくいったらまた記事にまとめたいと思っています。

ちなみに見た目はこんな感じです。

f:id:moko_03_25:20181108020032j:plain

ボタンによるタスク追加・タスク複製・タスク削除と、タスク追加時の優先度と進捗をプルダウンから選べる要素、そしてDataGridViewコントロールを使用したリストのフィルタを実装した状態のものになっています。

最低限の部分しか設定していない状態になっていて、凝ったことをしないならこちらを元に編集していくと作成が楽なのではと思います。

ひとつ注意なのは、DataGridViewへのDataTableのバインディングや各列のデフォルト設定はフォームデザイナ上で行っており、Form1.cs上にそのあたりのコードはほとんど書いていないという点です。

デザイナ上だと具体的にどういった設定手順になるかはこちらに記載しています。

なので調べ物をする際にサンプルが出て来にくい、どういった設定をしているのか把握し辛いというのがネックになってしまっているとは思います。

それでも、何かしらの一助になれば幸いです!

C# DataGridViewの列の値に0から始まる番号を入力する

DataGridViewに「No」という列があったとして、

 

// 行数をカウント
int count = RowsCount();

// Noを振り直す
for (int i = 0; i < count; i++)
{
    dgv[0, i].Value = i;
}


とか、もしくは‥

// Noを振り直す
int i = 0;
foreach (ar item in dgv.Rows)
{
    dgv[0, i].Value = i;
    i++
}


とかで可能な訳ですが、これはあくまでDataGridVIew上の並び順で値を0から入力していきます。

例えば列ヘッダーをクリックして昇順ソートした状態で実行すると、ソートされた並び順で番号が入力されていってしまいます。

つまり、内部データである DataTable での並び順と一致しなくなってしまいます。

なので DataTableの行情報にアクセスして値を書き替えてあげる必要があります。

このような感じ。

// Noを振り直す
int i = 0;

foreach (DataRow r in taskDataSet.taskDataTable.Rows)
{
    r["No"] = i;
    i++;
}


といった感じで実行することで、うまくいきました。

C# DataGridViewにDataTableをデザイナでバインドしている際のフィルタのサンプル

Visual Studioデザイナはコントロールの作成やプロパティの設定などをGUIを通して直感的に作業でき、ほとんどコーディングせずに制作できてしまうのでプログラム初心者には大変ありがたい機能です。

しかしその反面、何か困った時にデザイナを使った場合の解説がなかなか見つかりません。

例えば DataGridView に DataTable をバインドした場合のケースです。

こちら詰まったのでメモっておきたいと思います。

続きを読む