merge avec max + generification du weapon et des bullet. le player herite maintenant de BasicPlayerWeapon, BasicWeapon est une classe abstraite