Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Zmiana koloru interfejsu


warnox

Rekomendowane odpowiedzi

Opublikowano

866751449261938770658.png

Zapewne każdemu z Was znudził już się standardowy wygląd interfejsu w grze.

Ta modyfikacja pozwoli wybrać Wam własny kolor interfejsu bezpośrednio w grze, wystarczy dodać ją do klienta.

Jak to zrobić? Poniżej macie opisane wszystko krok po kroku. 

 

Przykładowe efekty, które można uzyskać: 
  

792231449261938770658.png

 

974011449262074770658.png

 

1. Pobieramy paczkę załączoną w temacie.

2. Plik "color" wrzucamy do folderu "lib" w głównym folderze klienta.
3. Rozpakowujemy root i przenosimy tam pliki "interfececolor.py" oraz "uiinterfececolor.py".
4. Otwieramy plik "ui.py".
5. Dodajemy kod w pliku "ui.py":

Po kodzie:

from _weakref import proxy

 

 

Dodajemy:

import uiScriptLocale
LOCALE_PATH = uiScriptLocale.WINDOWS_PATH
interfacelist = (
						"d:/ymir work/ui/pattern/Board_Corner_LeftTop.tga",
						"d:/ymir work/ui/pattern/Board_Corner_LeftBottom.tga",
						"d:/ymir work/ui/pattern/Board_Corner_RightTop.tga",
						"d:/ymir work/ui/pattern/Board_Corner_RightBottom.tga",
						"d:/ymir work/ui/pattern/Board_Line_Left.tga",
						"d:/ymir work/ui/pattern/Board_Line_Right.tga",
						"d:/ymir work/ui/pattern/Board_Line_Top.tga",
						"d:/ymir work/ui/pattern/Board_Line_Bottom.tga",
						"d:/ymir work/ui/pattern/TaskBar_Base.tga",
						"d:/ymir work/ui/game/windows/equipment_base.sub",
						"d:/ymir work/ui/equipment_bg_without_ring.tga",
						"d:/ymir work/ui/pattern/titlebar_left.tga",
						"d:/ymir work/ui/pattern/titlebar_center.tga",
						"d:/ymir work/ui/pattern/titlebar_right.tga",
						"d:/ymir work/ui/pattern/Board_Base.tga",
						"d:/ymir work/ui/minimap/minimap.sub",
						LOCALE_PATH+"tab_1.sub",
						LOCALE_PATH+"tab_2.sub",
						LOCALE_PATH+"tab_3.sub",
						LOCALE_PATH+"tab_4.sub",
						LOCALE_PATH+"label_std_item1.sub",
						LOCALE_PATH+"label_std_item2.sub",
						LOCALE_PATH+"label_ext_item1.sub",
						LOCALE_PATH+"label_ext_item2.sub",
						"d:/ymir work/ui/pattern/ThinBoard_Corner_LeftTop.tga",
						"d:/ymir work/ui/pattern/ThinBoard_Corner_LeftBottom.tga",
						"d:/ymir work/ui/pattern/ThinBoard_Corner_RightBottom.tga",
						"d:/ymir work/ui/pattern/ThinBoard_Corner_RightTop.tga",
						"d:/ymir work/ui/pattern/ThinBoard_Line_Left.tga",
						"d:/ymir work/ui/pattern/ThinBoard_Line_Right.tga",
						"d:/ymir work/ui/pattern/ThinBoard_Line_Top.tga",
						"d:/ymir work/ui/pattern/ThinBoard_Line_Bottom.tga",
)


interfacelist2 = []

def zmiengrafike(r,g,b,a):
	for x in interfacelist2:
		if x:
			wndMgr.SetDiffuseColor(x.hWnd, r, g, b, a)

	pass

 

 

Tak to ma wyglądać:

 


vxEUwn4.png

 

 

6. Dodajemy kod w pliku "ui.py":

Szukamy takiego kodu:

class ImageBox(Window):
	def __init__(self, layer = "UI"):
		Window.__init__(self, layer)

		self.eventDict={}

	def __del__(self):
		Window.__del__(self)

	def RegisterWindow(self, layer):
		self.hWnd = wndMgr.RegisterImageBox(self, layer)

	def LoadImage(self, imageName):
		self.name=imageName
		wndMgr.LoadImage(self.hWnd, imageName)

 

 

