具体实现方法:修改BL_GetUsrCashAmt_R 这个存储过程 写判断逻辑由于这里没有传角色的ID,需要根据USERNO去查找在线的角色,找到角色的信息,判断当前角色所在地图位置,如果在A地图就正常返回,如果在其他地图返回错误-99,
最终效果是,如果在A地图正常打开显示商城点,如果在B地图打开后显示的是0
viphaidao 发表于 2025-6-8 16:30
具体实现方法:修改BL_GetUsrCashAmt_R 这个存储过程 写判断逻辑由于这里没有传角色的ID,需要根据USERNO ...
我试试看看能不能搞出来
viphaidao 发表于 2025-6-8 16:30
具体实现方法:修改BL_GetUsrCashAmt_R 这个存储过程 写判断逻辑由于这里没有传角色的ID,需要根据USERNO ...
你有写好的没 发个来看看
viphaidao 发表于 2025-6-8 16:30
具体实现方法:修改BL_GetUsrCashAmt_R 这个存储过程 写判断逻辑由于这里没有传角色的ID,需要根据USERNO ...
加了个判断进去 都无法打开了;P
viphaidao 发表于 2025-6-8 16:30
具体实现方法:修改BL_GetUsrCashAmt_R 这个存储过程 写判断逻辑由于这里没有传角色的ID,需要根据USERNO ...
-- 查询角色地图索引
SELECT @wMapIndex = wMapIndex
FROM Character.dbo.USER_CHARACTER
WHERE character_no = @i_user_no; -- 假设character_no和user_no关联
-- 检查查询是否返回结果
IF @@ROWCOUNT = 0
BEGIN
SET @wMapIndex = NULL; -- 未找到记录时设置为NULL
SET @o_sp_rtn = -98; -- 未找到角色记录的特殊返回码
END
ELSE
BEGIN
-- 判断地图索引并设置返回值 (修改为判断wMapIndex是否等于61)
IF @wMapIndex = 61
SET @o_sp_rtn = 0;
ELSE
SET @o_sp_rtn = -99;
END
我没写 但是这个逻辑我感觉是行的通的
这个逻辑 也不太行 我试了下 主要原因在于 用户所在地图 不是实时更新,用户基本信息是5分钟才和数据库交互一次 也就是说用户即便到了不能打开的地图 也是在5分钟以后了
viphaidao 发表于 2025-6-10 03:02
这个逻辑 也不太行 我试了下 主要原因在于 用户所在地图 不是实时更新,用户基本信息是5分钟才和数据库交互 ...
。。。。改成实时更新看看
admin 发表于 2025-6-10 17:31
。。。。改成实时更新看看
没有实时的交互,哪个存储过程是实时交互的?
viphaidao 发表于 2025-6-10 22:49
没有实时的交互,哪个存储过程是实时交互的?
还没找到。