Buggy code:
public Map < String , Construct > evaluate ( BindableEvent e ) throws EventException { } public boolean modifyEvent ( String key , Construct value , BindableEvent event ) { if ( event instanceof MCPlayerJoinEvent ) { MCPlayerJoinEvent pje = ( ( MCPlayerJoinEvent ) ( event ) ) ; if ( key . equals ( "join_message" ) ) { if ( value instanceof CNull ) { pje . setJoinMessage ( null ) ; return ( pje . getJoinMessage ( ) ) == null ; } else { pje . setJoinMessage ( value . val ( ) ) ; return pje . getJoinMessage ( ) . equals ( value . val ( ) ) ; } } } return false ; } public BindableEvent convert ( CArray manual ) { } } @ api public static class player_interact extends AbstractEvent { public String getName ( ) { } public String docs ( ) { } public String since ( ) { } public Driver driver ( ) { } public boolean matches ( Map < String , Construct > prefilter , BindableEvent e ) throws PrefilterNonMatchException { } public Map < String , Construct > evaluate ( BindableEvent e ) throws EventException { } @ Override public BindableEvent convert ( CArray manual ) { } public boolean modifyEvent ( String key , Construct value , BindableEvent event ) { if ( event instanceof MCPlayerInteractEvent ) { MCPlayerInteractEvent pie = ( ( MCPlayerInteractEvent ) ( event ) ) ; } return false ; } } @ api public static class player_spawn extends AbstractEvent { public String getName ( ) { } public String docs ( ) { } public Driver driver ( ) { } public String since ( ) { } public boolean matches ( Map < String , Construct > prefilter , BindableEvent e ) throws PrefilterNonMatchException { } public Map < String , Construct > evaluate ( BindableEvent e ) throws EventException { } public BindableEvent convert ( CArray manual ) { } public boolean modifyEvent ( String key , Construct value , BindableEvent event ) { if ( event instanceof MCPlayerRespawnEvent ) { MCPlayerRespawnEvent e = ( ( MCPlayerRespawnEvent ) ( event ) ) ; if ( key . equals ( "location" ) ) { e . setRespawnLocation ( ObjectGenerator . GetGenerator ( ) . location ( value , e . getPlayer ( ) . getWorld ( ) , 0 , null ) ) ; return true ; } } return false ; } public void preExecution ( Env env , ActiveEvent activeEvent ) { } public void postExecution ( Env env , ActiveEvent activeEvent ) { } } @ api public static class player_death extends AbstractEvent { public String getName ( ) { } public String docs ( ) { } public Driver driver ( ) { } public String since ( ) { } public boolean matches ( Map < String , Construct > prefilter , BindableEvent e ) throws PrefilterNonMatchException { } public Map < String , Construct > evaluate ( BindableEvent e ) throws EventException { } public BindableEvent convert ( CArray manual ) { } public boolean modifyEvent ( String key , Construct value , BindableEvent event ) { if ( event instanceof MCPlayerDeathEvent ) { MCPlayerDeathEvent e = ( ( MCPlayerDeathEvent ) ( event ) ) ; if ( key . equals ( "xp" ) ) { e . setDroppedExp ( ( ( int ) ( Static . getInt ( value ) ) ) ) ; return true ; } if ( key . equals ( "drops" ) ) { if ( value instanceof CNull ) { value = new CArray ( 0 , null ) ; } if ( ! ( value instanceof CArray ) ) { throw new ConfigRuntimeException ( "drops<seq2seq4repair_space>must<seq2seq4repair_space>be<seq2seq4repair_space>an<seq2seq4repair_space>array,<seq2seq4repair_space>or<seq2seq4repair_space>null" , ExceptionType . CastException , value . getLineNum ( ) , value . getFile ( ) ) ; } <START_BUG> e . getDrops ( ) . clear ( ) ; <END_BUG> CArray drops = ( ( CArray ) ( value ) ) ; for ( String dropID : drops . keySet ( ) ) { e . getDrops ( ) . add ( ObjectGenerator . GetGenerator ( ) . item ( drops . get ( dropID ) , 0 , null ) ) ; } return true ; } if ( ( event instanceof MCPlayerDeathEvent ) && ( key . equals ( "death_message" ) ) ) { ( ( MCPlayerDeathEvent ) ( event ) ) . setDeathMessage ( value . nval ( ) ) ; return true ; } } return false ; } } @ api public static class player_chat extends AbstractEvent { public String getName ( ) { } public String docs ( ) { } public Driver driver ( ) { } public String since ( ) { } public boolean matches ( Map < String , Construct > prefilter , BindableEvent e ) throws PrefilterNonMatchException { } public BindableEvent convert ( CArray manualObject ) { } public Map < String , Construct > evaluate ( BindableEvent e ) throws EventException { } public boolean modifyEvent ( String key , Construct value , BindableEvent event ) { if ( event instanceof MCPlayerChatEvent ) { MCPlayerChatEvent e = ( ( MCPlayerChatEvent ) ( event ) ) ; if ( "message" . equals ( key ) ) { e . setMessage ( value . nval ( ) ) ; } if ( "recipients" . equals ( key ) ) { if ( value instanceof CArray ) { List < MCPlayer > list = new ArrayList < MCPlayer > ( ) ; for ( String index : ( ( CArray ) ( value ) ) . keySet ( ) ) { Construct v = ( ( CArray ) ( value ) ) . get ( index ) ; try { list . add ( Static . GetPlayer ( v ) ) ; } catch ( ConfigRuntimeException ex ) { } } e . setRecipients ( list ) ;

Fix:
e . clearDrops ( ) ;