Jump to content

Vista previa nuevos pelos


aerandir

Recommended Posts

Hola:

 

Para el que no pueda ver la imagen de la vista previa de nuevos peinados (probado en clientes 2010):

 

(ANTES HACED COPIA DE SEGURIDAD DE VUESTRO ROOT)

 

1 - Descompila root.epk-.eix.

2 - Busca el archivo uitooltip.py

3 - Busca este texto (mas o menos por la linea 1000)

 

	   def __IsHair(self, itemVnum):
		  return (self.__IsOldHair(itemVnum) or
			 self.__IsNewHair(itemVnum) or
			 self.__IsNewHair2(itemVnum))  
	   def __IsOldHair(self, itemVnum):
		  return itemVnum > 73000 and itemVnum < 74000  
	   def __IsNewHair(self, itemVnum):
		  return itemVnum > 74000 and itemVnum < 75000  
	   def __IsNewHair2(self, itemVnum):
		  return itemVnum > 75000 and itemVnum < 77000  
	   def __AppendHairIcon(self, itemVnum):
		  itemImage = ui.ImageBox()
		  itemImage.SetParent(self)
		  itemImage.Show()		
		  if self.__IsOldHair(itemVnum):
			 itemImage.LoadImage("d:/ymir work/item/quest/"+str(itemVnum)+".tga")
		  elif self.__IsNewHair(itemVnum):
			 itemImage.LoadImage("d:/ymir work/item/quest/"+str(itemVnum-1000)+".tga")
		  elif self.__IsNewHair2(itemVnum):
			 itemImage.LoadImage("icon/hair/%d.sub" % (itemVnum))

		  itemImage.SetPosition(itemImage.GetWidth()/2, self.toolTipHeight)
		  self.toolTipHeight += itemImage.GetHeight()
		  #self.toolTipWidth += itemImage.GetWidth()/2
		  self.childrenList.append(itemImage)
		  self.ResizeToolTip()

 

4 - Sustituye por esta otra:

   def __IsHair(self, itemVnum):
	  return (self.__IsOldHair(itemVnum) or
		 self.__IsNewHair(itemVnum) or
		 self.__IsNewHair2(itemVnum) or
		 self.__IsNewHair3(itemVnum))

   def __IsOldHair(self, itemVnum):
	  return itemVnum > 73000 and itemVnum < 74000  

   def __IsNewHair(self, itemVnum):
	  return itemVnum > 74000 and itemVnum < 75000  

   def __IsNewHair2(self, itemVnum):
	  return itemVnum > 75000 and itemVnum < 77000  

   def __IsNewHair3(self, itemVnum):
	  return ((xxx-1 < itemVnum and itemVnum < xxx+1))

   def __AppendHairIcon(self, itemVnum):
	  itemImage = ui.ImageBox()
	  itemImage.SetParent(self)
	  itemImage.Show()		

	  if self.__IsOldHair(itemVnum):
		 itemImage.LoadImage("d:/ymir work/item/quest/"+str(itemVnum)+".tga")
	  elif self.__IsNewHair3(itemVnum):
		 itemImage.LoadImage("icon/hair/%d.sub" % (itemVnum))
	  elif self.__IsNewHair(itemVnum):
		 itemImage.LoadImage("d:/ymir work/item/quest/"+str(itemVnum-1000)+".tga")
	  elif self.__IsNewHair2(itemVnum):
		 itemImage.LoadImage("icon/hair/%d.sub" % (itemVnum))

	  itemImage.SetPosition(itemImage.GetWidth()/2, self.toolTipHeight)
	  self.toolTipHeight += itemImage.GetHeight()
	  #self.toolTipWidth += itemImage.GetWidth()/2
	  self.childrenList.append(itemImage)
	  self.ResizeToolTip()

 

 

Nota: (Lo que cambia)

 

def __IsNewHair3(self, itemVnum):
return ((xxx-1 < itemVnum and itemVnum < xxx+1))

xxx-1 = el numero del item -1

xxx+1 = el numero del item +1

 

Ejemplo

 

Nuevo peinado 74800

 

def __IsNewHair3(self, itemVnum):

