修改OpenGl渲染底层之前
This commit is contained in:
72
source_game/Scene/Scene_MainUi.cpp
Normal file
72
source_game/Scene/Scene_MainUi.cpp
Normal file
@@ -0,0 +1,72 @@
|
||||
#include "Scene_MainUi.h"
|
||||
#include "Asset/Squirrel/SquirrelManager.h"
|
||||
|
||||
void Scene_MainUi::Enter()
|
||||
{
|
||||
Scene::Enter();
|
||||
|
||||
HSQUIRRELVM v = SquirrelEx::GetInstance().GetSquirrelVM();
|
||||
SQInteger top = sq_gettop(v);
|
||||
sq_pushroottable(v);
|
||||
sq_pushstring(v, _SC("_MainUI_Enter_"), -1);
|
||||
if (SQ_SUCCEEDED(sq_get(v, -2)))
|
||||
{
|
||||
sq_pushroottable(v);
|
||||
sq_pushuserpointer(v, this);
|
||||
sq_call(v, 2, SQFalse, SQTrue);
|
||||
}
|
||||
sq_settop(v, top);
|
||||
|
||||
}
|
||||
|
||||
void Scene_MainUi::HandleEvents(SDL_Event *e)
|
||||
{
|
||||
Scene::HandleEvents(e);
|
||||
HSQUIRRELVM v = SquirrelEx::GetInstance().GetSquirrelVM();
|
||||
SQInteger top = sq_gettop(v);
|
||||
sq_pushroottable(v);
|
||||
sq_pushstring(v, _SC("_MainUI_HandleEvents_"), -1);
|
||||
if (SQ_SUCCEEDED(sq_get(v, -2)))
|
||||
{
|
||||
sq_pushroottable(v);
|
||||
sq_pushinteger(v, 1);
|
||||
sq_call(v, 2, SQFalse, SQTrue);
|
||||
}
|
||||
sq_settop(v, top);
|
||||
}
|
||||
|
||||
void Scene_MainUi::Update(float deltaTime)
|
||||
{
|
||||
Scene::Update(deltaTime);
|
||||
HSQUIRRELVM v = SquirrelEx::GetInstance().GetSquirrelVM();
|
||||
SQInteger top = sq_gettop(v);
|
||||
sq_pushroottable(v);
|
||||
sq_pushstring(v, _SC("_MainUI_Update_"), -1);
|
||||
if (SQ_SUCCEEDED(sq_get(v, -2)))
|
||||
{
|
||||
sq_pushroottable(v);
|
||||
sq_pushfloat(v, deltaTime);
|
||||
sq_call(v, 2, SQFalse, SQTrue);
|
||||
}
|
||||
sq_settop(v, top);
|
||||
}
|
||||
|
||||
void Scene_MainUi::Exit()
|
||||
{
|
||||
Scene::Exit();
|
||||
HSQUIRRELVM v = SquirrelEx::GetInstance().GetSquirrelVM();
|
||||
SQInteger top = sq_gettop(v);
|
||||
sq_pushroottable(v);
|
||||
sq_pushstring(v, _SC("_MainUI_Exit_"), -1);
|
||||
if (SQ_SUCCEEDED(sq_get(v, -2)))
|
||||
{
|
||||
sq_pushroottable(v);
|
||||
sq_call(v, 1, SQFalse, SQTrue);
|
||||
}
|
||||
sq_settop(v, top);
|
||||
}
|
||||
|
||||
void Scene_MainUi::Render()
|
||||
{
|
||||
Scene::Render();
|
||||
}
|
||||
Reference in New Issue
Block a user