Not sure exactly what you are after with that button function... but... couple things wrong with it like others have pointed out:
A) its a void function - you cant return a value... ie: false.. only "return" to exit the function
B) exit is defined as a pointer to a button.. you are trying to assign a value of "return false" to it... that is just.. wrong
If you want to create a button that causes Esenthel to close... you could do this:
most tutorials have something like this in the Main ( recently renamed to Update) function:
if(Kb.bp(KB_ESC))return false;
That works becuase return false from the Update function causes the application to shutdown...
So.. you could do something like:
Create a global value called 'engineRunning'
Bool engineRunning;
in.. say the InitPre function.. set it to true ( defaults to true.. but.. I always like to make sure!)
engineRunning = true;
then... change "if(Kb.bp(KB_ESC))return false;" to :
if ( !engineRunning || Kb.bp(KB_ESC) ) return false;
then... in your ButtonFucntion...
engineRunning = false;
That'll make is so the either pressing escape or clicking your button will clsoe Esenthel... ( and still call the Shutdown functions and such for engine cleanup )
If you just terminate the application via Exit() or something else.. you will leave memory allocated in the engine.. which causes Bad Things