ppDisplayableObjects - это массив или базовые указатели, не так ли?
так попробуй это?
const ThreeDCubePlayer* const cubePlayer = m_ppDisplayableObjects[0];
char mapEntry = GetMapEntry( cubePlayer->GetMapX(), cubePlayer->GetMapY() );
GetMapX и т. Д. Должны возвращать (без знака) int? а не указатель на int? (нет негры? так без знака?)
Я бы хотел прокомментировать все остальные комментарии о кастинге, это признак того, что ваша иерархия работает не совсем корректно, но ... но если вам нужно кастовать, подумайте, какой кастинг C ++ вам понадобится использовать это полезное упражнение, это также означает, что когда вы хотите пересмотреть / укоротить свой код, все броски легче найти и удалить
ps - собери свою константу, где ты можешь
и добавьте массивы и т. д. в некоторый класс владельца, возможно, в одиночный, если вы знаете, что у вас есть только один
также ИМХО ... (извините) напишите себе класс Coords, чтобы вы могли делать такие вещи, как GetMapEntry (const Coords & координаты), вместо того, чтобы получать значения x и y по отдельности, это спасет вас от замены их на неправильный путь и т. д.
:)