[Scummvm-git-logs] scummvm master -> 9c87b81d77f8c6cdb8b1879bac1aefa06dc0b489

mduggan noreply at scummvm.org
Mon Nov 22 06:05:20 UTC 2021


This automated email contains information about 3 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
763e498384 ULTIMA8: Small type cleanup for utils.
bddd829b00 ULTIMA8: Add Drop Weapon key for No Remorse (fixes #13082)
9c87b81d77 ULTIMA8: Add basic numpad mappings for Crusader games


Commit: 763e4983848e9e669f6edd72098250e7897ab433
    https://github.com/scummvm/scummvm/commit/763e4983848e9e669f6edd72098250e7897ab433
Author: Matthew Duggan (mgithub at guarana.org)
Date: 2021-11-22T15:03:50+09:00

Commit Message:
ULTIMA8: Small type cleanup for utils.

Changed paths:
    engines/ultima/ultima8/misc/debugger.cpp
    engines/ultima/ultima8/misc/debugger.h
    engines/ultima/ultima8/misc/util.cpp
    engines/ultima/ultima8/misc/util.h


diff --git a/engines/ultima/ultima8/misc/debugger.cpp b/engines/ultima/ultima8/misc/debugger.cpp
index cb75c3547c..5c10e7ea4a 100644
--- a/engines/ultima/ultima8/misc/debugger.cpp
+++ b/engines/ultima/ultima8/misc/debugger.cpp
@@ -214,14 +214,14 @@ Debugger::~Debugger() {
 }
 
 
-void Debugger::executeCommand(const ArgsType &args) {
-	ArgvType argv;
+void Debugger::executeCommand(const Common::String &args) {
+	Common::Array<Common::String> argv;
 	StringToArgv(args, argv);
 
 	executeCommand(argv);
 }
 
-void Debugger::executeCommand(const ArgvType &argv) {
+void Debugger::executeCommand(const Common::Array<Common::String> &argv) {
 	if (argv.empty())
 		return;
 
diff --git a/engines/ultima/ultima8/misc/debugger.h b/engines/ultima/ultima8/misc/debugger.h
index a3fa63ee11..72271da888 100644
--- a/engines/ultima/ultima8/misc/debugger.h
+++ b/engines/ultima/ultima8/misc/debugger.h
@@ -125,9 +125,6 @@ extern console_err_ostream<char> *pperr;
  * Debugger base class
  */
 class Debugger : public Shared::Debugger {
-public:
-	typedef Common::String ArgsType;
-	typedef Std::vector<ArgsType> ArgvType;
 private:
 	// Standard Output Stream Object
 	console_ostream<char> _strOut;
@@ -283,8 +280,8 @@ public:
 	Debugger();
 	~Debugger() override;
 
-	void executeCommand(const ArgsType &args);
-	void executeCommand(const ArgvType &argv);
+	void executeCommand(const Common::String &args);
+	void executeCommand(const Common::Array<Common::String> &argv);
 };
 
 extern Debugger *g_debugger;
diff --git a/engines/ultima/ultima8/misc/util.cpp b/engines/ultima/ultima8/misc/util.cpp
index f93a340246..79a2fa7943 100644
--- a/engines/ultima/ultima8/misc/util.cpp
+++ b/engines/ultima/ultima8/misc/util.cpp
@@ -26,7 +26,7 @@
 namespace Ultima {
 namespace Ultima8 {
 
-template<class T> void StringToArgv(const T &args, Std::vector<T> &argv) {
+template<class T> void StringToArgv(const T &args, Common::Array<T> &argv) {
 	// Clear the vector
 	argv.clear();
 
@@ -87,9 +87,7 @@ template<class T> void StringToArgv(const T &args, Std::vector<T> &argv) {
 	if (!arg.empty()) argv.push_back(arg);
 }
 
-template void StringToArgv<Std::string>(const Std::string &args, Std::vector<Std::string> &argv);
-template void StringToArgv<istring>(const istring &args, Std::vector<istring> &argv);
-template void StringToArgv<Common::String>(const Common::String &args, Std::vector<Common::String> &argv);
+template void StringToArgv<Common::String>(const Common::String &args, Common::Array<Common::String> &argv);
 
 template<class T> void ArgvToString(const Std::vector<T> &argv, T &args) {
 	// Clear the string
@@ -125,8 +123,6 @@ template<class T> void ArgvToString(const Std::vector<T> &argv, T &args) {
 	}
 }
 
-template void ArgvToString<Std::string>(const Std::vector<Std::string> &argv, Std::string &args);
-template void ArgvToString<istring>(const Std::vector<istring> &argv, istring &args);
 template void ArgvToString<Common::String>(const Std::vector<Common::String> &argv, Common::String &args);
 
 template<class T> void TrimSpaces(T &str) {
diff --git a/engines/ultima/ultima8/misc/util.h b/engines/ultima/ultima8/misc/util.h
index 8211625b8f..7c74b17e84 100644
--- a/engines/ultima/ultima8/misc/util.h
+++ b/engines/ultima/ultima8/misc/util.h
@@ -28,8 +28,8 @@
 namespace Ultima {
 namespace Ultima8 {
 
-template<class T> void StringToArgv(const T &args, Std::vector<T> &argv);
-template<class T> void ArgvToString(const Std::vector<T> &argv, T &args);
+template<class T> void StringToArgv(const T &args, Common::Array<T> &argv);
+template<class T> void ArgvToString(const Common::Array<T> &argv, T &args);
 
 
 template<class T> void TrimSpaces(T &str);


Commit: bddd829b00917be528ba2291f930f101574f41b7
    https://github.com/scummvm/scummvm/commit/bddd829b00917be528ba2291f930f101574f41b7
Author: Matthew Duggan (mgithub at guarana.org)
Date: 2021-11-22T15:03:50+09:00

Commit Message:
ULTIMA8: Add Drop Weapon key for No Remorse (fixes #13082)

Changed paths:
    engines/ultima/ultima8/meta_engine.cpp
    engines/ultima/ultima8/meta_engine.h
    engines/ultima/ultima8/misc/debugger.cpp
    engines/ultima/ultima8/misc/debugger.h
    engines/ultima/ultima8/world/actors/main_actor.cpp
    engines/ultima/ultima8/world/actors/main_actor.h


diff --git a/engines/ultima/ultima8/meta_engine.cpp b/engines/ultima/ultima8/meta_engine.cpp
index fc1743d5cd..e4e1485c2e 100644
--- a/engines/ultima/ultima8/meta_engine.cpp
+++ b/engines/ultima/ultima8/meta_engine.cpp
@@ -82,6 +82,8 @@ static const KeybindingRecord CRUSADER_KEYS[] = {
 	{ ACTION_USE_MEDIKIT, "USE_MEDIKIT", "Use Medical Kit", "MainActor::useMedikit", nullptr, "m", nullptr },
 	{ ACTION_USE_ENERGYCUBE, "USE_ENERGYCUBE", "Use Energy Cube", "MainActor::useEnergyCube", nullptr, "e", nullptr },
 	{ ACTION_DETONATE_BOMB, "DETONATE_BOMB", "Detonate Bomb", "MainActor::detonateBomb", nullptr, "b", nullptr },
+	// TODO: The same key should be "use datalink" in no regret.
+	{ ACTION_DROP_WEAPON, "DROP_WEAPON", "Drop Weapon", "MainActor::dropWeapon", nullptr, "C+d", nullptr },
 	{ ACTION_SELECT_ITEMS, "SELECT_ITEM", "Select Item", "ItemSelectionProcess::startSelection", nullptr, "s", nullptr },
 	{ ACTION_USE_SELECTION, "USE_SELECTION", "Use Selection", "ItemSelectionProcess::useSelectedItem", nullptr, "RETURN", nullptr },
 	{ ACTION_GRAB_ITEMS, "GRAB_ITEM", "Grab Items", "ItemSelectionProcess::grabItems", nullptr, "g", nullptr },
diff --git a/engines/ultima/ultima8/meta_engine.h b/engines/ultima/ultima8/meta_engine.h
index 0f3779e1cc..8dcff6b7f7 100644
--- a/engines/ultima/ultima8/meta_engine.h
+++ b/engines/ultima/ultima8/meta_engine.h
@@ -34,12 +34,12 @@ enum KeybindingAction {
 	ACTION_BACKPACK, ACTION_KEYRING, ACTION_MINIMAP, ACTION_RECALL,
 	ACTION_INVENTORY, ACTION_NEXT_WEAPON, ACTION_NEXT_INVENTORY,
 	ACTION_USE_INVENTORY, ACTION_USE_MEDIKIT, ACTION_USE_ENERGYCUBE,
-	ACTION_SELECT_ITEMS, ACTION_DETONATE_BOMB, ACTION_USE_SELECTION,
-	ACTION_GRAB_ITEMS, ACTION_MENU,	ACTION_CLOSE_GUMPS, ACTION_HIGHLIGHT_ITEMS,
-	ACTION_TOGGLE_TOUCHING, ACTION_JUMP, ACTION_TURN_LEFT, ACTION_TURN_RIGHT,
-	ACTION_MOVE_FORWARD, ACTION_MOVE_BACK, ACTION_MOVE_UP, ACTION_MOVE_DOWN,
-	ACTION_MOVE_LEFT, ACTION_MOVE_RIGHT, ACTION_MOVE_RUN, ACTION_MOVE_STEP,
-	ACTION_ATTACK, ACTION_CAMERA_AVATAR,
+	ACTION_SELECT_ITEMS, ACTION_DETONATE_BOMB, ACTION_DROP_WEAPON,
+	ACTION_USE_SELECTION, ACTION_GRAB_ITEMS, ACTION_MENU, ACTION_CLOSE_GUMPS,
+	ACTION_HIGHLIGHT_ITEMS, ACTION_TOGGLE_TOUCHING, ACTION_JUMP, ACTION_TURN_LEFT,
+	ACTION_TURN_RIGHT, ACTION_MOVE_FORWARD, ACTION_MOVE_BACK, ACTION_MOVE_UP,
+	ACTION_MOVE_DOWN, ACTION_MOVE_LEFT, ACTION_MOVE_RIGHT, ACTION_MOVE_RUN,
+	ACTION_MOVE_STEP, ACTION_ATTACK, ACTION_CAMERA_AVATAR,
 
 	ACTION_CLIPPING, ACTION_DEC_SORT_ORDER,
 	ACTION_INC_SORT_ORDER, ACTION_QUICK_MOVE_ASCEND, ACTION_QUICK_MOVE_DESCEND,
diff --git a/engines/ultima/ultima8/misc/debugger.cpp b/engines/ultima/ultima8/misc/debugger.cpp
index 5c10e7ea4a..29f0b7f318 100644
--- a/engines/ultima/ultima8/misc/debugger.cpp
+++ b/engines/ultima/ultima8/misc/debugger.cpp
@@ -158,6 +158,7 @@ Debugger::Debugger() : Shared::Debugger() {
 	registerCmd("MainActor::useMedikit", WRAP_METHOD(Debugger, cmdUseMedikit));
 	registerCmd("MainActor::useEnergyCube", WRAP_METHOD(Debugger, cmdUseEnergyCube));
 	registerCmd("MainActor::detonateBomb", WRAP_METHOD(Debugger, cmdDetonateBomb));
+	registerCmd("MainActor::dropWeapon", WRAP_METHOD(Debugger, cmdDropWeapon));
 	registerCmd("MainActor::toggleCombat", WRAP_METHOD(Debugger, cmdToggleCombat));
 	registerCmd("ItemSelectionProcess::startSelection", WRAP_METHOD(Debugger, cmdStartSelection));
 	registerCmd("ItemSelectionProcess::useSelectedItem", WRAP_METHOD(Debugger, cmdUseSelection));
@@ -1149,6 +1150,22 @@ bool Debugger::cmdDetonateBomb(int argc, const char **argv) {
 	return false;
 }
 
+bool Debugger::cmdDropWeapon(int argc, const char **argv) {
+	if (Ultima8Engine::get_instance()->isAvatarInStasis()) {
+		debugPrintf("Can't drop weapon: avatarInStasis\n");
+		return false;
+	}
+
+	// Only if controlling avatar.
+	if (!_isAvatarControlled()) {
+		return false;
+	}
+
+	MainActor *av = getMainActor();
+	av->dropWeapon();
+	return false;
+}
+
 bool Debugger::cmdUseInventory(int argc, const char **argv) {
 	if (Ultima8Engine::get_instance()->isAvatarInStasis()) {
 		debugPrintf("Can't use inventory: avatarInStasis\n");
diff --git a/engines/ultima/ultima8/misc/debugger.h b/engines/ultima/ultima8/misc/debugger.h
index 72271da888..2fab1961f0 100644
--- a/engines/ultima/ultima8/misc/debugger.h
+++ b/engines/ultima/ultima8/misc/debugger.h
@@ -223,6 +223,7 @@ private:
 	bool cmdUseMedikit(int argc, const char **argv);
 	bool cmdUseEnergyCube(int argc, const char **argv);
 	bool cmdDetonateBomb(int argc, const char **argv);
+	bool cmdDropWeapon(int argc, const char **argv);
 	bool cmdStartSelection(int argc, const char **argv);
 	bool cmdUseSelection(int argc, const char **argv);
 	bool cmdGrabItems(int argc, const char **argv);
diff --git a/engines/ultima/ultima8/world/actors/main_actor.cpp b/engines/ultima/ultima8/world/actors/main_actor.cpp
index 575b866779..55ea3d409d 100644
--- a/engines/ultima/ultima8/world/actors/main_actor.cpp
+++ b/engines/ultima/ultima8/world/actors/main_actor.cpp
@@ -736,6 +736,17 @@ void MainActor::nextWeapon() {
 	}
 }
 
+void MainActor::dropWeapon() {
+	uint16 oldweapon = _activeWeapon;
+	Item *wpn = getItem(oldweapon);
+	if (!wpn || (wpn->getShape() == 0x32e && World::get_instance()->getGameDifficulty() < 2))
+		return;
+
+	nextWeapon();
+	removeItem(wpn);
+	wpn->move(_x, _y, _z);
+}
+
 void MainActor::nextInvItem() {
 	Std::vector<Item *> items;
 	getItemsWithShapeFamily(items, ShapeInfo::SF_CRUINVITEM, true);
@@ -1064,9 +1075,7 @@ void MainActor::detonateBomb() {
 			continue;
 		founditem->callUsecodeEvent_use();
 	}
-	return;
 }
 
-
 } // End of namespace Ultima8
 } // End of namespace Ultima
diff --git a/engines/ultima/ultima8/world/actors/main_actor.h b/engines/ultima/ultima8/world/actors/main_actor.h
index f19f2080a7..eed5846c85 100644
--- a/engines/ultima/ultima8/world/actors/main_actor.h
+++ b/engines/ultima/ultima8/world/actors/main_actor.h
@@ -153,6 +153,9 @@ public:
 	//! Swap to the next inventory item (Crusader)
 	void nextInvItem();
 
+	//! Drop the current weapon (Crusader)
+	void dropWeapon();
+
 	//! Check if we can absorb a hit with the shield. Returns the modified damage value.
 	int receiveShieldHit(int damage, uint16 damage_type) override;
 


Commit: 9c87b81d77f8c6cdb8b1879bac1aefa06dc0b489
    https://github.com/scummvm/scummvm/commit/9c87b81d77f8c6cdb8b1879bac1aefa06dc0b489
Author: Matthew Duggan (mgithub at guarana.org)
Date: 2021-11-22T15:03:50+09:00

Commit Message:
ULTIMA8: Add basic numpad mappings for Crusader games

Not a complete reimplementation of the original behavior.  The original swapped
between absolute and relative movement using capslock status, but for now this
adds at least *a* mapping for the keys.

Changed paths:
    engines/ultima/ultima8/meta_engine.cpp


diff --git a/engines/ultima/ultima8/meta_engine.cpp b/engines/ultima/ultima8/meta_engine.cpp
index e4e1485c2e..4629905a79 100644
--- a/engines/ultima/ultima8/meta_engine.cpp
+++ b/engines/ultima/ultima8/meta_engine.cpp
@@ -36,8 +36,8 @@ struct KeybindingRecord {
 	const char *_desc;
 	const char *_pressMethod;
 	const char *_releaseMethod;
-	const char *_key;
-	const char *_joy;
+	const char *_input1;
+	const char *_input2;
 };
 
 static const KeybindingRecord COMMON_KEYS[] = {
@@ -48,10 +48,10 @@ static const KeybindingRecord COMMON_KEYS[] = {
 	{ ACTION_MENU, "MENU", "Game Menu", "MenuGump::showMenu", nullptr, "ESCAPE", "JOY_Y" },
 	{ ACTION_HIGHLIGHT_ITEMS, "HIGHLIGHT_ITEMS", "Show Highlight Items", "GameMapGump::startHighlightItems", "GameMapGump::stopHighlightItems", "TAB", nullptr },
 	{ ACTION_TOGGLE_TOUCHING, "TOUCHING", "Show Touching Items", "GUIApp::toggleShowTouchingItems", nullptr, "h", nullptr },
-	{ ACTION_TURN_LEFT, "TURN_LEFT", "Turn Left", "AvatarMoverProcess::startTurnLeft", "AvatarMoverProcess::stopTurnLeft", "LEFT", nullptr },
-	{ ACTION_TURN_RIGHT, "TURN_RIGHT", "Turn Right", "AvatarMoverProcess::startTurnRight", "AvatarMoverProcess::stopTurnRight", "RIGHT", nullptr },
-	{ ACTION_MOVE_FORWARD, "MOVE_FORWARD", "Move Forward", "AvatarMoverProcess::startMoveForward", "AvatarMoverProcess::stopMoveForward", "UP", nullptr },
-	{ ACTION_MOVE_BACK, "MOVE_BACK", "Move Back", "AvatarMoverProcess::startMoveBack", "AvatarMoverProcess::stopMoveBack", "DOWN", nullptr },
+	{ ACTION_TURN_LEFT, "TURN_LEFT", "Turn Left", "AvatarMoverProcess::startTurnLeft", "AvatarMoverProcess::stopTurnLeft", "LEFT", "KP4" },
+	{ ACTION_TURN_RIGHT, "TURN_RIGHT", "Turn Right", "AvatarMoverProcess::startTurnRight", "AvatarMoverProcess::stopTurnRight", "RIGHT", "KP6" },
+	{ ACTION_MOVE_FORWARD, "MOVE_FORWARD", "Move Forward", "AvatarMoverProcess::startMoveForward", "AvatarMoverProcess::stopMoveForward", "UP", "KP8" },
+	{ ACTION_MOVE_BACK, "MOVE_BACK", "Move Back", "AvatarMoverProcess::startMoveBack", "AvatarMoverProcess::stopMoveBack", "DOWN", "KP2" },
 	{ ACTION_MOVE_UP, "MOVE_UP", "Move Up", "AvatarMoverProcess::startMoveUp", "AvatarMoverProcess::stopMoveUp", nullptr, "JOY_UP" },
 	{ ACTION_MOVE_DOWN, "MOVE_DOWN", "Move Down", "AvatarMoverProcess::startMoveDown", "AvatarMoverProcess::stopMoveDown", nullptr, "JOY_DOWN" },
 	{ ACTION_MOVE_LEFT, "MOVE_LEFT", "Move Left", "AvatarMoverProcess::startMoveLeft", "AvatarMoverProcess::stopMoveLeft", nullptr, "JOY_LEFT" },
@@ -76,20 +76,21 @@ static const KeybindingRecord U8_KEYS[] = {
 };
 
 static const KeybindingRecord CRUSADER_KEYS[] = {
-	{ ACTION_NEXT_WEAPON, "NEXT_WEAPON", "Next Weapon", "MainActor::nextWeapon", nullptr, "w", nullptr },
-	{ ACTION_NEXT_INVENTORY, "NEXT_INVENTORY", "Next Inventory Item", "MainActor::nextInvItem", nullptr, "i", nullptr },
-	{ ACTION_USE_INVENTORY, "USE_INVENTORY", "Use Inventroy Item", "MainActor::useInventoryItem", nullptr, "u", nullptr },
+	{ ACTION_NEXT_WEAPON, "NEXT_WEAPON", "Next Weapon", "MainActor::nextWeapon", nullptr, "w", "KP_MULTIPLY" },
+	{ ACTION_NEXT_INVENTORY, "NEXT_INVENTORY", "Next Inventory Item", "MainActor::nextInvItem", nullptr, "i", "KP_MINUS" },
+	{ ACTION_USE_INVENTORY, "USE_INVENTORY", "Use Inventroy Item", "MainActor::useInventoryItem", nullptr, "u", "KP_PERIOD" },
 	{ ACTION_USE_MEDIKIT, "USE_MEDIKIT", "Use Medical Kit", "MainActor::useMedikit", nullptr, "m", nullptr },
 	{ ACTION_USE_ENERGYCUBE, "USE_ENERGYCUBE", "Use Energy Cube", "MainActor::useEnergyCube", nullptr, "e", nullptr },
 	{ ACTION_DETONATE_BOMB, "DETONATE_BOMB", "Detonate Bomb", "MainActor::detonateBomb", nullptr, "b", nullptr },
 	// TODO: The same key should be "use datalink" in no regret.
 	{ ACTION_DROP_WEAPON, "DROP_WEAPON", "Drop Weapon", "MainActor::dropWeapon", nullptr, "C+d", nullptr },
-	{ ACTION_SELECT_ITEMS, "SELECT_ITEM", "Select Item", "ItemSelectionProcess::startSelection", nullptr, "s", nullptr },
-	{ ACTION_USE_SELECTION, "USE_SELECTION", "Use Selection", "ItemSelectionProcess::useSelectedItem", nullptr, "RETURN", nullptr },
+	{ ACTION_SELECT_ITEMS, "SELECT_ITEM", "Select Item", "ItemSelectionProcess::startSelection", nullptr, "s", "KP_PLUS" },
+	{ ACTION_USE_SELECTION, "USE_SELECTION", "Use Selection", "ItemSelectionProcess::useSelectedItem", nullptr, "RETURN", "KP_ENTER" },
 	{ ACTION_GRAB_ITEMS, "GRAB_ITEM", "Grab Items", "ItemSelectionProcess::grabItems", nullptr, "g", nullptr },
-	{ ACTION_ATTACK, "ATTACK", "Attack", "AvatarMoverProcess::startAttack", "AvatarMoverProcess::stopAttack", "SPACE", nullptr },
+	{ ACTION_ATTACK, "ATTACK", "Attack", "AvatarMoverProcess::startAttack", "AvatarMoverProcess::stopAttack", "SPACE", "KP0" },
 	{ ACTION_CAMERA_AVATAR, "CAMERA_AVATAR", "Focus Camera on Silencer", "CameraProcess::moveToAvatar", nullptr, "z", nullptr },
 	{ ACTION_JUMP, "JUMP", "Jump / Roll / Crouch", "AvatarMoverProcess::startJump", "AvatarMoverProcess::stopJump", "LCTRL", nullptr },
+	// TODO: MOVE_STEP should also be mapped to KP_DIVIDE?? Actually original key was advance, slightly different
 	{ ACTION_MOVE_STEP, "MOVE_STEP", "Side Step / Advance / Retreat", "AvatarMoverProcess::startMoveStep", "AvatarMoverProcess::stopMoveStep", "LALT", "JOY_RIGHT_SHOULDER" },
 	{ ACTION_NONE, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr }
 };
@@ -147,10 +148,10 @@ Common::KeymapArray MetaEngine::initKeymaps(const Common::String &gameId) {
 	for (const KeybindingRecord *r = COMMON_KEYS; r->_id; ++r) {
 		act = new Common::Action(r->_id, _(r->_desc));
 		act->setCustomEngineActionEvent(r->_action);
-		if (r->_key)
-			act->addDefaultInputMapping(r->_key);
-		if (r->_joy)
-			act->addDefaultInputMapping(r->_joy);
+		if (r->_input1)
+			act->addDefaultInputMapping(r->_input1);
+		if (r->_input2)
+			act->addDefaultInputMapping(r->_input2);
 		keyMap->addAction(act);
 	}
 
@@ -159,10 +160,10 @@ Common::KeymapArray MetaEngine::initKeymaps(const Common::String &gameId) {
 	for (const KeybindingRecord *r = game_keys; r->_id; ++r) {
 		act = new Common::Action(r->_id, _(r->_desc));
 		act->setCustomEngineActionEvent(r->_action);
-		if (r->_key)
-			act->addDefaultInputMapping(r->_key);
-		if (r->_joy)
-			act->addDefaultInputMapping(r->_joy);
+		if (r->_input1)
+			act->addDefaultInputMapping(r->_input1);
+		if (r->_input2)
+			act->addDefaultInputMapping(r->_input2);
 		keyMap->addAction(act);
 	}
 
@@ -174,10 +175,10 @@ Common::KeymapArray MetaEngine::initKeymaps(const Common::String &gameId) {
 	for (const KeybindingRecord *r = CHEAT_KEYS; r->_id; ++r) {
 		act = new Common::Action(r->_id, _(r->_desc));
 		act->setCustomEngineActionEvent(r->_action);
-		if (r->_key)
-			act->addDefaultInputMapping(r->_key);
-		if (r->_joy)
-			act->addDefaultInputMapping(r->_joy);
+		if (r->_input1)
+			act->addDefaultInputMapping(r->_input1);
+		if (r->_input2)
+			act->addDefaultInputMapping(r->_input2);
 		keyMap->addAction(act);
 	}
 
@@ -189,10 +190,10 @@ Common::KeymapArray MetaEngine::initKeymaps(const Common::String &gameId) {
 	for (const KeybindingRecord *r = DEBUG_KEYS; r->_id; ++r) {
 		act = new Common::Action(r->_id, _(r->_desc));
 		act->setCustomEngineActionEvent(r->_action);
-		if (r->_key)
-			act->addDefaultInputMapping(r->_key);
-		if (r->_joy)
-			act->addDefaultInputMapping(r->_joy);
+		if (r->_input1)
+			act->addDefaultInputMapping(r->_input1);
+		if (r->_input2)
+			act->addDefaultInputMapping(r->_input2);
 		keyMap->addAction(act);
 	}
 #endif




More information about the Scummvm-git-logs mailing list