Buggy code:
protected JButton miniBtn ; protected JButton levelBtn1 ; protected JButton levelBtn2 ; protected JButton levelBtn3 ; protected JButton levelBtn4 ; protected JLabel star1 ; protected JLabel star2 ; protected JLabel star3 ; public LevelSelectorView ( SixesWildWindow application , World world ) throws FontFormatException , FileNotFoundException , IOException { } public void initialize ( ) throws FontFormatException , FileNotFoundException , IOException { } private void initializeController ( ) { } private void initializeModel ( ) { } private void initializeView ( ) throws FontFormatException , FileNotFoundException , IOException { setPreferredSize ( new Dimension ( 1000 , 708 ) ) ; this . setLayout ( null ) ; JLabel titleLable = new JLabel ( "Please<seq2seq4repair_space>Select<seq2seq4repair_space>a<seq2seq4repair_space>Level" ) ; Font f45 = Font . createFont ( Font . TRUETYPE_FONT , new FileInputStream ( new File ( "resources//avenir-next-regular.ttf" ) ) ) . deriveFont ( Font . PLAIN , 45 ) ; titleLable . setFont ( f45 ) ; titleLable . setBounds ( 286 , 162 , 435 , 61 ) ; titleLable . setForeground ( Color . decode ( "#D76262" ) ) ; this . add ( titleLable ) ; backBtn = new BetterButton ( Color . decode ( "#EC7665" ) , 65 , 40 , 10 ) ; backBtn . setBorderPainted ( false ) ; backBtn . setFocusPainted ( false ) ; Icon backIcon = new ImageIcon ( "resources//backIcon.png" ) ; backBtn . setIcon ( backIcon ) ; backBtn . setBounds ( 30 , 20 , 65 , 40 ) ; this . add ( backBtn ) ; Font f22 = Font . createFont ( Font . TRUETYPE_FONT , new FileInputStream ( new File ( "resources//avenir-next-regular.ttf" ) ) ) . deriveFont ( Font . PLAIN , 22 ) ; puzzleBtn = new BetterButton ( Color . decode ( "#D76262" ) , 200 , 52 , 10 ) ; puzzleBtn . setBorderPainted ( false ) ; puzzleBtn . setFocusPainted ( false ) ; puzzleBtn . setFont ( f22 ) ; puzzleBtn . setText ( "Puzzle" ) ; puzzleBtn . setBounds ( 401 , 89 , 200 , 52 ) ; puzzleBtn . setForeground ( Color . white ) ; lightningBtn = new BetterButton ( Color . decode ( "#3D7CA2" ) , 200 , 52 , 10 ) ; lightningBtn . setBorderPainted ( false ) ; lightningBtn . setFocusPainted ( false ) ; lightningBtn . setFont ( f22 ) ; lightningBtn . setText ( "Lightning" ) ; lightningBtn . setBounds ( 401 , 89 , 200 , 52 ) ; lightningBtn . setForeground ( Color . white ) ; eliminationBtn = new BetterButton ( Color . decode ( "#65ABD5" ) , 200 , 52 , 10 ) ; eliminationBtn . setBorderPainted ( false ) ; eliminationBtn . setFocusPainted ( false ) ; eliminationBtn . setFont ( f22 ) ; eliminationBtn . setText ( "Elimination" ) ; eliminationBtn . setBounds ( 401 , 89 , 200 , 52 ) ; eliminationBtn . setForeground ( Color . white ) ; releaseBtn = new BetterButton ( Color . decode ( "#45D7B3" ) , 200 , 52 , 10 ) ; releaseBtn . setBorderPainted ( false ) ; releaseBtn . setFocusPainted ( false ) ; releaseBtn . setFont ( f22 ) ; releaseBtn . setText ( "Release" ) ; releaseBtn . setBounds ( 401 , 89 , 200 , 52 ) ; releaseBtn . setForeground ( Color . white ) ; if ( ( application . getGameType ( ) ) == 1 ) { this . add ( puzzleBtn ) ; } if ( ( application . getGameType ( ) ) == 2 ) { this . add ( lightningBtn ) ; } if ( ( application . getGameType ( ) ) == 3 ) { this . add ( releaseBtn ) ; } if ( ( application . getGameType ( ) ) == 4 ) { this . add ( eliminationBtn ) ; } Font f40 = Font . createFont ( Font . TRUETYPE_FONT , new FileInputStream ( new File ( "resources//avenir-next-regular.ttf" ) ) ) . deriveFont ( Font . PLAIN , 40 ) ; <START_BUG> levelBtn1 = new BetterButton ( Color . decode ( "#D76262" ) , 100 , 100 , 10 ) ; <END_BUG> levelBtn1 . setBorderPainted ( false ) ; levelBtn1 . setFocusPainted ( false ) ; levelBtn1 . setFont ( f40 ) ; levelBtn1 . setText ( "1" ) ; levelBtn1 . setBounds ( 355 , 245 , 100 , 100 ) ; levelBtn1 . setForeground ( Color . white ) ; this . add ( levelBtn1 ) ; levelBtn2 = new BetterButton ( Color . decode ( "#9B9B9B" ) , 100 , 100 , 10 ) ; levelBtn2 . setBorderPainted ( false ) ; levelBtn2 . setFocusPainted ( false ) ; levelBtn2 . setFont ( f40 ) ; levelBtn2 . setText ( "2" ) ; levelBtn2 . setBounds ( 545 , 247 , 100 , 100 ) ; levelBtn2 . setForeground ( Color . white ) ; this . add ( levelBtn2 ) ; levelBtn3 = new BetterButton ( Color . decode ( "#9B9B9B" ) , 100 , 100 , 10 ) ; levelBtn3 . setBorderPainted ( false ) ; levelBtn3 . setFocusPainted ( false ) ; levelBtn3 . setFont ( f40 ) ; levelBtn3 . setText ( "3" ) ; levelBtn3 . setBounds ( 355 , 445 , 100 , 100 ) ; levelBtn3 . setForeground ( Color . white ) ; this . add ( levelBtn3 ) ; levelBtn4 = new BetterButton ( Color . decode ( "#9B9B9B" ) , 100 , 100 , 10 ) ; levelBtn4 . setBorderPainted ( false ) ; levelBtn4 . setFocusPainted ( false ) ; levelBtn4 . setFont ( f40 ) ; levelBtn4 . setText ( "4" ) ; levelBtn4 . setBounds ( 545 , 447 , 100 , 100 ) ; levelBtn4 . setForeground ( Color . white ) ; this . add ( levelBtn4 ) ; Icon yellowStarIcon = new ImageIcon ( "resources//YellowStar.png" ) ; Icon greyStarIcon = new ImageIcon ( "resources//GreyStar.png" ) ;

Fix:
levelBtn1 = new BetterButton ( application . getGameTypeColor ( ) , 100 , 100 , 10 ) ;