ニワン語
の編集
[
トップ
] [
編集
|
差分
|
バックアップ
|
添付
|
リロード
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
スポンサード リンク
-- 雛形とするページ --
ActionScript
AutoScreenRecorder
AviSynth
AviUtl
BracketName
CPU別設定報告所
CamStudio
DateRate
EncodeQA
FFMPEG Launcher
FFSplit
FFmpeg-modified-v2
FFmpegXでのエンコード
Flash Media Live Encoder(FMLE)
FlashPlayer
FormattingRules
FrontPage
GameCam
GrabPro
H.264のCUDAエンコード
Help
HyperCam
InterWikiName
KeepAlive
LvUp
MacNicoTunes
ManyCam
MediaCoder
Menu
MenuBar
Menuに入たいページ申請所
NG機能の改善要望スレまとめ
NG設定・フィルター・コメント編集機能
NeroAacEnc
NicoPlayer
NiconamaCommentViewer
NiconamaEffect
NiconamaVisualStation
PotPlayer
PukiWiki
PukiWiki/1.4
PukiWiki/1.4/Manual
PukiWiki/1.4/Manual/Plugin
PukiWiki/1.4/Manual/Plugin/A-D
PukiWiki/1.4/Manual/Plugin/E-G
PukiWiki/1.4/Manual/Plugin/H-K
PukiWiki/1.4/Manual/Plugin/L-N
PukiWiki/1.4/Manual/Plugin/O-R
PukiWiki/1.4/Manual/Plugin/S-U
PukiWiki/1.4/Manual/Plugin/V-Z
PukiWikiの使い方
RSSフィード一覧
RecentDeleted
SandBox
SmileDownloader
SplitBroadcaster
TwoPassSectionDatarate
VideoStudio
VirtualDub
WebCamMax
WebMediaFrontend
WebMoney
Webカメラ
WikiEngines
WikiName
WindowsとMac
YouTube
ZIP動画問題
aviutl_h264
aviutlを使ったVP6 2pass
encode_tools
htmlinsert/u2b
sandbox_2
swfから動画作成
u2b
webcam
webカメラ動画作成
wiki new
wikiに動画を貼る方法
wikiへの画像貼り付け方法
wiki改造記録
その他
まとめサイト一覧
みんなのマイリスト紹介
より良い動画ライフについて
エンコード系質問?を適当に集めた所
エンコード設定
エンコード設定あるある質問箱
エンコード設定(中画質~高画質)
カテゴリをRC2の状態に戻す方法
カテゴリタグスレまとめ
キャプチャカード
ゲーム動画の作成
コマンド一覧
コミュニティサイト一覧
コメント/FFMPEG Launcher
コメント/FFSplit
コメント/FFmpeg-modified-v2
コメント/Flash Media Live Encoder(FME)
コメント/Flash Media Live Encoder(FMLE)
コメント/NG設定・フィルター・コメント編集機能
コメント/PotPlayer
コメント/Webカメラ
コメント/WindowsとMac
コメント/ZIP配布問題
コメント/aviutl_h264
コメント/endode_tools
コメント/ffmpeg_aviutl
コメント/みんなのマイリスト紹介
コメント/エンコード設定
コメント/コマンド一覧
コメント/コメント技
コメント/コメント技 pt2
コメント/コメント技~2007年のコメント過去ログ~
コメント/コメント技~2008年のコメント過去ログ~
コメント/タグ 検索 フィルタの有効な使い方
コメント/ニコスクリプト
コメント/ニコニコブックマークまとめwiki
コメント/ニコニコ生放送
コメント/ニコニコ生放送配信方法
コメント/ニコニコ生放送配信方法/FME
コメント/ランキング一覧
コメント/削除基準
コメント/拡張 x264 出力(GUI)Exの設定項目とその機能について
コメント/拡張 x264 出力(GUI)の設定項目とその機能について
コメント/既出の要望
コメント/書き込み練習所
コメント/歌詞字幕の書き方
コメント/特設:時報撃滅大作戦
コメント/考察
コメント/色見本
コメント/要望・意見
コメント/要約タグ
コメント/質問スレッドテンプレ案
コメント/連絡・報告
コメント/雑談板
コメント/騒動記録
コメントに×数字を使うには
コメント・ニコスクリプト関連
コメント技
コメント技道場
コメント技~2008年のコメント過去ログ~
コメント要望スレまとめ
サイト内検索
サウンドカード
サービス再開の流れ
スレを立てるまでもない要望スレ テンプレ案
タグ
タグ 検索
タグ 検索 フィルタの有効な使い方
タグ+検索+フィルタの有効な使い方
タグの編集
タグ関連要望スレまとめ
テンプレっぽいもの
テンプレっぽいものコメント
ニコゲー
ニコスクリプト
ニコスクリプト⇔二ワン語
ニコニコシリーズ
ニコニコブックマークまとめwiki
ニコニコプレミアムとは
ニコニコポイントでできること
ニコニコミュニティの作成
ニコニコ動画(γ)の変更点まとめ
ニコニコ動画とは
ニコニコ動画とは?
ニコニコ動画まとめ
ニコニコ動画まとめwiki
ニコニコ動画グッズ
ニコニコ動画プレミアムアカウントの取得
ニコニコ投票所
ニコニコ生放送
ニコニコ生放送無料高画質配信
ニコニコ生放送配信方法
ニコニコ生放送配信方法(仮)
ニコニコ生放送配信方法/1.基本/はじめての放送
ニコニコ生放送配信方法/1.基本/はじめての放送/かんたん配信
ニコニコ生放送配信方法/1.基本/基本設定
ニコニコ生放送配信方法/2.ジャンル別/ゲーム実況
ニコニコ生放送配信方法/2.ジャンル別/動画紹介
ニコニコ生放送配信方法/2.ジャンル別/描いてみた
ニコニコ生放送配信方法/2.ジャンル別/歌ってみた
ニコニコ生放送配信方法/2.ジャンル別/演奏してみた
ニコニコ生放送配信方法/2.ジャンル別/車載
ニコニコ生放送配信方法/2.ジャンル別/野外
ニコニコ生放送配信方法/2.ジャンル別/雑談
ニコニコ生放送配信方法/3.端末別/Android
ニコニコ生放送配信方法/3.端末別/iPhone
ニコニコ生放送配信方法/4.補助ツール/Niconico Live Encoder
ニコニコ生放送配信方法/4.補助ツール/ソフト
ニコニコ生放送配信方法/4.補助ツール/機材
ニコニコ生放送配信方法/FME
ニコニコ生放送配信方法/ニコニコ静画
ニュース・RSS・まとめサイト等の一覧
ニュース一覧
ニュース一覧(モバイル)
ニワン語
プラグイン
プレミアム会員関連要望スレまとめ
マイク
メール
メールフォーム
ランキング一覧
公式への要望と自衛策
公式掲示板
初めての生放送
初心者向けQ&A
削除基準
動画の作り方
動画の撮影
動画の撮影/1.基本/カメラ選定
動画の撮影/2.カテゴリ別/HDR撮影
動画の撮影/2.カテゴリ別/ハイスピード撮影
動画の撮影/2.カテゴリ別/ハッピーシンセサイザを踊ってみたの解析
動画作成・エンコード
台湾版ニコニコ動画
投稿者コメントレシピ
拡張 x264 出力(GUI)Exの設定項目とその機能について
拡張 x264 出力(GUI)の設定項目とその機能について
推奨カメラ
推奨ソフト
改行
放送枠の取得
整形ルール
新しいニコニコプレーヤーの要望まとめ
既出の要望
時報スレまとめ
書き込み練習所
歌詞字幕の書き方
特設:時報撃滅大作戦
空白・特殊記号
空白・特殊記号 ←これ見ろ
色見本
要望・意見
要約タグ
視聴に便利なツールやサイト
質問スレッドテンプレ案
連絡・報告
連絡・要望等
雑談板:過去ログ(~2007年9月)
電光掲示板撃滅大作戦
騒動記録
5
**playCM [#playCM] playCM('''番号''') ----
タイムスタンプを変更しない
[ [[ニコスクリプト]] - ニワン語 - [[ニコスクリプト⇔二ワン語]] - [[投稿者コメントレシピ]] ] &size(30){ニワン語}; ---- #contents ---- *基本概要[#gaiyou] [[ニコスクリプト]]の「@」機能を使用しないで、独自に手動でスクリプトを書き込むことが可能です。 -投稿者コメントのコメント欄で、「/」の後にスクリプトを書き込みます。 -基本的にニコスクリプトの内容は全て再現できます。 むしろニコスクリプトの内部処理はニワン語で行っています。 -コマンド欄の内容は無視されます。 -式は;で区切る事で一行に複数の式を書けます。ただし、行の一番最後の文字を;にする事はできません。また利便性が無いので通常は使用しませんが下のafterという構文で書くことも出来ます。また , でも同等の処理が出来るようです。 0::/txt='テスト';dt(txt) 0::/(txt='テスト').after(dt(txt)) -=の右側が命令の場合は代入式として作用せず、=の左側がラベルとして設定され即実行されます。 (関数がコメントへの参照を返すわけではないようです) 0::/a=dt('テスト') -文字列を囲む記号はダブルクォート(")とシングルクォート(')のどちらでも構いません。 ただし各々バックスラッシュの処理が違います。 前者の場合のみ常にエスケープ文字として扱われます。例えば\nと入れると文中で改行が出来ます。 後者の場合はシングルクォートの直前にある場合のみエスケープ文字として扱われます。改行できません。 0::/txt="1行目\n2行目";dt(txt) -基本的に一度表示すると消去するように命令を送らない限り消えません。 具体的には下のように直接visibleの要素を書き換えることによって非表示にします。 0::/a=dt('テスト') 10::/a.visible=false -独自スクリプト使用動画については「[[未公開スクリプト>http://www.nicovideo.jp/tag/%E6%9C%AA%E5%85%AC%E9%96%8B%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%97%E3%83%88]]」タグを参照して下さい。 ---- *命令または関数 [#function] **drawShape [#drawshape] drawShape(x:'''x座標''',y:'''y座標''',z:'''順序''',shape:'''図形''',width:'''幅''',height:'''高さ''',color:'''色''',visible:'''表示''',pos:'''位置''',mask:'''マスク''',commentmask:'''コメントマスク''',alpha:'''透明度''',rotation:'''回転''',mover:'''移動方法''') 画面上に任意の図形を描く。 設定の必要性が無い項目は省略できる。 省略した場合の初期値は()の中のものとなる。 -x:'''x座標'''(0)、y:'''y座標'''(0) --表示を行う座標。 --後述のposで設定した座標を(0,0)とし、右下に向かって値が大きくなる。 -z:'''順序'''(0) --図形の重ね合わせの順序。 --値が大きいほど前面に表示される。 -shape:'''図形'''('circle') --'circle'または'rect'を設定する。 --'circle'は楕円、'rect'は長方形を描画する。 -width:'''幅'''(30)、height:'''高さ'''(30) --図形の大きさを設定する。 -color:'''色'''(16777215) --数値を設定する。 --RGB(#000000~#FFFFFF)を10進数に変換した値を指定する。 --もし変換が面倒であれば「0xffffff」のような書き方をすればよい。 -visible:'''表示'''(true) --trueまたはfalseを設定。 --flaseを指定すると描画されなくなる。 -pos:'''位置'''('naka') --'naka'、'ue'、'shita'、'hidari'、'migi'を組み合わせた文字列を設定する。 --'naka'は初期値なので特に設定する必要はない。 -mask:'''マスク'''(false) --trueまたはfalseを設定する。 --falseは図形を塗りつぶし、trueは図形外を塗りつぶす。 --図形外を塗りつぶした際はcolorとalphaが無効になる。 -commentmask:'''コメントマスク'''(false) --trueなら図形と重なる位置のコメントを透過する。 --ただしmaskがtrueなら動作しない。 --colorは無効だがalphaは効果がある。 --drawText、dtには効果がない。 -alpha:'''透明度'''(0) --透過度を設定する。 --不透明 0~100 透明 -rotation:'''回転'''(0) --図形の角度を設定する。角度は度で指定する。 --図形の左上を中心に回転する。 --※図形の大きさか変わってしまうというバグ有り -mover:'''移動方法'''('') --x、yを変更したときの移動方法を設定する。 --空欄、smooth、rolling、kageから選択。 --空欄以外を指定すると、移動過程が見えるようになる。 -ex. 0::/drawShape(x:50,y:80,shape:'circle',width:100,height:60,color:0xff0000,pos:'ue hidari',alpha:50) **drawText [#drawtext] drawText(text:'''文字列''',x:'''x座標''',y:'''y座標''',z:'''順序''',size:'''大きさ''',pos:'''位置''',color:'''色''',bold:'''太字''',visible:'''表示''',filter'''フィルター''',alpha:'''透明度''',mover:'''移動方法''') 画面上に文字を表示する。 特に説明の無い項目はdrawShapeと同じ。 省略した場合の初期値は()の中のものとなる。 -text:'''文字列'''('') --表示する文字列を設定する。 -x:'''x座標'''(0),y:'''y座標'''(0) -z:'''順序'''(0) -size:'''大きさ'''(14) --フォントの大きさを設定する。 -pos:'''位置'''('naka') -color:'''色'''(0) -bold:'''太字'''(false) --trueまたはfalseを設定する。trueであれば文字が太字になる。 -visible:'''表示'''(true) -filter:'''フィルター'''('') --文字装飾を行う。 --空欄、fuchi、kasumi、kageから選択。それぞれ、フィルター無し、縁取りを行う、文字を霞ませる、右下に影をつける。 -alpha:'''透明度'''(0) -mover:'''移動方法'''('') -ex. 0::/drawText(text:'本文',x:100,y:100,size:40,pos:'hidari ue',color:0xff0000) **dt [#dt] dt(text:'''文字列''',x:'''x座標''',y:'''y座標''',z:'''順序''',size:'''大きさ''',pos:'''位置''',color:'''色''',bold:'''太字''',visible:'''表示''',filter'''フィルター''',alpha:'''透明度''',mover:'''移動方法''') 画面上に文字を表示する。 drawTextの簡易版と思って間違いない。 特に説明の無い項目はdrawTextと同じ。 省略した場合の初期値は()の中のものとなる。 -text:'''文字列'''('') --text: は省略できる。 -x:'''x座標'''(0),y:'''y座標'''(0) -z:'''順序'''(0) -size:'''大きさ'''(30) -pos:'''位置'''('naka') -color:'''色'''(1677215) -bold:'''太字'''(false) -visible:'''表示'''(true) -filter:'''フィルター'''('fuchi') -alpha:'''透明度'''(0) -mover:'''移動方法'''('') //-初期値でvisibleの設定は出来ませんがfalseに書き換えることはできます。 -ex. 0::/a=dt('表示する文字列') // 30::/a.visible=false **commentTrigger [#commenttrigger] commentTrigger(then:'''式''',timer:'''有効時間''') 有効時間内にコメントが画面に表示される度にthen:'''式'''の処理を行う。 注意して設定しないと非常に重くなる。 定義変数chatは主にこの中で使う。 -then:'''式''' --コメントが画面に表示されたら式を実行する。 --ちなみにthen:の部分は省略可能。 -timer:'''有効時間''' --commentTriggerが設定された時間からの有効期間(単位:秒)。省略した場合は動画が終わるまで。 -ex. 0::/commentTrigger(t.visible=false;t=dt(chat.message),timer:30) **ctrig [#ctrig] commentTriggerと同じ動作をする。要は短縮形。 -ex. 0::/ctrig(t.visible=false;t=dt(chat.message),timer:30) **if [#if] if(when:'''評価式''',then:'''式1''',else:'''式2''') 条件分岐。 -when:'''評価式'''が真ならthen:'''式1'''を実行し、偽ならelse:'''式2'''を実行する。引数を指定しない最初の項目でも同様。つまりwhen:という記述は省略できる。 -then時、またはelse時に何も実行しない場合はその項目を省略できる。 -ex. 上はwhenが真なのでthenが実行されます。下はwhenが偽なのでthenが実行されません。 0::/a=true;if(a,then:dt(a,pos:'hidari')) 0::/b=false;if(b,then:dt(b,pos:'migi')) **timer [#timer] timer(timer:'''待機時間''',then:'''動作''') 指定時間経過後に指定した動作を行う -timer:'''待機時間'''で指定した時間(単位:秒)が経過した後にthen:'''動作'''を実行する。then: は省略できる。 -ex. 0::/t=dt('テスト');timer(timer:10,then:t.visible=false) **jump [#jump] jump(id:'''動画ID''',msg:'''ジャンプメッセージ''',from:'''開始位置''',length:'''再生時間''',return:'''戻り''',returnmsg:'''戻りメッセージ''',newwindow:'''対象窓''') 他の動画に移動する -id:'''動画ID'''('') --動画のIDを指定する。ちなみに id: は省略できる。 -msg:'''ジャンプメッセージ'''('') --ジャンプする直前にメッセージを表示する。未設定でもそれ用のメッセージが表示される。\nで改行可。 -from:'''開始位置'''('') --指定した再生時から再生する。ただし、移動先は動画を完全に読み込むまで再生が開始されなくなる。 -length:'''再生時間'''('') --ジャンプした先の動画の再生を指定時間で終了する。 -return:'''戻り'''(false) --trueなら再生終了時に移動前の動画へ戻る。 -returnmsg:'''戻りメッセージ'''('') --ジャンプ先から戻るときに表示される -newwindow:'''対象窓'''(false) --trueなら新しいウインドウで、falseなら同じウィンドウでURLを開く。 -ex. 60::/jump('sm9',msg:'このメッセージが表示された後に移動') 80::/jump('sm9',length:10,return:true) -備考 --jumpは一つの動画では基本的に一度しか作動しない。細かい挙動は[[@ジャンプ>ニコスクリプト#jump]]を参照。 ジャンプ先から戻ってきた後の更にジャンプを再現する(@数値に当たる設定を行う)には[[jumpCancel>#jumpcancel]]を使用すればよい。 ただし@ジャンプ同様確実に意図した通りに動作する保障は無い。 20::/jump('sm9',length:10,return:true) 21::/jumpCancel 40::/jump('sm13',length:10,return:true) **jumpCancel [#jumpcancel] jumpCancel('') -[[jump>#jump]]、若しくは[[seek>#seek]]の処理が開始される前に行うと該当の処理をキャンセルさせる。 -ex. 何も起きません。 10::/jump('sm9');jumpCancel また以下のような設定でjumpが発生する前にjumpCancel以降の再生時へ直接シークした場合もjumpは発生しません。 30::/jump('sm9') 60::/jumpCancel **seek [#seek] seek(vpos:'''時間''',msg:'''文字列''') -vpos:'''時間''' --動画の再生位置を'''時間'''まで移動させる。 -msg:'''文字列''' --文字列を設定した場合は移動する瞬間に画面が白で塗りつぶされ'''文字列'''が中央に表示される。 ※移動できる位置はキーフレームの位置に限られる。 ※エコノミーモードでは指定した時間に飛ばない、おまけにリロードすると飛び先時間が変わるという状態で、全く使い物にならない。 **addMarker [#addmarker] addMarker(name:'''名前''',vpos:'''再生時''') -name:'''名前''' -vpos:'''再生時''' **getMarker [#getmarker] getMarker(name:'''名前''') -name:'''名前''' -あらかじめaddMarkerを行い、同名のnameをgetMarkerで呼び出すと数値を呼び出せる。 -@ジャンプマーカーで使用しているが、直接ニワン語を作るならわざわざ使用する意味は無いかと。 -ex. /0::addMarker(name:'test',vpos:90) /10::val=getMarker(name:'test');dt(val) //**counter [#counter]このスクリプトは廃止されました **sum [#sum] sum(x:'''x座標''',y:'''y座標''',size:'''大きさ''',color:'''色''',visible:'''表示''',enabled:'''有効''',pos:'''位置''',asc:'''昇降''',unit:'''単位''',buttononly:'''ボタン限定''',words:'''単語''') 投票。 基本的に表示に関する設定はdrawTextと同じ。 -x:'''x座標'''(0)、y:'''y座標'''(0) -size:'''大きさ'''(30) -color:'''色'''(16777215) -visible:'''表示'''(true) -enabled:'''有効'''(true) --trueなら投票を受け付ける。falseなら受け付けない。 -pos:'''位置'''('naka') -asc:'''昇降'''(false) --ソートの昇順、降順の設定のはずですが上手く動作しません(player: 2008-02-04 17:00) -unit:'''単位'''('人') --画面に表示される単位。 -buttononly:'''ボタン限定'''(false) --trueなら@ボタンからの投稿からしか受け付けないようにする。(正確にはコマンド欄に「from_button」があるものであれば受け付ける) -words:'''単語''' --選択肢の設定 --['選択肢1','選択肢2'] のようにArray形式で設定していく(括弧も含む) -partial:'''一致部分'''(true) --trueなら部分一致、falseなら全体一致。 -ex. ちなみに下のような方法で特定の項目の投票数を取得できます。 0::/a=sum(words:['犬','猫','兎'],unit:'票') 60::/b=a.words['犬'];dt(b,pos:'shita') **showResult [#showresult] showResult(x:'''x座標''',y:'''y座標''',size:'''大きさ''',color:'''色''',visible:'''表示''',pos:'''位置''',unit:'''単位''',asc:'''昇降''',sum:'''投票''') あらかじめ[[sum>#sum]]を行い、その投票結果をまとめて表示するのに使用する。 -x:'''x座標'''(0)、y:'''y座標'''(0) -size:'''大きさ'''(30) -color:'''色'''(16777215) -visible:'''表示'''(true) -pos:'''位置'''('naka') -unit:'''単位'''('人') -asc:'''昇降'''(false) -sum:'''投票''' --まとめて表示する投票項目をArray形式で指定する。 --同じ投票名の項目が複数ある場合は後に設定された方が優先される。 -ex. 0::/a=sum(words:['選択肢1'],pos:'migi') 30::/b=sum(words:['選択肢2'],pos:'hidari') 60::/showResult(sum:[a,b]) **replace [#replace] replace(src:'''置換え対象''',dest:'''置換え後''',enabled:'''有効''',target:'''対象者''',fill:'''置換え部分''',partial:'''一致部分''',color:'''色''',size:'''大きさ''',pos:'''位置''') 置き換え。 省略した場合の初期値は()の中のものとなる。 -src:'''置換え対象'''('') --これを省略すると全てのコメントが置換えの対象になります。 -dest:'''置換え後'''('''srcと同じ文字列''') -enabled:'''有効'''(true) --trueだと有効、falseだと無効。 -target:'''対象者'''('') -target:'''対象者'''('owner user') --userは視聴者コメントに有効、ownerは投稿者コメントに有効にする。 -fill:'''置換え部分'''(false) --trueなら全文置換え、falseなら該当部分のみ置換え。 -partial:'''一致部分'''(true) --trueなら部分一致、falseなら完全一致で置換え。 -以下3項目はreplaceが作動したコメントのcolor、size、posをそれぞれ書き換えます。 -color:'''色'''('''元のまま変更しない''') --RGB値で指定 -size:'''大きさ'''('''元のまま変更しない''') -pos:'''位置'''('''元のまま変更しない''') -ex. 視聴者コメントのみ「w」を「…」に置換え。 0::/replace(src:'w',dest:'…',target:'user') 以下のような方法で全てのコメントのコマンドを強制的に書き換える事ができます。 0::/replace(color:0xff0000,size:'big',pos:'ue') **rand [#rand] rand('''文字列''') 文字列、もしくは数値を渡すと対応した特定の数値が返ってくる。 ただしその数値はまず推測できない。 数値の範囲はおそらく 0 ~ 2^31-1 (=2147483647) -ex. 0::/a=rand('文字列');dt(a) 0::/b=rand(10);dt(b,y:40) **distance [#distance] distance('''X1''','''Y1''','''X2''','''Y2''') -座標(X1,Y1)と座標(X2,Y2)間の距離を返り値とする。 --ex. 0::/a=distance(0,0,512,384);dt(a) **screenWidth [#screenwidth] screenWidth('') -画面の幅(通常は512)を返す。 -この値が100%の幅となる。 --ex. 0::/val=screenWidth;dt(val) **screenHeight [#screenheight] screenHeight('') -画面の高さ(通常は384)を返す。 -この値が100%の高さとなる。 --ex. 0::/val=screenHeight;dt(val) **addButton [#addButton] addButton(message:'''コメント''',mail:'''コマンド''',vpos:'''再生時''',commes:'''投稿コメント''',commail:'''投稿コマンド''',comvisible:'''投稿表示''',limit:'''有効回数''',hidden:'''隠し''') -message:'''コメント'''('') -mail:'''コマンド'''('') -vpos:'''再生時''' -commes:'''投稿コメント'''('''ボタン部分のコメントの内容''') -commail:'''投稿コマンド'''('') -comvisible:'''投稿表示'''(true) --falseにするとこの機能を使って投稿したコメントはその投稿者以外から見えなくなる。 -limit:'''有効回数'''(1) --ボタンの使用回数の制限。 -hidden:'''隠し'''(false) --ボタン状の表示を隠し、通常の文字と同じにする。クリックした際の効果は変わらない。 -どうやらニワン語で設定すると正常に動作しないようです。正常に動作された方は修正お願いします。(player: 2008-03-13 15:00) **playStartTime [#playStartTime] playStartTime('') -該当のページを開いた時刻を返す。 時刻は、unix秒(1970年1月1日からの秒数)のミリ秒単位の数字で表記される。つまり、unix秒の1000倍の数値となる。 0::/dt(playStartTime) **BGM [#BGM] BGM(id:'''動画ID''',x:'''x座標''',y:'''y座標''',width:'''幅''',height:'''高さ''',visual:'''表示方法''',volume:'''音量''') あらかじめBGM(BackGroundMovie)として使用する動画を定義する。 -id:'''動画ID'''('sm9') --「@BGM使用可」と表示されている動画のみ指定できます。ちなみにsm9は使用できない動画です。 -x:'''x座標'''(0) --指定した動画を小窓で表示する際の設定。 -y:'''y座標'''(0) -width:'''幅'''(120) -height:'''高さ'''(90) -visual:'''表示方法'''(0) --trueなら表示、falseなら非表示、それ以外なら5秒でフェードアウト。 -volume:'''音量'''(50) --音量の設定。0~100で設定。 -/BGMを定義した順番に0番から順に番号がつけられます。この番号は後述の[[playBGM>#playBGM]]等で使用します。 -@BGMのデフォルトはsm3844507、@BGMで指定した動画が削除されていた場合はsm3844508が再生される。ちなみに使用できる動画は2MB以下のものに制限されています。 -使用できる動画は[[@BGM推奨>http://www.nicovideo.jp/tag/%EF%BC%A0%EF%BC%A2%EF%BC%A7%EF%BC%AD%E6%8E%A8%E5%A5%A8]]から検索するといい。 -ex. 0::/BGM(id:'sm3844507',x:128,y:96,width:256,height:192,visual:true,volume:80) 5::/playBGM 30::/stopBGM **playBGM [#playBGM] playBGM('''番号''') -[[BGM>#BGM]]で定義したBGMを再生する。 -番号を省略した場合は0番 **stopBGM [#stopBGM] stopBGM('''番号''') -[[BGM>#BGM]]で定義し[[playBGM>#playBGM]]で再生したBGMを停止する。 **addAtPausePoint [#addAtPausePoint] addAtPausePoint(vpos:'''再生時''',wait:'''静止時間''') -このスクリプトの動作は確認されていません。 **addPostRoute [#addPostRoute] addPostRoute(match:'一致',id:'レイヤ',button:'ボタン') コメントの表示レイヤを指定します。addPostRouteは事前実行スクリプトなので、動画の途中での変更は効きません。 -match:'一致' レイヤを変更したいコメント内の文字列を指定します。部分一致です。 -id:'''レイヤ'''('default') 表示レイヤを以下から指定する。 --'default':通常スレッド --'local':ローカルスレッド --'game':ニコススレッド -ボタン:動作が確認されていません。 **CM [#CM] CM(id:'''動画ID''',time:'''時刻''',pause:'''停止''',link:'''リンク''',volume:'''音量''') あらかじめCMとして再生される動画を定義する。 -id:'''動画ID'''('') -time:'''時刻'''(Underfined) -pause:'''停止'''(false) -link:'''リンク'''('') -volume:'''音量'''(0) --音量の設定。0~100で設定。 -/CMを定義した順番に0番から順に番号がつけられます。この番号は後述の[[playCM>#playCM]]で使用します。 **playCM [#playCM] playCM('''番号''') ---- *定義変数 [#parameter] **chat [#chat] 直前に処理されたコメントの情報を返す。 commentTrigger内で使用すると常にcommentTriggerを発生させたコメントのものを取得できるので有用。 -chat.message 該当のコメントの文字列を返す。 -chat.vpos 該当のコメントの再生時を返す。 -chat.isYourPost 該当のコメントの投稿者が現在の視聴者だったらtrue、そうでなければfalseを返す。 -chat.mail 該当のコメントのコマンド欄を返す。 -chat.fromButton 該当のコメントのコマンド欄にfrom_buttonがあるならtrue、なければfalseを返す。@ボタンなどのボタンをクリックして生成されたコメントかどうかを判断する。 -chat.isPremium 該当のコメントの投稿者がプレミアム会員だったらtrue、そうでなければfalseを返す。 -chat.color 該当のコメントの色(0~16777215)を返す。未指定の場合はundefined。 -chat.size 該当のコメントの文字サイズを返す。medium、big、smallの順に0、1、2。未指定の場合はundefined。 -chat.no 該当のコメントのコメ番号を返す。 **commentColor [#commentColor] 任意のRBG系の数値を代入するとデフォルトのコメント色を変更する。 初期値はundefinedで何も代入されていない。 undefined時は次の設定と同等の処理を行う(commentColor=0xffffff) commentColorに数値を代入した段階で変更が適応される。 0::/commentColor=0xff0000 **commentPlace [#commentPlace] "naka","shita","ue"のいずれかを代入するとデフォルトのコメントの流れ方を変更する。 undefined時の処理値(commentPlace='naka') 0::/commentPlace='shita' **commentSize [#commentSize] "big","medium","small"のいずれかを代入するとデフォルトのコメントのサイズを変更する。 undefined時の処理値(commentSize='medium') 0::/commentSize='small' **commentInvisible [#commentInvisible] コメントの表示を制御する。 undefined時の処理値(commentInvisible=false) trueの時コメントを非表示にする。 ただし、drawTextなどで描画された文字はこの限りでない。 この変数によってコメント非表示した場合、プレイヤー中のコメント表示/非表示ボタンではコメントを再度表示させることができない。 30::/commentInvisible=true **commentReverse [#commentReverse] 数値を代入することでコメントが逆に流れるようになる。 undefined時の処理値(commentReverse=0) 0なら無効、1なら視聴者コメントのみ、2なら投稿者コメントのみ、3なら全て。 0::/commentReverse=1 **defaultSage [#defaultSage] 動画をsageるかを決めるブール値が入っている。 undefined時の処理値(defaultSage=false) trueを指定した場合に、デフォルトで動画のコマンド欄にsageと書いているとされる。 現状の仕様では@デフォルトを行うと強制的にfalseになる。 0::/defaultSage=true がバグのせいで仮にこれがtrueでもsageを記入したことにはならない模様。 //皮肉なことに処理の一部でコメント禁止のpostDisabledの値を参照しているっぽい。 **postDisabled [#postDisabled] コメントの入力、投稿を制御する。 undefined時の処理値(postDisabled=false) trueの時コメントの入力を拒否する。 30::/postDisabled=true **seekDisabled [#seekDisabled] シークバーの操作をできなくするかを決めるブール値が入っている。 undefined時の処理値(seekDisabled=false) trueを代入するとシークバーの操作ができなくなる。 0::/seekDisabled=true **isLoaded [#isloaded] 動画の読み込みが完了していればtrue、そうでなければfalseを返す。 5::/if(when:isLoaded,then:dt('読み込み済'),else:dt('読み込み中')) 動作しないっぽい。 **isWide [#isWide] false以外の何らかの値を代入することで、drawShape等の描画命令が16:9モードに対応するようになる。 undefined時の処理値(isWide=false) -ex 画面全体を塗りつぶす 0::/isWide=true 0::/drawShape(x:0,y:0,shape:'rect',width:screenWidth,height:screenHeight,color:0xffffff, pos:'ue hidari') **lastVideo [#lastVideo] 未実装。一つ前に見た動画のIDが入っているように、そのうち実装されるかもしれません。現状では常に''sm1''を返します。 ---- *演算子 [#operator] 以下の演算子が使用可能です。 別記の方法でも同様の結果が得られます。 **算術演算子 [#p1812861] |CENTER:BGCOLOR(#EFEBEF):|CENTER:|||c |演算子|用例|解説|別記|h |+|exp1 + exp2|和を求めます|exp1.add(exp2)| |-|exp1 - exp2|差を求めます|exp1.subtract(exp2)| |*|exp1 * exp2|積を求めます|exp1.multiply(exp2)| |/|exp1 / exp2|商を求めます|exp1.divide(exp2)| |%|exp1 % exp2|商の余りを求めます|exp1.modulo(exp2)| **比較演算子 [#q3a49b63] 真ならtrue、偽ならfalseを返します。 |CENTER:BGCOLOR(#EFEBEF):|CENTER:|||c |演算子|用例|解説|別記|h |==|exp1 == exp2|exp1とexp2が等しいなら真|exp1.equals(exp2)| |!=|exp1 != exp2|exp1とexp2が等しくないなら真|exp1.notEquals(exp2)| |>=|exp1 >= exp2|大なりイコール|exp1.notLessThan(exp2)| |<=|exp1 <= exp2|小なりイコール|exp1.notGreaterThan(exp2)| |>|exp1 > exp2|大なり(exp1はexp2より大きい)|exp1.greaterThan(exp2)| |<|exp1 < exp2|小なり(exp1はexp2より小さい)|exp1.lessThan(exp2)| **論理演算子 [#ef5c2275] 真ならtrue、偽ならfalseを返します。 |CENTER:BGCOLOR(#EFEBEF):|CENTER:|||c |演算子|用例|解説|別記|h |&&|exp1 && exp2|exp1がtrueで且つexp2がtrueならtrueを返します|exp1.and(exp2)| ||||exp1 || exp2|exp1がtrue、又はexp2がtrueならtrueを返します|exp1.or(exp2)| |!|!exp1|exp1がfalseならtrueを返します|exp1.not| **未分類(用途不明含む) [#g2a003b7] |CENTER:BGCOLOR(#EFEBEF):|CENTER:|||c |演算子|用例|解説|別記|h |=|exp1 = exp2|exp1にexp2を代入します|| |:=|exp1 := exp2|関数内でローカル変数の初期化に使います|| |+|+exp1|exp1が数値ならそのまま、文字列なら0を返します|exp1.plus| |-|-exp1|exp1が数値なら-1をかけたもの、文字列なら0を返します|exp1.minus| |++|exp1 ++|exp1を返し、exp1に1を加えたものをexp1に格納します。|exp1=exp1.increase| |--|exp1 --|exp1を返し、exp1に-1を加えたものをexp1に格納します|exp1=exp1.decrease| |++|++ exp1|exp1+1を返し、exp1に1を加えたものをexp1に格納します|exp1=exp1.increase| |--|-- exp1|exp1-1を返し、exp1に-1を加えたものをexp1に格納します|exp1=exp1.decrease| |+=|exp1 += exp2|exp1+exp2の結果をexp1に格納します|exp1=exp1.add(exp2)| |-=|exp1 -= exp2|exp1-exp2の結果をexp1に格納します|exp1=exp1.subtract(exp2)| |*=|exp1 *= exp2|exp1*exp2の結果をexp1に格納します|exp1=exp1.multiply(exp2)| |/=|exp1 /= exp2|exp1/exp2の結果をexp1に格納します|exp1=exp1.divide(exp2)| |%=|exp1 %= exp2|exp1%exp2の結果をexp1に格納します|exp1=exp1.modulo(exp2)| ---- *数値 [#numeric_object] 数値です。 **基本操作[#numeric_introduce] -数値に文字列を加えるようにすると自動的に文字列に変換されます。加える文字列は空でも同様です。 --ex. 上は「2525動画」、下は「25251」と表示されます。 0::/a = 2525; a += "動画"; dt(a) 0::/a = 2525; a += ""; a += 1; dt(a) -数字のみからなる文字列の場合、0を引くことにより数値に変換されます。 --ex. 上は「25251」、下は「2526」と表示されます。 0::/a = "2525"; a += 1; dt(a) 0::/a = "2525"; a -= 0; a += 1; dt(a) -0から始まる数値は8進数、0xから始まる数値は16進数として扱われます。 --ex. 上は「1365」、下は「9509」と表示されます。 0::/a = 02525; dt(a) 0::/a = 0x2525; dt(a) **floor [#numeric_floor] numeric.''floor'' -その値を超えない最小の整数を求めます。つまり正の数なら小数点以下を切り捨てる事になります。 -ex. 「3」を表示 0::/dt("ゆとりのある円周率="+ 3.14.floor) **sin [#numeric_sin] numeric.''sin'' -正弦を求めます -ex. 多分0に近い値を表示 0::/dt(3.14.sin) **cos [#numeric_cos] numeric.''cos'' -余弦を求めます -ex. 多分-1に近い値を表示 0::/dt(3.14.cos) **pow [#numeric_pow] exp1.pow(exp2) -exp1のexp2乗を求めます -ex. 「4」を表示 0::/dt(2.pow(2)) **abs [#numeric_abs] numeric.''abs'' -絶対値を求めます -ex. 「1」を表示 0::/dt((-1).abs) ---- *文字列 [#string_object] 文字列です。 **基本操作[#string_introduce] -文字列を代入します。 0::/a = "ニコニコ動画"; b = "で遊ぼう" -文字列を連結します。この場合は"ニコニコ動画で遊ぼう"を表示します。 0::/a = "ニコニコ動画"; b = "で遊ぼう"; c = a + b 1::/dt(c) **index [#string_index] string.''index''(value) -1文字目を0としてvalueの文字を取得します。 -数値の場合は常にundefinedを返します。 -ex. この場合は ''動'' を返します。 0::/str='ニコニコ動画'; dt(str.index(4)) 下の記述方法でも同じ動作をします。 0::/str='ニコニコ動画'; dt(str[4]) **size [#string_size] string.''size'' -文字列の長さを返します。 -ex. この場合は6を表示します。 0::/dt("ニコニコ動画".size) **indexOf [#string_indexOf] string.''indexOf''(key [, from]) -stringの1文字目を0としてkeyが何文字目にあるのかを返します。fromを2とした場合は2つめのkeyが何文字目にあるかを返します。存在しない場合は-1を返します。 -これを利用してstringがkeyの文字列を含むこと、もしくは含まない事を検出できます。 -ex. この場合は3を返します。 0::/dt('abcdef'.indexOf('d')) 文字列検索の例。t1の文字列にt2の文字列が含まれるかをチェックする。文字列があればcheckにtrueが格納される。 0::/t1='abcdef';t2='d';check=(t1.indexOf(t2)>=0);if(when:check,then:dt('ある'),else:dt('ない')) **slice [#string_slice] string.''slice'' -文字列を切り出します。 -ex. "CD"を表示します。 0::/dt('ABCDEF'.slice(2,2)) -負の整数を指定した場合、指定した値の絶対数だけ文字列の最後尾から切り出します。 -ex. "CDEF"を表示します。 0::/dt('ABCDEF'.slice(-4)) **toInteger [#string_toInteger] string.''toInteger'' -文字列を10進数の整数に変換します。小数点以下は切り捨てられます。 -文字列の一文字目を0にし全ての桁が7以下の場合は8進数、0xにすると16進数として扱います。 -数値以外の文字列を渡した場合はNaNを返します。 -ex. 511 を返します。 0::/dt('0777'.toInteger) **toFloat [#string_toFloat] string.''toFloat'' -文字列を整数に変換します。小数点以下も保持されます。 -数値以外の文字列を渡した場合はNaNを返します。 -ex. 2525.96 を返します。 0::/dt('2525.96'.toFloat) **eval [#string_eval] string.''eval'' -文字列をプログラムとして計算します。 -ex. "2525" を表示します。 0::/dt('25 * 100 + 5.pow(2)'.eval) ---- *配列 [#array_object] 配列です。 **基本操作 [#array_introduce] -変数のarrayに、"A","B","C"を要素に持つ配列を代入します。取り出し方は後述の[[index>#array_index]]にて。 0::/ array = ["A","B","C"] -二次元配列や三次元配列も作成できます。この場合"F"を表示します。 0::/ array = [["A","B"],["C",["D",["F"],"E"],"G"],"H","I"] 0::/ dt( array[1][1][1][0] ) **index [#array_index] array.''index''(value) -配列の先頭の要素を0とし、valueの要素を返します。 -ex. この場合はCを返します。 0::/dt(["A","B","C"].index(2)) 下の記述方法でも同じ動作をします。 0::/dt(["A","B","C"][2]) **size [#array_size] array.''size'' -配列の要素数を返します。 -ex. この場合は3を表示します。 0::/ dt( ["A","B","C"].size ) **unshift [#array_unshift] array.''unshift''(value) -arrayの最初にvalueをその要素として追加します。 -ex. この場合は"4:D"を表示します。 0::/ array = ["A","B","C"] 0::/ array.unshift("D") 0::/ dt( array.size + ":" + array[0] ) **push [#array_push] array.''push''(value) -arrayの最後にvalueをその要素として追加します。 -ex. この場合は"4:D"を表示します。 0::/ array = ["A","B","C"] 0::/ array.push("D") 0::/ dt( array.size + ":" + array[array.size-1] ) **shift [#array_shift] array.''shift'' -arrayの最初の要素を削除します。 -ex. この場合は"2:B"を表示します。 0::/ array = ["A","B","C"] 0::/ array.shift 0::/ dt( array.size + ":" + array[0] ) **pop [#array_pop] array.''pop'' -arrayの最後の要素を削除します。 -ex. この場合は"2:B"を表示します。 0::/ array = ["A","B","C"] 0::/ array.pop 0::/ dt( array.size + ":" + array[array.size-1] ) **sort [#array_sort] array.''sort'' -配列をソートします・ -ex. "1,2,3" を表示します。 0::/ array = [2,1,3] 0::/ array.sort 0::/ dt( array.join(',') ) **sum [#array_sum] array.''sum'' -全ての要素の数値の和を返します。 -ex. 30を返します。 0::/array=[10,8,12];dt(array.sum) **product [#array_product] array.''product'' -全ての要素の数値の積を返します。 -ex. 960を返します。 0::/array=[10,8,12];dt(array.product) **join [#array_join] array.''join''(value) -全ての要素を単純に連結したものを返します。 -数値は自動的に文字列として扱われます。 -valueを指定した場合はその文字列を要素と要素の間に挟みます。 - ex. ''A-B-C''を表示する 0::/array=['A','B','C'];dt(array.join('-')) *オブジェクト [#object] オブジェクトに関連する処理。 **def [#def] ''def''(name, script) -関数を作成します。 -ex. "こんにちは世界"が表示されます。 0::/def(hoge(target), dt('こんにちは'+ target)) 0::/hoge('世界') オブジェクトに対してメソッドとして追加することも出来ます。 0::/obj = ['ほげ'] 0::/obj.def(hoge, dt('配列の中身は' + self[0])) 0::/obj.hoge ローカル変数の使用例です。"val=ローカル" "val=グローバル" と表示されます。 0::/val = 'グローバル' 0::/def(hoge, val := 'ローカル'; dt('val='+ val)) 0::/hoge 0::/dt('val='+ val).pos = "migi" **def_kari [#def_kari] ''def_kari''(obj , script) -オブジェクトを作成します。objを記述するとscriptを実行するようになります。 -ex. "テスト"が表示されます。 0::/def_kari('test',dt('テスト')) 0::/test 下記の方法で引数を渡すことも出来ます。id無しで渡したものは$1等の指定で呼び出せます。 "456テスト123"が表示されます。 0::/def_kari('test',dt($2+txt+$1)) 0::/test('123',txt:'テスト','456') **setSlot [#setSlot] label.''setSlot''(id,value) -オブジェクトの指定したidの内容を書き換える。 -ex. textの内容を書き換えます。 0::/label=drawText(text:'test');label.setSlot('text','書き換え') 下の記述方法でも同じ動作をします。 0::/label=drawText(text:'test');label.text='書き換え' **getSlot [#getSlot] label.''getSlot''(id) -オブジェクトの指定したidの内容を取得する。 -ex. textの内容取得します。 0::/label=drawText(text:'test',pos:'ue');dt(label.getSlot('text')) 下の記述方法でも同じ動作をします。 0::/label=drawText(text:'test',pos:'ue');dt(label.text) **clone [#clone] object.''clone'' -オブジェクトを複製します。 ---- *その他構文 [#etc] **while_kari [#while_kari] while_kari(''評価式'', ''実行式'') -''評価式''が真である間、''実行式''を繰り返し実行します。 -ex. "i=1" "i=2" "i=3" と表示します。 0::/ i=0 0::/ while_kari(i++ < 3, dt('i='+ i).y = 30*i) - 無限ループに陥らないように注意しましょう。 **__nicoscript_x [#nicoscript_x] -ラベルを指定せずにマクロを宣言したときにラベルとして自動的に宣言される -ラベルを指定していないマクロに対してのアクセスする時に用いる -xは自然数が入る。ラベルを指定していないマクロが宣言された順番に__nicoscript_1、__nicoscript_2・・・と付加される -ex. aには「あ」の投票数が入る 0::@投票 あ、い、う 10::/a=__nicoscript_1.words["あ"] **alternative [#alternative] ''評価式''.alternative(''式1'', ''式2'') -''評価式''が真であるときには''式1''、そうでなければ''式2''を実行してその結果を返します。 -ifの代わりになります。 -ex. この例では、"A"がコメントとして入力されると"正解です"と表示され、それ以外の場合は"不正解です"と表示されます。 0::/ ctrig( (chat.message == "A").alternative(dt("正解です"), dt("不正解です")) ) -このスクリプトは、ifを使って次のように書き換えられます。 0::/ ctrig( if(chat.message == "A", then: dt("正解です"), else: dt("不正解です")) ) **alt [#alt] ''評価式''.alt(''式1'', ''式2'') - alternative と同じようです。 - ex. 0::/ ctrig( (chat.message == "A").alt(dt("正解です"), dt("不正解です")) ) **lambda [#lambda] lambda(''スクリプトの処理'') - [[クロージャ>http://ja.wikipedia.org/wiki/%E3%82%AF%E3%83%AD%E3%83%BC%E3%82%B8%E3%83%A3]]を作成します。 - ex. "ほげ" を表示します。 0::/ func = lambda(@(msg); dt(msg)) 0::/ func['ほげ'] **timethis [#timethis] timethis(''スクリプトの処理'') - スクリプトの処理時間を出力します。 - ex. 1+1を100万回試行した場合の処理時間を出力します。 0::/ dt(timethis(1000000.times(\(1+1)))); - result ** TIMETHIS RESULT ** + VALUE:スクリプトの処理結果 + スクリプトの処理時間(ミリ秒) msec + 処理で生成されたオブジェクト数 objects ---- *コメントまたはwikiの編集がわからない人はこちらから投稿してください。 [#comments] #br #pcomment(コメント/ニコスクリプト,10,below)
テキスト整形のルールを表示する
Site admin:
takechan
Powered by
はてなウェブサービス
SimpleAPI