Yarn: net.minecraft.container.Container -> SharedGuiState?

Dibuat pada 22 Des 2018  ·  15Komentar  ·  Sumber: FabricMC/yarn

Kontainer menyiratkan persediaan. Sangat mudah untuk salah mengira kelas ini sebagai barang inventaris saja, tetapi:

  • itu membawa informasi numerik non-inventaris, seperti tungku atau kemajuan mesin
  • itu bahkan digunakan untuk menyinkronkan informasi yang tidak benar-benar numerik, seperti efek suar
  • itu memegang syncId yang digunakan untuk mengelola informasi yang dikirimkan paket khusus
  • itu mengelola klik tombol seperti di EnchantingTableContainer
  • Slot dan tombol memiliki lokasi x/y. Ini juga membuat Container berfungsi sebagai deskripsi struktural gui.

Jadi nama Container tidak pernah benar-benar bekerja untuk saya. Mengingat semua ini, SharedGuiState mungkin bukan nama terbaik di sini. Sulit untuk memberi nama smurf semua contoh spesifik. Untuk menjadikannya nama paket yang lebih baik, mungkin net.minecraft.guistate.GuiState sebagai gantinya. Tetapi saya pikir jika kita dapat mencapai konsensus yang baik tentang tujuan objek, kita dapat menemukan kecocokan yang jauh lebih baik.

Komentar yang paling membantu

Saya setuju bahwa Kontainer harus pergi tidak peduli apa penggantinya karena itu tidak masuk akal dan pasti tidak akan dinamai Kontainer dalam benang jika bukan karena voldemap.

Menurut saya Menu bagus dan GuiState kurang bagus tapi lumayan. Saya akan mengatakan bahwa nama tersebut tidak boleh lebih dari 10 karakter karena akan sering digunakan

Semua 15 komentar

jadi UiData atau UserInterfaceData?

SyncedGui ?

@therealfarfetchd mengatakan bahwa penting bahwa itu bukan gui biasa, jadi mungkin SyncedInterface atau sesuatu

19w02a Mojang berkata "createMenu"

Dari saluran #yarn di perselisihan:

  • beberapa dari kita membenci menu nama, itu berbau takik dan tidak jelas
  • memperdebatkan hal-hal seperti ServerUi/ClientUi, Gui/GuiState
  • asie menyarankan kita pergi K-ON!

Saya merasa kita mungkin perlu pergi ke Menu/Screen , karena kebijakan menggunakan nama Mojang di tempat yang kita kenal.

Saya akan mengatakan "jangan mengubah nama buruk menjadi nama yang lebih buruk", bahkan jika itu nama Mojang.

Masalah utama dengan Container adalah bahwa itu voldename, jadi IMO lebih buruk daripada nama Mojang karena bisa membuat kita dalam masalah.

Saya setuju bahwa Kontainer harus pergi tidak peduli apa penggantinya karena itu tidak masuk akal dan pasti tidak akan dinamai Kontainer dalam benang jika bukan karena voldemap.

Menurut saya Menu bagus dan GuiState kurang bagus tapi lumayan. Saya akan mengatakan bahwa nama tersebut tidak boleh lebih dari 10 karakter karena akan sering digunakan

Saya pikir GuiState bukan nama yang paling bagus untuk dilihat, tapi itu yang paling baik menampilkan fungsinya. Opsi serupa lainnya adalah GuiController, masuk akal jika Anda melihatnya sebagai semacam pola MVC (Inventory = model, Gui = View, Container = Controller), tetapi ini sedikit lebih panjang daripada GuiState.

Seharusnya ScreenState atau ScreenController sekarang karena Gui telah diganti namanya.

Saya suka segala sesuatu tentang itu kecuali bahwa itu panjang. Kami akan berakhir tidak hanya dengan CartographyTableScreenController , tetapi juga DoubleLockableScreenController dan NameableScreenControllerProvider . Ini sangat jelas sekalipun.

Saya merasa bahwa Pengendali terlalu umum untuk dimiliki dalam mesin permainan dengan sendirinya, tetapi dalam hal ini tidak berbenturan dengan apa pun. Juga, paket dapat digunakan untuk membuatnya lebih spesifik. Bagaimana dengan memasukkannya ke dalam paket net.minecraft.screen.controller?

Kontrolernya bagus 👍

Sementara saya masih berpikir Controller adalah nama yang paling akurat, #846 memiliki alasan yang sangat kuat untuk diadopsi.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat

Masalah terkait

Bixilon picture Bixilon  ·  5Komentar

Runemoro picture Runemoro  ·  3Komentar

asiekierka picture asiekierka  ·  3Komentar

ChloeDawn picture ChloeDawn  ·  6Komentar

Boundarybreaker picture Boundarybreaker  ·  3Komentar