雑記帳

ちょっとした文章とかメモ書きとか。

n棒読みちゃんプラグインを改造してみた。

184コメントを棒読みちゃんに読ませないようにすることって出来るの?
見たいなものを見かけたので・・
もちろんできますその機能が作られていなかっただけです。
1時間くらいでサクッと作ってみたのでロジックとか書き方とか甘いかもしれません・・。
n棒読みちゃんプラグインを改造してその機能を作ってみた。 

以下の赤字の部分を追加して、
フォームデザイナでcheckBox1184コメントを読まないという処理を判定するチェックボックスにしてあります。
ソースここから:


・・・

#region 読み上げ
/// <summary>
/// chatを読み上げる
/// </summary>
/// <param name=”chat”></param>
private void talk(NicoApi.Chat chat)
{
//NGフィルターを利用するためにキャストする
nwhois.plugin.IFilteredChat fchat = chat as nwhois.plugin.IFilteredChat;
//万が一に備えてnullかチェック
if (fchat == null) return;
//——–ここから—–
//フォームのチェックボックスの状態から読み上げるかどうかを決定する
bool rf = cbReadNormalComment.Checked && !chat.IsCaster && fchat.FilteredReason == nwhois.plugin.Filteringtype.None;
rf |= cbReadUneiComment.Checked && chat.IsCaster && !chat.Message.StartsWith(“/”);
rf |= cbReadUneiCommand.Checked && chat.IsCaster && chat.Message.StartsWith(“/”);
rf |= cbReadNgUser.Checked && ((fchat.FilteredReason & nwhois.plugin.Filteringtype.Id) != nwhois.plugin.Filteringtype.None);
rf |= cbReadNgWord.Checked && ((fchat.FilteredReason & nwhois.plugin.Filteringtype.Word) != nwhois.plugin.Filteringtype.None);
rf |= cbReadUneiCommand.Checked && ((fchat.FilteredReason & nwhois.plugin.Filteringtype.Command) != nwhois.plugin.Filteringtype.None);

if (rf && checkBox1.Checked && (chat.Anonymity == true))
{ }else{
addTalkTask(chat.Message, chat.UserId);}
}
//—-ここまで—–
・・・


ソースここまで。
もっとスマートな実装があるやもしれません。。。
↓それに関しての追記:
又は、ここからここまでの部分で、


//フォームのチェックボックスの状態から読み上げるかどうかを決定する
bool rf = cbReadNormalComment.Checked && !chat.IsCaster && fchat.FilteredReason == nwhois.plugin.Filteringtype.None;
rf |= cbReadUneiComment.Checked && chat.IsCaster && !chat.Message.StartsWith(“/”);
rf |= cbReadUneiCommand.Checked && chat.IsCaster && chat.Message.StartsWith(“/”);
rf |= cbReadNgUser.Checked && ((fchat.FilteredReason & nwhois.plugin.Filteringtype.Id) != nwhois.plugin.Filteringtype.None);
rf |= cbReadNgWord.Checked && ((fchat.FilteredReason & nwhois.plugin.Filteringtype.Word) != nwhois.plugin.Filteringtype.None);
rf |= cbReadUneiCommand.Checked && ((fchat.FilteredReason & nwhois.plugin.Filteringtype.Command) != nwhois.plugin.Filteringtype.None);
rf &= !checkBox1.Checked || !chat.Anonymity == true;
if (rf){
addTalkTask(chat.Message, chat.UserId);
}


としても同じ結果が得られます。
追記ここまで:

演算子をもっと勉強しようねこの人・・(´・ω・`)
演算子がどうのとかそういうのには触れません。
というかここはC#の言語の解説記事でもないですし。
という記事でした。

ここまで書いておきながら・・・、
私は184が付いてるとコメントが読まれない枠とか見たいとも思いません(ぉ

使用は自己責任で。

ノシ

追記:nwhoisプラグインの完成版バイナリ(n棒読みちゃんplus)DLはこちらから⇒http://bit.ly/9TDLCz

※これはnwhois用のプラグインです。その他のコメントビューアでは動きません。
(プラグインに提供されている関数やインターフェースが異なるため)
——————以下ライセンスについて—————–
また、このプラグインはnwhoisプラグイン頒布条件のライセンスに準じます。
nwhoisプラグインライセンス:
・個人での改変は自由。
・プラグインを頒布する際はソースコードの添付を義務付けます
・2次頒布は自由ですが、その際はzipアーカイブ形式で頒布してください。
・また、dllやソースコードの個別頒布は禁止します

このプラグインもこのnwhoisプラグインライセンスに準じたライセンスとします。また、商用利用は不可とします。(しないとは思いますが、念のため。)

このライセンスを順守してください。

要は個人利用は何しようが勝手で、頒布する際にライセンスに気を配ってねと言うこと。

広告

n棒読みちゃんプラグインを改造してみた。」への6件のフィードバック

  1. 以下略 2010年6月5日 2:45 AM

    え、俺常に184なんだが。

  2. cosmo 2010年6月5日 2:28 PM

    > 魔界之 以下略さんあくまで試験的に作ってみたものです。自分で作っておいて常用するとは思えず。

  3. ふむり 2010年10月2日 6:04 AM

    184で棒読みの声を変えたりって言うのはどうだろうか。

    • cosmo(コスモ) 2010年10月2日 10:28 AM

      >ふむりさん なるほど、確かにコーディングによってはそれも可能ですね。やってみます。
      但し、今制作中のものがあるのでいつになるかは保証できませんが・・。

  4. かえら 2010年12月15日 10:58 PM

    「ニコ生コメントビューア」で使用する方法を教えてください。
    よろしくお願いします。

    • cosmo(コスモ) 2010年12月15日 11:33 PM

      >>かえらさん
      これはnwhois用プラグインです。
      ニコ生コメントビューア用ではありません。プラグインの仕様が違うので動きません。
      残念ですが諦めてください。
      ニコ生コメントビューアのプラグイン仕様は現時点では把握していないので開発の予定も無いです。

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

%d人のブロガーが「いいね」をつけました。