• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

TFS 1.X+ Effects when leveling up!

LuckyM

Ett är Ett
Joined
Jun 13, 2009
Messages
1,411
Solutions
1
Reaction score
167
Location
Sweden
Hi OTLanders.!

Could someone help me out to make this script work for TFS 1.3

Lua:
local config =
    {
        --message, distance shoot effect
        [0] = {'+Fist', 38},
        [1] = {'+Mace', 26},
        [2] = {'+Swrd', 24},
        [3] = {'+Axe', 25},
        [4] = {'+Dist', 2},
        [5] = {'+Def', 11},
        [6] = {'+Fish', 12},
        [7] = {'+ML', 35},
        [8] = {'+LvL', 37}
    }
 
function onAdvance(cid, skill, oldlevel, newlevel)
    if skill == SKILL__LEVEL then
        doCreatureAddHealth(cid, getCreatureMaxHealth(cid) - getCreatureHealth(cid))
        doCreatureAddMana(cid, getCreatureMaxMana(cid) - getCreatureMana(cid))
    end
 
    local p = getThingPos(cid)
    local positions =
    { --do not touch
        [1] = {
            {x=p.x+1,y=p.y,z=p.z}, 100, 900
        },
        [2] = {
            {x=p.x+1,y=p.y+1,z=p.z}, 200, 980
        },
        [3] = {
            {x=p.x,y=p.y+1,z=p.z}, 300, 1060
        },
        [4] = {
            {x=p.x-1,y=p.y+1,z=p.z}, 400, 1140
        },
        [5] = {
            {x=p.x-1,y=p.y,z=p.z}, 500, 1220
        },
        [6] = {
            {x=p.x-1,y=p.y-1,z=p.z}, 600, 1300
        },
        [7] = {
            {x=p.x,y=p.y-1,z=p.z}, 700, 1380
        },
        [8] = {
            {x=p.x+1,y=p.y-1,z=p.z}, 800, 1460
        }
    }
 
    for i = 1, 8 do
        addEvent(doSendDistanceShoot, positions[i][2], positions[i][1], p, config[skill][2])
        addEvent(doSendDistanceShoot, positions[i][3], positions[i][1], p, config[skill][2])
    end
 
    addEvent(doSendMagicEffect, 900, p, 49)
    doSendAnimatedText(p, config[skill][1]..'['..newlevel..']', math.random(255))
    doPlayerSave(cid, true)   
    return true
end

Thanks in advance!
 
Lua:
local levelUpEffect = CreatureEvent("levelUpEffect")

function levelUpEffect.onAdvance(player, skill, oldLevel, newLevel)
    if skill ~= SKILL_LEVEL or newLevel <= oldLevel then
        return true
    end

    player:getPosition():sendMagicEffect(math.random(CONST_ME_FIREWORK_YELLOW, CONST_ME_FIREWORK_BLUE))
    player:say('LEVEL UP!', TALKTYPE_MONSTER_SAY)
    player:addHealth(player:getMaxHealth())
    player:save()
    return true
end

levelUpEffect:register()
 
Where is the best place to add it?

and a question, maybe someone has a script for the red message when the player reaches lvl 100/150/200
 
Back
Top