大贤者
精华
|
战斗力 鹅
|
回帖 0
注册时间 2018-10-7
|
本帖最后由 短流苏 于 2024-7-9 12:00 编辑
我想给苍之涛写个视角控制解锁的修改器,这个功能实现起来好像还挺简单。
但我不懂编程,昨天用CE把控制镜头距离和视角X轴、Y轴的内存基址找到了,我可以在CE里通过修改参数调整镜头。
我是考虑按照现有逻辑把镜头距离控制绑定在滚轮,视角X轴、Y轴绑定在鼠标上,然后我找GPT问了之后它告诉我用Lua编写脚本,我把代码放进CE自带的lua脚本编辑功能里头之后,它有报错,我找gpt去问,我又不确定它返回给我的新答案是不是对的,所以想请大家帮我看看,谢谢啦。
代码如下:
(我现在在办公室摸鱼,回去之后我会把"镜头上下角度变量地址"修改为昨天找到的内存基址)
1.视角X轴、Y轴
-- 定义镜头控制变量的内存地址
local camera_pitch_address = "镜头上下角度变量地址"
local camera_yaw_address = "镜头左右角度变量地址"
-- 获取鼠标当前位置
local last_mouse_x, last_mouse_y = getMousePos()
function onMouseMove()
-- 获取当前鼠标位置
local current_mouse_x, current_mouse_y = getMousePos()
-- 计算鼠标移动的距离
local delta_x = current_mouse_x - last_mouse_x
local delta_y = current_mouse_y - last_mouse_y
-- 更新镜头角度
local camera_pitch = readFloat(camera_pitch_address)
local camera_yaw = readFloat(camera_yaw_address)
-- 调整镜头角度
camera_pitch = camera_pitch + delta_y * 0.1 -- 调整系数可以根据需要修改
camera_yaw = camera_yaw + delta_x * 0.1
-- 写回新的镜头角度
writeFloat(camera_pitch_address, camera_pitch)
writeFloat(camera_yaw_address, camera_yaw)
-- 更新鼠标位置
last_mouse_x, last_mouse_y = current_mouse_x, current_mouse_y
end
function CETrainer_CHEATPANELClick(sender)
-- 监听鼠标移动事件
registerMouseEvent(onMouseMove)
end
2.滚轮控制镜头距离
-- 定义镜头控制变量的内存地址
local camera_distance_address = "镜头距离变量地址"
-- 定义鼠标滚轮事件处理函数
function onMouseWheel(event)
local camera_distance = readInteger(camera_distance_address)
if event.delta > 0 then
-- 鼠标滚轮向上,增加镜头距离
writeInteger(camera_distance_address, camera_distance + 10)
else
-- 鼠标滚轮向下,减少镜头距离
writeInteger(camera_distance_address, camera_distance - 10)
end
end
-- 监听鼠标滚轮事件
registerMouseEvent(onMouseWheel)
|
评分
-
查看全部评分
|