colcrt

pequeña duda [python]

hola,

veran no se programar en python y ahora se me complica un poco, tengo la siguiente duda; esto es lo que aparece en el binario, PythonNetworkStream.h

void __RefreshCharacterWindow();

y esto es es lo que aparece en game.py

def RefreshCharacter(self):
        if self.interface:
            self.interface.RefreshCharacter()

esas dos funciones deberian tener el mismo nombre o como interpreta python que es esa la funcion que le pasa al binario una, saludos

Compartir esta publicación


Enlace a la publicación
Compartir en otros sitios

hola,

veran no se programar en python y ahora se me complica un poco, tengo la siguiente duda; esto es lo que aparece en el binario, PythonNetworkStream.h

void __RefreshCharacterWindow();

y esto es es lo que aparece en game.py

def RefreshCharacter(self):
        if self.interface:
            self.interface.RefreshCharacter()

esas dos funciones deberian tener el mismo nombre o como interpreta python que es esa la funcion que le pasa al binario una, saludos

 

PythonNetworkStreamPhaseGame.cpp

Compartir esta publicación


Enlace a la publicación
Compartir en otros sitios

La llamada a las funciones de Python desde C++ no se hacen por los nombres de las funciones, en todo caso el método __RefreshCharacterWindow() empieza por __ más que todo por normalización para que los desarrolladores sepan que es un método privado.

Compartir esta publicación


Enlace a la publicación
Compartir en otros sitios

Shang necessito una ayudita 

Compartir esta publicación


Enlace a la publicación
Compartir en otros sitios

La llamada a las funciones de Python desde C++ no se hacen por los nombres de las funciones, en todo caso el método __RefreshCharacterWindow() empieza por __ más que todo por normalización para que los desarrolladores sepan que es un método privado.

 

hola,

ya casi entiendo la idea, la pregunta que me surge es como llama c++ o toma los valores de esa funcion en python

 

tengo esto en uicharacter.py no estoy seguro si esos son los valores que solicita de la db

