Item クラス
Vket Cloud上でワールドを構成する際、Player以外の各要素はItemとして表現されます。
World Builderでは設置アイテム一覧にて配置されたキューブ、Field、コライダーなどのアイテムがこれにあたります。
Itemクラスは、ワールド内に配置されたアイテム及びその子オブジェクトであるNodeなど、個々のアイテムをHeliScriptにて操作するためのものです。
hsItemGet()でアイテム名を指定、あるいはhsItemGetSelf()を実行してItemクラスオブジェクトを取得することが出来ます。
クラス定義
class Item {
}
コンポーネントからItemクラスオブジェクトの取得方法
コンポーネント内のメソッドから以下のような呼び出しをおこなうことで、コンポーネントが持つItemクラスオブジェクトを取得できます。
Item myItem = hsItemGet("アイテム名");
Itemのユーティリティー関数
hsItemGet
Item hsItemGet(string itemName)
グローバル関数。指定した名前でコンポーネントの "items" を取得し、Itemクラスのインスタンスとして返す。
hsItemGetSelf
Item hsItemGetSelf()
コンポーネントのコンストラクタやUpdate,OnClickNode等のメソッド内から呼び出すことで、コンポーネントが設定されている自分自身のItemオブジェクトを取得します。
メソッド
Equals
public bool Equals(Item obj)
引数 obj と自身の同一性を判定する。
hsItemGet() などで Item を取得する場合、同一の Item であっても別のインスタンスが返る場合があるため、同一性の確認には "===" 演算子ではなく Equals() を利用してください。
GetName
public string GetName()
Item の名前を取得する。
SetPos
public void SetPos(Vector3 pos)
Item を指定した座標に移動させる。
GetPos
public Vector3 GetPos()
Item の座標を取得する。
GetWorldPos
public Vector3 GetWorldPos()
Item のワールド座標を取得する。
SetQuaternion
public bool SetQuaternion(Quaternion Rotate)
Itemの回転を設定します。
GetQuaternion
public Quaternion GetQuaternion()
Itemの回転をQuaternionとして取得します。
GetWorldQuaternion
public Quaternion GetWorldQuaternion()
Itemのワールド回転をQuaternionとして取得します。
GetWorldRotate
public Vector3 GetWorldRotate()
Itemのワールド回転をVector3として取得します。
GetScale
public Vector3 GetScale()
ItemのスケールをVector3として取得します。
SetScale
public void SetScale(Vector3 Scale)
ItemのスケールをVector3で設定します。
MovePos
public void MovePos(Vector3 pos, float time, bool CollisionDetection = false)
posで指定した座標に、time秒かけて Item を移動させる。
CollisionDetectionがtrueの場合は、プレイヤーアバターと同等の衝突判定がおこなわれます。
IsMoving
public bool IsMoving()
Item が移動中の場合はtrueを返す。
Play
public bool Play()
サウンドやパーティクルの再生を開始する。再生処理の開始に成功すると true を返す。失敗した場合は false を返す。
Stop
public void Stop()
サウンドやパーティクルの再生を停止する。
IsPlay
public bool IsPlay()
サウンドやパーティクルが再生中の場合は true を返す。
SetShow
public void SetShow(bool flag)
true で Item を表示する。false で Item を非表示にする。
IsShow
public bool IsShow()
Item が表示状態の場合は true を、そうでない場合は false を返す。
ChangeMotion
public bool ChangeMotion(string MotionName)
MotionName で指定したモーションに動作を切り替えます。
Load
public bool Load()
Item のロードを開始する。ロード処理の開始に失敗した場合は false を返す。
Unload
public bool Unload()
Item をアンロードする。アンロード処理に失敗した場合は false を返す。
IsLoading
public bool IsLoading()
Item がロード中の場合は true を、そうでない場合は false を返す。
IsLoaded
public bool IsLoaded()
Item のロードが完了していた場合は true を、そうでない場合は false を返す。
GetNodeIndexByName
public int GetNodeIndexByName(string nodeName)
名前でノードを検索し、該当するノードを識別するインデックスを返す。
GetNodeNameByIndex
public string GetNodeNameByIndex(int nodeIndex)
インデックスでノードを指定し、そのノードの名前を返す。
GetNodePosByIndex
public Vector3 GetNodePosByIndex(int nodeIndex)
インデックスでノードを指定し、そのノードの座標を返す。
SetShowNode
public bool SetShowNode(string nodeName, bool flag)
名前でノードを指定し、そのノードを true で表示、false で非表示にする。
IsShowNode
public bool IsShowNode(string nodeName)
名前でノードを指定し、そのノードが表示されている場合は true を、非表示の場合は false を返す。
SetRotateNode
public bool SetRotateNode(string nodeName, Vector3 rotate)
名前でノードを指定し、そのノードを回転させる。
SetEnableCollider
public bool SetEnableCollider(string nodeName, bool flag)
名前でコライダーを指定し、そのコライダーを true で有効、false で無効にする。
IsEnableCollider
public bool IsEnableCollider(string nodeName)
名前でコライダーを指定し、そのコライダーが有効なら true を、無効なら false を返す。
SetClickableNode
public bool SetClickableNode(string nodeName, bool flag)
名前でクリック可能なノードを指定し、true でクリックを有効に、false でクリックを無効にする。
IsClickableNode
public bool IsClickableNode(string nodeName)
名前でノードを指定し、そのノードをクリック可能なら true を、そうでないなら false を返す。
SetUVOffset
public bool SetUVOffset(string naterialName, float u, float v)
名前でマテリアルを指定し、そのマテリアルの uv座標を変更する。変更に失敗すると false を返す。
PlayVideo
public void PlayVideo(string materialName, string url, bool loop)
再生するマテリアルを指定し、ビデオ再生を開始する。loop に true を指定するとループ再生を行う。
StopVideo
public void StopVideo()
再生中のビデオを停止する。
IsPlayVideo
public bool IsPlayVideo()
ビデオが再生中であれば true を返す。
ClearTextPlane
public void ClearTextPlane()
テキストを消去する。
WriteTextPlane
public void WriteTextPlane(string text)
テキストを設定する。
SetCamera
public bool SetCamera()
カメラタイプのアイテムをカメラとして設定する。
ResetCamera
public void ResetCamera()
SetCameraで設定したものを解除する。
ReplaceItem
public bool ReplaceItem(string URL)
指定したモデルデータでItemの内容を置き換えます。
ReplaceTexture
public bool ReplaceTexture(string MaterialName, string URL)
MaterialNameで指定したマテリアルのテクスチャを、URLの内容で置き換えます。
SetPhysicsEnable
public bool SetPhysicsEnable(string NodeName, bool Flag)
NodeName で指定したノードに対し、trueで物理演算を有効化、falseで無効化します。
IsPhysicsFixed
public bool IsPhysicsFixed(string NodeName)
物理演算において、このItemが固定されている場合は true を返します。
SetProperty
public bool SetProperty(string Key, string Value)
プロパティを設定します。
GetProperty
public string GetProperty(string Key)
プロパティを取得します。Keyが存在しない場合は空文字列が返ります。
CallComponentMethod
public void CallComponentMethod(string ComponentName, string MethodName, string Params)
Item に設定されているコンポーネントのメソッドを呼び出します。 ComponentNameでコンポーネント名を、MethodNameでメソッド名を指定し、メソッドを呼び出します。その際、Paramsで指定した文字列が引数として渡されます。
呼び出せるメソッドには、以下の制限があります。
- 引数として string を 1つだけ持つこと。
- 戻り値がvoidであること。
Note
Overrides関連の関数は現在実装中の機能です。
本機能については今後のアップデートで使い方が更新される予定です。
SetOverridesProperty
public bool SetOverridesProperty(string Key, string Value, string ItemName)
overridesを設定します。同じKeyが存在すれば上書きされ、なければ追加されます。"itemname"を使用していない場合はItemNameには空文字列を指定します。
GetOverridesProperty
public bool GetOverridesProperty(string Key, ref string Value, ref string ItemName)
overrides設定を取得します。