異世界移動API
2 分
- レビューを通過し、アクティブ化されたワールド間でのみ移動できます。
- ターゲットワールドの秘密の部屋には入れません。
ZepetoWorldContentをインポートする必要があります。これにより、ワールド間の移動APIを使用できます。
import { ZepetoWorldContent } from 'ZEPETO.World';関数の定義は次のとおりです:
API | 説明 |
|---|---|
public static MoveToWorld($worldId: string, $onError: System.Action$2<number, string>):void; | - World ID テキストがパラメータとして設定された後、関数が呼び出されると、ワールド間の移動が実行されます。 - 移動できないワールドの場合、エラーが発生し、エラー時にコールバックを通じて制御できます。 |
以下は、特定の GameObject トリガーに入ると別のワールドに移動するコードサンプルです。
import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
import { ZepetoWorldContent } from 'ZEPETO.World';
import { Collider,Vector3,Quaternion } from 'UnityEngine';
import { ZepetoCharacter, ZepetoPlayer, ZepetoPlayers } from 'ZEPETO.Character.Controller';
export default class MoveToWorld extends ZepetoScriptBehaviour {
private zepetoCharacter: ZepetoCharacter;
// 例: com.default.jumpworld
private worldId: string = "World ID";
Start() {
ZepetoPlayers.instance.OnAddedLocalPlayer.AddListener(() => {
this.zepetoCharacter = ZepetoPlayers.instance.LocalPlayer.zepetoPlayer.character;
});
}
OnTriggerEnter(collider: Collider) {
if ((this.zepetoCharacter == null) || (collider.gameObject != this.zepetoCharacter.gameObject)) {
return;
}
ZepetoWorldContent.MoveToWorld(this.worldId, (errCode, errMsg) => {
// エラーコールバック処理の例
// (実装時には、ポップアップウィンドウなど、さまざまな方法で実装してみてください)
console.log(`${errCode} - ${errMsg}`);
});
}
}