Buggy code:
private ITimer timer ; private ITimer switchTimer ; private IMasterPanelFromMasterPresenter masterPanel ; private ActionRunner dialogActionRunner ; private ActionRunner doCommandActionRunner ; private ActionRunner onEveryFrameActionRunner ; private BoundaryCalculator boundaryCalculator ; private Integer [ ] theListOfIndexesToInsertAt ; private String lastSceneAsString ; private String switchDestination ; private boolean isSayNonIncremementing ; private short boundaryCrossObject ; private MasterProxyForActions proxyForActions ; private Map < String , ISound > mapOfSounds ; private boolean isAutoplayCancelled ; public MasterPresenter ( final IHostingPanel panel , EventBus bus , IHostFromMasterPresenter host ) { } private void clearListOfIntegersToInsertAt ( ) { } public void setCallbacks ( IGameScene callbacks ) { } public MasterPresenter getHeaderPanel ( ) { } @ Override public boolean addImageForAnInventoryItem ( LoadHandler lh , String itid , int icode , IPackagedImage imageResource ) { } @ Override public boolean addImageForASceneObject ( LoadHandler lh , int numberPrefix , int x , int y , int w , int h , String otid , String atid , short ocode , String objPlusAnimCode , IPackagedImage imageResource ) { } public int getIndexToInsertAt ( int numberPrefix ) { } void updateTheListOfIndexesToInsertAt ( int numberPrefix ) { } public void executeActionWithDialogActionRunner ( BaseAction a ) { } public void executeActionWithDoCommandActionRunner ( BaseAction a ) { } public void executeActionWithOnEveryFrameActionRunner ( BaseAction a ) { } public void skip ( ) { } public void setInitialAnimationsAsCurrent ( ) { } public void callOnPreEntry ( ) { } @ Override public void onTimer ( ) { } public void loadInventoryFromAPI ( ) { } public void saveInventoryToAPI ( ) { } public void setValue ( Object key , int value ) { } @ Override public int getValue ( Object key ) { } public boolean isTrue ( Object key ) { } @ Override public void switchToSceneFromAction ( String scene ) { } @ Override public void switchToScene ( String scene ) { } public String getLastScene ( ) { } public boolean isInDebugMode ( ) { } public void startCallingOnEveryFrame ( ) { } public void cancelOnEveryFrameTimer ( ) { } public IGameScene getCurrentScene ( ) { } @ Override public void saySpeechAndThenExecuteBranchWithBranchId ( int branchId ) { } public void callOnEnterScene ( ) { } public IMasterPanelFromMasterPresenter getMasterPanel ( ) { } void setCameraToZero ( ) { } @ Override public void startScene ( ) { } public void addEssential ( ILoad blah ) { } public void kickStartLoading ( ) { } @ Override public void setScenePixelSize ( int width , int height ) { } void clearMapOfSounds ( ) { } public void setScene ( IGameScene scene ) { } @ Override public void restartReloading ( ) { } @ Override public void mergeWithScene ( LoadedLoad s ) { } GuiStateEnum getStateIfEntering ( IMasterPanelFromMasterPresenter . GuiStateEnum state ) { } GuiStateEnum getStateIfExiting ( IMasterPanelFromMasterPresenter . GuiStateEnum state ) { } public void displayTitleCard ( String text ) { } @ Override public void incrementProgress ( ) { } @ Override public IFactory getFactory ( ) { } SentenceItem getSIOfObject ( int code ) { } SentenceItem getSIOfVerb ( int vcode ) { } void linkUpperMostActionOfAToB ( BaseAction a , BaseAction b ) { } BaseAction replaceDialogChainToActionWithOnDialogTreeChain ( BaseAction b ) { } BaseAction replaceDoDialogActionWithOnDialogTreeChain ( BaseAction a ) { } @ Override public void doCommand ( int verbAsCode , int verbAsVerbEnumeration , SentenceItem sentenceA , SentenceItem sentenceB , double x , double y ) { } void ProcessAutoplayCommand ( int id ) { } void cancelAutoplay ( ) { } @ Override public void actionFinished ( int id ) { } @ Override public void setInventoryImageSize ( int width , int height ) { } @ Override public void onClickVerbsOrInventory ( ) { } @ Override public void onMouseOverVerbsOrInventory ( String displayName , String textualId , int icode ) { } @ Override public void onPropertyChange ( PropertyChangeEvent inventoryEvent ) { } public IGameScene getSceneByName ( String string ) { } @ Override public boolean isCommandLineActive ( ) { } public void clearAllLoadedLoads ( ) { } public void setActiveGuiState ( GuiStateEnum state ) { } public ChainRootAction createChainRootAction ( ) { } public DialogChainRootAction createDialogChainRootAction ( ) { } public void executeChainedAction ( ChainableAction ba ) { } @ Override public void enableClickToContinue ( ) { } public void setIsSayAlwaysWithoutIncremementing ( boolean isSayWithoutIncremementing ) { } public boolean getIsSayAlwaysWithoutIncremementing ( ) { } public void setContinueAfterLoad ( boolean isIgnore ) { } public void addBoundaryGate ( double tlx , double tly , double brx , double bry , Object sceneToSwitchTo ) { <START_BUG> boundaryCalculator . addBoundaryGate ( sceneToSwitchTo . toString ( ) , new PointF ( tlx , tly ) , new PointF ( brx , bry ) ) ; <END_BUG> } public void addBoundaryPoint ( double x , double y ) { } public void setBoundaryCrossObject ( short boundaryCrossObject ) { } short getBoundaryCrossObject ( ) { } @ Override public boolean isInANoGoZone ( PointF tp ) { } @ Override public boolean fireOnMovementBeyondAGateIfRelevant ( PointF tp ) { } @ Override public void shareWinning ( String token ) { } public void log ( String type , String content ) { } @ Override public void setValue ( String name , int value ) { } @ Override public IDialogTreePanelFromDialogTreePresenter createDialogTreePanel ( EventBus bus , ColorEnum fore , ColorEnum back , ColorEnum rollover ) { } public ScenePresenter getScenePresenter ( ) { } public CommandLinePresenter getCommandLinePresenter ( ) { } public VerbsPresenter getVerbsPresenter ( ) { } public InventoryPresenter getInventoryPresenter ( ) { } DialogTreePresenter getDialogTreePresenter ( ) { } TitleCardPresenter getTitleCardPresenter ( ) { } LoaderPresenter getLoaderPresenter ( ) { } @ Override public double getPopupDisplayDuration ( ) { } @ Override public boolean isSayNonIncrementing ( ) { } @ Override public void playSoundByStid ( String stid ) { } @ Override public double getSoundDurationByStid ( String stid ) { } @ Override public boolean addMP3ForASoundObject ( String name , String location ) { } @ Override public void stopSoundByStid ( String stid ) { } }

Fix:
boundaryCalculator . addBoundaryGate ( sceneToSwitchTo , new PointF ( tlx , tly ) , new PointF ( brx , bry ) ) ;