summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/actions/actions.cpp12
-rw-r--r--src/actions/actions.h1
-rw-r--r--src/input/inputaction.h1
-rw-r--r--src/input/inputactionmap.h9
4 files changed, 23 insertions, 0 deletions
diff --git a/src/actions/actions.cpp b/src/actions/actions.cpp
index d28edf826..bc641d331 100644
--- a/src/actions/actions.cpp
+++ b/src/actions/actions.cpp
@@ -1378,4 +1378,16 @@ impHandler(useItem)
return true;
}
+impHandler(useItemInv)
+{
+ const int index = atoi(event.args.c_str());
+ const Inventory *const inv = PlayerInfo::getInventory();
+ if (inv)
+ {
+ Item *const item = inv->getItem(index);
+ PlayerInfo::useEquipItem(item, true);
+ }
+ return true;
+}
+
} // namespace Actions
diff --git a/src/actions/actions.h b/src/actions/actions.h
index 3ccd916d0..5d7482642 100644
--- a/src/actions/actions.h
+++ b/src/actions/actions.h
@@ -97,6 +97,7 @@ namespace Actions
decHandler(catchPet);
decHandler(mercenaryFire);
decHandler(useItem);
+ decHandler(useItemInv);
} // namespace Actions
#undef decHandler
diff --git a/src/input/inputaction.h b/src/input/inputaction.h
index 69dbe1147..12f989a07 100644
--- a/src/input/inputaction.h
+++ b/src/input/inputaction.h
@@ -504,6 +504,7 @@ namespace InputAction
DROP_ITEM_ALL,
DROP_INV,
DROP_INV_ALL,
+ USE_INV,
TOTAL
};
} // namespace InputAction
diff --git a/src/input/inputactionmap.h b/src/input/inputactionmap.h
index e22b12021..b27b9755a 100644
--- a/src/input/inputactionmap.h
+++ b/src/input/inputactionmap.h
@@ -4279,6 +4279,15 @@ static const InputActionData inputActionData[InputAction::TOTAL] = {
InputCondition::INGAME,
"dropinvall",
true},
+ {"keyUseInv",
+ InputType::UNKNOWN, InputAction::NO_VALUE,
+ InputType::UNKNOWN, InputAction::NO_VALUE,
+ Input::GRP_DEFAULT,
+ &Actions::useItemInv,
+ InputAction::NO_VALUE, 50,
+ InputCondition::INGAME,
+ "useinv",
+ true},
};
#endif // INPUT_INPUTACTIONMAP_H