函数名称:LuaFnNewWorld
注册函数:NewWorld
参数说明:sceneId (场景编号)、selfId (调用者ID)、targetSceneId (将要跳转场景ID)、x (位置x坐标)、y (位置z坐标)
功能说明:用于切换场景,把selfId 的玩家从sceneId 标志的场景跳转到targetSceneId 标志的场景的(x ,z )位置,
示例:
NewWorld(sceneId,selfId,4,100,102)
返回值:无任何返回值
C++源码(武侠世界):
/** -----------------------------------------------------------------------
* 开发人员 :
* 编写时间 : 2005-9-28
* 函数名称 : LuaFnNewWorld
* 参数说明 :
* L
* LuaState执行环境指针
* sceneId
* 调用该函数场景ID,short
* selfId
* 调用者ID,无符号整型
* targetSceneId
* 将要跳转场景ID,short
* x
* 位置x坐标
* z
* 位置z坐标
* 功能说明 :
* 用于切换场景
* 把selfId的玩家从sceneId标志的场景跳转到targetSceneId标志的场景的(x,z)位置
* 示例:NewWorld(sceneId,selfId,4,100,102)
*/
INT LuaFnNewWorld(Lua_State* L)
{
LUA_ENTER_FUNCTION
SceneID_t sceneId = Lua_ValueToNumber(L,1);
ObjID_t selfId = Lua_ValueToNumber(L,2);
SceneID_t targetSceneId = Lua_ValueToNumber(L,3);
FLOAT x = Lua_ValueToNumber(L,4);
FLOAT z = Lua_ValueToNumber(L,5);
BEGINHUMANDEFINE("LuaFnNewWorld")
if( pHuman->getScene()->SceneID() == targetSceneId )
{
return 0 ;
}
WORLD_POS New(x,z);
pHuman->ChangeScene( pHuman->getScene()->SceneID(), targetSceneId, New, 9 ) ;
return 0;
ENDHUMANDEFINE
LUA_LEAVE_FUNCTION
return 0 ;
}
|