• 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!

Bless for Free Accounts.

Phemus

Member
Joined
Jun 16, 2012
Messages
149
Solutions
2
Reaction score
12
I am using premium account as a VIP account. The problem is that whenever a Free Account buys bless, they loss everything as if they wouldn't have any blessings. On my config.lua i have it modiffied like this.
Code:
blessings = true
    blessingOnlyPremium = false
    blessingReductionBase = 30
    blessingReductionDecrement = 5
    eachBlessReduction = 8

Buy bless talkaction:
Code:
function onSay(cid, words, param)
local fail = 0

    if getPlayerLevel(cid) < 31 then
        cost = 2000
    else
        cost = ((getPlayerLevel(cid) - 30) * 200) + 2000
    end
   
    if cost > 20000 then
        cost = 20000
    end
if getPlayerPromotionLevel(cid) == 3 then
cost = 1000000
end
    for i = 1, 5 do
        if getPlayerBlessing(cid, i) then
            fail = fail + 1
        else
            if doPlayerRemoveMoney(cid, cost) == TRUE then
                doPlayerAddBlessing(cid, i)
                if i == 5 and not(fail == 5) then
                    doSendMagicEffect(getPlayerPosition(cid), CONST_ME_HOLYDAMAGE)
                    doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You have received all five blessings! (".. cost * 5 .." gold coins)")
                end
            else
                doPlayerSendCancel(cid, "You do not have enough money to buy all the blessings! (".. cost * 5 .." gold coins)")
                break
            end
        end
    end
   
    if fail == 5 then
        doPlayerSendCancel(cid, "You already have all the blessings!")
    end
return TRUE
end

Login.lua:
Code:
local config = {
    loginMessage = getConfigValue('loginMessage'),
    useFragHandler = getBooleanFromString(getConfigValue('useFragHandler'))
}

function onLogin(cid)
    local loss = getConfigValue('deathLostPercent')
    if(loss ~= nil and getPlayerStorageValue(cid, "bless") ~= 5) then
        doPlayerSetLossPercent(cid, PLAYERLOSS_EXPERIENCE, loss * 10)
    end

    if(getPlayerStorageValue(cid, "death_bless") == 1) then
        local t = {PLAYERLOSS_EXPERIENCE, PLAYERLOSS_SKILLS, PLAYERLOSS_ITEMS, PLAYERLOSS_CONTAINERS}
        for i = 1, #t do
            doPlayerSetLossPercent(cid, t[i], 100)
        end
        setPlayerStorageValue(cid, "death_bless", 0)
    end

    local accountManager = getPlayerAccountManager(cid)
    if(accountManager == MANAGER_NONE) then
        local lastLogin, str = getPlayerLastLoginSaved(cid), config.loginMessage
        if(lastLogin > 0) then
            doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, str)
            str = "Your last visit was on " .. os.date("%a %b %d %X %Y", lastLogin) .. "."
        
        else
            str = str .. " Please choose your outfit."
            doPlayerSendOutfitWindow(cid)
        end

        doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, str)
    elseif(accountManager == MANAGER_NAMELOCK) then
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, it appears that your character has been namelocked, what would you like as your new name?")
    elseif(accountManager == MANAGER_ACCOUNT) then
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, type 'account' to manage your account and if you want to start over then type 'cancel'.")
    else
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, type 'account' to create an account or type 'recover' to recover an account.")
    end

    if(not isPlayerGhost(cid)) then
        doSendMagicEffect(getCreaturePosition(cid), CONST_ME_TELEPORT)
    end

    registerCreatureEvent(cid, "Mail")
    registerCreatureEvent(cid, "GuildMotd")

    registerCreatureEvent(cid, "Idle")
    if(config.useFragHandler) then
        registerCreatureEvent(cid, "SkullCheck")
    end

    registerCreatureEvent(cid, "ReportBug")
    registerCreatureEvent(cid, "AdvanceSave")
   
    registerCreatureEvent(cid, "Info")
    registerCreatureEvent(cid, "owned")
    registerCreatureEvent(cid, "advance")
    return true
end

If someone can help me, that would be awesome! Thank you.
 
Back
Top