|
Just noticed the use flag shift in this is wrong. It overlaps with the option clicks. If i'm correct the correct shift is 11.
EDIT: Also for anyone else wondering: Allowing item dragging is done by setting the interface event depth (as mgi125 originally said it is) into atleast 1.
EDIT2:
These are the settings from the 508 client.Code:public class ComponentSettings { public static boolean hasContinueOption(int optionmask) { Class14_Sub8_Sub39.anInt4742++; return (0x1 & optionmask) != 0; } public static boolean hasOptionClickAccess(int accessFlag, int clickOption) { Class14_Sub3.anInt2759++; return ((accessFlag >> (1 + clickOption)) & 0x1) != 0; } public static int getAllowedUseTypeFlag(int optionmask) { Class44.anInt727++; return (optionmask >> 11) & 0x3F; } public static int getComponentEventDepth(int optionmask) { Class14_Sub8.anInt2850++; return (optionmask >> 17) & 0x7; } public static boolean bit20Toggled(int componentmask) { return ((componentmask >> 20) & 0x1) != 0; } public static boolean bit21Toggled(int optionmask) { Class36.anInt618++; return ((optionmask >> 21) & 0x1) != 0; } public static boolean bit28Toggled(int optionmask) { Class111.anInt1862++; return ((optionmask >> 28) & 0x1) != 0; } public static boolean bit29Toggled(int optionMask) { Class14_Sub6.anInt2818++; return ((optionMask >> 29) & 0x1) != 0; } public static boolean bit30Toggled(int optionmask) { Class14_Sub2_Sub5.anInt3811++; return ((optionmask >> 30) & 0x1) != 0; } public static boolean bit31Toggled(int optionmask) { Class81.anInt1322++; return ((optionmask >> 31) & 0x1) != 0; } public static int getOptionMask(Class94 component) { IntegerNode node = ((IntegerNode) (Class14_Sub8_Sub5.componentSettingContainer .method1230(((long) component.widgetPointer << 32) + (long) component.widgetSlot, (byte) -18))); if (node != null) return node.value; return component.defaultOptions; } public static Class94 allowDrag(Class94 component) { int eventDepth = ComponentSettings .getComponentEventDepth(getOptionMask(component)); if (eventDepth == 0) return null; for (int ix = 0; ix < eventDepth; ix++) { component = Class55.method1233(component.anInt1540, 21803); if (component == null) return null; } return component; } }
Flags 21 and 23 appear to related to component dragging. 21 seems to be "can drag onto", while 23 is "can drag".
sorry for the bump but i can confirm that teemuzz is right on this one
correct shift is 11 and in 731 the optionmask consists of 6 bits instead of 5 still figuring out what the last bit is used for will update when i find it
proof (directly taken from 731 client)
Code:static final int method5837(int var0) { return var0 >> 11 & 127; }
From the 742 client:
Looks like a hidden "use on/with" component or something. This is also the only thing which uses the second parameter of the InterfaceComponentSettings/AccessMasks class in the client.Code:public final int method12465() { return method5041(permission); } static final int method5041(int i) { return i >> 11 & 0x7f; } static String method533(InterfaceComponentDefinition interfaceComponentDefinition) { if (client.getInterfaceComponentSetting(interfaceComponentDefinition).method12465() == 0) { return null; } if (interfaceComponentDefinition.aString1728 == null || interfaceComponentDefinition.aString1728.trim().length() == 0) { if (client.aBool8579) { return "Hidden-use"; } return null; } return interfaceComponentDefinition.aString1728; }
Code:aString1728 = buffer.readString(); int setting = -1; if (Class304.method5041(permission) != 0) { setting = buffer.readUnsignedShort(); if (setting == 65535) { setting = -1; } anInt1658 = buffer.readUnsignedShort(); if (anInt1658 == 65535) { anInt1658 = -1; } anInt1659 = buffer.readUnsignedShort(); if (anInt1659 == 65535) { anInt1659 = -1; } } //some code... this.setting = new InterfaceComponentSettings(permission, setting);
Item dragging doesnt work on 718
https://www.rune-server.ee/runescape...t-working.html
« Previous Thread | Next Thread » |
Thread Information |
Users Browsing this ThreadThere are currently 1 users browsing this thread. (0 members and 1 guests) |