跳转至

事件系统

Lua 脚本通过事件系统响应游戏中的各种行为。

事件列表

事件名 触发时机 参数
OnPlayerLogin 玩家登录 player
OnPlayerLogout 玩家下线 player
OnPlayerLevelUp 玩家升级 player, newLevel
OnPlayerDie 玩家死亡 player, killer
OnMonsterDie 怪物死亡 monster, killer

事件示例

登录欢迎

function OnPlayerLogin(player)
    player:SendMessage("欢迎回来," .. player.Name)

    -- 发放登录奖励
    if player:GetDailyFlag("login_reward") == 0 then
        player:GiveItem("每日礼包", 1)
        player:SetDailyFlag("login_reward", 1)
    end
end

升级奖励

function OnPlayerLevelUp(player, newLevel)
    player:SendMessage("恭喜升到 " .. newLevel .. " 级!")

    -- 整十级奖励
    if newLevel % 10 == 0 then
        player:GiveItem("升级礼包", 1)
    end
end

击杀怪物

function OnMonsterDie(monster, killer)
    if monster.Name == "沃玛教主" then
        -- 全服公告
        SendWorldMessage(killer.Name .. " 击杀了沃玛教主!")
    end
end