aboutsummaryrefslogtreecommitdiff
path: root/engines/dm/objectman.cpp
diff options
context:
space:
mode:
authorBendegúz Nagy2016-06-28 20:17:38 +0200
committerBendegúz Nagy2016-08-26 23:02:22 +0200
commitae6f2d711ccf3a2351be2d98da07ed2daf95c017 (patch)
treea8a01981d6b3a29708cb79fd6cd7cf10e9c8b4b9 /engines/dm/objectman.cpp
parent3442019d941adb0f8f6f4bf7957e881daed32a41 (diff)
downloadscummvm-rg350-ae6f2d711ccf3a2351be2d98da07ed2daf95c017.tar.gz
scummvm-rg350-ae6f2d711ccf3a2351be2d98da07ed2daf95c017.tar.bz2
scummvm-rg350-ae6f2d711ccf3a2351be2d98da07ed2daf95c017.zip
DM: Add F0034_OBJECT_DrawLeaderHandObjectName
Diffstat (limited to 'engines/dm/objectman.cpp')
-rw-r--r--engines/dm/objectman.cpp19
1 files changed, 18 insertions, 1 deletions
diff --git a/engines/dm/objectman.cpp b/engines/dm/objectman.cpp
index c83c16c9f6..0f04fb4c96 100644
--- a/engines/dm/objectman.cpp
+++ b/engines/dm/objectman.cpp
@@ -27,6 +27,7 @@
#include "objectman.h"
#include "dungeonman.h"
+#include "text.h"
namespace DM {
@@ -229,5 +230,21 @@ void ObjectMan::drawIconInSlotBox(uint16 slotBoxIndex, int16 iconIndex) {
box, kColorNoTransparency, gDefultViewPort);
}
}
-
+
+#define kObjectNameMaximumLength 14 // @ C014_OBJECT_NAME_MAXIMUM_LENGTH
+
+void ObjectMan::drawLeaderObjectName(Thing thing) {
+ IconIndice iconIndex = getIconIndex(thing);
+ char *objName;
+ char objectNameBuffer[16];
+ if (iconIndex == kIconIndiceJunkChampionBones) {
+ Junk *junk = (Junk*)_vm->_dungeonMan->getThingData(thing);
+ strcpy(objectNameBuffer, _vm->_championMan->_champions[junk->getChargeCount()]._name);
+ strcat(objectNameBuffer, _objectNames[iconIndex]);
+ objName = objectNameBuffer;
+ } else {
+ objName = _objectNames[iconIndex];
+ }
+ _vm->_textMan->printWithTrailingSpacesToScreen(233, 37, kColorCyan, kColorBlack, objName, kObjectNameMaximumLength);
+}
}