---
title: Impor Skrip
slug: world-sdk-guide-id/impor-skrip
docTags: 
createdAt: 2024-09-02T08:34:13.135Z
---

Selain terhubung ke GameObject, ZEPETOScript dapat digunakan langsung oleh skrip lain.

Anda dapat dengan mudah mengimpor dan menggunakan ZEPETOScript dengan cara yang sama seperti Anda menggunakan pustaka atau modul. Dalam sintaks TypeScript, Anda perlu menggunakan jalur relatif ke file ZEPETOScript.

Mengingat situasi di bawah ini, jika Anda ingin mengimpor ExtraComponent ke dalam ScriptImport, Anda perlu menggunakan sintaks berikut.

Contoh berikut adalah deklarasi dalam ScriptImport.ts untuk memanggil ExtraComponent.TS yang terletak di folder lib.

:::CodeblockTabs
TypeScript

```typescript
import ExtraComponent from './lib/ExtraComponent';
```
:::



::Image[]{src="https://api.archbee.com/api/optimize/fCt3n1oCa8rgNJ8fw9I2N-HSSAVN3PdE6c87FlgO8hV-20240904-102417.png" size="42" width="200" height="80" position="center" showCaption="false"}

:::hint{type="success"}
## 👍 Tips

- Penting untuk menentukan jalur dengan benar saat mengimpor file TS lain.
- Silakan kenali notasi jalur relatif.
- `./` menunjukkan direktori saat ini.
- `../` menunjukkan direktori induk, yaitu, direktori satu tingkat di atas direktori saat ini.
:::



Anda dapat mengakses fungsi dan variabel yang diekspor yang dideklarasikan dalam skrip yang diimpor dengan merujuknya secara langsung, seperti yang ditunjukkan dalam contoh.

```typescript
this.gameObject.AddComponent<ExtraComponent>();
const extraComponent = this.gameObject.GetComponent<ExtraComponent>();

// Dapatkan nilai dengan pemanggilan metode
const count = extraComponent.GetCount();
// Set nilai dengan pemanggilan metode
extraComponent.SetCount(0);
// Dapatkan properti publik
const resultString = extraComponent.stringProperty;
```



Berikut adalah contoh kode yang menunjukkan TypeScript yang diimpor.

```typescript
import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
import { Text } from 'UnityEngine.UI';
// Impor skrip kustom dari jalur
import ExtraComponent from './lib/ExtraComponent';

export default class ScriptImport extends ZepetoScriptBehaviour {

    public resultUI: Text;
    private extComponent: ExtraComponent;

    Start() {
        // Tambahkan komponen skrip
        this.gameObject.AddComponent<ExtraComponent>();
        this.extComponent = this.gameObject.GetComponent<ExtraComponent>();
    }

    Update() {
        // Dapatkan nilai dengan pemanggilan metode
        const count = this.extComponent.GetCount();

        if (count > 10) {
            // Atur nilai dengan pemanggilan metode
            this.extComponent.SetCount(0);
        }

        // Dapatkan properti publik
        const resultString = this.extComponent.stringProperty;

        // Cetak hasil
        console.log(`hasil : ${resultString}`);
        this.resultUI.text = resultString;
    }
}
```



Contoh kode untuk ExtraComponents.

```typescript
import { ZepetoScriptBehaviour } from 'ZEPETO.Script';

export default class ExtraComponent extends ZepetoScriptBehaviour {
    
    public stringProperty: string;
    private message: string;
    private count: int;

    Start() {
        this.message = "Hai zepeto!";
        this.count = 0;
    }
     
    Update() {
        this.stringProperty = `${this.message} : ${this.count++}`;
    }
     
    GetCount() {
        return this.count;
    }
     
    SetCount(newCount: int) {
        this.count = newCount;
    }

}
```



Periksa layar keluaran kode uji di bawah ini.

![](https://api.archbee.com/api/optimize/fCt3n1oCa8rgNJ8fw9I2N-fJN9RjCNK8pElFEigtqJ6-20240904-102417.png "2-10-1 (1).png")

