Difference between revisions of "LlWater/ja"

From Second Life Wiki
Jump to navigation Jump to search
m (Undo revision 851122 by Mako Nozaki (Talk))
Line 2: Line 2:
|func=llWater
|func=llWater
|func_id=153|func_sleep=0.0|func_energy=10.0
|func_id=153|func_sleep=0.0|func_energy=10.0
|func_footnote='''offset'''のXとY構成のみが意味を持ちます。<br />水位はそのSim全体を通して一定で、一般的には20メートルですが、それが普通というわけではありません。
|func_footnote='''offset''' の X 座標と Y 座標のみが意味をもちます。<br />
水位はその SIM 全体を通して一定で、一般的には 20 メートルですが、常にそうであるとは限りません。
|func_desc
|func_desc
|p1_type=vector|p1_name=offset
|p1_type=vector|p1_name=offset
|return_type=float
|return_type=float
|return_text=オブジェクトの位置 + '''offset'''下の水位
|return_text=オブジェクトの位置から下の水位 + '''offset'''&nbsp;
|spec
|spec
|caveats=*要求される位置は同じSim内である必要があります。
|caveats=*指定した位置は同じ SIM にある必要があります。
|constants
|constants
|examples=
|examples=
<lsl>// Gets the object to land on ground or on water
<lsl>// オブジェクトを着陸させたり着水させたりします
// by Konigmann Lippmann & Strife Onizuka
// by Konigmann Lippmann & Strife Onizuka
FindGroundOrWater()
FindGroundOrWater()
Line 21: Line 22:
     vector vTarget = llGetPos();
     vector vTarget = llGetPos();


     //llSetPos can only move 10m at a time.
     //llSetPos では一度に 10 m しか移動させることができません
     integer iCounter = 1 + llAbs((integer)(vTarget.z - fHeight) / 10);
     integer iCounter = 1 + llAbs((integer)(vTarget.z - fHeight) / 10);
     vTarget.z = fHeight;
     vTarget.z = fHeight;
Line 38: Line 39:
</lsl>
</lsl>
|helpers
|helpers
|also_functions={{LSL DefineRow||[[llGround/ja|llGround]]|地面高を取得します}}
|also_functions={{LSL DefineRow||{{LSLG/ja|llGround}}|地面の高さを取得します}}
{{LSL DefineRow||[[llWind/ja|llWind]]|風の速さを取得します}}
{{LSL DefineRow||{{LSLG/ja|llWind}}|風の速さを取得します}}
{{LSL DefineRow||[[llCloud/ja|llCloud]]|雲の密度を取得します}}
{{LSL DefineRow||{{LSLG/ja|llCloud}}|雲の密度を取得します}}
|also_tests
|also_tests
|also_events
|also_events

Revision as of 08:16, 15 May 2010

要約

関数: float llWater( vector offset );

オブジェクトの位置から下の水位 + offset を float で返します。

• vector offset

offset の X 座標と Y 座標のみが意味をもちます。
水位はその SIM 全体を通して一定で、一般的には 20 メートルですが、常にそうであるとは限りません。

警告

  • 指定した位置は同じ SIM にある必要があります。
All Issues ~ Search JIRA for related Bugs

サンプル

<lsl>// オブジェクトを着陸させたり着水させたりします // by Konigmann Lippmann & Strife Onizuka FindGroundOrWater() {

   float fHeight = llGround( ZERO_VECTOR );
   float fWaterLevel = llWater( ZERO_VECTOR );
   if( fHeight < fWaterLevel )
       fHeight = fWaterLevel;
   vector vTarget = llGetPos();
   //llSetPos では一度に 10 m しか移動させることができません
   integer iCounter = 1 + llAbs((integer)(vTarget.z - fHeight) / 10);
   vTarget.z = fHeight;
   do
       llSetPos( vTarget );
   while( --iCounter );

}

default {

   touch_start(integer total_number)
   {
       FindGroundOrWater();
   }

}

</lsl>

関連項目

関数

•  llGround 地面の高さを取得します
•  llWind 風の速さを取得します
•  llCloud 雲の密度を取得します

特記事項

Search JIRA for related Issues

Signature

function float llWater( vector offset );
この翻訳は 原文 と比べて古いですか?間違いがありますか?読みにくいですか?みんなで 修正 していきましょう! (手順はこちら)
この項目はあなたにとって参考にならない項目ですか?もしかしたらLSL Wikiの関連した項目が参考になるかもしれません。