def __RefreshStatus(self):
		if self.isLoaded==0:
			return

		try:
			self.GetChild("Level_Value").SetText(str(player.GetStatus(player.LEVEL)))
			self.GetChild("Exp_Value").SetText(str(unsigned32(player.GetEXP())))
			self.GetChild("RestExp_Value").SetText(str(unsigned32(player.GetStatus(player.NEXT_EXP)) - unsigned32(player.GetStatus(player.EXP))))
			self.GetChild("HP_Value").SetText(str(player.GetStatus(player.HP)) + '/' + str(player.GetStatus(player.MAX_HP)))
			self.GetChild("SP_Value").SetText(str(player.GetStatus(player.SP)) + '/' + str(player.GetStatus(player.MAX_SP)))

			self.GetChild("STR_Value").SetText(str(player.GetStatus(player.ST)))
			self.GetChild("DEX_Value").SetText(str(player.GetStatus(player.DX)))
			self.GetChild("HTH_Value").SetText(str(player.GetStatus(player.HT)))
			self.GetChild("INT_Value").SetText(str(player.GetStatus(player.IQ)))

			self.GetChild("ATT_Value").SetText(self.__GetTotalAtkText())
			self.GetChild("DEF_Value").SetText(self.__GetTotalDefText())

			self.GetChild("MATT_Value").SetText(self.__GetTotalMagAtkText())
			#self.GetChild("MATT_Value").SetText(str(player.GetStatus(player.MAG_ATT)))

			self.GetChild("MDEF_Value").SetText(str(player.GetStatus(player.MAG_DEF)))
			self.GetChild("ASPD_Value").SetText(str(player.GetStatus(player.ATT_SPEED)))
			self.GetChild("MSPD_Value").SetText(str(player.GetStatus(player.MOVING_SPEED)))
			self.GetChild("CSPD_Value").SetText(str(player.GetStatus(player.CASTING_S

Compartir esta publicación


Enlace a la publicación
Compartir en otros sitios

hola,

ya casi entiendo la idea, la pregunta que me surge es como llama c++ o toma los valores de esa funcion en python

 

tengo esto en uicharacter.py no estoy seguro si esos son los valores que solicita de la db

 

def __RefreshStatus(self):
		if self.isLoaded==0:
			return

		try:
			self.GetChild("Level_Value").SetText(str(player.GetStatus(player.LEVEL)))
			self.GetChild("Exp_Value").SetText(str(unsigned32(player.GetEXP())))
			self.GetChild("RestExp_Value").SetText(str(unsigned32(player.GetStatus(player.NEXT_EXP)) - unsigned32(player.GetStatus(player.EXP))))
			self.GetChild("HP_Value").SetText(str(player.GetStatus(player.HP)) + '/' + str(player.GetStatus(player.MAX_HP)))
			self.GetChild("SP_Value").SetText(str(player.GetStatus(player.SP)) + '/' + str(player.GetStatus(player.MAX_SP)))

			self.GetChild("STR_Value").SetText(str(player.GetStatus(player.ST)))
			self.GetChild("DEX_Value").SetText(str(player.GetStatus(player.DX)))
			self.GetChild("HTH_Value").SetText(str(player.GetStatus(player.HT)))
			self.GetChild("INT_Value").SetText(str(player.GetStatus(player.IQ)))

			self.GetChild("ATT_Value").SetText(self.__GetTotalAtkText())
			self.GetChild("DEF_Value").SetText(self.__GetTotalDefText())

			self.GetChild("MATT_Value").SetText(self.__GetTotalMagAtkText())
			#self.GetChild("MATT_Value").SetText(str(player.GetStatus(player.MAG_ATT)))

			self.GetChild("MDEF_Value").SetText(str(player.GetStatus(player.MAG_DEF)))
			self.GetChild("ASPD_Value").SetText(str(player.GetStatus(player.ATT_SPEED)))
			self.GetChild("MSPD_Value").SetText(str(player.GetStatus(player.MOVING_SPEED)))
			self.GetChild("CSPD_Value").SetText(str(player.GetStatus(player.CASTING_S

Eso lo saca de las funciones del modulo player (PythonPlayerModule.cpp) que a la vez lo recibe del game por medio de packets.

 

Btw, qué es lo que quieres hacer?

Compartir esta publicación


Enlace a la publicación
Compartir en otros sitios

Eso lo saca de las funciones del modulo player (PythonPlayerModule.cpp) que a la vez lo recibe del game por medio de packets.

 

Btw, qué es lo que quieres hacer?

 

nose porque me da este error  y trato de resolver, y tambien tengo en mente crear un registro pero atravez del mismo cliente xD

Compartir esta publicación


Enlace a la publicación
Compartir en otros sitios

Syserr?

 

Parece ser que has cambiado packets y te has dejado algo por cambiar.

 

mira el syserror

0924 06:52:31596 :: CNetworkActorManager::SyncActor(dwVID=0) - NOT EXIST VID
0924 06:52:31596 :: CNetworkActorManager::SyncActor(dwVID=0) - NOT EXIST VID
0924 06:52:31598 :: CNetworkActorManager::SyncActor(dwVID=0) - NOT EXIST VID
0924 06:52:31598 :: CNetworkActorManager::SyncActor(dwVID=0) - NOT EXIST VID
0924 06:52:31599 :: CNetworkActorManager::SyncActor(dwVID=0) - NOT EXIST VID
0924 06:52:31599 :: CNetworkActorManager::SyncActor(dwVID=0) - NOT EXIST VID
0924 06:52:31599 :: CNetworkActorManager::SyncActor(dwVID=0) - NOT EXIST VID
0924 06:52:31599 :: CNetworkActorManager::SyncActor(dwVID=0) - NOT EXIST VID
0924 06:52:31599 :: CNetworkActorManager::SyncActor(dwVID=0) - NOT EXIST VID
0924 06:52:31703 :: Phase Loading does not handle this header (header: 5, last: 3, 5)
0924 06:52:40044 :: CANNOT_FIND_PACK_FILE [d:/ymir work/zone/°ø¿ë/hay_01.gr2]
0924 06:52:40045 :: CArea::SetBuilding: There is no data: d:/ymir work/zone/°ø¿ë/hay_01.gr2
0924 06:52:40045 :: CArea::SetBuilding: There is no data: d:/ymir work/zone/°ø¿ë/hay_01.gr2
0924 06:52:40051 :: CArea::SetBuilding: There is no data: d:/ymir work/zone/°ø¿ë/hay_01.gr2
0924 06:52:40051 :: CArea::SetBuilding: There is no data: d:/ymir work/zone/°ø¿ë/hay_01.gr2
0924 06:52:40142 :: CResourceManager::GetResourcePointer: File not exist d:/ymir work/zone/b/obj/general_obj_pieceofstone01 .mdatr
0924 06:52:47356 :: CResourceManager::GetResourcePointer: File not exist d:/ymir work/guild/effect/star.jpg
0924 06:55:36945 :: granny_shared_vbs:
0924 06:55:36946 :: 	0: 40
0924 06:55:36948 :: 	1: 202
0924 06:55:36991 :: 	2: 20
0924 06:55:36993 :: 	3: 40
0924 06:55:36994 :: 	4: 1
0924 06:55:36995 :: 	5: 20
0924 06:55:36996 :: 	6: 0
0924 06:55:36996 :: 	7: 0
0924 06:55:36997 :: 	8: 0

Compartir esta publicación


Enlace a la publicación
Compartir en otros sitios

 

0924 06:52:31703 :: Phase Loading does not handle this header (header: 5, last: 3, 5)

 

 

disculpa como hago para saber cual packet es?

Compartir esta publicación


Enlace a la publicación
Compartir en otros sitios

No sabría decirte.

 

gracias Shang por fin el error estaba en esta linea en el packet.h era int y esperaba un tipo long  te agradesco por la ayuda casi 3 dias buscando la solucion

 

long        points[POINT_MAX_NUM];

Compartir esta publicación


Enlace a la publicación
Compartir en otros sitios

gracias Shang por fin el error estaba en esta linea en el packet.h era int y esperaba un tipo long  te agradesco por la ayuda casi 3 dias buscando la solucion

 

long        points[POINT_MAX_NUM];

 

De nada xD.

Compartir esta publicación


Enlace a la publicación
Compartir en otros sitios

  • Recientemente navegando por este tema   0 miembros

    No hay usuarios registrados visitando esta página.