Dodajemy po nim:

		if imageName in interfacelist:
			z = open('lib/color').readlines()
			wndMgr.SetDiffuseColor(self.hWnd, float(z[0]),float(z[1]),float(z[2]),float(z[3]))
			interfacelist2.append(self) 

 

 

Tak to powinno wyglądać:

 

 

SpgTZJ4.png

 

 

 

 

7. Otwieramy plik "game.py":

Szukamy kodu:

		onPressKeyDict[app.DIK_F1]	= lambda : self.__PressQuickSlot(4)
		onPressKeyDict[app.DIK_F2]	= lambda : self.__PressQuickSlot(5)
		onPressKeyDict[app.DIK_F3]	= lambda : self.__PressQuickSlot(6)
		onPressKeyDict[app.DIK_F4]	= lambda : self.__PressQuickSlot(7)

 

 

Dodajemy po nim:

		onPressKeyDict[app.DIK_F5]	= self.openinterface 

 

 

Tak to powinno wyglądać:

 


OAO15wG.png

 

 

8. Dodajemy kod w pliku "game.py":

Szukamy kodu:

if app.IsPressed(app.DIK_LCONTROL) or app.IsPressed(app.DIK_RCONTROL):
			
			if num >= 1 and num <= 9:
				if(chrmgr.IsPossibleEmoticon(-1)):				
					chrmgr.SetEmoticon(-1,int(num)-1)
					net.SendEmoticon(int(num)-1)
		else:
			if num >= 1 and num <= 4:
				self.pressNumber(num-1)

 

 

Dodajemy po nim:

 

 

	def openinterface(self):
		try:
			self.k.OpenDialog()
			pass
		except:
			import uiinterfececolor
			self.k = uiinterfececolor.kolorDialog()
			self.k.OpenDialog()
			pass

 

 

Tak to powinno wyglądać:


 
NKGZvcU.png

823091449261938770658.png

 

1. Jak zmienić przycisk, którym otwieramy okno:

Odpowiada za to ta linijka :

		onPressKeyDict[app.DIK_F5]	= self.openinterface

Możemy tutaj zmienić na inny przycisk, np:

		onPressKeyDict[app.DIK_X]	= self.openinterface 

2. Jak dodać okno pod przycisk w menu:

Aby uruchomić okno wystarczy przenieść funkcje zawartą poniżej do wybranego pliku *.py, np. do "uiinventory.py".

	def openinterface(self):
		try:
			self.k.OpenDialog()
			pass
		except:
			import uiinterfececolor
			self.k = uiinterfececolor.kolorDialog()
			self.k.OpenDialog()
			pass

Następnie wystarczy przyciskiem włączyć tę funkcję, np:

		self.interfaceColor = self.GetChild("Nazwa_buttona")
		self.interfaceColor.SetEvent(ui.__mem_func__(self.openinterface)) 

3. Jak dodać grafikę, która ma zmieniać kolor wraz z interfejsem:

Wystarczy dodać ścieżkę do grafiki do listy dodanej w "ui.py", według wzoru:

