Yea I feel dumb, already got it:
Code:
MemoryAccess *memory = [[Controller sharedInstance] wowMemoryAccess];
int32_t totalNodes = [memory readInt:0x12C06CC]; // 14354: lua_NumTaxiNodes
int32_t tablePtr = [memory readInt:0x12C06C4]; // 14354: lua_TaxiNodeName
if ( totalNodes > 0 && tablePtr > 0 ){
int i = 0;
for ( ; i < totalNodes; i++ ){
UInt32 ptr = [memory readUInt:(0x30 * i) + tablePtr];
UInt32 stringPtr = [memory readUInt:ptr + 0x14];
NSString *location = [memory readString:stringPtr withLen:0x100];
log(LOG_DEV, @"%d: 0x%X %@", i + 1, stringPtr, location); // this id number (i+1) corresponds to the TaxiButton number
}
}
What is strange, is I don't think 0x12C06C4 is actually a DBC, even though it looks like one. (I got the offset from TaxiNodeName)