Files
mir_server/server/LogicServer/script/interface/LuaHelpExportFun.h
aixianling 5c9f1dae4a init
2025-01-09 17:45:40 +08:00

156 lines
4.0 KiB
C++
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*
由于一些特殊的函数需要直接调用Lua_state进行操作这里注册一些函数作为特殊处理的
*/
#pragma once
extern const luaL_reg LuaHelpExpot[];
/*
*关于luaL_reg类函数的返回参数请注意该返回参数表示给脚本的返回的值的个数如果没有返回就返回0
*如果有2个返回就返回2
*/
namespace LuaHelp
{
/*
* Comments:保存一个Lua的表到一个文件里去
比如有一个表
aa=
{
xxx = "112",
zz =
{
121, 2332,
},
yyy = 111,
}
要存盘为../Data/aa.txt使用
存盘的时候用 LuaHelp.saveTable(aa,"../Data/aa.txt",表格名字);
如果表格名字不赋值 ,那么将不存名字,否则将保持为
如果不传表名保存完的aa.txt的内容为:
{
xxx = "112",
zz =
{
121, 2332,
},
yyy = 111,
}
否则为加入名字为STable将为
STable =
{
xxx = "112",
zz =
{
121, 2332,
},
yyy = 111,
}
* Param lua_State * L: lua的指针
* @Return int:没有返回,这里的返回值是表示给lua的返回的参数的个数
*/
int saveTable(lua_State *L);
/*
* Comments:这个是测试用例,用于把一个数据表压入
脚本里使用local b = LuaHelp.getTestTable() 将得到一个table
* Param lua_State * L:
* @Return int:返回值是一个表的话就返回1
*/
int getTestTable(lua_State *L);
/*
* Comments:获取角色所在队伍的队员的列表
* Param lua_State * L:脚本传来的参数是角色的指针
使用方法为: LuaHelp.getTeamMemberList(玩家的指针)
* @Return int:返回1是一个表
*/
int getTeamMemberList(lua_State *L);
/*
* Comments:通过队伍的指针,获取队伍成员的列表
* Param lua_State * L:
* @Return int:
*/
int getTeamMemberListByPtr(lua_State *L);
/*
* Comments:根据副本的id获取全服中这个副本的所有copy,返回副本的handle列表
* Param int nFbid:
* @Return void:
*/
int getFbFromId(lua_State *L);
/*
* Comments:获取玩家重配地图的坐标点
* Param lua_State * L:传入玩家的指针
* @Return int:返回一个表里面3个数字分别是场景id坐标X坐标Y
*/
int getReloadMapPos(lua_State *L);
/*
* Comments:获取周围的实体的指针列表
* Param lua_State * L:[实体的指针][半径范围][实体类型tagEntityType, 留空或-1表示任意类型]
* @Return int:返回一个表,包含所有的实体指针
*/
int getNearEntityList(lua_State *L);
/*
* Comments:获取周围的实体的指针列表
* Param lua_State * L:[场景指针][x][y][半径范围]
* @Return int:返回一个表,包含所有的实体指针
*/
int getNearEntityListFromXY(lua_State *L);
/*
* Comments:获取周围的实体的指针列表
* Param lua_State * L:[场景指针][x][y][宽度半径][高度半径]
* @Return int:返回一个表,包含所有的实体指针。获取到的区域范围是 (2*宽度半径)*(2*高度半径)
*/
int getNearEntityListFromRange(lua_State *L);
/*
* Comments:获取所有的在线玩家的指针
* Param lua_State * L:
* @Return int:返回一个表,包含所有的实体指针
*/
int getAllActorList(lua_State *L);
/*
* Comments:获取场景的在线玩家的指针
* Param lua_State * L:[int场景id]
* @Return int:返回一个表,包含所有的实体指针
*/
int getSceneActorListById(lua_State *L);
/*
* Comments:获取场景的在线玩家的指针
* Param lua_State * L:[int场景id]
* @Return int:返回一个表,包含所有的实体指针
*/
int getSceneAliveActorListById(lua_State *L);
/*
* Comments:获取排行榜前N名的数据
* Param lua_State * L:[排行榜的指针][数量表示要获取前N名]
* @Return int:返回一个表,包含排行榜项的指针
*/
int getRankingItemList(lua_State* L);
/*
* Comments:获取副本内所有玩家的列表
* Param lua_State * L:[副本的指针]
* @Return int:返回一个表,包含所有玩家的指针
*/
int getFbActorList(lua_State* L);
/*
* Comments:获取实体可见范围内玩家的列表
* Param lua_State * L:[实体指针]
* @Return int:
*/
int getVisiActorList(lua_State* L);
}