[MiniPyton] Envanter Yanı Açma Kapamalı Efsun Gösterme

  • Konbuyu başlatan Konbuyu başlatan Admin
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 0
  • Görüntüleme Görüntüleme 93

Admin

Metin2Lobby
Yönetici
Founder
Katılım
6 Mayıs 2022
Mesajlar
52,647
Ticaret : 1 / 0 / 0
4 Envanter olan fileslerde sorunsuz çalışmaktadır. Türkce değildir.
Resim :
c6f0ea525c677bb9652ac5e0db4aa47a.gif

Link :
Dosyaları direk olduğu yere atıp packı kapatıp oyuna girebilirsiniz. İyi Forumlar
MiniPython ile Metin2 Envanter Sisteminde Efsun Gösterme
Metin2 özel sunucularında geliştirme yaparken, oyuncuların envanterinde bulunan eşyaların efsun (socket) değerlerini görsel olarak göstermek büyük bir kullanıcı deneyimi sunar. Bu işlem genellikle Python tabanlı arayüz (UI) sistemleri ile sağlanır. Bu rehberde, MiniPython kullanarak envanterdeki eşyaların socketlerini açma/kapama butonu ile birlikte nasıl göstereceğimizi ele alacağız.

Socket Nedir?
Metin2'de socket (Türkçe: yuva), eşyalara takılan taşlarla güç kazandırılan mekaniktir. Her eşyanın genellikle 3 adet socket yuvası bulunur ve bu yuvalara taş takılarak karakterin攻击力 (atak gücü), 방어력 (savunma) gibi değerleri artırılır. Socket bilgilerinin kullanıcıya net bir şekilde gösterilmesi, oyuncu tatmini açısından kritik öneme sahiptir.

MiniPython ile UI Geliştirme
MiniPython, Metin2 client tarafında UI geliştirmek için kullanılan güçlü bir araçtır. Py files (.py uzantılı dosyalar) ile arayüzler oluşturulabilir. Öncelikle, envanter ekranında bir 'Socket Göster' butonu eklememiz gerekir. Bu buton, tıklandığında eşyanın socket durumunu açıp kapatabilecektir.

Socket Bilgilerinin Gösterilmesi
Eşyanın socket bilgileri genellikle paket (pack) dosyalarında tanımlanır. Python tarafında item_data.py gibi dosyalardan bu bilgiler alınarak UI üzerinde görsel olarak temsil edilir. Socket bilgileri genellikle ikonlar veya renkli daireler şeklinde gösterilir. Socket açıkken yeşil renk, kapalıyken gri renk tercih edilir.

Buton Fonksiyonelliği
'Socket Göster' butonuna basıldığında, mevcut eşyanın socket verisi okunur ve UI üzerinde gösterilir. Bu işlem sırasında item.GetSocket() fonksiyonu kullanılır. Socket verisi, UI tarafında bir liste olarak tutulur ve bu listeden ikonlar dinamik olarak üretilir.

Socket Arayüzü Tasarımı
Socket arayüzü genellikle eşyanın sağ alt köşesinde küçük daireler şeklinde yer alır. Her socket için bir ikon (örneğin boş socket için gri daire, dolu socket için yeşil daire) kullanılır. Bu ikonlar, mouse ile üzerine gelindiğinde hangi taşın takılı olduğunu gösteren bir tooltip (bilgi baloncuğu) ile desteklenebilir. Tooltip bilgileri, item.GetSocketIndex() fonksiyonu ile alınabilir.

Otomatik Socket Gösterimi[/COORD]
Bazı sunucularda, oyuncu envanterde eşyaya tıkladığında otomatik olarak socket bilgileri gösterilir. Bu özellik, MiniPython ile event (olay) sistemleriyle kolayca entegre edilebilir. MouseLeftButtonDown veya MouseOver gibi event'ler ile socket gösterimi tetiklenebilir.

Gelişmiş Özellikler
Socket sistemine daha fazla interaktivite katmak için, takılı taşların silinmesi, yeniden takılması gibi işlemler de yapılabilir. Bu tür işlemler için özel dialoglar (pencereler) tasarlanabilir. Örneğin, socket'e sağ tıklandığında 'Taşı Çıkar' menüsü açılabilir. Bu menü, Python ile dinamik olarak oluşturulur ve taş çıkarma işlemi auth veya game server'a istek atarak gerçekleştirilir.

Sonuç
MiniPython kullanarak Metin2 envanterinde socket gösterimi oldukça etkili bir kullanıcı deneyimi sağlar. Socket bilgilerinin doğru ve estetik bir şekilde gösterilmesi, oyuncuların eşyaları hakkında hızlı karar vermelerini sağlar. Socket sistemini etkinleştirmek ve geliştirmek, Metin2 özel sunucularında rekabet avantajı sağlar.


Showing Enchantments with MiniPython in Metin2 Inventory
When developing on Metin2 private servers, visually displaying the socket values of items in the player's inventory significantly enhances user experience. This process is typically handled through Python-based UI systems. In this guide, we will discuss how to display item sockets in the inventory using MiniPython with an open/close toggle button.

What is a Socket?
In Metin2, a socket is a mechanic where stones are inserted into items to increase their power. Each item generally has up to 3 socket slots, and inserting stones boosts character stats like攻击力 (attack power) and 방어력 (defense). Clearly showing socket information to players is crucial for player satisfaction.

Developing UI with MiniPython
MiniPython is a powerful tool used in Metin2 client-side UI development. UIs can be created using .py files. First, we need to add a 'Show Socket' button in the inventory screen. This button will allow toggling the visibility of socket information on items.

Displaying Socket Information
Socket information for items is usually defined in pack files. In Python, these details are retrieved from files like item_data.py and displayed visually in the UI. Sockets are often represented as icons or colored circles—green when filled, gray when empty.

Button Functionality
When the 'Show Socket' button is clicked, the current item's socket data is read and displayed in the UI. The item.GetSocket() function is commonly used for this purpose. The socket data is stored in a list within the UI, and icons are dynamically generated based on this list.

Designing the Socket Interface
The socket interface usually appears as small circles in the bottom-right corner of an item. Each socket may have an icon (e.g., a gray circle for an empty socket, green for a filled one). When hovered over with the mouse, a tooltip can show which stone is inserted. Such tooltips can be retrieved using item.GetSocketIndex().

Automatic Socket Display
On some servers, socket information is shown automatically when the player clicks on an item in the inventory. This feature can be easily integrated using MiniPython’s event system. Events like MouseLeftButtonDown or MouseOver can trigger socket display.

Advanced Features
To enhance interactivity, features like removing or reinserting stones can also be implemented. Special dialogs can be designed for such actions. For example, right-clicking on a socket could open a 'Remove Stone' menu. These menus are dynamically built with Python, and removal operations can send requests to the auth or game server.

Conclusion
Using MiniPython to display sockets in Metin2 inventory provides a highly effective user experience. Accurately and aesthetically displaying socket information allows players to make quick decisions about their items. Enhancing and activating socket systems provides a competitive advantage in Metin2 private servers.
 

Şuan Bu Konuyu Görüntüleyen Kullanıcılar (Toplam : 0, Üye : 0, Misafir : 0)

Geri
Üst Alt