wasd plugin: allow input to chat dialogs
The chat dialogs use the same key listener as the chatbox
This commit is contained in:
@@ -109,6 +109,8 @@ public class WidgetID
|
|||||||
public static final int DIARY_QUEST_GROUP_ID = 275;
|
public static final int DIARY_QUEST_GROUP_ID = 275;
|
||||||
public static final int THEATRE_OF_BLOOD_GROUP_ID = 23;
|
public static final int THEATRE_OF_BLOOD_GROUP_ID = 23;
|
||||||
public static final int WORLD_SWITCHER_GROUP_ID = 69;
|
public static final int WORLD_SWITCHER_GROUP_ID = 69;
|
||||||
|
public static final int DIALOG_OPTION_GROUP_ID = 219;
|
||||||
|
public static final int DIALOG_PLAYER_GROUP_ID = 217;
|
||||||
|
|
||||||
static class WorldMap
|
static class WorldMap
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -274,15 +274,20 @@ public enum WidgetInfo
|
|||||||
COMBAT_SPELL_ICON(WidgetID.COMBAT_GROUP_ID, WidgetID.Combat.SPELL_ICON),
|
COMBAT_SPELL_ICON(WidgetID.COMBAT_GROUP_ID, WidgetID.Combat.SPELL_ICON),
|
||||||
COMBAT_SPELL_TEXT(WidgetID.COMBAT_GROUP_ID, WidgetID.Combat.SPELL_TEXT),
|
COMBAT_SPELL_TEXT(WidgetID.COMBAT_GROUP_ID, WidgetID.Combat.SPELL_TEXT),
|
||||||
|
|
||||||
|
DIALOG_OPTION(WidgetID.DIALOG_OPTION_GROUP_ID, 0),
|
||||||
|
|
||||||
DIALOG_SPRITE(WidgetID.DIALOG_SPRITE_GROUP_ID, 0),
|
DIALOG_SPRITE(WidgetID.DIALOG_SPRITE_GROUP_ID, 0),
|
||||||
DIALOG_SPRITE_SPRITE(WidgetID.DIALOG_SPRITE_GROUP_ID, WidgetID.DialogSprite.SPRITE),
|
DIALOG_SPRITE_SPRITE(WidgetID.DIALOG_SPRITE_GROUP_ID, WidgetID.DialogSprite.SPRITE),
|
||||||
DIALOG_SPRITE_TEXT(WidgetID.DIALOG_SPRITE_GROUP_ID, WidgetID.DialogSprite.TEXT),
|
DIALOG_SPRITE_TEXT(WidgetID.DIALOG_SPRITE_GROUP_ID, WidgetID.DialogSprite.TEXT),
|
||||||
|
|
||||||
|
DIALOG_NPC(WidgetID.DIALOG_NPC_GROUP_ID, 0),
|
||||||
DIALOG_NPC_NAME(WidgetID.DIALOG_NPC_GROUP_ID, WidgetID.DialogNPC.NAME),
|
DIALOG_NPC_NAME(WidgetID.DIALOG_NPC_GROUP_ID, WidgetID.DialogNPC.NAME),
|
||||||
DIALOG_NPC_TEXT(WidgetID.DIALOG_NPC_GROUP_ID, WidgetID.DialogNPC.TEXT),
|
DIALOG_NPC_TEXT(WidgetID.DIALOG_NPC_GROUP_ID, WidgetID.DialogNPC.TEXT),
|
||||||
DIALOG_NPC_HEAD_MODEL(WidgetID.DIALOG_NPC_GROUP_ID, WidgetID.DialogNPC.HEAD_MODEL),
|
DIALOG_NPC_HEAD_MODEL(WidgetID.DIALOG_NPC_GROUP_ID, WidgetID.DialogNPC.HEAD_MODEL),
|
||||||
DIALOG_NPC_CONTINUE(WidgetID.DIALOG_NPC_GROUP_ID, WidgetID.DialogNPC.CONTINUE),
|
DIALOG_NPC_CONTINUE(WidgetID.DIALOG_NPC_GROUP_ID, WidgetID.DialogNPC.CONTINUE),
|
||||||
|
|
||||||
|
DIALOG_PLAYER(WidgetID.DIALOG_PLAYER_GROUP_ID, 0),
|
||||||
|
|
||||||
PRIVATE_CHAT_MESSAGE(WidgetID.PRIVATE_CHAT, 0),
|
PRIVATE_CHAT_MESSAGE(WidgetID.PRIVATE_CHAT, 0),
|
||||||
|
|
||||||
SLAYER_REWARDS_TOPBAR(WidgetID.SLAYER_REWARDS_GROUP_ID, WidgetID.SlayerRewards.TOP_BAR),
|
SLAYER_REWARDS_TOPBAR(WidgetID.SLAYER_REWARDS_GROUP_ID, WidgetID.SlayerRewards.TOP_BAR),
|
||||||
|
|||||||
@@ -105,7 +105,21 @@ public class WASDCameraPlugin extends Plugin
|
|||||||
boolean chatboxFocused()
|
boolean chatboxFocused()
|
||||||
{
|
{
|
||||||
Widget chatboxParent = client.getWidget(WidgetInfo.CHATBOX_PARENT);
|
Widget chatboxParent = client.getWidget(WidgetInfo.CHATBOX_PARENT);
|
||||||
return chatboxParent != null && chatboxParent.getOnKeyListener() != null;
|
if (chatboxParent == null || chatboxParent.getOnKeyListener() == null)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// chat dialogs use the same key listener as chat
|
||||||
|
if (client.getWidget(WidgetInfo.DIALOG_NPC) != null
|
||||||
|
|| client.getWidget(WidgetInfo.DIALOG_SPRITE) != null
|
||||||
|
|| client.getWidget(WidgetInfo.DIALOG_OPTION) != null
|
||||||
|
|| client.getWidget(WidgetInfo.DIALOG_PLAYER) != null)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Subscribe
|
@Subscribe
|
||||||
|
|||||||
Reference in New Issue
Block a user