It depends on the context. It could mean two things. The most likely is:-
... a Ninja (which is) dancing
In that case, dancing is a participle and so an adjective, qualifying the noun Ninja.
But, however improbably, it could also mean
a Ninja for dancing
That is, our Ninja might be a strange sort of dancing instructor. Unlikely, of course but grammatically possible. And in that case dancing would function as a noun (a so-called gerund), by analogy with ‘cricket bat’, where ‘cricket’ is strictly a noun, but is serving a bit like an adjective.
Nevertheless, despite this grammatical hall of mirrors, ‘dancing’ in your phrase is in all probability an adjective. Had you supplied a fuller context, we could be certain.