楼主: 22897350

[巫妖王之怒] 人物出生自动学习70级的技能LUA

[复制链接]

316

时沙

0

精华

7

主题

声望: 1656   虚弱: 0

Lv.5(无冕者)

炉石

发表于 2023-7-27 15:44:21 | 显示全部楼层
kissinger 发表于 2023-7-3 11:52
差评,白白浪费1dkp,我给你一个70的自动学习吧,用了1年了,如有对应等级缺失,帮忙添加进去给我个反馈 ...

这个是什么意思?如果人物出生60 就不会学60以上的技能吗
回复

使用道具 举报

1278

时沙

3

精华

30

主题

声望: 8343   虚弱: 0

Lv.7(复仇者)

灵蛇献瑞(尚美制作)金兔迎春(尚美制作)吟游牧师炉石信仰战假死猎人今天也只能打恢复的增强萨潜行者积少成多时沙之瓶比格沃斯先生雷施无冕者伊利丹·怒风莉莉安·沃斯划水武僧搓水法爷黑色宝石猎豹

发表于 2023-7-27 16:47:43 | 显示全部楼层
本帖最后由 kissinger 于 2023-7-27 16:49 编辑
18丝 发表于 2023-7-27 15:44
这个是什么意思?如果人物出生60 就不会学60以上的技能吗

对的,要参考里面针对gm的同等改下,或直接改里面一句循环为
                for i = 1,level do
回复

使用道具 举报

316

时沙

0

精华

7

主题

声望: 1656   虚弱: 0

Lv.5(无冕者)

炉石

发表于 2023-7-27 16:57:27 | 显示全部楼层
kissinger 发表于 2023-7-27 16:47
对的,要参考里面针对gm的同等改下,或直接改里面一句循环为
                for i = 1,level do
...

function SKILL.AutoLearn(event, player)
        local Pclass        = player:GetClass()--获取标识号
        local ClassSkills        = SKILL[Pclass]--该职业技能表
        if(ClassSkills)then--该职业技能表存在
        for i = 1 , #ClassSkills do
                player:LearnSpell(ClassSkills) --学习技能
        end
end
end

是这里要怎么改吗?我放里面都是直接70的学习了 可是人物才60
回复

使用道具 举报

316

时沙

0

精华

7

主题

声望: 1656   虚弱: 0

Lv.5(无冕者)

炉石

发表于 2023-7-27 17:05:45 | 显示全部楼层
kissinger 发表于 2023-7-3 11:52
差评,白白浪费1dkp,我给你一个70的自动学习吧,用了1年了,如有对应等级缺失,帮忙添加进去给我个反馈 ...

你这个也不行啊,至少升一级才行?我设定出生60的,没效果呀
回复

使用道具 举报

1278

时沙

3

精华

30

主题

声望: 8343   虚弱: 0

Lv.7(复仇者)

灵蛇献瑞(尚美制作)金兔迎春(尚美制作)吟游牧师炉石信仰战假死猎人今天也只能打恢复的增强萨潜行者积少成多时沙之瓶比格沃斯先生雷施无冕者伊利丹·怒风莉莉安·沃斯划水武僧搓水法爷黑色宝石猎豹

发表于 2023-7-27 19:19:51 | 显示全部楼层
18丝 发表于 2023-7-27 16:57
function SKILL.AutoLearn(event, player)
        local Pclass        = player:GetClass()--获取标识号
        local Clas ...

你把level一行吃掉了?

function SKILL.AutoLearn(event, player, oldLevel)
        local Pclass = player:GetClass()  --得到职业号
        local level = player:GetLevel()   --得到当前等级
        local ClassSkills = SKILL[Pclass] --该职业的该等级技能表
        if ClassSkills then  --该职业技能表存在
                for i = 1,level do  --从旧等级到现在等级
                        local LevelSkills = ClassSkills or {}  --该职业技能表存在?存在就获取该等级技能表,不存在就为空
                        for k, v in pairs(LevelSkills) do  --k为当前等级技能序列号,从第一个开始,把每个技能读出来赋值为v
                                if not player:HasSpell(v) then --没有学习技能,就学习
                                    player:LearnSpell(v)  --学习每个技能
                                end
                        end
                end
        end
end
[发帖际遇]: kissinger在魔古山宝库发现大量宝箱,大肆搜刮后获得698 金币. 幸运榜 / 衰神榜
回复

使用道具 举报

316

时沙

0

精华

7

主题

声望: 1656   虚弱: 0

Lv.5(无冕者)

炉石

发表于 2023-7-27 19:52:12 | 显示全部楼层
kissinger 发表于 2023-7-27 19:19
你把level一行吃掉了?

function SKILL.AutoLearn(event, player, oldLevel)

我把你跟这个帖主给 搞混了哈哈哈 能用了已经
回复

使用道具 举报

60

时沙

0

精华

3

主题

声望: 371   虚弱: 0

Lv.3(忠诚者)

发表于 2025-9-27 09:24:47 | 显示全部楼层
谢谢分享
回复

使用道具 举报

快速回复 返回顶部 返回列表