维护提醒

BWIKI 全站将于 9 月 3 日(全天)进行维护,期间无法编辑任何页面或发布新的评论。

全站通知:

模块:NPC

来自星露谷物语维基
跳到导航 跳到搜索
[ 创建 | 刷新 ]文档页面
当前模块文档缺失,需要扩充。
local p = {}

-- 使用单一数据源,避免重复维护
local characters = {
    {"亚历克斯", "Alex"},
    {"艾利欧特", "Elliott"},
    {"哈维", "Harvey"},
    {"山姆", "Sam"},
    {"塞巴斯蒂安", "Sebastian"},
    {"谢恩", "Shane"},
    {"阿比盖尔", "Abigail"},
    {"艾米丽", "Emily"},
    {"海莉", "Haley"},
    {"莉亚", "Leah"},
    {"玛鲁", "Maru"},
    {"潘妮", "Penny"},
    {"卡洛琳", "Caroline"},
    {"克林特", "Clint"},
    {"德米特里厄斯", "Demetrius"},
    {"矮人", "Dwarf"},
    {"艾芙琳", "Evelyn"},
    {"乔治", "George"},
    {"格斯", "Gus"},
    {"贾斯", "Jas"},
    {"乔迪", "Jodi"},
    {"肯特", "Kent"},
    {"科罗布斯", "Krobus"},
    {"刘易斯", "Lewis"},
    {"莱纳斯", "Linus"},
    {"玛妮", "Marnie"},
    {"潘姆", "Pam"},
    {"皮埃尔", "Pierre"},
    {"罗宾", "Robin"},
    {"桑迪", "Sandy"},
    {"文森特", "Vincent"},
    {"威利", "Willy"},
    {"法师", "Wizard"},
    {"吉尔", "Gil"},
    {"冈瑟", "Gunther"},
    {"仆从", "Henchman"},
    {"马龙", "Marlon"},
    {"莫里斯", "Morris"},
    {"齐先生", "Mr. Qi"},
    {"雷欧", "Leo"},
    {"贝啼", "Birdie"},
    {"蜗牛教授", "Professor Snail"},
    {"姜岛商人", "Island Trader"},
    {"沙漠商人", "Desert Trader"},
    {"女巫", "Witch"},
    {"州长", "Governer"},
    {"门卫", "Bouncer"},
    {"菲兹", "Fizz"},
    {"老水手", "Mariner"},
    {"爷爷", "Grandpa"}
}

-- 动态构建映射表
local zh_to_en = {}
local en_to_zh = {}

for _, pair in ipairs(characters) do
    zh_to_en[pair[1]] = pair[2]
    en_to_zh[pair[2]] = pair[1]
end

-- 统一的参数提取函数
local function getArg(input)
    if type(input) == "string" then
        return input
    end
    return input.args[1] or input:getParent().args[1]
end

-- 简化的函数
function p.getEnglishName(input)
    local name = getArg(input)
    return zh_to_en[name] or name
end

function p.getChineseName(input)
    local name = getArg(input)
    return en_to_zh[name] or name
end

function p.isValidNPC(input)
    local name = getArg(input)
    return (zh_to_en[name] or en_to_zh[name]) and "true" or "false"
end

-- 保持向后兼容性
p.ZH = zh_to_en
p.EN = en_to_zh

return p