FidePath
FidePath(Map, floor,StartX,StartY,EndX,EndY,DoFile,FuncName);
函数功能:
根据地图标识、地图编号、起点坐标、终点坐标获得路径
操作参数:
| 参数名 | 是否必须 | 类型 | 说明 |
|---|---|---|---|
| DoFile | 是 | string | 脚本文件路径(如是本文件则填写nil) |
| FuncName | 是 | string | 响应事件处理函数的名称 |
| Map | 是 | int | 地图类型 0静态地图,1迷宫地图,2是房间.. |
| floor | 是 | int | 地图编号 |
| StartX | 是 | int | 起点X |
| StartY | 是 | int | 起点Y |
| EndX | 是 | int | 终点X |
| EndY | 是 | int | 终点Y |
返回值:
| 返回类型 | 成功 | 失败 |
|---|---|---|
| int | > 0 | < 1 |
回调函数说明:
FidePath_CallBackEvent (Handle, MapID,floor,StartX,StartY,EndX,EndY,MaxX,MaxY,Cout,XTableList,YTableList)
| 回调参数名 | 是否必须 | 类型 | 说明 |
|---|---|---|---|
| Handle | 是 | int | 调用Map.FidePath后返回的句柄 |
| Map | 是 | int | 地图类型 0静态地图,1迷宫地图,2是房间.. |
| floor | 是 | int | 地图编号 |
| StartX | 是 | int | 起点X |
| StartY | 是 | int | 起点Y |
| EndX | 是 | int | 终点X |
| EndY | 是 | int | 终点Y |
| MaxX | 是 | int | 当前地图X大小 |
| MaxY | 是 | int | 当前地图Y大小 |
| Count | 是 | int | 当前所需步数 |
| XTableList | 是 | table | X步数Table |
| YTableList | 是 | table | Y步数Table |
| ———— | |||
| #### 操作实例: |
local Handle = Map.Fide(nil,"FidePath_CallBackEvent",0,100,475,196,682,343);--从东门走到伊尔村
if(Handle == -1)then
print("当前起点坐标无法走动");
return;
end
if(Handle == -2)then
print("当前终点坐标无法走动");
return;
end
if(Handle == -3)then
print("地图不存在");
return;
end
print("失败")
end
function FidePath_CallBackEvent(Handle, MapID,floor,StartX,StartY,EndX,EndY,MaxX,MaxY,Cout,XTableList,YTableList)
if(Cout <= 0 or XTableList == nil or YTableList == nil)then
print("此路不通,无法通过走路到达,您可能需要跟NPC对话移动或者通过Warp.txt移动");
return;
end
local Loopi = 1;
printf("总共需要走【"..Cout.."】步");
for Loopi,Cout do
local String = string.format("需要路过的坐标 %d:%d",XTableList[Loopi],YTableList[Loopi]);
printf(String);
end
XTableList = nil;
YTableList = nil;
end备注:
- 更多返回错误代码请看首页的错误代码描述
作者:105493660 创建时间:2020-04-26 15:44
更新时间:2025-12-24 21:35
更新时间:2025-12-24 21:35