Plugin Siklus Hidup

Sebelum ada negara yang membuat plugin terlihat, plugin loader pertama-tama memilah-milah plugin yang tersedia, menentukan apakah semua dependensi ada, dan mengurutkan plugin berdasarkan urutan ketergantungan. Acara siklus hidup diberikan ke plugin dalam urutan ini. Misalnya plugin A yang berisi " [required-]setelah:B "akan mendapatkan setiap acara setelah plugin B telah menyelesaikan pekerjaan untuk keadaan yang diberikan. Selain itu, keadaan siklus hidup bersifat global. Ini berarti semua plugin yang terlihat satu sama lain harus ditransisikan melalui semua negara sekaligus.

Peringatan

Tujuan dari Sponge Server tidak selalu tersedia. Ketersediaannya bisa diperiksa menggunakan method Sponge.isServerAvailable() atau Game.isServerAvailable().

Peristiwa Negara

Ada tiga kategori peristiwa negara:

  1. Inisialisasi Saat sepon dan plugin dimuat, sebelum game sebenarnya dimulai. Inisialisasi hanya terjadi sekali.

  2. Berlari Saat permainan dan dunia sedang dimuat. Menjalankan keadaan dapat terjadi beberapa kali.

  3. Henti Saat permainan dimatikan. Menghentikan negara bagian, seperti inisialisasi, hanya terjadi satu kali.

Inisialisasi Serikat

Inisialisasi serikat hanya terjadi sekali selama menjalankan tunggal.

KONSTRUKSI

GameConstructionEvent sedang dipicu. Selama keadaan ini, class @Plugin yang terjadi pada setiap plugin juga dipicu.

PRE_INITIALIZATION

Itu :javadoc:`AcaraInisiasiGamePre` dipicu. Selama keadaan ini, plugin bersiap untuk inisialisasi. Akses ke contoh logger default dan akses ke informasi mengenai lokasi file konfigurasi pilihan tersedia.

INITIALISASI

Itu :javadoc:`AcaraInisiasiGamePre` dipicu. Selama keadaan ini, plugin harus menyelesaikan pekerjaan yang dibutuhkan agar bisa berfungsi. Penangan event global harus terdaftar pada tahap ini.

POST_INITIALISASI

Itu :javadoc:`AcaraInisiasiGamepre` dipicu. Dengan keadaan ini, komunikasi antar-plugin harus siap terjadi. Plugin yang menyediakan API harus siap menerima permintaan dasar.

LOAD_COMPLETE

Itu :javadoc:`AcaraInisiasiGamePre` dipicu. Dengan keadaan ini, semua inisialisasi plugin harus diselesaikan.

Berjalan Serikat

Menjalankan Amerika dapat terjadi beberapa kali selama satu putaran. `` SERVER_ABOUT_TO_START`` dapat mengikuti `` SERVER_STOPPED``, dan `` SERVER_STOPPED`` dapat terjadi pada setiap saat selama proses jika terjadi kesalahan.

** SERVER_ABOUT_TO_START **

Acara :javadoc:`GameAkanMemulaiAcaraServer` dipicu. Contoh server ada, namun dunia belum terisi.

** SERVER_STARTING **

Itu :javadoc:`GameMemulaiAcaraServer` dipicu. Contoh server ada, dan dunia dimuat. Pendaftaran perintah ditangani selama keadaan ini.

** SERVER_STARTED **

Acara : javadoc: GameStartedServerEvent dipicu. Contoh server ada, dan dunia dimuat.

SERVER_STOPPING

The GameStoppingServerEvent is triggered. This state occurs immediately before the final tick, before the worlds are saved.

SERVER_STOPPED

Itu :javadoc:`GameMenghentikanAcaraServer` dipicu. Selama keadaan ini, tidak ada pemain yang terhubung dan tidak ada perubahan pada dunia yang diselamatkan.

Serikat berhenti

Menghentikan negara tidak akan pernah terjadi lebih dari satu kali dalam jangka satu. Mereka terjadi saat permainan berhenti normal. (Pada Server: perintah `` / stop`` diketik. Pada Klien: Tombol "Tutup" atau tombol "Quit Game" diklik)

Peringatan

Menghentikan negara tidak dijamin akan dijalankan saat shutdown. Mereka mungkin ** tidak ** api jika permainan dihentikan dengan paksa via Ctrl-C, Task Manager, kecelakaan komputer, atau situasi serupa.

GAME_STOPPING

The GameStoppingEvent is triggered. This state occurs immediately before GAME_STOPPED. Plugins providing an API should still be capable of accepting basic requests.

GAME_STOPPED

The GameStoppedEvent is triggered. Once this event has finished executing, Minecraft will shut down. No further interaction with the game or other plugins should be attempted at this point.