[Phyton] [Rubinum Tarzı] Pencere Açılıp Kapanma Animasyonu "Prof Ente'den Alıntıdır"

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

Admin

Metin2Lobby
Yönetici
Founder
Katılım
6 Mayıs 2022
Mesajlar
52,647
Ticaret : 1 / 0 / 0
Uzun zamandır rubinum'un bu pencere açılma kapanma animasyonunu arıyordum, prof ente tarafından paylaşılmış.
Alıp uygulayabilirsiniz, envanter, karakter penceresi vs. kısımlarına uygulanmasının mantığını paylaşan olursa onları da eklerim.
Kendim paylaşmak isterdim, nitekim yeterli bilgim yok.

Animasyon'un gifi:
indirme linki:
game.py açıp importları en üste atın, bazıları eklidir zaten kontrol edin, olmayanı ekleyeyin.
yeni classları da game.py içine eklediğinizde oyuna girdiğiniz an imgur'daki gibi bir pencere çıkacak karşınıza, kapatıp açılma animasyonlu.
virustotal:
Phyton ile Metin2 GUI Uygulamalarında Rubinum Tarzı Pencere Animasyonları

Metin2 özel sunucularında GUI (Grafiksel Arayüz) geliştirmek isteyen geliştiriciler için Python dili oldukça yaygın bir tercihtir. Özellikle Py UI Script (UIScript) ve Python GUI yapıları ile özgün arayüzler oluşturulabilir. Bu yazıda, Phyton tabanlı bir pencere açılıp kapanma animasyonu oluşturmayı, Rubinum tarzı bir stillendirme ile ele alacağız. Bu tür animasyonlar, kullanıcı deneyimini artırmak için Metin2 lobby sistemlerinde oldukça etkilidir.

Pencere Animasyonları Neden Önemlidir?

Metin2 özel sunucularında kullanıcıların dikkatini çekmek ve oyun içi atmosferi desteklemek için görsel efektler ve animasyonlar hayati öneme sahiptir. Rubinum tarzı animasyonlar, özellikle modern ve şık bir görünüm isteyen sunucular için idealdir. Bu tarz animasyonlar sayesinde, kullanıcılar daha akıcı ve profesyonel bir arayüz deneyimi yaşar.

Phyton ile Basit Pencere Oluşturma[/BR]
Öncelikle Phyton ile basit bir pencere oluşturalım. Bu pencere, Rubinum tarzında açılacak ve kapanacak olan temel yapıdır. Phyton’un Tkinter kütüphanesi kullanılarak pencere nesnesi tanımlanabilir. Ancak Metin2 özel sunucularında genellikle UIScript veya PyGUI kullanılır. Bu sebeple UIFramework veya Martysama gibi yapılar üzerinden çalışmak daha mantıklıdır.

Animasyon Süreci Nasıl Çalışır?[/BR]
Pencere açılırken, başlangıçta boyut sıfır olarak ayarlanır. Daha sonra belirli bir süre içinde pencere boyutu maksimum haline getirilir. Bu, açılış animasyonudur. Kapanış sırasında ise tam tersi yapılır. Bu işlem Phyton’da bir döngü ile kontrol edilerek sağlanır. Zamanlayıcı (timer) veya threading gibi yöntemlerle bu animasyon daha da geliştirilebilir.

Uyarı:[/BR]
Phyton GUI üzerinde animasyonlar CPU yükünü artırabilir. Bu yüzden animasyon süresi ve sıklığı dikkatlice ayarlanmalıdır. Ayrıca Metin2 özel sunucularında bu tür işlemler py root dosyalarında düzenlenmelidir.

Rubinum Stili Tasarımı[/BR]
Rubinum tarzı tasarımlar genellikle parlak, şık ve modern görünümlüdür. Bu tarzda bir pencere tasarımı için uygun renk paleti, kenarlık ve gölgeler önemlidir. Phyton GUI ile bu stilleri uygulamak mümkündür. Örneğin, pencere arka plan rengi olarak mor ya da mavi tonları, kenarlık olarak ise şeffaf efektler kullanılabilir.

Kod Örneği: Açılış ve Kapanış Animasyonu[/BR]
Aşağıda basit bir Phyton kod örneği verilmiştir. Bu örnek, pencerenin açılıp kapanma animasyonunu göstermektedir:

import tkinter as tk
import time

def animate_open(window):
for i in range(100, 401, 5):
window.geometry(f'{i}x{i}')
window.update()
time.sleep(0.01)

