I want players to unlock achievements/abilities according to which weapon they using. Is there a better way to do this that giving each weapon class its own "skill tree"?

I want players to unlock achievements/abilities according to which weapon they using. Is there a better way to do this that giving each weapon class its own “skill tree”?

Have a separate actor that manages achievements and feed it weapons’ data. Once a threshold has been reached, enable the appropriate achievement. That actor can be responsible for handling a tree, a list, pop-up widgets or however else you wish to present it to the player.