Code:
SomeArray = [];

SomeArray["Player"] = {WalkSpeed:4, JumpHeight:8};

SomeArray["Enemy"] = {WalkSpeed:3, JumpHeight:12};

// this.will trace 4

pointer = SomeArray["Enemy"];

trace(SomeArray["Player"].WalkSpeed);
trace(pointer.WalkSpeed);
stop();
This worked ok for me (MX). The second trace returns 3.
It might be that (in a later version) "pointer" is reserved as a functions or something. maybe try another word like MyPointer.