-- 定义三个局部变量exx, eyy, ezz local exx local eyy local ezz

-- 进入车辆的函数 local function OnPlayerEntercar(player) -- 获取玩家当前的方格 local square = player:getCurrentSquare() if square==nil then return end -- 获取方格内的载具 local vehicle=square:getVehicleContainer() if vehicle~=nil then -- 让玩家进入载具中的第二个座位 vehicle:enter(2, player) -- 移除事件监听 Events.OnPlayerUpdate.Remove(OnPlayerEntercar) end end

-- 传送函数 local function Oncahoueteleport(player) -- 获取玩家对象 local player = getPlayer() if player==nil then return end -- 将玩家传送到指定位置 player:setX(exx) player:setY(eyy) -- player:setZ(ezz) player:setLx(exx) player:setLy(eyy) -- 移除事件监听 Events.OnTick.Remove(Oncahoueteleport) end

-- 定义一个名为MH_MkII2walk的类,继承自ISBaseTimedAction类 MH_MkII2walk = ISBaseTimedAction:derive('MH_MkII2walk');

-- 判断是否有效 function MH_MkII2walk:isValid()
return true end

-- 更新函数 function MH_MkII2walk:update()
end

-- 开始函数 function MH_MkII2walk:start() -- 设置动画 self:setActionAnim('EquipItem')
end

-- 停止函数 function MH_MkII2walk:stop()
ISBaseTimedAction.stop(self); end

-- 执行函数 function MH_MkII2walk:perform() ISBaseTimedAction.perform(self);

-- 将参数传递给局部变量
exx = self.ex
eyy = self.ey
ezz = self.ez
-- 添加事件监听
Events.OnTick.Add(Oncahoueteleport)
Events.OnPlayerUpdate.Add(OnPlayerEntercar)

end

-- 新建函数 function MH_MkII2walk:new(character, ex, ey,ez)
local o = {} setmetatable(o, self) self.__index = self o.character = character; o.stopOnWalk = true; o.stopOnRun = true; o.maxTime = 20; o.tick = 0; o.ex = ex o.ey = ey o.ez = ez return o; end

MH_MkII2walk Lua 代码详解 - 传送和载具进入

原文地址: https://www.cveoy.top/t/topic/nyrq 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录