Ir para conteúdo
  • Cadastre-se

(Resolvido)Dar 10% a mais de exp + skills para quem está dominando o castle.


Ir para solução Resolvido por Vodkart,

Posts Recomendados

Olá, Boa Tarde tibianos,  gostaria das seguintes alterações no script abaixo.  Retirar bonus xp para players VIPS e o script passar a  dar 10% de xp e skills  para a guild que estiver com o castle dominado, alguem poderia da 1 força ? ou fornecer  um script novo ?

 

    function onLogin(cid)

local rate = 1
local rate_premium = 0.35
local rate_castle = 0.10
local storage = 211320111636
local days = getPlayerPremiumDays(cid)
local config = {
yes_premium = "Você tem "..((rate_premium)*100).."% de EXP em vantagem, ainda lhe restam "..days.." dias de VIP!",
not_premium = "Tornesse VIP e tenha "..((rate_premium)*100).."% a mais de EXP!",
winCastle = "Você Tem "..((rate_castle)*100).."% De Experiencia A mais Agora.(Bonus Castle).",
lostCastle = "A Sua Guild Nao Conquistou a Castle"
}

if isPremium(cid) and getGlobalStorageValue(storage) == getPlayerGuildName(cid) then
doPlayerSetExperienceRate(cid, rate + rate_premium + rate_castle)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, config.yes_premium)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, config.winCastle)
elseif isPremium(cid) == TRUE and getGlobalStorageValue(storage) == getPlayerGuildName(cid) == FALSE then
doPlayerSetExperienceRate(cid, rate + rate_premium)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, config.yes_premium)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, config.lostCastle)
elseif isPremium(cid) == FALSE and getGlobalStorageValue(storage) == getPlayerGuildName(cid) == TRUE then
doPlayerSetExperienceRate(cid, rate + rate_castle)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, config.not_premium)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, config.winCastle)
elseif isPremium(cid) == FALSE and getGlobalStorageValue(storage) == getPlayerGuildName(cid) == FALSE then
doPlayerSetExperienceRate(cid, rate)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, config.not_premium)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, config.lostCastle)
end
return true
end

@Vodkart

@WooX

Editado por daniel.braga989 (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
7 horas atrás, Vodkart disse:

são todas as skills? magic level tbm? e hp e mana 10% max?

 

Até aonde tlgd, ele apenas skills(magic level também) tava querendo essas scripts alguns dias. eu tinha ela, mas acabei apagando o servidor que continha ela. se tiver como disponibilizar, ajudaria bastante. 

 

 

 

 

 

                                                                                                                                                     tumblr_nwmv2z4VEM1ujiquxo1_100.gif.2db64bb36f0f565e68ff2a90cb98f439.gif.59f4c4cf234d2f6906621cac0553a862.gif

https://github.com/italoxxx1

 

Link para o post
Compartilhar em outros sites
local rate = 1
local rate_castle = 0.10
local storage = 211320111636
function onLogin(cid)
   if getPlayerGuildId(cid) > 0 and getGlobalStorageValue(storage) == getPlayerGuildName(cid) then
      doPlayerSetExperienceRate(cid, rate + rate_castle)
      doPlayerAddCastleBuff(cid)
      doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Você tem "..((rate_castle)*100).."% a mais de experiencia e skills Agora. (Bonus Castle).")
   end
   return true
end

 

 

e na lib adicione:

 

 

condition_casbuff = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition_casbuff, CONDITION_PARAM_TICKS, -1)
setConditionParam(condition_casbuff, CONDITION_PARAM_STAT_MAGICLEVELPERCENT, 10)
setConditionParam(condition_casbuff, CONDITION_PARAM_SKILL_MELEEPERCENT, 10)
setConditionParam(condition_casbuff, CONDITION_PARAM_SKILL_FISTPERCENT, 10)
setConditionParam(condition_casbuff, CONDITION_PARAM_SKILL_CLUBPERCENT, 10)
setConditionParam(condition_casbuff, CONDITION_PARAM_SKILL_SWORDPERCENT, 10)
setConditionParam(condition_casbuff, CONDITION_PARAM_SKILL_DISTANCEPERCENT, 10)
setConditionParam(condition_casbuff, CONDITION_PARAM_SKILL_AXEPERCENT, 10)
setConditionParam(condition_casbuff, CONDITION_PARAM_SKILL_SHIELDPERCENT, 10)
setConditionParam(condition_casbuff, CONDITION_PARAM_SUBID, 1515) -- n mexer
 
function doPlayerAddCastleBuff(cid)
    return doAddCondition(cid, condition_casbuff)
end
function doPlayerRemoveCastleBuff(cid)
    return doRemoveCondition(cid, CONDITION_ATTRIBUTES, 1515)
end

 

 

para remover o buff das skills usa a função:


 

doPlayerRemoveCastleBuff(cid)

 

para adicionar o buff das skills usa a função:

 

doPlayerAddCastleBuff(cid)

 

Editado por Vodkart (veja o histórico de edições)

vodkart_logo.png

[*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*]

 

DISCORDvodkart#6090

 

Link para o post
Compartilhar em outros sites

@Vodkart eu sou meio lerdo com esses negocio de scripts, no caso o script abaixo sera adicionado em globalevents?
 

