Skip to content

Commit

Permalink
TITANIC: Convert many static_casts to dynamic_cast
Browse files Browse the repository at this point in the history
  • Loading branch information
dreammaster committed Sep 1, 2016
1 parent ac740c8 commit 33737ea
Show file tree
Hide file tree
Showing 31 changed files with 86 additions and 86 deletions.
4 changes: 2 additions & 2 deletions engines/titanic/carry/arm.cpp
Expand Up @@ -163,7 +163,7 @@ bool CArm::MaitreDHappyMsg(CMaitreDHappyMsg *msg) {
if (!_field158)
playSound("z#47.wav", 100, 0, 0);
if (_string6 == "Key" || _string6 == "AuditoryCentre") {
CGameObject *child = static_cast<CGameObject *>(getFirstChild());
CGameObject *child = dynamic_cast<CGameObject *>(getFirstChild());
if (child) {
child->setVisible(true);
petAddToInventory();
Expand All @@ -184,7 +184,7 @@ bool CArm::MaitreDHappyMsg(CMaitreDHappyMsg *msg) {
bool CArm::PETGainedObjectMsg(CPETGainedObjectMsg *msg) {
if (_field158) {
if (_string6 == "Key" || _string6 == "AuditoryCentre") {
CCarry *child = static_cast<CCarry *>(getFirstChild());
CCarry *child = dynamic_cast<CCarry *>(getFirstChild());
if (child) {
_visibleFrame = _field170;
loadFrame(_visibleFrame);
Expand Down
2 changes: 1 addition & 1 deletion engines/titanic/carry/brain.cpp
Expand Up @@ -55,7 +55,7 @@ void CBrain::load(SimpleFile *file) {
}

bool CBrain::UseWithOtherMsg(CUseWithOtherMsg *msg) {
CBrainSlot *slot = static_cast<CBrainSlot *>(msg->_other);
CBrainSlot *slot = dynamic_cast<CBrainSlot *>(msg->_other);
if (slot) {
if (slot->getName() == "CentralCore") {
setVisible(false);
Expand Down
2 changes: 1 addition & 1 deletion engines/titanic/carry/bridge_piece.cpp
Expand Up @@ -52,7 +52,7 @@ void CBridgePiece::load(SimpleFile *file) {
}

bool CBridgePiece::UseWithOtherMsg(CUseWithOtherMsg *msg) {
CShipSetting *shipSetting = static_cast<CShipSetting *>(msg->_other);
CShipSetting *shipSetting = dynamic_cast<CShipSetting *>(msg->_other);
if (!shipSetting) {
return CCarry::UseWithOtherMsg(msg);
} else if (shipSetting->_itemName != "NULL") {
Expand Down
4 changes: 2 additions & 2 deletions engines/titanic/carry/carry.cpp
Expand Up @@ -127,7 +127,7 @@ bool CCarry::MouseDragEndMsg(CMouseDragEndMsg *msg) {
return true;
}

CCharacter *npc = static_cast<CCharacter *>(msg->_dropTarget);
CCharacter *npc = dynamic_cast<CCharacter *>(msg->_dropTarget);
if (npc) {
CUseWithCharMsg charMsg(npc);
charMsg.execute(this, nullptr, 0);
Expand Down Expand Up @@ -157,7 +157,7 @@ bool CCarry::MouseDragEndMsg(CMouseDragEndMsg *msg) {
}

bool CCarry::UseWithCharMsg(CUseWithCharMsg *msg) {
CSuccUBus *succubus = static_cast<CSuccUBus *>(msg->_character);
CSuccUBus *succubus = dynamic_cast<CSuccUBus *>(msg->_character);
if (succubus) {
CSubAcceptCCarryMsg carryMsg;
carryMsg._item = this;
Expand Down
12 changes: 6 additions & 6 deletions engines/titanic/carry/carry_parrot.cpp
Expand Up @@ -133,7 +133,7 @@ bool CCarryParrot::MouseDragEndMsg(CMouseDragEndMsg *msg) {
actMsg.execute("ParrotCage");
}
} else {
CCharacter *character = static_cast<CCharacter *>(msg->_dropTarget);
CCharacter *character = dynamic_cast<CCharacter *>(msg->_dropTarget);
if (character) {
CUseWithCharMsg charMsg(character);
charMsg.execute(this, nullptr, 0);
Expand Down Expand Up @@ -167,7 +167,7 @@ bool CCarryParrot::PassOnDragStartMsg(CPassOnDragStartMsg *msg) {
return CCarry::PassOnDragStartMsg(msg);
}

CTrueTalkNPC *npc = static_cast<CTrueTalkNPC *>(getRoot()->findByName(_string6));
CTrueTalkNPC *npc = dynamic_cast<CTrueTalkNPC *>(getRoot()->findByName(_string6));
if (npc)
startTalking(npc, 0x446BF);

Expand All @@ -181,15 +181,15 @@ bool CCarryParrot::PassOnDragStartMsg(CPassOnDragStartMsg *msg) {

bool CCarryParrot::PreEnterViewMsg(CPreEnterViewMsg *msg) {
loadSurface();
CCarryParrot *parrot = static_cast<CCarryParrot *>(getRoot()->findByName("CarryParrot"));
CCarryParrot *parrot = dynamic_cast<CCarryParrot *>(getRoot()->findByName("CarryParrot"));
if (parrot)
parrot->_fieldE0 = 0;

return true;
}

bool CCarryParrot::UseWithCharMsg(CUseWithCharMsg *msg) {
CSuccUBus *succubus = static_cast<CSuccUBus *>(msg->_character);
CSuccUBus *succubus = dynamic_cast<CSuccUBus *>(msg->_character);
if (succubus)
CParrot::_v4 = 3;

Expand All @@ -198,7 +198,7 @@ bool CCarryParrot::UseWithCharMsg(CUseWithCharMsg *msg) {

bool CCarryParrot::ActMsg(CActMsg *msg) {
if (msg->_action == "FreeParrot" && (CParrot::_v4 == 4 || CParrot::_v4 == 1)) {
CTrueTalkNPC *npc = static_cast<CTrueTalkNPC *>(getRoot()->findByName(_string6));
CTrueTalkNPC *npc = dynamic_cast<CTrueTalkNPC *>(getRoot()->findByName(_string6));
if (npc)
startTalking(npc, 0x446BF);

Expand All @@ -212,7 +212,7 @@ bool CCarryParrot::ActMsg(CActMsg *msg) {
playSound("z#475.wav", 100, 0, 0);

if (!_field140) {
CCarry *feathers = static_cast<CCarry *>(getRoot()->findByName("Feathers"));
CCarry *feathers = dynamic_cast<CCarry *>(getRoot()->findByName("Feathers"));
if (feathers) {
feathers->setVisible(true);
feathers->petAddToInventory();
Expand Down
4 changes: 2 additions & 2 deletions engines/titanic/carry/chicken.cpp
Expand Up @@ -80,7 +80,7 @@ bool CChicken::UseWithOtherMsg(CUseWithOtherMsg *msg) {

petAddToInventory();
} else {
CSauceDispensor *dispensor = static_cast<CSauceDispensor *>(msg->_other);
CSauceDispensor *dispensor = dynamic_cast<CSauceDispensor *>(msg->_other);
if (!dispensor || _string6 == "None") {
return CCarry::UseWithOtherMsg(msg);
} else {
Expand All @@ -94,7 +94,7 @@ bool CChicken::UseWithOtherMsg(CUseWithOtherMsg *msg) {
}

bool CChicken::UseWithCharMsg(CUseWithCharMsg *msg) {
CSuccUBus *succubus = static_cast<CSuccUBus *>(msg->_character);
CSuccUBus *succubus = dynamic_cast<CSuccUBus *>(msg->_character);
if (succubus) {
setPosition(Point(330, 300));
CSubAcceptCCarryMsg acceptMsg;
Expand Down
2 changes: 1 addition & 1 deletion engines/titanic/carry/magazine.cpp
Expand Up @@ -52,7 +52,7 @@ void CMagazine::load(SimpleFile *file) {
}

bool CMagazine::UseWithCharMsg(CUseWithCharMsg *msg) {
CDeskbot *deskbot = static_cast<CDeskbot *>(msg->_character);
CDeskbot *deskbot = dynamic_cast<CDeskbot *>(msg->_character);
if (deskbot) {
if (deskbot->_deskbotActive) {
setVisible(false);
Expand Down
2 changes: 1 addition & 1 deletion engines/titanic/carry/napkin.cpp
Expand Up @@ -43,7 +43,7 @@ void CNapkin::load(SimpleFile *file) {
}

bool CNapkin::UseWithOtherMsg(CUseWithOtherMsg *msg) {
CChicken *chicken = static_cast<CChicken *>(msg->_other);
CChicken *chicken = dynamic_cast<CChicken *>(msg->_other);
if (chicken) {
if (chicken->_string6 == "None" || chicken->_field12C) {
CActMsg actMsg("Clean");
Expand Down
2 changes: 1 addition & 1 deletion engines/titanic/carry/phonograph_cylinder.cpp
Expand Up @@ -102,7 +102,7 @@ void CPhonographCylinder::load(SimpleFile *file) {
}

bool CPhonographCylinder::UseWithOtherMsg(CUseWithOtherMsg *msg) {
CPhonograph *phonograph = static_cast<CPhonograph *>(msg->_other);
CPhonograph *phonograph = dynamic_cast<CPhonograph *>(msg->_other);
if (phonograph) {
CSetVarMsg varMsg("m_RecordStatus", 1);
return true;
Expand Down
28 changes: 14 additions & 14 deletions engines/titanic/core/game_object.cpp
Expand Up @@ -871,15 +871,15 @@ CViewItem *CGameObject::parseView(const CString &viewString) {
return nullptr;

// Find the designated node within the room
CNodeItem *node = static_cast<CNodeItem *>(room->findChildInstanceOf(CNodeItem::_type));
CNodeItem *node = dynamic_cast<CNodeItem *>(room->findChildInstanceOf(CNodeItem::_type));
while (node && node->getName() != nodeName)
node = static_cast<CNodeItem *>(room->findNextInstanceOf(CNodeItem::_type, node));
node = dynamic_cast<CNodeItem *>(room->findNextInstanceOf(CNodeItem::_type, node));
if (!node)
return nullptr;

CViewItem *view = static_cast<CViewItem *>(node->findChildInstanceOf(CViewItem::_type));
CViewItem *view = dynamic_cast<CViewItem *>(node->findChildInstanceOf(CViewItem::_type));
while (view && view->getName() != viewName)
view = static_cast<CViewItem *>(node->findNextInstanceOf(CViewItem::_type, view));
view = dynamic_cast<CViewItem *>(node->findNextInstanceOf(CViewItem::_type, view));
if (!view)
return nullptr;

Expand Down Expand Up @@ -964,12 +964,12 @@ CGameObject *CGameObject::getNextMail(CGameObject *prior) {
}

CGameObject *CGameObject::findRoomObject(const CString &name) const {
return static_cast<CGameObject *>(findRoom()->findByName(name));
return dynamic_cast<CGameObject *>(findRoom()->findByName(name));
}

CGameObject *CGameObject::findInRoom(const CString &name) {
CRoomItem *room = getRoom();
return room ? static_cast<CGameObject *>(room->findByName(name)) : nullptr;
return room ? dynamic_cast<CGameObject *>(room->findByName(name)) : nullptr;
}

Found CGameObject::find(const CString &name, CGameObject **item, int findAreas) {
Expand All @@ -996,7 +996,7 @@ Found CGameObject::find(const CString &name, CGameObject **item, int findAreas)
}

if (findAreas & FIND_GLOBAL) {
go = static_cast<CGameObject *>(getRoot()->findByName(name));
go = dynamic_cast<CGameObject *>(getRoot()->findByName(name));
if (go) {
*item = go;
return FOUND_GLOBAL;
Expand Down Expand Up @@ -1227,7 +1227,7 @@ void CGameObject::dragMove(const Point &pt) {

CGameObject *CGameObject::getDraggingObject() const {
CTreeItem *item = getGameManager()->_dragItem;
return static_cast<CGameObject *>(item);
return dynamic_cast<CGameObject *>(item);
}

Point CGameObject::getControid() const {
Expand Down Expand Up @@ -1255,7 +1255,7 @@ CDontSaveFileItem *CGameObject::getDontSave() const {
}

CPetControl *CGameObject::getPetControl() const {
return static_cast<CPetControl *>(getDontSaveChild(CPetControl::_type));
return dynamic_cast<CPetControl *>(getDontSaveChild(CPetControl::_type));
}

CMailMan *CGameObject::getMailMan() const {
Expand Down Expand Up @@ -1294,7 +1294,7 @@ CRoomItem *CGameObject::locateRoom(const CString &name) const {

CGameObject *CGameObject::getHiddenObject(const CString &name) const {
CRoomItem *room = getHiddenRoom();
return room ? static_cast<CGameObject *>(findUnder(room, name)) : nullptr;
return room ? dynamic_cast<CGameObject *>(findUnder(room, name)) : nullptr;
}

CTreeItem *CGameObject::findUnder(CTreeItem *parent, const CString &name) const {
Expand Down Expand Up @@ -1506,7 +1506,7 @@ CTreeItem *CGameObject::petContainerRemove(CGameObject *obj) {
if (!obj->compareRoomNameTo("CarryParcel"))
return obj;

CGameObject *item = static_cast<CGameObject *>(pet->getLastChild());
CGameObject *item = dynamic_cast<CGameObject *>(pet->getLastChild());
if (item)
item->detach();

Expand Down Expand Up @@ -1601,11 +1601,11 @@ void CGameObject::petUnlockInput() {
/*------------------------------------------------------------------------*/

CStarControl *CGameObject::getStarControl() const {
CStarControl *starControl = static_cast<CStarControl *>(getDontSaveChild(CStarControl::_type));
CStarControl *starControl = dynamic_cast<CStarControl *>(getDontSaveChild(CStarControl::_type));
if (!starControl) {
CViewItem *view = getGameManager()->getView();
if (view)
starControl = static_cast<CStarControl *>(view->findChildInstanceOf(CStarControl::_type));
starControl = dynamic_cast<CStarControl *>(view->findChildInstanceOf(CStarControl::_type));
}

return starControl;
Expand All @@ -1625,7 +1625,7 @@ bool CGameObject::starFn2() {
/*------------------------------------------------------------------------*/

void CGameObject::startTalking(const CString &npcName, uint id, CViewItem *view) {
CTrueTalkNPC *npc = static_cast<CTrueTalkNPC *>(getRoot()->findByName(npcName));
CTrueTalkNPC *npc = dynamic_cast<CTrueTalkNPC *>(getRoot()->findByName(npcName));
startTalking(npc, id, view);
}

Expand Down
4 changes: 2 additions & 2 deletions engines/titanic/core/mail_man.cpp
Expand Up @@ -37,14 +37,14 @@ void CMailMan::load(SimpleFile *file) {
}

CGameObject *CMailMan::getFirstObject() const {
return static_cast<CGameObject *>(getFirstChild());
return dynamic_cast<CGameObject *>(getFirstChild());
}

CGameObject *CMailMan::getNextObject(CGameObject *prior) const {
if (!prior || prior->getParent() != this)
return nullptr;

return static_cast<CGameObject *>(prior->getNextSibling());
return dynamic_cast<CGameObject *>(prior->getNextSibling());
}

void CMailMan::addMail(CGameObject *obj, int id) {
Expand Down
2 changes: 1 addition & 1 deletion engines/titanic/core/project_item.cpp
Expand Up @@ -85,7 +85,7 @@ void CProjectItem::buildFilesList() {
CTreeItem *treeItem = getFirstChild();
while (treeItem) {
if (treeItem->isFileItem()) {
CString name = static_cast<CFileItem *>(treeItem)->getFilename();
CString name = dynamic_cast<CFileItem *>(treeItem)->getFilename();
_files.add()->_name = name;
}

Expand Down
2 changes: 1 addition & 1 deletion engines/titanic/core/view_item.cpp
Expand Up @@ -169,7 +169,7 @@ void CViewItem::enterView(CViewItem *newView) {
CLinkItem *CViewItem::findLink(CViewItem *newView) {
for (CTreeItem *treeItem = getFirstChild(); treeItem;
treeItem = scan(treeItem)) {
CLinkItem *link = static_cast<CLinkItem *>(treeItem);
CLinkItem *link = dynamic_cast<CLinkItem *>(treeItem);
if (link && link->connectsTo(newView))
return link;
}
Expand Down
2 changes: 1 addition & 1 deletion engines/titanic/debugger.cpp
Expand Up @@ -231,7 +231,7 @@ bool Debugger::cmdItem(int argc, const char **argv) {
}

// Get the item
CCarry *item = static_cast<CCarry *>(
CCarry *item = dynamic_cast<CCarry *>(
g_vm->_window->_project->findByName(argv[1]));
assert(item);

Expand Down
8 changes: 4 additions & 4 deletions engines/titanic/game/maitred/maitred_prod_receptor.cpp
Expand Up @@ -51,7 +51,7 @@ void CMaitreDProdReceptor::load(SimpleFile *file) {
}

bool CMaitreDProdReceptor::MouseButtonDownMsg(CMouseButtonDownMsg *msg) {
if (_fieldBC == 2 && static_cast<CGameObject *>(getParent())->hasActiveMovie()) {
if (_fieldBC == 2 && dynamic_cast<CGameObject *>(getParent())->hasActiveMovie()) {
return false;
} else {
CProdMaitreDMsg prodMsg(126);
Expand All @@ -61,7 +61,7 @@ bool CMaitreDProdReceptor::MouseButtonDownMsg(CMouseButtonDownMsg *msg) {
}

bool CMaitreDProdReceptor::MouseMoveMsg(CMouseMoveMsg *msg) {
if (_fieldBC == 2 && static_cast<CGameObject *>(getParent())->hasActiveMovie())
if (_fieldBC == 2 && dynamic_cast<CGameObject *>(getParent())->hasActiveMovie())
return false;
else if (++_counter < 20)
return true;
Expand All @@ -80,7 +80,7 @@ bool CMaitreDProdReceptor::MouseMoveMsg(CMouseMoveMsg *msg) {
else if (isEquals("Perch"))
prodMsg._value = 125;

CMaitreD *maitreD = static_cast<CMaitreD *>(findRoomObject("MaitreD"));
CMaitreD *maitreD = dynamic_cast<CMaitreD *>(findRoomObject("MaitreD"));
if (maitreD->_field100 <= 0)
prodMsg.execute(this);

Expand All @@ -89,7 +89,7 @@ bool CMaitreDProdReceptor::MouseMoveMsg(CMouseMoveMsg *msg) {

bool CMaitreDProdReceptor::ProdMaitreDMsg(CProdMaitreDMsg *msg) {
if (_fieldC4) {
CMaitreD *maitreD = static_cast<CMaitreD *>(findRoomObject("MaitreD"));
CMaitreD *maitreD = dynamic_cast<CMaitreD *>(findRoomObject("MaitreD"));
if (maitreD->_field100 <= 0) {
CViewItem *view = findView();
startTalking(maitreD, msg->_value, view);
Expand Down
4 changes: 2 additions & 2 deletions engines/titanic/game/sauce_dispensor.cpp
Expand Up @@ -69,7 +69,7 @@ bool CSauceDispensor::Use(CUse *msg) {
CVisibleMsg visibleMsg(true);

if (msg->_item->isEquals("Chicken")) {
CChicken *chicken = static_cast<CChicken *>(msg->_item);
CChicken *chicken = dynamic_cast<CChicken *>(msg->_item);
_field104 = true;
if (_fieldF0) {
playSound("b#15.wav", 50);
Expand Down Expand Up @@ -98,7 +98,7 @@ bool CSauceDispensor::Use(CUse *msg) {

petDisplayMessage(1, "Sadly, this dispenser is currently empty.");
} else if (msg->_item->isEquals("BeerGlass")) {
CGlass *glass = static_cast<CGlass *>(msg->_item);
CGlass *glass = dynamic_cast<CGlass *>(msg->_item);
_field108 = true;

if (_field104 || _fieldF0) {
Expand Down
2 changes: 1 addition & 1 deletion engines/titanic/input_handler.cpp
Expand Up @@ -150,7 +150,7 @@ CGameObject *CInputHandler::dragEnd(const Point &pt, CTreeItem *dragItem) {
// Scan through the view items to find the item being dropped on
CGameObject *target = nullptr;
for (CTreeItem *treeItem = view->scan(view); treeItem; treeItem = treeItem->scan(view)) {
CGameObject *gameObject = static_cast<CGameObject *>(treeItem);
CGameObject *gameObject = dynamic_cast<CGameObject *>(treeItem);
if (gameObject && gameObject != dragItem) {
if (gameObject->checkPoint(pt))
target = gameObject;
Expand Down
2 changes: 1 addition & 1 deletion engines/titanic/npcs/parrot.cpp
Expand Up @@ -386,7 +386,7 @@ bool CParrot::MouseDragStartMsg(CMouseDragStartMsg *msg) {
startTalking(this, 280129);
performAction(true);

CCarry *item = static_cast<CCarry *>(getRoot()->findByName(_string2));
CCarry *item = dynamic_cast<CCarry *>(getRoot()->findByName(_string2));
if (item) {
item->_fieldE0 = 1;
CPassOnDragStartMsg passMsg;
Expand Down

0 comments on commit 33737ea

Please sign in to comment.