Storage key/value persisten untuk makro saat ini. Variabel biasa hanya dibagikan antar-action PYTHON_CODE berurutan dalam flow yang sama, termasuk action di dalam GROUP; flow paralel memiliki variabel terisolasi. Kunci Storage dipakai bersama oleh semua flow, jadi gunakan Storage ketika nilai harus bertahan ke run makro berikutnya, bukan sebagai kanal pesan antarproses. Penulisan disimpan otomatis setelah 2 detik tanpa penulisan baru dan di-commit lagi setelah seluruh Run makro dan semua flow latar berakhir.
Sintaks
Storage
Kelas ini tidak dapat dibuat langsung.
Nilai yang dikembalikan
—
Contoh
# Simpan nilai lintas run makro yang terpisah
run_count = Storage.get("run_count", 0)
run_count = run_count + 1
Storage.set("run_count", run_count)
Storage.set("last_point", Point(500, 900))
MacroPanel.notify("Run #" + str(run_count))
Metode
8 metode
Storage.get
Static Method
Baca satu nilai yang bertahan berdasarkan kunci dan secara opsional kembali ke default ketika kuncinya hilang.
Sintaks
Storage.get(key, default=None)
Parameter
Nama
Deskripsi
keyAny
Key to look up.
Wajib · Posisi atau nama
Tanpa nilai bawaan
defaultAny?
Fallback value returned when the key is missing.
Opsional · Posisi atau nama
Default:None
Nilai yang dikembalikan
Any? — Nilai yang disimpan untuk kunci tersebut, atau nilai default yang diberikan.
Contoh
# Pulihkan penghitung tersimpan dengan nilai default cadangan
run_count = Storage.get("run_count", 0)
Storage.set
Static Method
Tulis atau ganti satu entri di penyimpanan persisten. Nilai yang didukung mempertahankan tipe ramah skrip seperti Number, String, Boolean, Point, Region, list, tuple, dict, set, dan None, termasuk nilai koleksi yang disarangkan.
Sintaks
Storage.set(key, value)
Parameter
Nama
Deskripsi
keyAny
Key to write.
Wajib · Posisi atau nama
Tanpa nilai bawaan
valueAny?
Value to persist for that key.
Wajib · Posisi atau nama
Tanpa nilai bawaan
Nilai yang dikembalikan
None — Tidak ada nilai balik langsung. Storage diperbarui langsung, disimpan otomatis setelah 2 detik tanpa penulisan baru, lalu di-commit lagi setelah seluruh Run makro dan semua flow latar berakhir.
Contoh
# Simpan nilai untuk run makro berikutnya
Storage.set("run_count", 3)
Storage.set("last_point", Point(500, 900))
Storage.remove
Static Method
Hapus satu entri yang bertahan dan kembalikan nilai lama.
Sintaks
Storage.remove(key)
Parameter
Nama
Deskripsi
keyAny
Key to remove.
Wajib · Posisi atau nama
Tanpa nilai bawaan
Nilai yang dikembalikan
Any? — Nilai yang dihapus, atau Tidak Ada saat kuncinya hilang.
Contoh
# Hapus flag tersimpan saat tidak diperlukan lagi
old_flag = Storage.remove("boost_enabled")
Storage.contains
Static Method
Periksa apakah kunci yang ada saat ini ada.
Sintaks
Storage.contains(key)
Parameter
Nama
Deskripsi
keyAny
Key to test.
Wajib · Posisi atau nama
Tanpa nilai bawaan
Nilai yang dikembalikan
Boolean — `True` bila kuncinya ada, jika tidak `False`.
Contoh
# Jalankan penjaga logika berdasarkan state tersimpan
if Storage.contains("last_point"):
MacroPanel.notify("Saved point is ready")
Storage.keys
Static Method
Dapatkan semua kunci yang disimpan sebagai daftar dalam urutan penyisipan.
# Baca semua nilai tersimpan untuk pemeriksaan cepat
saved_values = Storage.values()
Storage.clear
Static Method
Hapus setiap entri yang ada untuk makro saat ini.
Sintaks
Storage.clear()
Nilai yang dikembalikan
None — Tidak ada nilai pengembalian langsung. Penyimpanan menjadi kosong.
Contoh
# Reset semua nilai Storage tersimpan
Storage.clear()
Storage.to_dict
Static Method
Kembalikan Storage saat ini sebagai live dict yang dipakai bersama oleh setiap flow dalam Run ini. Edit langsung pada entri dict yang dikembalikan mengikuti alur simpan otomatis, dan snapshot live terbaru di-commit setelah seluruh Run makro dan semua flow latar berakhir.
Sintaks
Storage.to_dict()
Nilai yang dikembalikan
dict — Tampilan dict langsung dari entri penyimpanan yang ada saat ini.
Contoh
# Baca dan perbarui seluruh dictionary storage tersimpan
state = Storage.to_dict()
state["bonus"] = 5
MacroPanel.notify(str(state))