Cluster Creator Kit Script Reference
    Preparing search index...

    Type Alias SendableItem

    ClusterScript.stateに保存・ItemHandle.sendで送信可能な型です。

    具体的には、以下の値がSendableです。

    特に、Sendableは undefined を含みません。

    undefinedなどのSendableではない値をSendableを要求するAPIに渡した場合、以下のルールに基づいて取り扱われます。

    • undefinedなどのSendableではない値を直接渡した場合、APIに応じて例外になるか無視されます。
    • undefinedなどのSendableではない値を含む配列を渡した場合、Sendableではない値をnullに変換することでSendableとして扱われます。
    • undefinedなどのSendableではない値を値として含むobjectを渡した場合、対応するkey-valueを削除することでSendableとして扱われます。

    これらの挙動が発生した場合、スクリプトコンソールに警告メッセージが表示されます。 また、これらの挙動は将来的なアップデートで例外になるように変更される予定です。

    SendableをPlayerScriptに送信した場合、PlayerScriptSendableとして扱えない値は以下のルールに基づいてPlayerScriptSendableに変換されます。

    • PlayerHandle は同じプレイヤーを指し示す PlayerId になります。
    • ItemHandle は同じアイテムを指し示す ItemId になります。
    • 配列とobjectの中身もそれに応じて変換されます。
    $.state.exampleKey1 = 1; // numberを書き込む
    $.state.exampleKey2 = "hello"; // stringを書き込む
    $.state.exampleKey3 = true; // booleanを書き込む
    $.state.exampleKey4 = { foo: "bar" }; // objectを書き込む
    $.state.exampleKey5 = [1, 2, 3]; // arrayを書き込む
    $.state.exampleKey6 = { // 複雑なオブジェクトを書き込む
    array: [1, 2, 3],
    object: { foo: "bar" },
    };
    itemHandle.send("message1", 10); // numberを送信する
    itemHandle.send("message2", "hello"); // stringを送信する
    itemHandle.send("message3", true); // booleanを送信する
    itemHandle.send("message4", { foo: "bar" }); // objectを送信する
    itemHandle.send("message5", [1, 2, 3]); // arrayを送信する
    itemHandle.send("message6", { // 複雑なオブジェクトを送信する
    array: [1, 2, 3],
    object: { foo: "bar" },
    });