PACI Posted June 20, 2016 at 04:22 AM Share Posted June 20, 2016 at 04:22 AM Boas. Achei engraçado "copiar" esta feature que o nosso companheiro Skype tem, para um client de metin2, para que fosse da mesma forma útil para os que estão ingame. Como poderão ver é algo bastante simples de desenvolver, e requer apenas 5 minutos para tal. A sua implementação também não é nada do outro mundo. ## game.py #### Adicionar antes da class GameWindow import time MESSENGER_LOGGINED = "" MESSENGER_STOPPING_TIME = 0 #### Adicionar ao def Open(self) #### antes do self.Show() self.__msgLoginBoard = ui.Board() self.__msgLoginBoard.SetParent(self) self.__msgLoginBoard.SetSize(200, 40) self.__msgLoginBoard.SetPosition(wndMgr.GetScreenWidth() - 210, wndMgr.GetScreenHeight() - 200) self.__msgLoginBoard.Hide() self.__msgLoginBoard.memberName = ui.TextLine() self.__msgLoginBoard.memberName.SetParent(self.__msgLoginBoard) self.__msgLoginBoard.memberName.SetText("None") self.__msgLoginBoard.memberName.SetWindowHorizontalAlignCenter() self.__msgLoginBoard.memberName.SetWindowVerticalAlignCenter() self.__msgLoginBoard.memberName.SetHorizontalAlignCenter() self.__msgLoginBoard.memberName.SetVerticalAlignCenter() self.__msgLoginBoard.memberName.Show() #### Adicionar ao def OnUpdate(self) global MESSENGER_LOGGINED, MESSENGER_STOPPING_TIME if MESSENGER_LOGGINED != "" and time.clock() < MESSENGER_STOPPING_TIME: self.__msgLoginBoard.memberName.SetText("%s esta online!" % MESSENGER_LOGGINED) self.__msgLoginBoard.Show() else: self.__msgLoginBoard.Hide() MESSENGER_LOGGINED = "" MESSENGER_STOPPING_TIME = 0 ## uiMessenger.py #### Adicionar ao def OnLogin import game, time game.MESSENGER_LOGGINED = name game.MESSENGER_STOPPING_TIME = time.clock() + 10.0 Compilar o vosso root, e testar. Abraço Link to comment
Hinata Posted June 20, 2016 at 04:35 PM Share Posted June 20, 2016 at 04:35 PM Good job :lol: Link to comment
pedrorrr Posted June 20, 2016 at 05:32 PM Share Posted June 20, 2016 at 05:32 PM Muito bem pensado. Meus parabéns Link to comment
Marcos Daniel Posted June 20, 2016 at 06:30 PM Share Posted June 20, 2016 at 06:30 PM Boas. Achei engraçado "copiar" esta feature que o nosso companheiro Skype tem, para um client de metin2, para que fosse da mesma forma útil para os que estão ingame. Como poderão ver é algo bastante simples de desenvolver, e requer apenas 5 minutos para tal. A sua implementação também não é nada do outro mundo. ## game.py #### Adicionar antes da class GameWindow import time MESSENGER_LOGGINED = "" MESSENGER_STOPPING_TIME = 0 #### Adicionar ao def Open(self) #### antes do self.Show() self.__msgLoginBoard = ui.Board() self.__msgLoginBoard.SetParent(self) self.__msgLoginBoard.SetSize(200, 40) self.__msgLoginBoard.SetPosition(wndMgr.GetScreenWidth() - 210, wndMgr.GetScreenHeight() - 200) self.__msgLoginBoard.Hide() self.__msgLoginBoard.memberName = ui.TextLine() self.__msgLoginBoard.memberName.SetParent(self.__msgLoginBoard) self.__msgLoginBoard.memberName.SetText("None") self.__msgLoginBoard.memberName.SetWindowHorizontalAlignCenter() self.__msgLoginBoard.memberName.SetWindowVerticalAlignCenter() self.__msgLoginBoard.memberName.SetHorizontalAlignCenter() self.__msgLoginBoard.memberName.SetVerticalAlignCenter() self.__msgLoginBoard.memberName.Show() #### Adicionar ao def OnUpdate(self) global MESSENGER_LOGGINED, MESSENGER_STOPPING_TIME if MESSENGER_LOGGINED != "" and time.clock() < MESSENGER_STOPPING_TIME: self.__msgLoginBoard.memberName.SetText("%s esta online!" % MESSENGER_LOGGINED) self.__msgLoginBoard.Show() else: self.__msgLoginBoard.Hide() MESSENGER_LOGGINED = "" MESSENGER_STOPPING_TIME = 0 ## uiMessenger.py #### Adicionar ao def OnLogin import game, time game.MESSENGER_LOGGINED = name game.MESSENGER_STOPPING_TIME = time.clock() + 10.0 Compilar o vosso root, e testar. Abraço É por isso que eu gosto deste paci lindo, obrigado bro por este "mini released" nem toda a gente sabia disto Good Job Link to comment
Guest KemazI Posted June 20, 2016 at 09:05 PM Share Posted June 20, 2016 at 09:05 PM Está top, apenas tenho um problema por causa da equipa online pois a equipa dá refresh 5 em 5 segundos e a mensagem está sempre a aparecer Link to comment
PACI Posted June 21, 2016 at 01:43 PM Author Share Posted June 21, 2016 at 01:43 PM E esse loop de 5 minutos é para quê? xD Quando a char GM faz login, altera o estado para online, quando faz logout altera para offline, não há necessidade de haver um refresh a meu ver. Link to comment
Guest KemazI Posted June 21, 2016 at 06:03 PM Share Posted June 21, 2016 at 06:03 PM E esse loop de 5 minutos é para quê? xD Quando a char GM faz login, altera o estado para online, quando faz logout altera para offline, não há necessidade de haver um refresh a meu ver. Já tentei tirar o loop mas depois não aparece equipa online XD Link to comment
Marco Posted June 14, 2017 at 12:43 AM Share Posted June 14, 2017 at 12:43 AM me too está sempre a aparecer equipa on Link to comment
Luffy Posted June 21, 2017 at 02:37 PM Share Posted June 21, 2017 at 02:37 PM é normal aparecer Unknown Server Command no syserr do client ou é porque coloquei algo errado, o código esta funcionado normal? Link to comment
igoriap Posted July 5, 2017 at 01:19 PM Share Posted July 5, 2017 at 01:19 PM A mim da sempre NONE está online ! Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now