If we let one leg be real-valued and the other leg equal $bi$ then the Pythagorean Theorem changes to $a^2-b^2=c^2$ which results in some kooky numbers.
For what reason does this not make sense? Does the Theorem only work on real numbers? Why not imaginary?
The Pythagorean Theorem is specific to right triangles in Euclidean space, which have nonnegative real lengths. It is properly generalized by considering inner product spaces, which are vector spaces $V$ equipped with a function $\langle \cdot,\cdot \rangle:V\to \mathbb R$ (or $\mathbb C$) satisfying certain axioms. This allows us to define a right triangle as a triple of points $(\vec a,\vec b,\vec c)$ such that $\langle \vec b-\vec a,\vec c-\vec a\rangle=0$, which can be seen as saying the sides $\vec b-\vec a$ and $\vec c-\vec a$ are orthogonal. It also gives us a notion of length, with the length of a vector $\vec v$ being $\sqrt{\langle \vec v,\vec v\rangle}$. The generalization then states that $$\langle \vec b-\vec a,\vec b-\vec a\rangle+\langle \vec c-\vec a,\vec c-\vec a\rangle=\langle \vec b-\vec c,\vec b-\vec c\rangle$$ assuming $\vec b-\vec c$ is the longest side, i.e. that the length of the side $\vec b-\vec a$ squared plus the length of the side $\vec c-\vec a$ square equals the length of the side $\vec b-\vec c$ squared. This is very different from the generalization you gave.