Most superhero movies have the same actor play the hero whether they’re in their costume or not, since turning Bruce Wayne into Batman or Clark Kent into Superman simply requires putting on a mask or taking off a pair of glasses, but a fun twist of DC’s Shazam is that he’s a completely different person when he’s not a superhero. Specifically, he’s a relatively wimpy/goofy kid named Billy Batson who doesn’t have a billion dollars or a steady job at a major metropolitan newspaper. Zachary Levi has already been cast as Shazam in the upcoming Shazam! movie, and now New Line and DC have found an actor to play the kid who turns into him.
According to Variety, Andi Mack’s Asher Angel will play Billy Batson, and though we don’t know any specifics about the plot, it seems safe to assume that he’ll be a normal boy who occasionally finds himself in dangerous situations that require an adult superhero. From there, he’ll shout the magic word—”Shazam!”—and he’ll transform into the muscle-bound, square-jawed hero appropriately played by Zachary Levi. Iconic Shazam villain Black Adam probably won’t appear in this movie, as Dwayne Johnson is currently set to play him in a solo movie, but Mark Strong is in talks to play a different villain in the Shazam! movie.
Also, for those who are vaguely familiar with comic book nonsense but are still slightly out of touch, Shazam is the hero who used to be known as Captain Marvel long before Marvel Comics came along and created a totally unrelated character who was also named Captain Marvel. Shazam was actually the name of a wizard who gave Billy Batson his powers, but also the name is an anagram for the names of various ancient gods and historical figures. Most of that probably isn’t important for the Shazam! movie, but maybe this will come up on Jeopardy! some day.