return ((74799 < itemVnum and itemVnum < 74801))

 

Con esto se aÑaden las vistas en miniatura de los peinados

 

 

AÑado (yo y mi cabecita... se me va):

 

Para que la imagen se vea, debeis aÑadir el numero de item con 2 archivos en el icon.epk -eix.

 

Descompilamos icon, vamos a la carpeta hair. Ahi creamos un archivo de texto con la extension .sub con el siguente texto;

 

title subImage
version 2.0
image "74800.dds"
left 0
top 0
right 96
bottom 96

(Nota; el archivo se llamara segun el ejemplo 74800.sub. Donde dice image, ponemos el nombre de la imagen)

 

Asociado, en la misma carpeta, ponemos la imagen (en el caso del ejemplo, 74800.dds).

 

Imagen enviada

 

Nota2:

Tambien podeis poner varios seguidos: EJ:

 

def __IsNewHair3(self, itemVnum):
return ((74799 < itemVnum and itemVnum < 74851))
Link to comment
Share on other sites

No entiendo esta parte, a que archivos se refiere..

 

Tomamos el HairIndex que es 3004 entonces ese será el valor del peinado número 1

Debes iniciar sesión para ver el contenido del enlace en esta publicación.

  • if job !=- 3:
  • chr.SetHair(int(3004))#Shaman
  • chr.Refresh()

 

Ahora para mostrarle otra armadura ''Nueva'' al usuario solo tomamos el valor en el item_proto de la armadura, ejemplo:

Armadura acero negro+9 = <Item vnum="11298 ..... entonces cambias el valor de armor al valor de ese item

armor = 91 -> armor = 11298

 

Si presentas dudas no dudes en comunicarte conmigo. :)

 

NOTA*: Modifica estas partes:

lo que esta arriba de esto, cambialo por el selectcharacterwindow ORIGINAL

Debes iniciar sesión para ver el contenido del enlace en esta publicación.

  • LOCALE_PATH = uiScriptLocale.SELECT_PATH

Lo que esta arriba de esto:

Debes iniciar sesión para ver el contenido del enlace en esta publicación.

  • FACE_SLOT_FILE = "d:/ymir work/ui/game/windows/box_face.sub"

Cambialo por el original(si lo trae) y modifica

Debes iniciar sesión para ver el contenido del enlace en esta publicación.

  • "image" : "locale/mrstroll/ui/select.sub",
Link to comment
Share on other sites

Keko, la base del codigo lo encontre en un post perdido de epvp hace mas de un año, no poseo ni la fuente. Yo mismo lo postee en universojuegos, la traigo aqui de nuevo para que quien este intentando implementar algun peinado, que le sirva de ayuda y tenga la previsualizacion del mismo.

 

Dante, ¿De donde lo conseguiste? :) (Verdaderamente no vi el post, de todos modos, aqui esta mejor porque repara ese bug)

 

**** Añado foto, no tengo peinados nuevos disponibles, pero para que os hagais una idea a que imagen me refiero:

 

Imagen enviada

Link to comment
Share on other sites

Yo esto no lo saque del cliente Hidra, a un ni existia ese cliente esto esta posteado desde hace tiempo ya.

 

Disculpa como que no existe el cliente hidra? xD

Debes iniciar sesión para ver el contenido del enlace en esta publicación.

Antes piensa y informate antes de decir tal burrada.

Link to comment
Share on other sites

Disculpa como que no existe el cliente hidra? xD

Debes iniciar sesión para ver el contenido del enlace en esta publicación.

Antes piensa y informate antes de decir tal burrada.

 

haber chaval antes de decir nada aprende a leer y luego Dices todas las tonterias que quieras.

Digo que antes de que SALIERA ESE CLIENTE, ESO YA ESTABA POSTEADO.

 

Yo creo que aun no te has enterado de lo que he dicho Verdad?.

Antes de que hicieran ese Cliente, ESO DE VISUALIZAR LOS PEINADOS YA ESTABA POSTEADO.

Te enteraste ya? o aun no? :pokerface:

Link to comment
Share on other sites

  • Dilong locked this topic
Guest
This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...