interfacelist = (
						"d:/ymir work/ui/pattern/Board_Corner_LeftTop.tga",
						"d:/ymir work/ui/pattern/Board_Corner_LeftBottom.tga",
						"d:/ymir work/ui/pattern/Board_Corner_RightTop.tga",
						"d:/ymir work/ui/pattern/Board_Corner_RightBottom.tga",
						"d:/ymir work/ui/pattern/Board_Line_Left.tga",
						"d:/ymir work/ui/pattern/Board_Line_Right.tga",
						"d:/ymir work/ui/pattern/Board_Line_Top.tga",
						"d:/ymir work/ui/pattern/Board_Line_Bottom.tga",
						"d:/ymir work/ui/pattern/TaskBar_Base.tga",
						"d:/ymir work/ui/game/windows/equipment_base.sub",
						"d:/ymir work/ui/equipment_bg_without_ring.tga",
						"d:/ymir work/ui/pattern/titlebar_left.tga",
						"d:/ymir work/ui/pattern/titlebar_center.tga",
						"d:/ymir work/ui/pattern/titlebar_right.tga",
						"d:/ymir work/ui/pattern/Board_Base.tga",
						"d:/ymir work/ui/minimap/minimap.sub",
						LOCALE_PATH+"tab_1.sub",
						LOCALE_PATH+"tab_2.sub",
						LOCALE_PATH+"tab_3.sub",
						LOCALE_PATH+"tab_4.sub",
						LOCALE_PATH+"label_std_item1.sub",
						LOCALE_PATH+"label_std_item2.sub",
						LOCALE_PATH+"label_ext_item1.sub",
						LOCALE_PATH+"label_ext_item2.sub",
						"d:/ymir work/ui/pattern/ThinBoard_Corner_LeftTop.tga",
						"d:/ymir work/ui/pattern/ThinBoard_Corner_LeftBottom.tga",
						"d:/ymir work/ui/pattern/ThinBoard_Corner_RightBottom.tga",
						"d:/ymir work/ui/pattern/ThinBoard_Corner_RightTop.tga",
						"d:/ymir work/ui/pattern/ThinBoard_Line_Left.tga",
						"d:/ymir work/ui/pattern/ThinBoard_Line_Right.tga",
						"d:/ymir work/ui/pattern/ThinBoard_Line_Top.tga",
						"d:/ymir work/ui/pattern/ThinBoard_Line_Bottom.tga",
)

UWAGA! Nie można zmienić koloru grafiki przycisków! 

  • 2 tygodnie później...
  • Odpowiedzi 55
  • Dodano
  • Ostatniej odpowiedzi
Opublikowano

Bardzo ładnie zrobiony poradnik.

Wszystko jest ładnie opisane, do tego FAQ.

Cud miód i należny lajk zostawiony :)

 

Oby więcej takich wstawek :)

Opublikowano

Przecież to łatwizna w c**j.. w necie od 2013 roku. DEV TEAM SIĘ SPISAŁ xD CZEKAM NA TUTA W STYLU "JAK DODAĆ NOWE ZBROJE NA SERWER".

#EMERYTURA

Opublikowano
Opublikowano

WoW, kozackie,

wielki plus za poradnik.

<p class='bbc_center'><span style='font-size: 24px;'><span style='font-family: lucida sans unicode'><strong class='bbc'>Hejtować będę</strong></span></span></p>

Opublikowano

I o to chodzi w tym Developers forum? To są jakieś jaja? To indywidualna zmiana, którą jak nie patrzeć widzisz tylko Ty. A co to ma do ogółu? Jakbyś zrobił poradnik jak zmienić cały interface w kliencie, zamiast takiej popierdolikówki ( no inaczej tego nie nazwę ) to bym nawet i plusik zostawił. Czekam na obiecane tematy z podstaw tworzenia serwera. Od zmiany mobów, tworzenia ich, jak i broni, zbroi od PODSTAW! A wstawiajcie tutaj rzeczy, które mogą być używane ogólnie przez serwery, a których autorami jesteście Wy..

Opublikowano

I o to chodzi w tym Developers forum? To są jakieś jaja? To indywidualna zmiana, którą jak nie patrzeć widzisz tylko Ty. A co to ma do ogółu? Jakbyś zrobił poradnik jak zmienić cały interface w kliencie, zamiast takiej popierdolikówki ( no inaczej tego nie nazwę ) to bym nawet i plusik zostawił. Czekam na obiecane tematy z podstaw tworzenia serwera. Od zmiany mobów, tworzenia ich, jak i broni, zbroi od PODSTAW! A wstawiajcie tutaj rzeczy, które mogą być używane ogólnie przez serwery, a których autorami jesteście Wy..

Zrobienie serwera? tworzenie zbr i borni? Wszystko jest w Tutoriale i Download użyj głowy wszystko masz na forum 

 

# jak dla mnie temat bardzo dobry jako 1 i bardzo mi się podoba +.

 

image.png

Opublikowano