def animate_close(window):
for i in range(400, 99, -5):
window.geometry(f'{i}x{i}')
window.update()
time.sleep(0.01)

root = tk.Tk()
root.geometry('100x100')

open_btn = tk.Button(root, text='Aç', command=lambda: animate_open(root))
open_btn.pack()

close_btn = tk.Button(root, text='Kapat', command=lambda: animate_close(root))
close_btn.pack()

root.mainloop()

Metin2 Özel Sunucularda Uygulama[/BR]
Bu tarz animasyonlar doğrudan Metin2 UIFramework veya UIScript sistemine entegre edilmeden önce test edilmelidir. Özellikle pack dosyalarında ve py root yapılarında değişiklik yaparken dikkatli olunmalıdır. Yanlış yapılmış bir animasyon, oyun performansını ciddi şekilde etkileyebilir.

Sonuç[/BR]
Phyton kullanarak Rubinum tarzı pencere animasyonları oluşturmak, Metin2 özel sunucularında kullanıcı deneyimini artıran etkili bir yöntemdir. Doğru yapılandırıldığında hem estetik hem de işlevsel bir yapı elde edilebilir. Bu tür animasyonlar, Metin2 lobby sistemlerinde sıklıkla tercih edilmektedir. Geliştiricilerin bu konuda deneyim kazanması için bolca test yapması önerilir.

Kaynak: Prof Ente'den Alıntıdır[/BR]


Window Open/Close Animations in Python GUI for Metin2 Rubium Style

Creating GUI (Graphical User Interface) applications in Metin2 private servers often involves using the Python language. Especially with Py UI Script (UIScript) and Python GUI structures, custom interfaces can be developed. In this article, we will cover how to create a window open/close animation using Python, styled in a Rubium manner. Such animations are highly effective in enhancing user experience within Metin2 lobby systems.

Why Are Window Animations Important?[/BR]
In Metin2 private servers, visual effects and animations play a crucial role in capturing user attention and supporting the in-game atmosphere. Rubium-style animations are particularly ideal for servers aiming for a modern and sleek look. With such animations, users enjoy a smoother and more professional interface experience.

Creating a Basic Window with Python[/BR]
Firstly, let’s create a basic window using Python. This window will serve as the base structure for the Rubium-styled opening and closing animation. The Tkinter library in Python can be used to define a window object. However, in Metin2 private servers, UIScript or PyGUI frameworks like Martysama are typically used, so working through UIFramework may be more appropriate.

How Does the Animation Process Work?[/BR]
When the window opens, its initial size is set to zero. Then, over a certain period, the window size gradually increases to its maximum. This is the opening animation. For the closing animation, the process is reversed. This is controlled via a loop in Python. Timers or threading can further enhance these animations.

Warning:[/BR]
Animations on Python GUIs can increase CPU load. Therefore, the duration and frequency of animations should be carefully adjusted. Additionally, such operations in Metin2 private servers must be edited within py root files.

Rubium Style Design[/BR]
Rubium-style designs are generally bright, elegant, and modern. For such a window design, appropriate color palettes, borders, and shadows are essential. These styles can be implemented using Python GUI. For instance, purple or blue tones can be used for the background, with transparent effects for borders.

Code Example: Open and Close Animation[/BR]
Below is a simple Python code example demonstrating an open/close window animation:

import tkinter as tk
import time

def animate_open(window):
for i in range(100, 401, 5):
window.geometry(f'{i}x{i}')
window.update()
time.sleep(0.01)

def animate_close(window):
for i in range(400, 99, -5):
window.geometry(f'{i}x{i}')
window.update()
time.sleep(0.01)

root = tk.Tk()
root.geometry('100x100')

open_btn = tk.Button(root, text='Open', command=lambda: animate_open(root))
open_btn.pack()

close_btn = tk.Button(root, text='Close', command=lambda: animate_close(root))
close_btn.pack()

root.mainloop()

Implementation in Metin2 Private Servers[/BR]
Such animations should be tested before being integrated directly into the Metin2 UIFramework or UIScript system. Particular care must be taken when modifying pack files and py root structures. Incorrectly implemented animations can seriously affect game performance.

Conclusion[/BR]
Creating Rubium-style window animations with Python is an effective way to enhance user experience in Metin2 private servers. When configured correctly, both aesthetic and functional structures can be achieved. Such animations are frequently preferred in Metin2 lobby systems. Developers are advised to conduct extensive testing to gain experience in this area.

Source: Quoted from Prof Ente[/BR]
 

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

Benzer konular

Geri
Üst Alt