local rate = 1
local rate_castle = 0.10
local storage = 211320111636
function onLogin(cid)
   if getPlayerGuildId(cid) > 0 and getGlobalStorageValue(storage) == getPlayerGuildName(cid) then
      doPlayerSetExperienceRate(cid, rate + rate_castle)
      doPlayerAddCastleBuff(cid)
      doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Você tem "..((rate_castle)*100).."% a mais de experiencia e skills Agora. (Bonus Castle).")
   end
   return true
end


e as lib abaixo   seria em ''  DATA/LIB/015-COH.LUA?'''

condition_casbuff = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition_casbuff, CONDITION_PARAM_TICKS, -1)
setConditionParam(condition_casbuff, CONDITION_PARAM_STAT_MAGICLEVELPERCENT, 10)
setConditionParam(condition_casbuff, CONDITION_PARAM_SKILL_MELEEPERCENT, 10)
setConditionParam(condition_casbuff, CONDITION_PARAM_SKILL_FISTPERCENT, 10)
setConditionParam(condition_casbuff, CONDITION_PARAM_SKILL_CLUBPERCENT, 10)
setConditionParam(condition_casbuff, CONDITION_PARAM_SKILL_SWORDPERCENT, 10)
setConditionParam(condition_casbuff, CONDITION_PARAM_SKILL_DISTANCEPERCENT, 10)
setConditionParam(condition_casbuff, CONDITION_PARAM_SKILL_AXEPERCENT, 10)
setConditionParam(condition_casbuff, CONDITION_PARAM_SKILL_SHIELDPERCENT, 10)
setConditionParam(condition_casbuff, CONDITION_PARAM_SUBID, 1515) -- n mexer
 
function doPlayerAddCastleBuff(cid)
    return doAddCondition(cid, condition_casbuff)
end
function doPlayerRemoveCastleBuff(cid)
    return doRemoveCondition(cid, CONDITION_ATTRIBUTES, 1515)
end
Link para o post
Compartilhar em outros sites

@daniel.braga989

 

é o código do onLogin que vc colocou no tópico, só editei...

 

e na lib, pode ser sim, ou até no functions-050.lua (algo assim)

vodkart_logo.png

[*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*]

 

DISCORDvodkart#6090

 

Link para o post
Compartilhar em outros sites

Editei a lib do Vodkart, testa assim:

 

Spoiler

local amount = 10

condition_casbuff = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition_casbuff, CONDITION_PARAM_TICKS, -1)
setConditionParam(condition_casbuff, CONDITION_PARAM_STAT_MAGICLEVELPERCENT, amount + 100)
setConditionParam(condition_casbuff, CONDITION_PARAM_SKILL_MELEEPERCENT, amount + 100)
setConditionParam(condition_casbuff, CONDITION_PARAM_SKILL_FISTPERCENT, amount + 100)
setConditionParam(condition_casbuff, CONDITION_PARAM_SKILL_CLUBPERCENT, amount + 100)
setConditionParam(condition_casbuff, CONDITION_PARAM_SKILL_SWORDPERCENT, amount + 100)
setConditionParam(condition_casbuff, CONDITION_PARAM_SKILL_DISTANCEPERCENT, amount + 100)
setConditionParam(condition_casbuff, CONDITION_PARAM_SKILL_AXEPERCENT, amount + 100)
setConditionParam(condition_casbuff, CONDITION_PARAM_SKILL_SHIELDPERCENT, amount + 100)
setConditionParam(condition_casbuff, CONDITION_PARAM_SUBID, 1515) -- n mexer
 
function doPlayerAddCastleBuff(cid)
   return doAddCondition(cid, condition_casbuff)
end
function doPlayerRemoveCastleBuff(cid)
   return doRemoveCondition(cid, CONDITION_ATTRIBUTES, 1515)
end

 

 

Link para o post
Compartilhar em outros sites

@Pisces Houve um desentendimento aqui ksksk a ideia era quem dominasse o '' Castelo''' ganhar 10% de xp e ganhar 10%  de rate para treinar a skills mais rapido. O vordkart entendeu que quem dominasse o castle ganhava ''10% de skills"" eu tbm expliquei todo torto, mas Jaja o vodkart atualiza aqui ou eu mesmo coloco o certo.  Obrigado pela atenção a todos que tentou ajudar, Sei que o dia de voces e corrido. Ty <3

Editado por daniel.braga989 (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
  • Solução
local rate = 1
local rate_castle = 0.10
local storage = 211320111636
local skills = {SKILL_FIST, SKILL_CLUB, SKILL_SWORD, SKILL_AXE, SKILL_DISTANCE, SKILL_SHIELD, SKILL__MAGLEVEL} 
function onLogin(cid)
    if getPlayerGuildId(cid) > 0 and getGlobalStorageValue(storage) == getPlayerGuildName(cid) then
        doPlayerSetExperienceRate(cid, rate + rate_castle)
        for _, ret in pairs(skills) do 
            doPlayerSetRate(cid, ret, rate + rate_castle)
        end
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Você tem "..((rate_castle)*100).."% a mais de experiencia e skills Agora. (Bonus Castle).")
    end
    return true
end

 

vodkart_logo.png

[*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*]

 

DISCORDvodkart#6090

 

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo