Jump to content

Shang

Bronze
  • Posts

    276
  • Joined

  • Last visited

  • Days Won

    7
  • Feedback

    0%

Shang last won the day on July 15 2020

Shang had the most liked content!

2 Followers

About Shang

Informations

  • Gender
    Male

Recent Profile Visitors

7548 profile views

Shang's Achievements

Proficient

Proficient (10/16)

  • Reacting Well
  • Dedicated
  • Very Popular Rare
  • First Post
  • Collaborator

Recent Badges

352

Reputation

  1. I imagine you installed this version instead of the one from the first post, am I right? If the bug of the taskbar is still present you can take the code from the character skills' window, it uses almost the same syntax, you will be able to adapt it.
  2. Read again the first post and u will find the solution.
  3. Try to move the declarations of the new gm affects below the default gm affect, just before the invisible one (be aware of the affects enum in skill_proto). As I see the affects are checked in order so the invisible affect is checked before the new gm affects are changed so no gm affect is present yet.
  4. If you use the style 'attach' all the events that can trigger the object will trigger the parent not the object itself, so if you put a button in a board with 'attach' you won't be able to click the button because the click will be triggered by the board.
  5. When you declare the struct of a dynamic packet you should follow the primary struct which is this one: typedef struct packet_header_dynamic_size { BYTE header; WORD size; } TDynamicSizePacketHeader; The point is that you are declaring this: typedef struct SPacketGCEventManager { BYTE header; BYTE subheader; WORD size; } TPacketGCEventManager; and the correct one should be this: typedef struct SPacketGCEventManager { BYTE header; WORD size; BYTE subheader; } TPacketGCEventManager; You can corroborate this information in this function: bool CPythonNetworkStream::CheckPacket(TPacketHeader * pRetHeader) from UserInterface/PythonNetworkStream.cpp.
  6. After the definition of TItemPos I just wrote it.
  7. Just take the definition from the server and copy it to the client. It's not that hard. Just do a research instead of making a post and u won't get mad if nobody answers. const TItemPos NPOS (RESERVED_WINDOW, WORD_MAX); Put that after the definition of the struct TItemPos.
  8. The version represents the path where the image is located. 2.0 - The image must be located in the same path as the .sub 1.0 - The image must be located in d:/ymir work/ui
  9. I've edited the first post by changing the line 'del mouseModule.mouseController' from under 'app.Loop()' to under 'mainStream.Destroy()' from prototype.py.
  10. I don't know what you are talking about. self.cursorDict = { app.NORMAL : CursorImage("D:/Ymir Work/UI/Cursor/cursor.sub"), app.ATTACK : CursorImage("D:/Ymir Work/UI/Cursor/cursor_attack.sub"), app.TARGET : CursorImage("D:/Ymir Work/UI/Cursor/cursor_attack.sub"), app.TALK : CursorImage("D:/Ymir Work/UI/Cursor/cursor_talk.sub"), app.CANT_GO : CursorImage("D:/Ymir Work/UI/Cursor/cursor_no.sub"), app.PICK : CursorImage("D:/Ymir Work/UI/Cursor/cursor_pick.sub"), app.DOOR : CursorImage("D:/Ymir Work/UI/Cursor/cursor_door.sub"), app.CHAIR : CursorImage("D:/Ymir Work/UI/Cursor/cursor_chair.sub"), app.MAGIC : CursorImage("D:/Ymir Work/UI/Cursor/cursor_chair.sub"), app.BUY : CursorImage("D:/Ymir Work/UI/Cursor/cursor_buy.sub"), app.SELL : CursorImage("D:/Ymir Work/UI/Cursor/cursor_sell.sub"), app.CAMERA_ROTATE : CursorImage("D:/Ymir Work/UI/Cursor/cursor_camera_rotate.sub"), app.HSIZE : CursorImage("D:/Ymir Work/UI/Cursor/cursor_hsize.sub"), app.VSIZE : CursorImage("D:/Ymir Work/UI/Cursor/cursor_vsize.sub"), app.HVSIZE : CursorImage("D:/Ymir Work/UI/Cursor/cursor_hvsize.sub"), } Every cursor exists inside the client (at least on mine).
  11. Hello, you probably have seen this "warning" in your syserr and probably ignored it: Exception TypeError: "'NoneType' object is not callable" in <bound method CursorImage.__del__ of <mouseModule.CursorImage object at 0x09204630>> ignored Exception TypeError: "'NoneType' object is not callable" in <bound method CursorImage.__del__ of <mouseModule.CursorImage object at 0x09204650>> ignored Exception TypeError: "'NoneType' object is not callable" in <bound method CursorImage.__del__ of <mouseModule.CursorImage object at 0x09204610>> ignored Exception TypeError: "'NoneType' object is not callable" in <bound method CursorImage.__del__ of <mouseModule.CursorImage object at 0x09210B30>> ignored Exception TypeError: "'NoneType' object is not callable" in <bound method CursorImage.__del__ of <mouseModule.CursorImage object at 0x092109D0>> ignored Exception TypeError: "'NoneType' object is not callable" in <bound method CursorImage.__del__ of <mouseModule.CursorImage object at 0x092109F0>> ignored Exception TypeError: "'NoneType' object is not callable" in <bound method CursorImage.__del__ of <mouseModule.CursorImage object at 0x09210A10>> ignored Exception TypeError: "'NoneType' object is not callable" in <bound method CursorImage.__del__ of <mouseModule.CursorImage object at 0x09210A30>> ignored Exception TypeError: "'NoneType' object is not callable" in <bound method CursorImage.__del__ of <mouseModule.CursorImage object at 0x09210A50>> ignored Exception TypeError: "'NoneType' object is not callable" in <bound method CursorImage.__del__ of <mouseModule.CursorImage object at 0x09210A70>> ignored Exception TypeError: "'NoneType' object is not callable" in <bound method CursorImage.__del__ of <mouseModule.CursorImage object at 0x092104B0>> ignored Exception TypeError: "'NoneType' object is not callable" in <bound method CursorImage.__del__ of <mouseModule.CursorImage object at 0x09210550>> ignored Exception TypeError: "'NoneType' object is not callable" in <bound method CursorImage.__del__ of <mouseModule.CursorImage object at 0x09210590>> ignored Exception TypeError: "'NoneType' object is not callable" in <bound method CursorImage.__del__ of <mouseModule.CursorImage object at 0x092106B0>> ignored Exception AttributeError: "'NoneType' object has no attribute '__del__'" in <bound method NumberLine.__del__ of <ui.NumberLine object at 0x092106F0>> ignored Exception TypeError: "'NoneType' object is not callable" in <bound method CursorImage.__del__ of <mouseModule.CursorImage object at 0x092045D0>> ignored This is caused by not deleting the CMouseController instance properly. To fix this we just need to delete the CMouseController instance when closing the client. Let's start: Open root/mouseModule.py and search for the constructor of CMouseController (CMouseController.__init__) and add this under 'self.callbackDict = {}': self.cursorDict = {} Now navigate towards the deconstructor of the same class (CMouseController.__del__) and add this under the 'self.callbackDict = {}': for k, v in self.cursorDict.items(): v.DeleteImage() And the final step is just to delete the instance of the CMouseController from de mouseModule; open prototype.py and add this under 'mainStream.Destroy()': del mouseModule.mouseController And that's all. If you have any problem related to the post just comment it. Note: I've started to see this when I compiled the python library as static.
×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.