I can accept Hannibal be white, since it's a phoenician colony. Maybe not European white, but white as a Middle East person.
Not White. Not Black. The same racial appearance as I talked about for Rameses, which is neither, "White," nor, "Black," (nor, "Yellow," - it si possible).
But despite Hannibal's color of skin, he is an indigenous African person
This is a contrived statement that doesn't realy mean anything, especially not in the days of the Carthiginians. "Africa," had yet to be even used geographically in a contempory way for the first time in Hannibal's day - and wouldn't be for decades later, when it was first used, in history, as the name of a Roman Province occupying most of Northern Algeria and Morocco, to the west of (but not including) Carthogo Nova, the cities the Romas built on the ruins of Carthage. And, for several centuries thereafter, that Province WAS Africa, definitively, in all references, and even when the Vandals conquered the area, they still used the Roman Provincial term, "Africa," and the Byzantines, when they conquered the region, called it the Exarchate of Africa, and the short-lived, early Medieval Norman Kingdom of Africa in the region did, too. It would not be until the Colonial Age that the term would apply to the whole continent.
Also, you're mixing of racial/cultural Africans and geographical Africans is a sloppy terminology. And, besides, as I've said, it doesn't matter what continent someone is from in terms of some more or less of an inherent right to be represented in a Civ game, by some contrivance or counter-productive things like continental quotas and caps, which leads to toxic and presumptuous terminology like, "stolen slots." As I've said, things need to be more wholistic.