I o to chodzi w tym Developers forum? To są jakieś jaja? To indywidualna zmiana, którą jak nie patrzeć widzisz tylko Ty. A co to ma do ogółu? Jakbyś zrobił poradnik jak zmienić cały interface w kliencie, zamiast takiej popierdolikówki ( no inaczej tego nie nazwę ) to bym nawet i plusik zostawił. Czekam na obiecane tematy z podstaw tworzenia serwera. Od zmiany mobów, tworzenia ich, jak i broni, zbroi od PODSTAW! A wstawiajcie tutaj rzeczy, które mogą być używane ogólnie przez serwery, a których autorami jesteście Wy..

Człowieku, masz rok 2015 a Ty nie wiesz jak podmienić moby?

Masz tysiące poradników w internecie, kiedyś myślałem nad zrobieniem ogólnego gdzie będzie zawarte wszystko od tworzenia serwera do edytowania chociażby modeli ale tego w internecie jest pełno, nie spodziewaj się że ktoś da Ci tutaj rozpakowanego minecrafta, querki do bazy, wpisy do itemlist i wio..

Opublikowano

I o to chodzi w tym Developers forum? To są jakieś jaja? To indywidualna zmiana, którą jak nie patrzeć widzisz tylko Ty. A co to ma do ogółu? Jakbyś zrobił poradnik jak zmienić cały interface w kliencie, zamiast takiej popierdolikówki ( no inaczej tego nie nazwę ) to bym nawet i plusik zostawił. Czekam na obiecane tematy z podstaw tworzenia serwera. Od zmiany mobów, tworzenia ich, jak i broni, zbroi od PODSTAW! A wstawiajcie tutaj rzeczy, które mogą być używane ogólnie przez serwery, a których autorami jesteście Wy..

 

Cześć! Po pierwsze, spokojnie, nie musiałeś od razu tak naskakiwać. Po drugie, wiemy co mamy robić, mamy w planach sporo - uwierz, do końca roku wyjdzie prawdopodobnie poradnik który Ciebie zainteresuje, ale na wszystko potrzeba czasu, bo nie będziemy Wam wystawiać poradników, które wyglądają jak gówno, że tak to ujmę. Wszystko z czasem, chill :-) 

A taka zmiana interfejsu (kolor) to bardzo fajna sprawa i w praktyce się świetnie sprawdzi, jestem pewien ze nie jeden serwer takie coś wykorzysta u siebie by umilić oko swoim graczom, warnox wykonał dobrą robote i powinieneś to docenić, a to dopiero początek ;) 

Pozdrawiam  ;) 

Opublikowano

Cześć! Po pierwsze, spokojnie, nie musiałeś od razu tak naskakiwać. Po drugie, wiemy co mamy robić, mamy w planach sporo - uwierz, do końca roku wyjdzie prawdopodobnie poradnik który Ciebie zainteresuje, ale na wszystko potrzeba czasu, bo nie będziemy Wam wystawiać poradników, które wyglądają jak gówno, że tak to ujmę. Wszystko z czasem, chill :-) 

A taka zmiana interfejsu (kolor) to bardzo fajna sprawa i w praktyce się świetnie sprawdzi, jestem pewien ze nie jeden serwer takie coś wykorzysta u siebie by umilić oko swoim graczom, warnox wykonał dobrą robote i powinieneś to docenić, a to dopiero początek ;)

Pozdrawiam   ;)

Ehh.. Źle mnie zrozumieliście. Wiem, że poradników jest od groma i nie mówię tutaj o gotowcach. Zależy mi na podstawach, coś co może przybliżyć do stworzenia czegoś "swojego". Nie chcęgotowców,  co do tutoriali itp. to są owszem, le większość opiera się na "gotowcach", natomiast harnaś mam nadzieję, że tutorial będzie na czasy dzisiejsze, czyli source, a nie "gotowce" np. by TakiNiesmialy itp. Bo czego oczekujecie od serwerów, skoro jest tak mało autorskich rzeczy? Wszystko jedno i to samo, a od siebie uja dają autorzy. Rzadko się zdarza, że ktoś da coś swojego. Moim zdaniem ten dział powinien pomóc całkiem nowym stawiać swoje pierwsze kroki w świecie modelowania, tworzenia serwerów metina.

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...