NULL KEY/ja
< NULL KEY
Jump to navigation
Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
LSL ポータル | 関数 | イベント | 型 | 演算子 | 定数 | 実行制御 | スクリプトライブラリ | カテゴリ別スクリプトライブラリ | チュートリアル |
関連記事
関数
• | llAvatarOnSitTarget | |||
• | llDetectedKey | |||
• | llGetNotecardLine | |||
• | llGetLandOwnerAt | |||
• | llGetPermissionsKey | |||
• | llGetTexture | |||
• | llListen |
イベント
• | attach |
サンプル
integer isKey(key in) {
if(in) return 2;
return (in == NULL_KEY);
}////有効な key ならば 2 を、 NULL_KEY ならば 1 を返します。
// NULL_KEY 自体は key 型としてキャストされたときにだけ FALSE と評価されます。
default {
state_entry() {
if (NULL_KEY) { llOwnerSay("NULL_KEY is TRUE"); }// 正しい。
else { llOwnerSay("NULL_KEY is FALSE"); }// 間違い。
if ((key) NULL_KEY) { llOwnerSay("Casted NULL_KEY is TRUE"); }// 間違い。
else { llOwnerSay("Casted NULL_KEY is FALSE"); }// 正しい。
}
}
注意事項
4 文字以上の文字列定数をコードの複数の箇所で使っているのであれば、それらをグローバル定数に格納すべきです。かなりのメモリ節約になります。これについての詳細説明とサンプルは LSL Constants vs Globals にあります。
ほとんどの状況では、 NULL_KEY を使う必要はありません。空文字列 ("") で間に合います。 NULL_KEY を習慣のように使うのは、避けたほうがよいでしょう。多くのアプリケーションで、 key を NULL_KEY と比較して、有効かどうかをチェックしていますが、これは良くないやり方です。
LSL では key 値の有効・無効を簡単に調べられます。条件文に key 値をそのまま入れるだけです。
すなわち if(uuid != NULL_KEY)
とするのでなく if(uuid)
とします。 if(uuid)
は NULL でない有効な key であるときに TRUE が返ります。